Anfang des Inhaltsbereichs

Objektdokumentation Package Stream  Dokument im Navigationsbaum lokalisieren

Definition

The stream package contains all definitions to handle XML stream I/O.

Input and output of XML documents is handled in terms of XML streams in the iXML library. Even though the streams used in the iXML library have a lot in common with the C++ standard streams, an independent implementation - not derived from the C++ standard streams - has been chosen for mainly two reasons:

  1. it should be very easy to add a new stream type (e.g. for internal/RFC tables) without having to implement the full C++ stream interface
  2. there is only little used from the functionality of the C++ standard streams in the iXML implementation whereas on the other side a lot of other, missing functionality has to be implemented. In short: there are more differences than commonalities.

The stream package defines 3 major concepts: an XML stream factory (iXMLStreamFactory), an XML input stream (iXMLIStream) and an XML output stream (iXMLOStream).

Use

The stream factory is used to create XML input and output streams. Since different input sources and output destinations have to be considered, iXMLIStream and iXMLOStream interfaces will be implemented by different classes, each one capable of serving a particular source or destination. Each of these classes is registered or can be registered with the XML stream factory (prototype pattern) and can be queried about its capabilities. This allows the stream factory to create streams for all supported sources or destinations on request in an client application independent way. One of the advantages of this approach is the XML parsers capability to automatically resolve external entity references, as long as there is a stream type registered with the factory, that can handle the protocol defined by the URL.

Structure

The package Stream contains the following interfaces:

Interface if_ixml_istream

Interface if_ixml_ostream

Interface if_ixml_stream

Interface if_ixml_stream_factory