FileDocCategorySizeDatePackage
AbstractXMLDocumentParser.javaAPI DocApache Xerces 3.0.131977Fri Sep 14 20:33:56 BST 2007org.apache.xerces.parsers

AbstractXMLDocumentParser

public abstract class AbstractXMLDocumentParser extends XMLParser implements org.apache.xerces.xni.XMLDTDHandler, org.apache.xerces.xni.XMLDTDContentModelHandler, org.apache.xerces.xni.XMLDocumentHandler
This is the base class for all XML document parsers. XMLDocumentParser provides a common implementation shared by the various document parsers in the Xerces package. While this class is provided for convenience, it does not prevent other kinds of parsers to be constructed using the XNI interfaces.
author
Arnaud Le Hors, IBM
author
Andy Clark, IBM
version
$Id: AbstractXMLDocumentParser.java 447239 2006-09-18 05:08:26Z mrglavas $

Fields Summary
protected boolean
fInDTD
True if inside DTD.
protected org.apache.xerces.xni.parser.XMLDocumentSource
fDocumentSource
Document source
protected org.apache.xerces.xni.parser.XMLDTDSource
fDTDSource
DTD source
protected org.apache.xerces.xni.parser.XMLDTDContentModelSource
fDTDContentModelSource
DTD content model source
Constructors Summary
protected AbstractXMLDocumentParser(org.apache.xerces.xni.parser.XMLParserConfiguration config)
Constructs a document parser using the default symbol table and grammar pool.

        super(config);

        // set handlers
        config.setDocumentHandler(this);
        config.setDTDHandler(this);
        config.setDTDContentModelHandler(this);

    
Methods Summary
public voidany(org.apache.xerces.xni.Augmentations augs)
A content model of ANY.

param
augs Additional information that may include infoset augmentations.
throws
XNIException Thrown by handler to signal an error.
see
#empty
see
#startGroup

    
public voidattributeDecl(java.lang.String elementName, java.lang.String attributeName, java.lang.String type, java.lang.String[] enumeration, java.lang.String defaultType, org.apache.xerces.xni.XMLString defaultValue, org.apache.xerces.xni.XMLString nonNormalizedDefaultValue, org.apache.xerces.xni.Augmentations augs)
An attribute declaration.

param
elementName The name of the element that this attribute is associated with.
param
attributeName The name of the attribute.
param
type The attribute type. This value will be one of the following: "CDATA", "ENTITY", "ENTITIES", "ENUMERATION", "ID", "IDREF", "IDREFS", "NMTOKEN", "NMTOKENS", or "NOTATION".
param
enumeration If the type has the value "ENUMERATION" or "NOTATION", this array holds the allowed attribute values; otherwise, this array is null.
param
defaultType The attribute default type. This value will be one of the following: "#FIXED", "#IMPLIED", "#REQUIRED", or null.
param
defaultValue The attribute default value, or null if no default value is specified.
param
nonNormalizedDefaultValue The attribute default value with no normalization performed, or null if no default value is specified.
param
augs Additional information that may include infoset augmentations.
throws
XNIException Thrown by handler to signal an error.

    
public voidcharacters(org.apache.xerces.xni.XMLString text, org.apache.xerces.xni.Augmentations augs)
Character content.

param
text The content.
param
augs Additional information that may include infoset augmentations
throws
XNIException Thrown by handler to signal an error.

    
public voidcomment(org.apache.xerces.xni.XMLString text, org.apache.xerces.xni.Augmentations augs)
A comment.

param
text The text in the comment.
param
augs Additional information that may include infoset augmentations
exception
XNIException Thrown by application to signal an error.

    
public voiddoctypeDecl(java.lang.String rootElement, java.lang.String publicId, java.lang.String systemId, org.apache.xerces.xni.Augmentations augs)
Notifies of the presence of the DOCTYPE line in the document.

