Class XPathContext

java.lang.Object
org.xmlunit.diff.XPathContext
All Implemented Interfaces:
Cloneable

public class XPathContext extends Object implements Cloneable
Helper class that keeps track of the XPath of matched nodes during comparison.
  • Constructor Details

    • XPathContext

      public XPathContext()
      Starts with an empty context.
    • XPathContext

      public XPathContext(Node root)
      Starts with the context of a root node.
      Parameters:
      root - the root node
    • XPathContext

      public XPathContext(Map<String,String> prefix2uri)
      Starts with an empty context and a given namespace mapping.
      Parameters:
      prefix2uri - maps from prefix to namespace URI.
    • XPathContext

      public XPathContext(Map<String,String> prefix2uri, Node root)
      Starts with the context of an optional root node and an optional namespace mapping.
      Parameters:
      prefix2uri - maps from prefix to namespace URI.
      root - optional root node that determines the initial XPath
  • Method Details

    • addAttributes

      public void addAttributes(Iterable<? extends QName> attributes)
      Adds knowledge about the current node's attributes.
      Parameters:
      attributes - attributes to add
    • addAttribute

      public void addAttribute(QName attribute)
      Adds knowledge about a single attribute of the current node.
      Parameters:
      attribute - attribute to add
    • setChildren

      public void setChildren(Iterable<? extends XPathContext.NodeInfo> children)
      Adds knowledge about the current node's children replacing existing knowledge.
      Parameters:
      children - children to add
    • appendChildren

      public void appendChildren(Iterable<? extends XPathContext.NodeInfo> children)
      Adds knowledge about the current node's children appending to the knowledge already present.
      Parameters:
      children - children to add
    • getXPath

      public String getXPath()
      Stringifies the XPath of the current node.
      Returns:
      current XPath
    • getParentXPath

      public String getParentXPath()
      Stringifies the XPath of the current node's parent.
      Returns:
      parent's XPath
    • clone

      public XPathContext clone()
      Creates a deep copy of this XPathContext.
      Overrides:
      clone in class Object