
[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.