param
rootElement The name of the root element.
param
publicId The public identifier if an external DTD or null if the external DTD is specified using SYSTEM.
param
systemId The system identifier if an external DTD, null
param
augs Additional information that may include infoset augmentations otherwise.
throws
XNIException Thrown by handler to signal an error.

    
public voidelement(java.lang.String elementName, org.apache.xerces.xni.Augmentations augs)
A referenced element in a mixed or children content model.

param
elementName The name of the referenced element.
param
augs Additional information that may include infoset augmentations.
throws
XNIException Thrown by handler to signal an error.

    
public voidelementDecl(java.lang.String name, java.lang.String contentModel, org.apache.xerces.xni.Augmentations augs)
An element declaration.

param
name The name of the element.
param
contentModel The element content model.
param
augs Additional information that may include infoset augmentations.
throws
XNIException Thrown by handler to signal an error.

    
public voidempty(org.apache.xerces.xni.Augmentations augs)
A content model of EMPTY.

param
augs Additional information that may include infoset augmentations.
throws
XNIException Thrown by handler to signal an error.
see
#any
see
#startGroup

    
public voidemptyElement(org.apache.xerces.xni.QName element, org.apache.xerces.xni.XMLAttributes attributes, org.apache.xerces.xni.Augmentations augs)
An empty element.

param
element The name of the element.
param
attributes The element attributes.
param
augs Additional information that may include infoset augmentations
throws
XNIException Thrown by handler to signal an error.


        startElement(element, attributes, augs);
        endElement(element, augs);

    
public voidendAttlist(org.apache.xerces.xni.Augmentations augs)
The end of an attribute list.

param
augs Additional information that may include infoset augmentations.
throws
XNIException Thrown by handler to signal an error.

    
public voidendCDATA(org.apache.xerces.xni.Augmentations augs)
The end of a CDATA section.

param
augs Additional information that may include infoset augmentations
throws
XNIException Thrown by handler to signal an error.

    
public voidendConditional(org.apache.xerces.xni.Augmentations augs)
The end of a conditional section.

param
augs Additional information that may include infoset augmentations.
throws
XNIException Thrown by handler to signal an error.

    
public voidendContentModel(org.apache.xerces.xni.Augmentations augs)
The end of a content model.

param
augs Additional information that may include infoset augmentations.
throws
XNIException Thrown by handler to signal an error.

    
public voidendDTD(org.apache.xerces.xni.Augmentations augs)
The end of the DTD.

param
augs Additional information that may include infoset augmentations.
throws
XNIException Thrown by handler to signal an error.

        fInDTD = false;
    
public voidendDocument(org.apache.xerces.xni.Augmentations augs)
The end of the document.

param
augs Additional information that may include infoset augmentations
throws
XNIException Thrown by handler to signal an error.

    
public voidendElement(org.apache.xerces.xni.QName element, org.apache.xerces.xni.Augmentations augs)
The end of an element.

param
element The name of the element.
param
augs Additional information that may include infoset augmentations
throws
XNIException Thrown by handler to signal an error.

    
public voidendExternalSubset(org.apache.xerces.xni.Augmentations augmentations)
The end of the DTD external subset.

param
augmentations Additional information that may include infoset augmentations.
throws
XNIException Thrown by handler to signal an error.

    
public voidendGeneralEntity(java.lang.String name, org.apache.xerces.xni.Augmentations augs)
This method notifies the end of an entity.

Note: This method is not called for entity references appearing as part of attribute values.

param
name The name of the entity.
param
augs Additional information that may include infoset augmentations
exception
XNIException Thrown by handler to signal an error.

    
public voidendGroup(org.apache.xerces.xni.Augmentations augs)
The end of a group for mixed or children content models.

param
augs Additional information that may include infoset augmentations.
throws
XNIException Thrown by handler to signal an error.

    
public voidendParameterEntity(java.lang.String name, org.apache.xerces.xni.Augmentations augs)
This method notifies the end of an entity.

