Class NamespaceBinding

java.lang.Object
net.sf.saxon.om.NamespaceBinding

public final class NamespaceBinding extends Object
Represents the binding of a prefix to a URI. Also, in some contexts, represents an unbinding, by virtue of the URI being set to a zero length string.
Since:
9.4
  • Field Details

  • Constructor Details

    • NamespaceBinding

      public NamespaceBinding(String prefix, String uri)
      Create a binding of a prefix to a URI
      Parameters:
      prefix - the prefix: either an NCName, or a zero-length string to bind the default namespace. Must not be null.
      uri - the namespace URI: either a URI, or a zero-length string to unbind the prefix. Must not be null.
  • Method Details

    • makeNamespaceBinding

      public static NamespaceBinding makeNamespaceBinding(CharSequence prefix, CharSequence uri)
      Create a binding of a prefix to a URI. Static factory method for the convenience of compiled bytecode; reuses standard NamespaceBinding objects where possible
      Parameters:
      prefix - the prefix: either an NCName, or a zero-length string to bind the default namespace. Must not be null.
      uri - the namespace URI: either a URI, or a zero-length string to unbind the prefix. Must not be null.
      Returns:
      the namespace binding object
    • getPrefix

      public String getPrefix()
      Get the prefix part of the binding
      Returns:
      the prefix. Never null. The zero-length string indicates a binding for the default namespace.
    • getURI

      public String getURI()
      Get the URI part of the binding
      Returns:
      the URI. Never null. The zero-length string indicates an unbinding of the prefix. For the default namespace (prefix="") this indicates that the prefix refers to names in no namespace; for other prefixes, it indicates that the prefix is not bound to any namespace and therefore cannot be used.
    • isXmlNamespace

      public boolean isXmlNamespace()
      Ask whether this is a binding for the XML namespace
      Returns:
      true if this is the binding of the prefix "xml" to the standard XML namespace.
    • isDefaultUndeclaration

      public boolean isDefaultUndeclaration()
      Ask whether this is an undeclaration of the default prefix, that is, a namespace binding corresponding to xmlns=""
      Returns:
      true if this corresponding to xmlns=""
    • equals

      public boolean equals(Object obj)
      Test if this namespace binding is the same as another
      Overrides:
      equals in class Object
      Parameters:
      obj - the comparand
      Returns:
      true if the comparand is a Namespace binding of the same prefix to the same URI
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object