XML-LibXML
view release on metacpan or search on metacpan
example/test.xhtml view on Meta::CPAN
<?xml version="1.0" standalone="yes"?>
<html><head><title>XML::LibXML::Document - DOM Document Class</title><link rev="made" href="mailto:root@updates.mandrakesoft.com"/></head><body><!-- INDEX BEGIN --><ul><li><a href="#NAME">NAME</a></li><li><a href="#SYNOPSIS">SYNOPSIS</a></li><li><a h...
XML::LibXML::Document - DOM Document Class
</p><p/><hr/><h1><a name="SYNOPSIS">SYNOPSIS</a></h1><p/><pre> use XML::LibXML::Document;
</pre><p/><pre> $dom = XML::LibXML::Document->new( $version, $encoding );
$dom = XML::LibXML::Document->createDocument( $version, $encoding );
$strEncoding = $doc->getEncoding();
$strVersion = $doc->getVersion();
$docstring = $dom->toString([$format]);
$bool = $dom->is_valid();
$root = $dom->getDocumentElement($name, $namespace );
$dom->setDocumentElement( $root );
$element = $dom->createElement( $nodename );
$element = $dom->createElementNS( $namespaceURI, $qname );
$text = $dom->createTextNode( $content_text );
$comment = $dom->createComment( $comment_text );
$attrnode = $doc->createAttribute($name [,$value]);
$attrnode = $doc->createAttributeNS( namespaceURI, $name [,$value] );
$cdata = $dom->create( $cdata_content );
$document->importNode( $node [, $move] );
</pre><p/><hr/><h1><a name="DESCRIPTION">DESCRIPTION</a></h1><p>
The Document Class is the result of a parsing process. But sometimes it is
necessary to create a Document from scratch. The DOM Document Class
provides functions that are conform to the DOM Core naming style. It
inherits all functions from <em>XML::LibXML::Node</em> as specified in DOM Level2. This enables to access the nodes beside the
root element on document level - a <em>DTD</em> for example. The support for these nodes is limited at the moment, so I
would recommend, not to use <em>node</em> functions on <em>documents</em>. It is suggested that one should always create a node not bound to any
document. There is no need of really including the node to the document,
but once the node is bound to a document, it is quite safe that all strings
have the correct encoding. If an unbound textnode with an iso encoded
string is created (e.g. with $CLASS->new()), the <em>toString</em> function may not return the expected result. This seems like a limitation
as long UTF8 encoding is assured. If iso encoded strings come into play it
is much safer to use the node creation functions of <strong>XML::LibXML::Document</strong>.
</p><p/><hr/><h2><a name="Methods">Methods</a></h2><dl><dt><strong><a name="item_new">new</a></strong></dt><dd><p>
alias for <code>createDocument()</code></p></dd><dt><strong><a name="item_createDocument">createDocument</a></strong></dt><dd><p>
The constructor for the document class. As Parameter it takes the version
string and (optionally) the ecoding string. Simply calling <strong>createDocument</strong> will create the document:
</p><p/><pre>
<?xml version="your version" encoding="your encoding"?>
</pre><p>
Both parameter are optional. The default value for <strong>$version</strong> is <em>1.0</em> , of course. If the <strong>$encoding</strong> parameter is not set, the encoding will be left unset, which means UTF8 is
implied (and set). The call of <strong>createDocument</strong> without any parameter will result the following code:
</p><p/><pre>
<?xml version="1.0"?>
</pre></dd><dt><strong><a name="item_getEncoding">getEncoding</a></strong></dt><dd><p>
returns the encoding string of the document
</p></dd><dt><strong><a name="item_getVersion">getVersion</a></strong></dt><dd><p>
returns the version string of the document
</p></dd><dt><strong><a name="item_toString">toString</a></strong></dt><dd><p><strong>toString</strong> is a deparsing function, so the DOM Tree can be translated into a string,
ready for output. The optional <strong>$format</strong> parameter sets the indenting of the output. This parameter is expected to
be an <em>integer</em> value, that specifies the number of linebreaks for each node. For more
information about the formatted output check the documentation of <em>xmlDocDumpFormatMemory</em> in <em>libxml2/tree.h</em> .
</p></dd><dt><strong><a name="item_is_valid">is_valid</a></strong></dt><dd><p>
Returns either TRUE or FALSE depending on the DOM Tree is a valid Document
or not.
</p></dd><dt><strong><a name="item_getDocumentElement">getDocumentElement</a></strong></dt><dd><p>
Returns the root element of the Document. A document can have just one root
element to contain the documents data.
</p></dd><dt><strong><a name="item_setDocumentElement">setDocumentElement</a></strong></dt><dd><p>
This function enables you to set the root element for a document. The
function supports the import of a node from a different document tree.
</p></dd><dt><strong><a name="item_createElement">createElement</a></strong></dt><dd><p>
This function creates a new Element Node bound to the DOM with the name <em>$nodename</em> .
</p></dd><dt><strong><a name="item_createElementNS">createElementNS</a></strong></dt><dd><p>
This function creates a new Element Node bound to the DOM with the name <em>$nodename</em> and placed in the given namespace.
</p></dd><dt><strong><a name="item_createTextNode">createTextNode</a></strong></dt><dd><p>
As an equivalent of <strong>createElement</strong> , but it creates a <strong>Text Node</strong> bound to the DOM.
( run in 1.693 second using v1.01-cache-2.11-cpan-39bf76dae61 )