Package groovy.xml

# Class XmlUtil

java.lang.Object
groovy.xml.XmlUtil

    public class XmlUtil
    extends java.lang.Object

Used for pretty printing XML content and other XML related utilities.

- ## Constructor Summary

  Constructors
  Constructor | Description
  --- | ---
  `XmlUtil()` |

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `static java.lang.String` | `escapeControlCharacters​(java.lang.String orig)` | Escape control characters (below 0x20) with their XML entities, e.g.
  `static java.lang.String` | `escapeXml​(java.lang.String orig)` | Escape the following characters `" ' & < >` with their XML entities, e.g.
  `static javax.xml.parsers.SAXParser` | `newSAXParser​(java.lang.String schemaLanguage, boolean namespaceAware, boolean validating, java.io.File schema)` | Factory method to create a SAXParser configured to validate according to a particular schema language and a File containing the schema to validate against.
  `static javax.xml.parsers.SAXParser` | `newSAXParser​(java.lang.String schemaLanguage, boolean namespaceAware, boolean validating, java.net.URL schema)` | Factory method to create a SAXParser configured to validate according to a particular schema language and an URL pointing to the schema to validate against.
  `static javax.xml.parsers.SAXParser` | `newSAXParser​(java.lang.String schemaLanguage, boolean namespaceAware, boolean validating, javax.xml.transform.Source... schemas)` | Factory method to create a SAXParser configured to validate according to a particular schema language and optionally providing the schema sources to validate with.
  `static javax.xml.parsers.SAXParser` | `newSAXParser​(java.lang.String schemaLanguage, java.io.File schema)` | Factory method to create a SAXParser configured to validate according to a particular schema language and a File containing the schema to validate against.
  `static javax.xml.parsers.SAXParser` | `newSAXParser​(java.lang.String schemaLanguage, java.net.URL schema)` | Factory method to create a SAXParser configured to validate according to a particular schema language and an URL pointing to the schema to validate against.
  `static javax.xml.parsers.SAXParser` | `newSAXParser​(java.lang.String schemaLanguage, javax.xml.transform.Source... schemas)` | Factory method to create a SAXParser configured to validate according to a particular schema language and optionally providing the schema sources to validate with.
  `static java.lang.String` | `serialize​(Writable writable)` | Return a pretty String version of the XML content produced by the Writable.
  `static void` | `serialize​(Writable writable, java.io.OutputStream os)` | Write a pretty version of the XML content produced by the Writable to the OutputStream.
  `static void` | `serialize​(Writable writable, java.io.Writer w)` | Write a pretty version of the XML content produced by the Writable to the Writer.
  `static java.lang.String` | `serialize​(Node node)` | Return a pretty String version of the Node.
  `static void` | `serialize​(Node node, java.io.OutputStream os)` | Write a pretty version of the Node to the OutputStream.
  `static void` | `serialize​(Node node, java.io.Writer w)` | Write a pretty version of the Node to the Writer.
  `static java.lang.String` | `serialize​(GPathResult node)` | Return a pretty version of the GPathResult.
  `static void` | `serialize​(GPathResult node, java.io.OutputStream os)` | Write a pretty version of the GPathResult to the OutputStream.
  `static void` | `serialize​(GPathResult node, java.io.Writer w)` | Write a pretty version of the GPathResult to the Writer.
  `static java.lang.String` | `serialize​(java.lang.String xmlString)` | Return a pretty version of the XML content contained in the given String.
  `static void` | `serialize​(java.lang.String xmlString, java.io.OutputStream os)` | Write a pretty version of the given XML string to the OutputStream.
  `static void` | `serialize​(java.lang.String xmlString, java.io.Writer w)` | Write a pretty version of the given XML string to the Writer.
  `static java.lang.String` | `serialize​(org.w3c.dom.Element element)` | Return a pretty String version of the Element.
  `static void` | `serialize​(org.w3c.dom.Element element, java.io.OutputStream os)` | Write a pretty version of the Element to the OutputStream.
  `static void` | `serialize​(org.w3c.dom.Element element, java.io.Writer w)` | Write a pretty version of the Element to the Writer.

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### XmlUtil

    public XmlUtil()

