XML::DOM-ecmascript
DOM-ECMASCRIPT(1)     User Contributed Perl Documentation    DOM-ECMASCRIPT(1)
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-bind-
       ing.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 Perl-
       SAX 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 pro-
       vided by many PerlSAX parsers.  PerlSAX parsers often provide addi-
       tional properties or objects, refer to your PerlSAX parser documenta-
       tion 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.
perl v5.8.0                       1999-05-26                 DOM-ECMASCRIPT(1)