class InputSource

A single input source for an XML entity

Inheritance:


Public

Getter methods
const XMLCh* getEncoding () const
An input source can be set to force the parser to assume a particular encoding for the data that input source reprsents, via the setEncoding() method
const XMLCh* getPublicId () const
Get the public identifier for this input source
const XMLCh* getSystemId () const
Get the system identifier for this input source
Setter methods
void setEncoding (const XMLCh* const encodingStr)
Set the encoding which will be required for use with the XML text read via a stream opened by this input source
void setPublicId (const XMLCh* const publicId)
Set the public identifier for this input source
void setSystemId (const XMLCh* const systemId)
Set the system identifier for this input source
Virtual input source interface
virtual BinInputStream* makeStream () const
Makes the byte stream for this input source

Documentation

A single input source for an XML entity.

This class encapsulates information about an input source in a single object, which may include a public identifier or a system identifier

There are two places that the application will deliver this input source to the parser: as the argument to the Parser::parse method, or as the return value of the EntityResolver::resolveEntity method.

InputSource is never used directly, but is the base class for a number of derived classes for particular types of input sources. Derivatives are provided (in the internal/ directory) for URL input sources, memory buffer input sources, and so on.

When it is time to parse the input described by an input source, it will be asked to create a binary stream for that source. That stream will be used to input the data of the source. The derived class provides the implementation of the makeStream() method, and provides a type of stream of the correct type for the input source it represents.

An InputSource object belongs to the application: the parser never modifies them in any way. They are always passed by const reference so the parser will make a copy of any input sources that it must keep around beyond the call.

$Log: InputSource.hpp,v $ Revision 1.1.1.1 1999/11/09 01:07:46 twl Initial checkin Revision 1.2 1999/11/08 20:45:01 rahul Swat for adding in Product name and CVS comment log variable.
Virtual input source interface

virtual BinInputStream* makeStream() const
Makes the byte stream for this input source.

The derived class must create and return a binary input stream of an appropriate type for its kind of data source. The returned stream must be dynamically allocated and becomes the parser's property.

See Also:
BinInputStream

Getter methods

const XMLCh* getEncoding() const
An input source can be set to force the parser to assume a particular encoding for the data that input source reprsents, via the setEncoding() method. This method returns name of the encoding that is to be forced. If the encoding has never been forced, it returns a null pointer.
Returns:
The forced encoding, or null if none was supplied.
See Also:
setEncoding

const XMLCh* getPublicId() const
Get the public identifier for this input source.
Returns:
The public identifier, or null if none was supplied.
See Also:
setPublicId

const XMLCh* getSystemId() const
Get the system identifier for this input source.

If the system ID is a URL, it will be fully resolved.

Returns:
The system identifier.
See Also:
setSystemId

Setter methods

void setEncoding(const XMLCh* const encodingStr)
Set the encoding which will be required for use with the XML text read via a stream opened by this input source.

This is usually not set, allowing the encoding to be sensed in the usual XML way. However, in some cases, the encoding in the file is known to be incorrect because of intermediate transcoding, for instance encapsulation within a MIME document.

Parameters:
encodingStr - The name of the encoding to force.

void setPublicId(const XMLCh* const publicId)
Set the public identifier for this input source.

The public identifier is always optional: if the application writer includes one, it will be provided as part of the location information.

Parameters:
publicId - The public identifier as a string.
See Also:
getPublicId
getPublicId
getPublicId

void setSystemId(const XMLCh* const systemId)
Set the system identifier for this input source.

Set the system identifier for this input source.

The system id is always required. The public id may be used to map to another system id, but the system id must always be present as a fall back.

If the system ID is a URL, it must be fully resolved.

Parameters:
systemId - The system identifier as a string.
See Also:
getSystemId
getSystemId
getSystemId


This class has no child classes.
See Also:
parse
resolveEntity

alphabetic index hierarchy of classes


XML Parser for C++ 2.0
Copyright © IBM Corp, 1999
Center for Java Technology
10275 N. De Anza Blvd.
Cupertino CA 95014 USA
Email: xml4c@us.ibm.com

IBM Logo