Note: This method is not called for entity references appearing as part of attribute values.

param
name The name of the entity.
param
augs Additional information that may include infoset augmentations
exception
XNIException Thrown by handler to signal an error.

    
public voidexternalEntityDecl(java.lang.String name, org.apache.xerces.xni.XMLResourceIdentifier identifier, org.apache.xerces.xni.Augmentations augs)
An external entity declaration.

param
name The name of the entity. Parameter entity names start with '%', whereas the name of a general entity is just the entity name.
param
identifier An object containing all location information pertinent to this entity.
param
augs Additional information that may include infoset augmentations.
throws
XNIException Thrown by handler to signal an error.

    
public org.apache.xerces.xni.parser.XMLDTDContentModelSourcegetDTDContentModelSource()

        return fDTDContentModelSource;
    
public org.apache.xerces.xni.parser.XMLDTDSourcegetDTDSource()

        return fDTDSource;
    
public org.apache.xerces.xni.parser.XMLDocumentSourcegetDocumentSource()
Returns the document source

        return fDocumentSource;
    
public voidignorableWhitespace(org.apache.xerces.xni.XMLString text, org.apache.xerces.xni.Augmentations augs)
Ignorable whitespace. For this method to be called, the document source must have some way of determining that the text containing only whitespace characters should be considered ignorable. For example, the validator can determine if a length of whitespace characters in the document are ignorable based on the element content model.

param
text The ignorable whitespace.
param
augs Additional information that may include infoset augmentations
throws
XNIException Thrown by handler to signal an error.

    
public voidignoredCharacters(org.apache.xerces.xni.XMLString text, org.apache.xerces.xni.Augmentations augs)
Characters within an IGNORE conditional section.

param
text The ignored text.
param
augs Additional information that may include infoset augmentations.
throws
XNIException Thrown by handler to signal an error.

     
public voidinternalEntityDecl(java.lang.String name, org.apache.xerces.xni.XMLString text, org.apache.xerces.xni.XMLString nonNormalizedText, org.apache.xerces.xni.Augmentations augs)
An internal entity declaration.

param
name The name of the entity. Parameter entity names start with '%', whereas the name of a general entity is just the entity name.
param
text The value of the entity.
param
nonNormalizedText The non-normalized value of the entity. This value contains the same sequence of characters that was in the internal entity declaration, without any entity references expanded.
param
augs Additional information that may include infoset augmentations.
throws
XNIException Thrown by handler to signal an error.

    
public voidnotationDecl(java.lang.String name, org.apache.xerces.xni.XMLResourceIdentifier identifier, org.apache.xerces.xni.Augmentations augs)
A notation declaration

param
name The name of the notation.
param
identifier An object containing all location information pertinent to this notation.
param
augs Additional information that may include infoset augmentations.
throws
XNIException Thrown by handler to signal an error.

    
public voidoccurrence(short occurrence, org.apache.xerces.xni.Augmentations augs)
The occurrence count for a child in a children content model or for the mixed content model group.

param
occurrence The occurrence count for the last element or group.
param
augs Additional information that may include infoset augmentations.
throws
XNIException Thrown by handler to signal an error.
see
#OCCURS_ZERO_OR_ONE
see
#OCCURS_ZERO_OR_MORE
see
#OCCURS_ONE_OR_MORE

    
public voidpcdata(org.apache.xerces.xni.Augmentations augs)
The appearance of "#PCDATA" within a group signifying a mixed content model. This method will be the first called following the content model's startGroup().

param
augs Additional information that may include infoset augmentations.
throws
XNIException Thrown by handler to signal an error.
see
#startGroup

    
public voidprocessingInstruction(java.lang.String target, org.apache.xerces.xni.XMLString data, org.apache.xerces.xni.Augmentations augs)
A processing instruction. Processing instructions consist of a target name and, optionally, text data. The data is only meaningful to the application.