- ## Method Details

  - ### serialize

    public static java.lang.String serialize​(org.w3c.dom.Element element)
    Return a pretty String version of the Element.
    Parameters:
      `element` - the Element to serialize
    Returns:
      the pretty String representation of the Element

  - ### serialize

    public static void serialize​(org.w3c.dom.Element element, java.io.OutputStream os)
    Write a pretty version of the Element to the OutputStream.
    Parameters:
      `element` - the Element to serialize
      `os` - the OutputStream to write to

  - ### serialize

    public static void serialize​(org.w3c.dom.Element element, java.io.Writer w)
    Write a pretty version of the Element to the Writer.
    Parameters:
      `element` - the Element to serialize
      `w` - the Writer to write to

  - ### serialize

    public static java.lang.String serialize​(Node node)
    Return a pretty String version of the Node.
    Parameters:
      `node` - the Node to serialize
    Returns:
      the pretty String representation of the Node

  - ### serialize

    public static void serialize​(Node node, java.io.OutputStream os)
    Write a pretty version of the Node to the OutputStream.
    Parameters:
      `node` - the Node to serialize
      `os` - the OutputStream to write to

  - ### serialize

    public static void serialize​(Node node, java.io.Writer w)
    Write a pretty version of the Node to the Writer.
    Parameters:
      `node` - the Node to serialize
      `w` - the Writer to write to

  - ### serialize

    public static java.lang.String serialize​(GPathResult node)
    Return a pretty version of the GPathResult.
    Parameters:
      `node` - a GPathResult to serialize to a String
    Returns:
      the pretty String representation of the GPathResult

  - ### serialize

    public static void serialize​(GPathResult node, java.io.OutputStream os)
    Write a pretty version of the GPathResult to the OutputStream.
    Parameters:
      `node` - a GPathResult to serialize
      `os` - the OutputStream to write to

  - ### serialize

    public static void serialize​(GPathResult node, java.io.Writer w)
    Write a pretty version of the GPathResult to the Writer.
    Parameters:
      `node` - a GPathResult to serialize
      `w` - the Writer to write to

  - ### serialize

    public static java.lang.String serialize​(Writable writable)
    Return a pretty String version of the XML content produced by the Writable.
    Parameters:
      `writable` - the Writable to serialize
    Returns:
      the pretty String representation of the content from the Writable

  - ### serialize

    public static void serialize​(Writable writable, java.io.OutputStream os)
    Write a pretty version of the XML content produced by the Writable to the OutputStream.
    Parameters:
      `writable` - the Writable to serialize
      `os` - the OutputStream to write to

  - ### serialize

    public static void serialize​(Writable writable, java.io.Writer w)
    Write a pretty version of the XML content produced by the Writable to the Writer.
    Parameters:
      `writable` - the Writable to serialize
      `w` - the Writer to write to

  - ### serialize

    public static java.lang.String serialize​(java.lang.String xmlString)
    Return a pretty version of the XML content contained in the given String.
    Parameters:
      `xmlString` - the String to serialize
    Returns:
      the pretty String representation of the original content

  - ### serialize

    public static void serialize​(java.lang.String xmlString, java.io.OutputStream os)
    Write a pretty version of the given XML string to the OutputStream.
    Parameters:
      `xmlString` - the String to serialize
      `os` - the OutputStream to write to

  - ### serialize

    public static void serialize​(java.lang.String xmlString, java.io.Writer w)
    Write a pretty version of the given XML string to the Writer.
    Parameters:
      `xmlString` - the String to serialize
      `w` - the Writer to write to

  - ### newSAXParser

    public static javax.xml.parsers.SAXParser newSAXParser​(java.lang.String schemaLanguage, javax.xml.transform.Source... schemas) throws org.xml.sax.SAXException, javax.xml.parsers.ParserConfigurationException
    Factory method to create a SAXParser configured to validate according to a particular schema language and optionally providing the schema sources to validate with. The created SAXParser will be namespace-aware and not validate against DTDs.
    Parameters:
      `schemaLanguage` - the schema language used, e.g. XML Schema or RelaxNG (as per the String representation in javax.xml.XMLConstants)
      `schemas` - the schemas to validate against
    Returns:
      the created SAXParser
    Throws:
      `org.xml.sax.SAXException`
      `javax.xml.parsers.ParserConfigurationException`
    Since:
      1.8.7
    See Also:
      `newSAXParser(String, boolean, boolean, Source...)`

  - ### newSAXParser

    public static javax.xml.parsers.SAXParser newSAXParser​(java.lang.String schemaLanguage, boolean namespaceAware, boolean validating, javax.xml.transform.Source... schemas) throws org.xml.sax.SAXException, javax.xml.parsers.ParserConfigurationException
    Factory method to create a SAXParser configured to validate according to a particular schema language and optionally providing the schema sources to validate with.
    Parameters:
      `schemaLanguage` - the schema language used, e.g. XML Schema or RelaxNG (as per the String representation in javax.xml.XMLConstants)
      `namespaceAware` - will the parser be namespace aware
      `validating` - will the parser also validate against DTDs
      `schemas` - the schemas to validate against
    Returns:
      the created SAXParser
    Throws:
      `org.xml.sax.SAXException`
      `javax.xml.parsers.ParserConfigurationException`
    Since:
      1.8.7

  - ### newSAXParser

    public static javax.xml.parsers.SAXParser newSAXParser​(java.lang.String schemaLanguage, java.io.File schema) throws org.xml.sax.SAXException, javax.xml.parsers.ParserConfigurationException
    Factory method to create a SAXParser configured to validate according to a particular schema language and a File containing the schema to validate against. The created SAXParser will be namespace-aware and not validate against DTDs.
    Parameters:
      `schemaLanguage` - the schema language used, e.g. XML Schema or RelaxNG (as per the String representation in javax.xml.XMLConstants)
      `schema` - a file containing the schema to validate against
    Returns:
      the created SAXParser
    Throws:
      `org.xml.sax.SAXException`
      `javax.xml.parsers.ParserConfigurationException`
    Since:
      1.8.7
    See Also:
      `newSAXParser(String, boolean, boolean, File)`

  - ### newSAXParser

    public static javax.xml.parsers.SAXParser newSAXParser​(java.lang.String schemaLanguage, boolean namespaceAware, boolean validating, java.io.File schema) throws org.xml.sax.SAXException, javax.xml.parsers.ParserConfigurationException
    Factory method to create a SAXParser configured to validate according to a particular schema language and a File containing the schema to validate against.
    Parameters:
      `schemaLanguage` - the schema language used, e.g. XML Schema or RelaxNG (as per the String representation in javax.xml.XMLConstants)
      `namespaceAware` - will the parser be namespace aware
      `validating` - will the parser also validate against DTDs
      `schema` - a file containing the schema to validate against
    Returns:
      the created SAXParser
    Throws:
      `org.xml.sax.SAXException`
      `javax.xml.parsers.ParserConfigurationException`
    Since:
      1.8.7

  - ### newSAXParser

    public static javax.xml.parsers.SAXParser newSAXParser​(java.lang.String schemaLanguage, java.net.URL schema) throws org.xml.sax.SAXException, javax.xml.parsers.ParserConfigurationException
    Factory method to create a SAXParser configured to validate according to a particular schema language and an URL pointing to the schema to validate against. The created SAXParser will be namespace-aware and not validate against DTDs.
    Parameters:
      `schemaLanguage` - the schema language used, e.g. XML Schema or RelaxNG (as per the String representation in javax.xml.XMLConstants)
      `schema` - a URL pointing to the schema to validate against
    Returns:
      the created SAXParser
    Throws:
      `org.xml.sax.SAXException`
      `javax.xml.parsers.ParserConfigurationException`
    Since:
      1.8.7
    See Also:
      `newSAXParser(String, boolean, boolean, URL)`

  - ### newSAXParser

    public static javax.xml.parsers.SAXParser newSAXParser​(java.lang.String schemaLanguage, boolean namespaceAware, boolean validating, java.net.URL schema) throws org.xml.sax.SAXException, javax.xml.parsers.ParserConfigurationException
    Factory method to create a SAXParser configured to validate according to a particular schema language and an URL pointing to the schema to validate against.
    Parameters:
      `schemaLanguage` - the schema language used, e.g. XML Schema or RelaxNG (as per the String representation in javax.xml.XMLConstants)
      `namespaceAware` - will the parser be namespace aware
      `validating` - will the parser also validate against DTDs
      `schema` - a URL pointing to the schema to validate against
    Returns:
      the created SAXParser
    Throws:
      `org.xml.sax.SAXException`
      `javax.xml.parsers.ParserConfigurationException`
    Since:
      1.8.7

  - ### escapeXml

    public static java.lang.String escapeXml​(java.lang.String orig)
    Escape the following characters `" ' & < >` with their XML entities, e.g. `"bread" & "butter"` becomes `&quot;bread&quot; &amp; &quot;butter&quot`. Notes:
    - Supports only the five basic XML entities (gt, lt, quot, amp, apos)
    - Does not escape control characters
    - Does not support DTDs or external entities
    - Does not treat surrogate pairs specially
    - Does not perform Unicode validation on its input
    Parameters:
      `orig` - the original String
    Returns:
      A new string in which all characters that require escaping have been replaced with the corresponding XML entities.
    See Also:
      `escapeControlCharacters(String)`

  - ### escapeControlCharacters

    public static java.lang.String escapeControlCharacters​(java.lang.String orig)
    Escape control characters (below 0x20) with their XML entities, e.g. carriage return (`Ctrl-M or \r`) becomes `&#13;` Notes:
    - Does not escape non-ascii characters above 0x7e
    - Does not treat surrogate pairs specially
    - Does not perform Unicode validation on its input
    Parameters:
      `orig` - the original String
    Returns:
      A new string in which all characters that require escaping have been replaced with the corresponding XML entities.
    See Also:
      `escapeXml(String)`