Rand Stats

LibXML

zef:dwarring

Actions Status

[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 handles installation of LibXML, and binding code (xml6) so it should be ready to go without additional setup.

ACKNOWLEDGEMENTS

This Raku module:

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.