Provided by: libxml-grove-perl_0.46alpha-12_all bug

NAME

       DOM-ecmascript - XML::Grove and ECMA Script Language Binding

XML::Grove and DOM Level One

       XML::Grove is similar in concept to the ECMA Script Language Binding to DOM Level 1 Core
       (Appendix E of the DOM Recommendation).

       <http://www.w3.org/TR/REC-DOM-Level-1/ ecma-script-language-binding.html>

       The ECMA Script Language Binding presents DOM properties as ECMA Script object properties.
       The same is true for XML::Grove, XML::Grove presents DOM properties as Perl blessed
       hashes.

       The biggest difference between the ECMA Script Language Binding and XML::Grove is that
       XML::Grove uses a Perl hash for nodes, Perl arrays for NodeLists, Perl hashes for
       NamedNodeLists so those object classes don't exist in XML::Grove.  Because those classes
       don't exist, you use ordinary Perl syntax for manipulating the DOM properties (lists and
       named node lists) instead of methods like `"nextSibling()"' or `"replaceChild()"'.
       Element attributes in XML::Grove are stored in Perl hashes; attribute types are available
       through the document object.

       Another difference is that XML::Grove attempts to marry the PerlSAX and DOM naming so that
       less (no?) name-changing occurs between using PerlSAX interfaces and filters and DOM
       modules.  Where conflicts occur, the PerlSAX naming is used.

       XML::Grove uses a blessed hash for nodes, so the node type is available using Perl's
       `"ref()"' instead of using a `"nodeType()"' method and all class names are prefixed with
       `"XML::Grove::"'.

       The following object descriptions are the most basic and common provided by many PerlSAX
       parsers.  PerlSAX parsers often provide additional properties or objects, refer to your
       PerlSAX parser documentation for details.

Document Object Model Level 1 Core

   Object XML::Grove::Document
       Contents    The children of this object.  This property is an array.

       Entities    The entities declared in this document.  This property is a hash of
                   XML::Grove::Entity objects keyed by entity name.

       Notations   The notations declared in this document.  This property is a hash of
                   XML::Grove::Notation objects keyed by notation name.

   Object XML::Grove::Element
       Name        The tag type name for this element.  This property is a string.

       Attributes  The attributes for this element.  This property is a hash and it's hash values
                   are strings (or arrays with some grove builders).

       Contents    The children of this object.  This property is an array of XML::Grove objects.

   Object XML::Grove::Characters
       Data        The text of the character data.  This property is a string.

   Object XML::Grove::Comment
       Data        The text of the character data.  This property is a string.

   Object XML::Grove::CData
       The "CData" object is called a "CDATASection" in DOM.

       Data        The text of the character data.  This property is a string.

   Object XML::Grove::Notation
       Name        The name of this notation.  This property is a string.

       SystemId    The system identifier of this notation.  This property is a string.

       PublicId    The public identifier of this notation.  This property is a string.

   Object XML::Grove::Entity
       Name        The name of this entity.  This property is a string.

       SystemId    The system identifier of this notation.  This property is a string.

       PublicId    The public identifier of this notation.  This property is a string.

       Notation    The notation declared for this entity.  This property is either the name of
                   the notation as a string or an "XML::Grove::Notation" object.

   Object XML::Grove::PI
       The "PI" object is called a "ProcessingInstruction" in DOM.

       Target      The target of the processing instruction.  This property is a string.

       Data        The text of the processing instruction.  This property is a string.