Typically, a processing instruction's data will contain a series of pseudo-attributes. These pseudo-attributes follow the form of element attributes but are not parsed or presented to the application as anything other than text. The application is responsible for parsing the data.

param
target The target.
param
data The data or null if none specified.
param
augs Additional information that may include infoset augmentations
exception
XNIException Thrown by handler to signal an error.

    
protected voidreset()
reset all components before parsing

        super.reset();
        fInDTD = false;
    
public voidseparator(short separator, org.apache.xerces.xni.Augmentations augs)
The separator between choices or sequences of a mixed or children content model.

param
separator The type of children separator.
param
augs Additional information that may include infoset augmentations.
throws
XNIException Thrown by handler to signal an error.
see
#SEPARATOR_CHOICE
see
#SEPARATOR_SEQUENCE

    
public voidsetDTDContentModelSource(org.apache.xerces.xni.parser.XMLDTDContentModelSource source)

        fDTDContentModelSource = source;
    
public voidsetDTDSource(org.apache.xerces.xni.parser.XMLDTDSource source)

        fDTDSource = source;
    
public voidsetDocumentSource(org.apache.xerces.xni.parser.XMLDocumentSource source)
Sets the document source

        fDocumentSource = source;
    
public voidstartAttlist(java.lang.String elementName, org.apache.xerces.xni.Augmentations augs)
The start of an attribute list.

param
elementName The name of the element that this attribute list is associated with.
param
augs Additional information that may include infoset augmentations.
throws
XNIException Thrown by handler to signal an error.

    
public voidstartCDATA(org.apache.xerces.xni.Augmentations augs)
The start of a CDATA section.

param
augs Additional information that may include infoset augmentations
throws
XNIException Thrown by handler to signal an error.

    
public voidstartConditional(short type, org.apache.xerces.xni.Augmentations augs)
The start of a conditional section.

param
type The type of the conditional section. This value will either be CONDITIONAL_INCLUDE or CONDITIONAL_IGNORE.
param
augs Additional information that may include infoset augmentations.
throws
XNIException Thrown by handler to signal an error.
see
#CONDITIONAL_INCLUDE
see
#CONDITIONAL_IGNORE

    
public voidstartContentModel(java.lang.String elementName, org.apache.xerces.xni.Augmentations augs)
The start of a content model. Depending on the type of the content model, specific methods may be called between the call to the startContentModel method and the call to the endContentModel method.

param
elementName The name of the element.
param
augs Additional information that may include infoset augmentations.
throws
XNIException Thrown by handler to signal an error.

    
public voidstartDTD(org.apache.xerces.xni.XMLLocator locator, org.apache.xerces.xni.Augmentations augs)
The start of the DTD.

param
locator The document locator, or null if the document location cannot be reported during the parsing of the document DTD. However, it is strongly recommended that a locator be supplied that can at least report the base system identifier of the DTD.
param
augs Additional information that may include infoset augmentations.
throws
XNIException Thrown by handler to signal an error.

        fInDTD = true;
    
public voidstartDocument(org.apache.xerces.xni.XMLLocator locator, java.lang.String encoding, org.apache.xerces.xni.NamespaceContext namespaceContext, org.apache.xerces.xni.Augmentations augs)
The start of the document.

param
locator The system identifier of the entity if the entity is external, null otherwise.
param
encoding The auto-detected IANA encoding name of the entity stream. This value will be null in those situations where the entity encoding is not auto-detected (e.g. internal entities or a document entity that is parsed from a java.io.Reader).
param
namespaceContext The namespace context in effect at the start of this document. This object represents the current context. Implementors of this class are responsible for copying the namespace bindings from the the current context (and its parent contexts) if that information is important.
param
augs Additional information that may include infoset augmentations
throws
XNIException Thrown by handler to signal an error.

    
public voidstartElement(org.apache.xerces.xni.QName element, org.apache.xerces.xni.XMLAttributes attributes, org.apache.xerces.xni.Augmentations augs)
The start of an element. If the document specifies the start element by using an empty tag, then the startElement method will immediately be followed by the endElement method, with no intervening methods.

