[Raku LibXML Project]
/ [LibXML Module]
/
NAME
LibXML - Raku bindings to the libxml2 native library
SYNOPSIS
use LibXML;
use LibXML::Document;
my LibXML::Document $doc .= parse: :string('<Hello/>');
$doc.root.nodeValue = 'World!';
say $doc.Str;
# <?xml version="1.0" encoding="UTF-8"?>
# <Hello>World!</Hello>
say $doc<Hello>;
# <Hello>World!</Hello>
my Version $library-version = LibXML.version;
my Version $module-version = LibXML.^ver;
DESCRIPTION
This module is an interface to libxml2, providing XML and HTML parsers with DOM, SAX and XMLReader interfaces, a large subset of DOM Layer 3 interface and a XML::XPath-like interface to XPath API of libxml2.
For further information, please check the following documentation:
DOM Objects
The nodes in the Document Object Model (DOM) are represented by the following classes (most of which "inherit" from LibXML::Node):
See also LibXML::DOM, which summarizes DOM classes and methods.
Container/Mapping classes
Parsing
SAX Parser
XPath and Searching
Validation
Other
PREREQUISITES
This module may requires the libxml2 library to be installed. Please follow the instructions below based on your platform:
Debian/Ubuntu Linux
sudo apt-get install libxml2-dev
Additional packages (such as build-essential) may be required to enable make, C compilation and linking.
Mac OS X
brew update
brew install libxml2
The Xcode package also needs to be installed to enable compilation.
Windows
This module uses prebuilt DLLs on Windows. There are currently some configuration (LibXML::Config
) restrictions:
parser-locking
is set True
to to disable concurrent parsing. This is due to known threading issues and unresolved failures in t/90threads.t
iconv
is False
. The library is built without full Unicode support, which restricts the ability to read and write various encoding schemes.
compression
is False
. The library is built without full compression, and is unable to read and write compressed XML directly.
ACKNOWLEDGEMENTS
This Raku module:
is based on the Perl XML::LibXML module; in particular, the test suite, selected XS and C code and documentation.
derives SelectorQuery() and SelectorQueryAll() methods from the Perl XML::LibXML::QuerySelector module.
also draws on an earlier attempt at a Perl 6 (nee Raku) port (XML::LibXML).
With thanks to: Christian Glahn, Ilya Martynov, Matt Sergeant, Petr Pajas, Shlomi Fish, Toby Inkster, Tobias Leich, Xliff, and others.
COPYRIGHT
2001-2007, AxKit.com Ltd.
2002-2006, Christian Glahn.
2006-2009, Petr Pajas.
LICENSE
This program is free software; you can redistribute it and/or modify it under the terms of the Artistic License 2.0 http://www.perlfoundation.org/artistic_license_2_0.