Class XHTMLPrefixRemover

All Implemented Interfaces:
Result, Receiver

public class XHTMLPrefixRemover extends ProxyReceiver
Filter to change elements in the XHTML, SVG, or MathML namespaces so they have no prefix (that is, to make these the default namespace). This filter must be followed by a NamespaceReducer in case there are any attributes in these namespaces, as this will cause the namespace declarations to be reinstated.
  • Constructor Details

    • XHTMLPrefixRemover

      public XHTMLPrefixRemover(Receiver next)
  • Method Details

    • startElement

      public void startElement(NodeName elemName, SchemaType typeCode, Location location, int properties) throws XPathException
      Notify the start of an element Specific treatment of elements in XHTML, SVG and MathML namespaces forces a namespace to be emitted too, rather than by higher level default behaviour.
      Specified by:
      startElement in interface Receiver
      Overrides:
      startElement in class ProxyReceiver
      Parameters:
      elemName - integer code identifying the name of the element within the name pool.
      typeCode - integer code identifying the element's type within the name pool.
      location -
      properties - properties of the element node
      Throws:
      XPathException - if an error occurs
    • namespace

      public void namespace(NamespaceBindingSet namespaceBindings, int properties) throws XPathException
      Notify a namespace. Namespaces are notified after the startElement event, and before any children for the element. The namespaces that are reported are only required to include those that are different from the parent element; however, duplicates may be reported. A namespace must not conflict with any namespaces already used for element or attribute names. Any special namespaces (for XHTML, SVG and MathML) are not written out - they are specifically emitted with elements or attributes requiring them
      Specified by:
      namespace in interface Receiver
      Overrides:
      namespace in class ProxyReceiver
      Parameters:
      namespaceBindings - the prefix/uri pair representing the namespace binding
      properties - any special properties to be passed on this call
      Throws:
      XPathException - if an error occurs
    • attribute

      public void attribute(NodeName nameCode, SimpleType typeCode, CharSequence value, Location locationId, int properties) throws XPathException
      Notify an attribute. Attributes are notified after the startElement event, and before any children. Namespaces and attributes may be intermingled. Specific treatment of attributes in XHTML, SVG and MathML namespaces forces a namespace to be emitted too, rather than by higher level default behaviour.
      Specified by:
      attribute in interface Receiver
      Overrides:
      attribute in class ProxyReceiver
      Parameters:
      nameCode - The name of the attribute
      typeCode - The type of the attribute
      locationId - the location of the node in the source, or of the instruction that created it
      properties - Bit significant value. The following bits are defined:
      DISABLE_ESCAPING
      Disable escaping for this attribute
      NO_SPECIAL_CHARACTERS
      Attribute value contains no special characters
      value - the string value of the attribute
      Throws:
      XPathException - if an error occurs