org.apache.xmlbeans

## Class XmlObject.Factory

- java.lang.Object
- - org.apache.xmlbeans.XmlObject.Factory

- Enclosing interface:
    XmlObject

      public static final class XmlObject.Factory
      extends java.lang.Object

  Static factory class for creating new instances. Note that if a type can be inferred from the XML being loaded (for example, by recognizing the document element QName), then the instance returned by a factory will have the inferred type. Otherwise the Factory will returned an untyped document.

- - ### Method Summary

    All Methods Static Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `static DOMImplementation` | `newDomImplementation()` Creates a new DOMImplementation object
    `static DOMImplementation` | `newDomImplementation(XmlOptions options)` Creates a new DOMImplementation object, taking options
    `static XmlObject` | `newInstance()` Creates a new, completely empty instance.
    `static XmlObject` | `newInstance(XmlOptions options)` Creates a new, completely empty instance, specifying options for the root element's document type and/or whether to validate value facets as they are set.
    `static org.apache.xmlbeans.xml.stream.XMLInputStream` | `newValidatingXMLInputStream(org.apache.xmlbeans.xml.stream.XMLInputStream xis)` Deprecated. XMLInputStream was deprecated by XMLStreamReader from STaX - jsr173 API.
    `static org.apache.xmlbeans.xml.stream.XMLInputStream` | `newValidatingXMLInputStream(org.apache.xmlbeans.xml.stream.XMLInputStream xis, XmlOptions options)` Deprecated. XMLInputStream was deprecated by XMLStreamReader from STaX - jsr173 API.
    `static XmlObject` | `newValue(java.lang.Object obj)` Creates an immutable `XmlObject` value
    `static XmlSaxHandler` | `newXmlSaxHandler()` Returns an `XmlSaxHandler` that can load an XmlObject from SAX events.
    `static XmlSaxHandler` | `newXmlSaxHandler(XmlOptions options)` Returns an `XmlSaxHandler` that can load an XmlObject from SAX events.
    `static XmlObject` | `parse(java.io.File file)` Parses the given `File` as XML.
    `static XmlObject` | `parse(java.io.File file, XmlOptions options)` Parses the given `File` as XML.
    `static XmlObject` | `parse(java.io.InputStream is)` Decodes and parses the given `InputStream` as XML.
    `static XmlObject` | `parse(java.io.InputStream is, XmlOptions options)` Decodes and parses the given `InputStream` as XML.
    `static XmlObject` | `parse(Node node)` Converts the given DOM `Node` into an XmlObject.
    `static XmlObject` | `parse(Node node, XmlOptions options)` Converts the given DOM `Node` into an XmlObject.
    `static XmlObject` | `parse(java.io.Reader r)` Parses the given `Reader` as XML.
    `static XmlObject` | `parse(java.io.Reader r, XmlOptions options)` Parses the given `Reader` as XML.
    `static XmlObject` | `parse(java.lang.String xmlAsString)` Parses the given `String` as XML.
    `static XmlObject` | `parse(java.lang.String xmlAsString, XmlOptions options)` Parses the given `String` as XML.
    `static XmlObject` | `parse(java.net.URL u)` Downloads the given `URL` as XML.
    `static XmlObject` | `parse(java.net.URL u, XmlOptions options)` Downloads the given `URL` as XML.
    `static XmlObject` | `parse(org.apache.xmlbeans.xml.stream.XMLInputStream xis)` Deprecated. XMLInputStream was deprecated by XMLStreamReader from STaX - jsr173 API.
    `static XmlObject` | `parse(org.apache.xmlbeans.xml.stream.XMLInputStream xis, XmlOptions options)` Deprecated. XMLInputStream was deprecated by XMLStreamReader from STaX - jsr173 API.
    `static XmlObject` | `parse(javax.xml.stream.XMLStreamReader xsr)` Decodes and parses the given `XMLStreamReader` as XML.
    `static XmlObject` | `parse(javax.xml.stream.XMLStreamReader xsr, XmlOptions options)` Parses the given `XMLStreamReader` as XML.

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

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