param
element The name of the element.
param
attributes The element attributes.
param
augs Additional information that may include infoset augmentations
throws
XNIException Thrown by handler to signal an error.

    
public voidstartExternalSubset(org.apache.xerces.xni.XMLResourceIdentifier identifier, org.apache.xerces.xni.Augmentations augmentations)
The start of the DTD external subset.

param
augmentations Additional information that may include infoset augmentations.
throws
XNIException Thrown by handler to signal an error.

    
public voidstartGeneralEntity(java.lang.String name, org.apache.xerces.xni.XMLResourceIdentifier identifier, java.lang.String encoding, org.apache.xerces.xni.Augmentations augs)
This method notifies the start of an entity.

Note: This method is not called for entity references appearing as part of attribute values.

param
name The name of the entity.
param
identifier The resource identifier.
param
encoding The auto-detected IANA encoding name of the entity stream. This value will be null in those situations where the entity encoding is not auto-detected (e.g. internal entities or a document entity that is parsed from a java.io.Reader).
param
augs Additional information that may include infoset augmentations
exception
XNIException Thrown by handler to signal an error.

    
public voidstartGroup(org.apache.xerces.xni.Augmentations augs)
A start of either a mixed or children content model. A mixed content model will immediately be followed by a call to the pcdata() method. A children content model will contain additional groups and/or elements.

param
augs Additional information that may include infoset augmentations.
throws
XNIException Thrown by handler to signal an error.
see
#any
see
#empty

    
public voidstartParameterEntity(java.lang.String name, org.apache.xerces.xni.XMLResourceIdentifier identifier, java.lang.String encoding, org.apache.xerces.xni.Augmentations augs)
This method notifies the start of an entity.

Note: This method is not called for entity references appearing as part of attribute values.

param
name The name of the entity.
param
identifier The resource identifier.
param
encoding The auto-detected IANA encoding name of the entity stream. This value will be null in those situations where the entity encoding is not auto-detected (e.g. internal entities or a document entity that is parsed from a java.io.Reader).
param
augs Additional information that may include infoset augmentations
exception
XNIException Thrown by handler to signal an error.

    
public voidtextDecl(java.lang.String version, java.lang.String encoding, org.apache.xerces.xni.Augmentations augs)
Notifies of the presence of a TextDecl line in an entity. If present, this method will be called immediately following the startEntity call.

Note: This method will never be called for the document entity; it is only called for external general entities referenced in document content.

Note: This method is not called for entity references appearing as part of attribute values.

param
version The XML version, or null if not specified.
param
encoding The IANA encoding name of the entity.
param
augs Additional information that may include infoset augmentations
exception
XNIException Thrown by handler to signal an error.

    
public voidunparsedEntityDecl(java.lang.String name, org.apache.xerces.xni.XMLResourceIdentifier identifier, java.lang.String notation, org.apache.xerces.xni.Augmentations augs)
An unparsed entity declaration.

param
name The name of the entity.
param
identifier An object containing all location information pertinent to this entity.
param
notation The name of the notation.
param
augs Additional information that may include infoset augmentations.
throws
XNIException Thrown by handler to signal an error.

    
public voidxmlDecl(java.lang.String version, java.lang.String encoding, java.lang.String standalone, org.apache.xerces.xni.Augmentations augs)
Notifies of the presence of an XMLDecl line in the document. If present, this method will be called immediately following the startDocument call.

param
version The XML version.
param
encoding The IANA encoding name of the document, or null if not specified.
param
standalone The standalone value, or null if not specified.
param
augs Additional information that may include infoset augmentations
throws
XNIException Thrown by handler to signal an error.