| java.lang.Object org.apache.xml.utils.DOMHelper org.apache.xml.utils.DOM2Helper
Constructor Summary | |
public | DOM2Helper() Construct an instance. |
Method Summary | |
public void | checkNode(Node node) Check node to see if it was created by a DOM implementation
that this helper is intended to support. | public Document | getDocument() Query which document this helper is currently operating on. | public Element | getElementByID(String id, Document doc) Given an XML ID, return the element. | public String | getLocalNameOfNode(Node n) Returns the local name of the given node, as defined by the
XML Namespaces specification. | public String | getNamespaceOfNode(Node n) Returns the Namespace Name (Namespace URI) for the given node.
In a Level 2 DOM, you can ask the node itself. | public static Node | getParentOfNode(Node node) Get the XPath-model parent of a node. | public static boolean | isNodeAfter(Node node1, Node node2) Figure out whether node2 should be considered as being later
in the document than node1, in Document Order as defined
by the XPath model. | public void | parse(InputSource source) Parse an XML document.
Right now the Xerces DOMParser class is used. | public void | setDocument(Document doc) Specify which document this helper is currently operating on. | public boolean | supportsSAX() Returns true if the DOM implementation handled by this helper
supports the SAX ContentHandler interface. |
DOM2Helper | public DOM2Helper()(Code) | | Construct an instance.
|
checkNode | public void checkNode(Node node) throws TransformerException(Code) | | Check node to see if it was created by a DOM implementation
that this helper is intended to support. This is currently
disabled, and assumes all nodes are acceptable rather than checking
that they implement org.apache.xerces.dom.NodeImpl.
Parameters: node - The node to be tested. throws: TransformerException - if the node is not one which thisDOM2Helper can support. If we return without throwing the exception,the node is compatable. |
getElementByID | public Element getElementByID(String id, Document doc)(Code) | | Given an XML ID, return the element. This requires assistance from the
DOM and parser, and is meaningful only in the context of a DTD
or schema which declares attributes as being of type ID. This
information may or may not be available in all parsers, may or
may not be available for specific documents, and may or may not
be available when validation is not turned on.
Parameters: id - The ID to search for, as a String. Parameters: doc - The document to search within, as a DOM Document node. DOM Element node with an attribute of type ID whose valueuniquely matches the requested id string, or null if there isn'tsuch an element or if the DOM can't answer the question for otherreasons. |
getLocalNameOfNode | public String getLocalNameOfNode(Node n)(Code) | | Returns the local name of the given node, as defined by the
XML Namespaces specification. This is prepared to handle documents
built using DOM Level 1 methods by falling back upon explicitly
parsing the node name.
Parameters: n - Node to be examined String containing the local name, or null if the nodewas not assigned a Namespace. |
getNamespaceOfNode | public String getNamespaceOfNode(Node n)(Code) | | Returns the Namespace Name (Namespace URI) for the given node.
In a Level 2 DOM, you can ask the node itself. Note, however, that
doing so conflicts with our decision in getLocalNameOfNode not
to trust the that the DOM was indeed created using the Level 2
methods. If Level 1 methods were used, these two functions will
disagree with each other.
TODO: Reconcile with getLocalNameOfNode.
Parameters: n - Node to be examined String containing the Namespace URI bound to this DOM nodeat the time the Node was created. |
getParentOfNode | public static Node getParentOfNode(Node node)(Code) | | Get the XPath-model parent of a node. This version takes advantage
of the DOM Level 2 Attr.ownerElement() method; the base version we
would otherwise inherit is prepared to fall back on exhaustively
walking the document to find an Attr's parent.
Parameters: node - Node to be examined the DOM parent of the input node, if there is one, or theownerElement if the input node is an Attr, or null if the node isa Document, a DocumentFragment, or an orphan. |
isNodeAfter | public static boolean isNodeAfter(Node node1, Node node2)(Code) | | Figure out whether node2 should be considered as being later
in the document than node1, in Document Order as defined
by the XPath model. This may not agree with the ordering defined
by other XML applications.
There are some cases where ordering isn't defined, and neither are
the results of this function -- though we'll generally return true.
TODO: Make sure this does the right thing with attribute nodes!!!
Parameters: node1 - DOM Node to perform position comparison on. Parameters: node2 - DOM Node to perform position comparison on . false if node2 comes before node1, otherwise return true.You can think of this as (node1.documentOrderPosition <= node2.documentOrderPosition) . |
parse | public void parse(InputSource source) throws TransformerException(Code) | | Parse an XML document.
Right now the Xerces DOMParser class is used. This needs
fixing, either via jaxp, or via some other, standard method.
The application can use this method to instruct the SAX parser
to begin parsing an XML document from any valid input
source (a character stream, a byte stream, or a URI).
Applications may not invoke this method while a parse is in
progress (they should create a new Parser instead for each
additional XML document). Once a parse is complete, an
application may reuse the same Parser object, possibly with a
different input source.
Parameters: source - The input source for the top-level of theXML document. throws: TransformerException - if any checked exception is thrown. |
setDocument | public void setDocument(Document doc)(Code) | | Specify which document this helper is currently operating on.
Parameters: doc - The DOM Document node for this document. See Also: DOM2Helper.getDocument |
supportsSAX | public boolean supportsSAX()(Code) | | Returns true if the DOM implementation handled by this helper
supports the SAX ContentHandler interface.
true (since Xerces does). |
|
|