- - ### Method Detail

    - #### newInstance

          public static XmlObject newInstance()

      Creates a new, completely empty instance.

    - #### newInstance

          public static XmlObject newInstance(XmlOptions options)

      Creates a new, completely empty instance, specifying options for the root element's document type and/or whether to validate value facets as they are set.

      Use the options parameter to specify the following:

      To specify this | Use this method
      --- | ---
      The document type for the root element. | `XmlOptions.setDocumentType(org.apache.xmlbeans.SchemaType)`
      Whether value facets should be checked as they are set. | `XmlOptions.setValidateOnSet()`

      Parameters:
        `options` - Options specifying root document type and/or value facet checking.
      Returns:
        A new, empty instance of XmlObject.

  - #### newValue

        public static XmlObject newValue(java.lang.Object obj)

    Creates an immutable `XmlObject` value

  - #### parse

        public static XmlObject parse(java.lang.String xmlAsString)
                               throws XmlException

    Parses the given `String` as XML.
    Throws:
      `XmlException`

  - #### parse

        public static XmlObject parse(java.lang.String xmlAsString,
                                      XmlOptions options)
                               throws XmlException

    Parses the given `String` as XML. Use the options parameter to specify the following:

    To specify this | Use this method
    --- | ---
    The document type for the root element. | `XmlOptions.setDocumentType(org.apache.xmlbeans.SchemaType)`
    To place line number annotations in the store when parsing a document. | `XmlOptions.setLoadLineNumbers()`
    To replace the document element with the specified QName when parsing. | `XmlOptions.setLoadReplaceDocumentElement(javax.xml.namespace.QName)`
    To strip all insignificant whitespace when parsing a document. | `XmlOptions.setLoadStripWhitespace()`
    To strip all comments when parsing a document. | `XmlOptions.setLoadStripComments()`
    To strip all processing instructions when parsing a document. | `XmlOptions.setLoadStripProcinsts()`
    A map of namespace URI substitutions to use when parsing a document. | `XmlOptions.setLoadSubstituteNamespaces(java.util.Map)`
    Additional namespace mappings to be added when parsing a document. | `XmlOptions.setLoadAdditionalNamespaces(java.util.Map)`
    To trim the underlying XML text buffer immediately after parsing a document, resulting in a smaller memory footprint. | `XmlOptions.setLoadTrimTextBuffer()`

    Parameters:
      `xmlAsString` - The string to parse.
      `options` - Options as specified.
    Returns:
      A new instance containing the specified XML.
    Throws:
      `XmlException`

  - #### parse

        public static XmlObject parse(java.io.File file)
                               throws XmlException,
                                      java.io.IOException

    Parses the given `File` as XML.
    Throws:
      `XmlException`
      `java.io.IOException`

  - #### parse

        public static XmlObject parse(java.io.File file,
                                      XmlOptions options)
                               throws XmlException,
                                      java.io.IOException

    Parses the given `File` as XML.
    Throws:
      `XmlException`
      `java.io.IOException`

  - #### parse

        public static XmlObject parse(java.net.URL u)
                               throws XmlException,
                                      java.io.IOException

    Downloads the given `URL` as XML.
    Throws:
      `XmlException`
      `java.io.IOException`

  - #### parse

        public static XmlObject parse(java.net.URL u,
                                      XmlOptions options)
                               throws XmlException,
                                      java.io.IOException

    Downloads the given `URL` as XML.
    Throws:
      `XmlException`
      `java.io.IOException`

  - #### parse

        public static XmlObject parse(java.io.InputStream is)
                               throws XmlException,
                                      java.io.IOException

    Decodes and parses the given `InputStream` as XML.
    Throws:
      `XmlException`
      `java.io.IOException`

  - #### parse

        public static XmlObject parse(javax.xml.stream.XMLStreamReader xsr)
                               throws XmlException

    Decodes and parses the given `XMLStreamReader` as XML.
    Throws:
      `XmlException`

  - #### parse

        public static XmlObject parse(java.io.InputStream is,
                                      XmlOptions options)
                               throws XmlException,
                                      java.io.IOException

    Decodes and parses the given `InputStream` as XML. Use the options parameter to specify the following:

    To specify this | Use this method
    --- | ---
    The character encoding to use when parsing or writing a document. | `XmlOptions.setCharacterEncoding(java.lang.String)`
    The document type for the root element. | `XmlOptions.setDocumentType(org.apache.xmlbeans.SchemaType)`
    Place line number annotations in the store when parsing a document. | `XmlOptions.setLoadLineNumbers()`
    Replace the document element with the specified QName when parsing. | `XmlOptions.setLoadReplaceDocumentElement(javax.xml.namespace.QName)`
    Strip all insignificant whitespace when parsing a document. | `XmlOptions.setLoadStripWhitespace()`
    Strip all comments when parsing a document. | `XmlOptions.setLoadStripComments()`
    Strip all processing instructions when parsing a document. | `XmlOptions.setLoadStripProcinsts()`
    Set a map of namespace URI substitutions to use when parsing a document. | `XmlOptions.setLoadSubstituteNamespaces(java.util.Map)`
    Set additional namespace mappings to be added when parsing a document. | `XmlOptions.setLoadAdditionalNamespaces(java.util.Map)`
    Trim the underlying XML text buffer immediately after parsing a document, resulting in a smaller memory footprint. | `XmlOptions.setLoadTrimTextBuffer()`

    Throws:
      `XmlException`
      `java.io.IOException`

  - #### parse

        public static XmlObject parse(javax.xml.stream.XMLStreamReader xsr,
                                      XmlOptions options)
                               throws XmlException

    Parses the given `XMLStreamReader` as XML.
    Throws:
      `XmlException`

  - #### parse

        public static XmlObject parse(java.io.Reader r)
                               throws XmlException,
                                      java.io.IOException

    Parses the given `Reader` as XML.
    Throws:
      `XmlException`
      `java.io.IOException`

  - #### parse

        public static XmlObject parse(java.io.Reader r,
                                      XmlOptions options)
                               throws XmlException,
                                      java.io.IOException

    Parses the given `Reader` as XML.
    Throws:
      `XmlException`
      `java.io.IOException`

  - #### parse

        public static XmlObject parse(Node node)
                               throws XmlException

    Converts the given DOM `Node` into an XmlObject.
    Throws:
      `XmlException`

  - #### parse

        public static XmlObject parse(Node node,
                                      XmlOptions options)
                               throws XmlException

    Converts the given DOM `Node` into an XmlObject.
    Throws:
      `XmlException`

  - #### parse

        public static XmlObject parse(org.apache.xmlbeans.xml.stream.XMLInputStream xis)
                               throws XmlException,
                                      org.apache.xmlbeans.xml.stream.XMLStreamException

    Deprecated. XMLInputStream was deprecated by XMLStreamReader from STaX - jsr173 API.
    Loads the given `XMLInputStream` into an XmlObject.
    Throws:
      `XmlException`
      `org.apache.xmlbeans.xml.stream.XMLStreamException`

  - #### parse

        public static XmlObject parse(org.apache.xmlbeans.xml.stream.XMLInputStream xis,
                                      XmlOptions options)
                               throws XmlException,
                                      org.apache.xmlbeans.xml.stream.XMLStreamException

    Deprecated. XMLInputStream was deprecated by XMLStreamReader from STaX - jsr173 API.
    Loads the given `XMLInputStream` into an XmlObject.
    Throws:
      `XmlException`
      `org.apache.xmlbeans.xml.stream.XMLStreamException`

  - #### newXmlSaxHandler

        public static XmlSaxHandler newXmlSaxHandler()

    Returns an `XmlSaxHandler` that can load an XmlObject from SAX events.

  - #### newXmlSaxHandler

        public static XmlSaxHandler newXmlSaxHandler(XmlOptions options)

    Returns an `XmlSaxHandler` that can load an XmlObject from SAX events.

  - #### newDomImplementation

        public static DOMImplementation newDomImplementation()

    Creates a new DOMImplementation object

  - #### newDomImplementation

        public static DOMImplementation newDomImplementation(XmlOptions options)

    Creates a new DOMImplementation object, taking options

  - #### newValidatingXMLInputStream

        public static org.apache.xmlbeans.xml.stream.XMLInputStream newValidatingXMLInputStream(org.apache.xmlbeans.xml.stream.XMLInputStream xis)
                                                                                         throws XmlException,
                                                                                                org.apache.xmlbeans.xml.stream.XMLStreamException

    Deprecated. XMLInputStream was deprecated by XMLStreamReader from STaX - jsr173 API.
    Returns a new validating `XMLInputStream` that throws exceptions when the input is not valid.
    Throws:
      `XmlException`
      `org.apache.xmlbeans.xml.stream.XMLStreamException`

  - #### newValidatingXMLInputStream

        public static org.apache.xmlbeans.xml.stream.XMLInputStream newValidatingXMLInputStream(org.apache.xmlbeans.xml.stream.XMLInputStream xis,
                                                                                                XmlOptions options)
                                                                                         throws XmlException,
                                                                                                org.apache.xmlbeans.xml.stream.XMLStreamException

    Deprecated. XMLInputStream was deprecated by XMLStreamReader from STaX - jsr173 API.
    Returns a new validating `XMLInputStream` that throws exceptions when the input is not valid, specifying options for the root element's document type and/or the collection object to use as an error listener while validating.

    Use the options parameter to specify the following:

    - A collection instance that should be used as an error listener during compilation, as described in `XmlOptions.setErrorListener(java.util.Collection)`.
    - The document type for the root element, as described in `XmlOptions.setDocumentType(SchemaType)`.
    Parameters:
      `xis` - The basis for the new XMLInputStream.
      `options` - Options specifying root document type and/or an error listener.
    Returns:
      A new validating XMLInputStream.
    Throws:
      `XmlException`
      `org.apache.xmlbeans.xml.stream.XMLStreamException`