# Package org.apache.axiom.om

Contains core interfaces of the Axiom API.

In particular, this package defines interfaces for the information items identified by the XML Information Set W3C Recommendation:

Interfaces defined by Axiom.
Section | Information item | Interface
--- | --- | ---
2.1 | Document information item | `OMDocument`
2.2 | Element information item | `OMElement`
2.3 | Attribute information item | `OMAttribute`
2.4 | Processing instruction information item | `OMProcessingInstruction`
2.5 | Unexpanded entity reference information item | Not supported
2.6 | Character information item | `OMText`
2.7 | Comment information item | `OMComment`
2.8 | Document type declaration information item | `OMDocType`
2.9 | Unparsed entity information item | Not supported
2.10 | Notation information item | Not supported
2.11 | Namespace information item | `OMNamespace`

The package also contains a set of super-interfaces that define common properties and operations shared by several information items: `OMSerializable`, `OMNode` and `OMContainer`.

- Interface Summary
  Interface | Description
  --- | ---
  OMAttachmentAccessor | Interface to look up MIME parts.
  OMAttribute | Interface OMAttribute
  OMComment | Interface OMComment
  OMContainer | Captures the operations related to containment shared by both a document and an element.
  OMDataSource | Interface to arbitrary source of XML element data.
  OMDataSourceExt | Interface to a backing object that can can be read and written as XML.
  OMDocType | Interface OMDocType
  OMDocument |
  OMElement | A particular kind of node that represents an element infoset information item.
  OMEntityReference | Represents an unexpanded entity reference in an XML document.
  OMFactory | Class OMFactory
  OMInformationItem | Represents an information item in an XML document.
  OMMetaFactory | Object model meta factory.
  OMMetaFactoryLocator | Used internally by `OMAbstractFactory` to locate the `OMMetaFactory` for a given feature.
  OMMetaFactorySPI | For internal use only.
  OMNamedInformationItem | Represents an information item that has a name, more precisely a namespace URI, a local name and a prefix.
  OMNamespace | A namespace binding specifying a namespace prefix and a namespace URI.
  OMNode | Defines the base interface used by most of the XML object model within Axis.
  OMProcessingInstruction | Interface OMProcessingInstruction
  OMSerializable | Information item that can be serialized (written to an XML stream writer) and deserialized (retrieved from an XML parser) as a unit.
  OMSourcedElement | Element whose data is backed by an arbitrary Java object.
  OMText | Represents character data in an XML document.
  OMXMLParserWrapper | Interface OMXMLParserWrapper
  QNameAwareOMDataSource | Optional interface implemented by `OMDataSource` implementations that have knowledge about the local name, namespace URI and/or namespace prefix of the element they represent.

- Class Summary
  Class | Description
  --- | ---
  OMAbstractFactory | Provides instances for object model and meta factories.
  OMCloneOptions |
  OMOutputFormat | Formats options for OM Output.
  OMXMLBuilderFactory | Provides static factory methods to create various kinds of object model builders from different types of input sources.
  OMXMLStreamReaderConfiguration | Defines additional configuration options for `OMContainer.getXMLStreamReader(boolean, OMXMLStreamReaderConfiguration)`.
  XOPEncoded<T> | Represent XOP encoded data.

- Exception Summary
  Exception | Description
  --- | ---
  DeferredParsingException | Exception indicating that an operation could not be completed because it needed to read additional data from the underlying parser and that action failed.
  NodeUnavailableException | Exception indicating that a requested node cannot be returned because it is no longer available.
  OMException | Class OMException
  OMHierarchyException | Thrown if an object model operation would lead to a hierarchy that is not allowed.