Class XmlSchemaDocumentNode<U>

java.lang.Object
org.apache.ws.commons.schema.docpath.XmlSchemaDocumentNode<U>

public final class XmlSchemaDocumentNode<U> extends Object
The XmlSchemaDocumentNode represents a node in the XML Schema as it is used by an XML document. As XmlSchemaPathFinder walks through an XML document, it builds XmlSchemaPathNodes representing the path walked, and XmlSchemaDocumentNodes representing where the XML document's elements fall in the XML Schema's sequences, choices, and all groups.

While XmlSchemaStateMachineNodes may loop back on themselves, the XmlSchemaDocumentNodes will not. Likewise, the document nodes form a tree that represent the XML Schema as it is applied to the document.

If a single node has multiple occurrences, the children of each occurrence can be retrieved by calling getChildren(int). getChildren() returns the child nodes for the final occurrence.

  • Field Details

  • Constructor Details

  • Method Details

    • getStateMachineNode

      public XmlSchemaStateMachineNode getStateMachineNode()
      Returns the XmlSchemaStateMachineNode representing the place in the XML Schema that this XmlSchemaDocumentNode represents.
    • getParent

      public XmlSchemaDocumentNode<U> getParent()
      The XmlSchemaDocumentNode representing this one's immediate parent.
    • getChildren

      public SortedMap<Integer,XmlSchemaDocumentNode<U>> getChildren()
      Retrieves the children in the last occurrence of this node, mapped to their relative position.
    • getChildren

      public SortedMap<Integer,XmlSchemaDocumentNode<U>> getChildren(int iteration)
      Retrieves the children in the provided occurrence of this node, mapped to their relative position.
      Parameters:
      iteration - The 1-based occurrence to retrieve children for.
    • getReceivedContent

      boolean getReceivedContent()
      Indicates whether an element has text in it.
    • setReceivedContent

      void setReceivedContent(boolean receivedContent)
      Sets whether the element has text in it.
      Parameters:
      receivedContent -
    • addVisitor

      void addVisitor(XmlSchemaPathNode<U,?> path)
      A visitor is a CHILD or SIBLING XmlSchemaPathNode entering this XmlSchemaDocumentNode. This is used to keep track of how many occurrences are active via the current path winding through the schema.
    • removeVisitor

      boolean removeVisitor(XmlSchemaPathNode<U,?> path)
    • getIteration

      public int getIteration()
      The total number of occurrences of this XmlSchemaDocumentNode in the underlying document.
    • getMinOccurs

      public long getMinOccurs()
      Shortcut for calling getStateMachineNode().getMinOccurs().
      See Also:
    • getMaxOccurs

      public long getMaxOccurs()
      Shortcut for calling getStateMachineNode().getMaxOccurs().
      See Also:
    • getSequencePosition

      int getSequencePosition()
    • set

      void set(XmlSchemaDocumentNode<U> parent, XmlSchemaStateMachineNode stateMachineNode)
    • getUserDefinedContent

      public U getUserDefinedContent()
      Retrieves any user-defined content attached to this XmlSchemaDocumentNode, or null if none.
    • setUserDefinedContent

      public void setUserDefinedContent(U userDefinedContent)
      Attaches user-defined content to this XmlSchemaDocumentNode.