Class DOMUtil


  • public class DOMUtil
    extends Object
    Some useful utility methods. This class was modified in Xerces2 with a view to abstracting as much as possible away from the representation of the underlying parsed structure (i.e., the DOM). This was done so that, if Xerces ever adopts an in-memory representation more efficient than the DOM (such as a DTM), we should easily be able to convert our schema parsing to utilize it.
    Version:
    $Id$
    • Constructor Detail

      • DOMUtil

        protected DOMUtil()
        This class cannot be instantiated.
    • Method Detail

      • copyInto

        public static void copyInto​(Node src,
                                    Node dest)
                             throws DOMException
        Copies the source tree into the specified place in a destination tree. The source node and its children are appended as children of the destination node.

        Note: This is an iterative implementation.

        Throws:
        DOMException
      • getFirstChildElement

        public static Element getFirstChildElement​(Node parent)
        Finds and returns the first child element node.
      • getFirstVisibleChildElement

        public static Element getFirstVisibleChildElement​(Node parent)
        Finds and returns the first visible child element node.
      • getFirstVisibleChildElement

        public static Element getFirstVisibleChildElement​(Node parent,
                                                          Hashtable hiddenNodes)
        Finds and returns the first visible child element node.
      • getLastChildElement

        public static Element getLastChildElement​(Node parent)
        Finds and returns the last child element node. Overload previous method for non-Xerces node impl.
      • getLastVisibleChildElement

        public static Element getLastVisibleChildElement​(Node parent)
        Finds and returns the last visible child element node.
      • getLastVisibleChildElement

        public static Element getLastVisibleChildElement​(Node parent,
                                                         Hashtable hiddenNodes)
        Finds and returns the last visible child element node. Overload previous method for non-Xerces node impl
      • getNextSiblingElement

        public static Element getNextSiblingElement​(Node node)
        Finds and returns the next sibling element node.
      • getNextVisibleSiblingElement

        public static Element getNextVisibleSiblingElement​(Node node)
      • getNextVisibleSiblingElement

        public static Element getNextVisibleSiblingElement​(Node node,
                                                           Hashtable hiddenNodes)
      • setHidden

        public static void setHidden​(Node node)
      • setHidden

        public static void setHidden​(Node node,
                                     Hashtable hiddenNodes)
      • setVisible

        public static void setVisible​(Node node)
      • setVisible

        public static void setVisible​(Node node,
                                      Hashtable hiddenNodes)
      • isHidden

        public static boolean isHidden​(Node node)
      • isHidden

        public static boolean isHidden​(Node node,
                                       Hashtable hiddenNodes)
      • getFirstChildElement

        public static Element getFirstChildElement​(Node parent,
                                                   String elemName)
        Finds and returns the first child node with the given name.
      • getLastChildElement

        public static Element getLastChildElement​(Node parent,
                                                  String elemName)
        Finds and returns the last child node with the given name.
      • getNextSiblingElement

        public static Element getNextSiblingElement​(Node node,
                                                    String elemName)
        Finds and returns the next sibling node with the given name.
      • getFirstChildElementNS

        public static Element getFirstChildElementNS​(Node parent,
                                                     String uri,
                                                     String localpart)
        Finds and returns the first child node with the given qualified name.
      • getLastChildElementNS

        public static Element getLastChildElementNS​(Node parent,
                                                    String uri,
                                                    String localpart)
        Finds and returns the last child node with the given qualified name.
      • getNextSiblingElementNS

        public static Element getNextSiblingElementNS​(Node node,
                                                      String uri,
                                                      String localpart)
        Finds and returns the next sibling node with the given qualified name.
      • getFirstChildElement

        public static Element getFirstChildElement​(Node parent,
                                                   String[] elemNames)
        Finds and returns the first child node with the given name.
      • getLastChildElement

        public static Element getLastChildElement​(Node parent,
                                                  String[] elemNames)
        Finds and returns the last child node with the given name.
      • getNextSiblingElement

        public static Element getNextSiblingElement​(Node node,
                                                    String[] elemNames)
        Finds and returns the next sibling node with the given name.
      • getFirstChildElementNS

        public static Element getFirstChildElementNS​(Node parent,
                                                     String[][] elemNames)
        Finds and returns the first child node with the given qualified name.
      • getLastChildElementNS

        public static Element getLastChildElementNS​(Node parent,
                                                    String[][] elemNames)
        Finds and returns the last child node with the given qualified name.
      • getNextSiblingElementNS

        public static Element getNextSiblingElementNS​(Node node,
                                                      String[][] elemNames)
        Finds and returns the next sibling node with the given qualified name.
      • getFirstChildElement

        public static Element getFirstChildElement​(Node parent,
                                                   String elemName,
                                                   String attrName,
                                                   String attrValue)
        Finds and returns the first child node with the given name and attribute name, value pair.
      • getLastChildElement

        public static Element getLastChildElement​(Node parent,
                                                  String elemName,
                                                  String attrName,
                                                  String attrValue)
        Finds and returns the last child node with the given name and attribute name, value pair.
      • getNextSiblingElement

        public static Element getNextSiblingElement​(Node node,
                                                    String elemName,
                                                    String attrName,
                                                    String attrValue)
        Finds and returns the next sibling node with the given name and attribute name, value pair. Since only elements have attributes, the node returned will be of type Node.ELEMENT_NODE.
      • getChildText

        public static String getChildText​(Node node)
        Returns the concatenated child text of the specified node. This method only looks at the immediate children of type Node.TEXT_NODE or the children of any child node that is of type Node.CDATA_SECTION_NODE for the concatenation.
        Parameters:
        node - The node to look at.
      • getName

        public static String getName​(Node node)
      • getLocalName

        public static String getLocalName​(Node node)
        returns local name of this element if not null, otherwise returns the name of the node
      • getDocument

        public static Document getDocument​(Node node)
      • getAttrs

        public static Attr[] getAttrs​(Element elem)
      • getValue

        public static String getValue​(Attr attribute)
      • getPrefix

        public static String getPrefix​(Node node)
      • getNamespaceURI

        public static String getNamespaceURI​(Node node)
      • getAnnotation

        public static String getAnnotation​(Node node)
      • getSyntheticAnnotation

        public static String getSyntheticAnnotation​(Node node)
      • createDOMException

        public static DOMException createDOMException​(short code,
                                                      Throwable cause)
        Creates a DOMException. On J2SE 1.4 and above the cause for the exception will be set.
      • createLSException

        public static LSException createLSException​(short code,
                                                    Throwable cause)
        Creates an LSException. On J2SE 1.4 and above the cause for the exception will be set.