XML for Java EA2

com.ibm.xml.parsers
Class SAXParser

java.lang.Object
  |
  +--com.ibm.xml.framework.XMLDocumentScanner
        |
        +--com.ibm.xml.framework.XMLParser
              |
              +--com.ibm.xml.parsers.SAXParser

public class SAXParser
extends XMLParser
implements Parser

SAX Parser.

Version:
Revision: %M% %I% %W% %Q%

Fields inherited from class com.ibm.xml.framework.XMLParser
fNamespacesEnabled, fNamespaceSep, fParseInProgress, fValidator, SAX2_FEATURES_PREFIX, SAX2_HANDLERS_PREFIX, SAX2_PROPERTIES_PREFIX, XML4J_FEATURES_PREFIX, XML4J_PROPERTIES_PREFIX
 
Fields inherited from class com.ibm.xml.framework.XMLDocumentScanner
fCurrentElementEntity, fCurrentElementType, fElementDepth, fEntityHandler, fEntityReader, fErrorReporter, fInElementContent, fReaderId, fStringPool, SCANNER_STATE_ATTRIBUTE_LIST, SCANNER_STATE_ATTRIBUTE_NAME, SCANNER_STATE_ATTRIBUTE_VALUE, SCANNER_STATE_COMMENT, SCANNER_STATE_CONTENT, SCANNER_STATE_DOCTYPE, SCANNER_STATE_ELEMENT, SCANNER_STATE_MISC_OR_DOCTYPE, SCANNER_STATE_MISC_OR_ROOT_ELEMENT, SCANNER_STATE_PI, SCANNER_STATE_SETUP, SCANNER_STATE_START_OF_MARKUP, SCANNER_STATE_STRING_LITERAL, SCANNER_STATE_TRAILING_MISC, SCANNER_STATE_UNKNOWN, SCANNER_STATE_XML_DECL
 
Constructor Summary
SAXParser()
          Default constructor.
 
Method Summary
 void attlistDecl(int elementTypeIndex, int attrNameIndex, int attType, java.lang.String enumString, int attDefaultType, int attDefaultValue)
          Report an attribute type declaration.
 void characters(char[] ch, int start, int length)
          Characters.
 void characters(int dataIndex)
          Not called.
 void comment(int dataIndex)
          Comment.
 void commentInDTD(int dataIndex)
           
 void elementDecl(int elementType, java.lang.String contentModel)
          Report an element type declaration.
 void endCDATA()
          End CDATA section.
 void endDocument()
          End document.
 void endDTD()
          This function will be called at the end of the DTD.
 void endElement(int elementType)
          End element.
 void endEntityReference(int entityName, int entityType, int entityContext)
          End entity reference.
 void endNamespaceDeclScope(int prefix)
          Report the end of the scope of a namespace declaration.
 void externalEntityDecl(int entityName, int publicId, int systemId)
          Report a parsed external general entity declaration.
 void externalPEDecl(int entityName, int publicId, int systemId)
          Report a parsed external parameter entity declaration.
protected  org.xml.sax.misc.DeclHandler getDeclHandler()
          Returns the DTD declaration event handler.
 boolean getFeature(java.lang.String featureId)
          Query the state of a feature.
 java.lang.String[] getFeaturesRecognized()
          Returns a list of features that this parser recognizes.
protected  org.xml.sax.misc.LexicalHandler getLexicalHandler()
          Returns the lexical handler.
protected  org.xml.sax.misc.NamespaceHandler getNamespaceHandler()
          Returns the namespace declaration scope event handler.
protected  boolean getNormalizeText()
          Note: This feature is always false. Returns true if the parser normalizes all consecutive text into a single callback to the DocumentHandler.characters or DocumentHandler.ignorableWhitespace methods.
 java.lang.String[] getPropertiesRecognized()
          Returns a list of properties that this parser recognizes.
 java.lang.Object getProperty(java.lang.String propertyId)
          Query the value of a property.
protected  boolean getUseLocator()
          Note: This feature is always true. Returns true if the locator is always set.
 void ignorableWhitespace(char[] ch, int start, int length)
          Ignorable whitespace.
 void ignorableWhitespace(int dataIndex)
          Not called.
 void internalEntityDecl(int entityName, int entityValue)
          Report an internal general entity declaration.
 void internalPEDecl(int entityName, int entityValue)
          Report an internal parameter entity declaration.
 void notationDecl(int notationName, int publicId, int systemId)
          Receive notification of a notation declaration event.
 void processingInstruction(int piTarget, int piData)
          Processing instruction.
 void processingInstructionInDTD(int piTarget, int piData)
           
protected  void setDeclHandler(org.xml.sax.misc.DeclHandler handler)
          Set the DTD declaration event handler.
 void setDocumentHandler(DocumentHandler handler)
          Sets the document handler.
 void setDTDHandler(DTDHandler handler)
          Sets the DTD handler.
 void setFeature(java.lang.String featureId, boolean state)
          Set the state of any feature in a SAX2 parser.
protected  void setLexicalHandler(org.xml.sax.misc.LexicalHandler handler)
          Set the lexical event handler.
protected  void setNamespaceHandler(org.xml.sax.misc.NamespaceHandler handler)
          Set the namespace declaration scope event handler.
protected  void setNormalizeText(boolean normalize)
          Note: Currently, the parser does not support this feature. Setting this feature to true will throw a SAXNotSupportedException.
 void setProperty(java.lang.String propertyId, java.lang.Object value)
          Set the value of any property in a SAX2 parser.
protected  void setUseLocator(boolean use)
          Note: Currently, this parser always sets the locator. Setting this feature to false will throw a SAXNotSupportedException.
 void startCDATA()
          Start CDATA section.
 void startDocument(int versionIndex, int encodingIndex, int standaloneIndex)
          Start document.
 void startDTD(int rootElementType, int publicId, int systemId)
          This function will be called when a <!DOCTYPE...> declaration is encountered.
 void startElement(int elementType, XMLAttrList attrList, int attrListIndex)
          Start element
 void startEntityReference(int entityName, int entityType, int entityContext)
          Start entity reference.
 void startNamespaceDeclScope(int prefix, int uri)
          Report the start of the scope of a namespace declaration.
 void unparsedEntityDecl(int entityName, int publicId, int systemId, int notationName)
          Receive notification of an unparsed entity declaration event.
 
Methods inherited from class com.ibm.xml.framework.XMLParser
addAttrForElement, callCharacters, callComment, callEndDocument, callEndElement, callProcessingInstruction, callStartDocument, callStartElement, elementSpecified, getAllowJavaEncodings, getColumnNumber, getContinueAfterFatalError, getEntityHandler, getExternalGeneralEntities, getExternalParameterEntities, getLineNumber, getLocator, getNamespaces, getNamespaceSep, getPublicId, getSchemaValidator, getSystemId, getValidation, getValidationDynamic, getValidationWarnOnDuplicateAttdef, getValidationWarnOnUndeclaredElemdef, getXMLString, isFeatureRecognized, isPropertyRecognized, literalDataAppend, literalDataAppend, literalDataAppend, literalDataIndex, literalDataLength, loadCatalog, parse, parse, parseSomeSetup, processCharacters, processCharacters, processWhitespace, processWhitespace, reportError, reset, resetOrCopy, scanAttributeName, scanAttValue, scanDoctypeDecl, scanElementType, scanExpectedElementType, setAllowJavaEncodings, setCharDataInterest, setContinueAfterFatalError, setEntityResolver, setErrorHandler, setExternalGeneralEntities, setExternalParameterEntities, setLocale, setLocator, setNamespaces, setNamespaceSep, setValidating, setValidation, setValidationDynamic, setValidationWarnOnDuplicateAttdef, setValidationWarnOnUndeclaredElemdef, validEncName, validVersionNum
 
Methods inherited from class com.ibm.xml.framework.XMLDocumentScanner
abortMarkup, abortMarkup, abortMarkup, abortMarkup, checkXMLLangAttributeValue, decreaseMarkupDepth, endOfInput, getScannerState, increaseMarkupDepth, markupDepth, parseSome, readerChange, reportFatalXMLError, reportFatalXMLError, reportFatalXMLError, reportFatalXMLError, reportFatalXMLError, reportFatalXMLError, scanComplexAttValue, setEntityHandler, setErrorReporter, skipPastEndOfCurrentMarkup
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SAXParser

public SAXParser()
Default constructor.
Method Detail

getFeaturesRecognized

public java.lang.String[] getFeaturesRecognized()
Returns a list of features that this parser recognizes. This method will never return null; if no features are recognized, this method will return a zero length array.
Overrides:
getFeaturesRecognized in class XMLParser
See Also:
XMLParser.isFeatureRecognized(java.lang.String), setFeature(java.lang.String, boolean), getFeature(java.lang.String)

getPropertiesRecognized

public java.lang.String[] getPropertiesRecognized()
Returns a list of properties that this parser recognizes. This method will never return null; if no properties are recognized, this method will return a zero length array.
Overrides:
getPropertiesRecognized in class XMLParser
See Also:
XMLParser.isPropertyRecognized(java.lang.String), setProperty(java.lang.String, java.lang.Object), getProperty(java.lang.String)

setNormalizeText

protected void setNormalizeText(boolean normalize)
                         throws SAXException
Note: Currently, the parser does not support this feature. Setting this feature to true will throw a SAXNotSupportedException.

Ensures that all consecutive text is returned in a single callback to the DocumentHandler.characters or DocumentHandler.ignorableWhitespace methods.

This method is the equivalent to the feature:

 http://xml.org/sax/features/normalize-text
 
Parameters:
normalize - True to normalize; false not to normalize.
See Also:
getNormalizeText(), setFeature(java.lang.String, boolean)

getNormalizeText

protected boolean getNormalizeText()
                            throws SAXException
Note: This feature is always false.

Returns true if the parser normalizes all consecutive text into a single callback to the DocumentHandler.characters or DocumentHandler.ignorableWhitespace methods.

See Also:
setNormalizeText(boolean)

setUseLocator

protected void setUseLocator(boolean use)
                      throws SAXException
Note: Currently, this parser always sets the locator. Setting this feature to false will throw a SAXNotSupportedException.

Provide a Locator using the DocumentHandler.setDocumentLocator callback (true), or explicitly do not provide one (false).

This method is the equivalent to the feature:

 http://xml.org/sax/features/use-locator
 
See Also:
getUseLocator(), setFeature(java.lang.String, boolean)

getUseLocator

protected boolean getUseLocator()
                         throws SAXException
Note: This feature is always true.

Returns true if the locator is always set.

See Also:
setUseLocator(boolean)

setDeclHandler

protected void setDeclHandler(org.xml.sax.misc.DeclHandler handler)
                       throws SAXException
Set the DTD declaration event handler.

This method is the equivalent to the property:

 http://xml.org/sax/handlers/DeclHandler
 
Parameters:
handler - The new handler.
See Also:
getDeclHandler(), setProperty(java.lang.String, java.lang.Object)

getDeclHandler

protected org.xml.sax.misc.DeclHandler getDeclHandler()
                                               throws SAXException
Returns the DTD declaration event handler.
See Also:
setDeclHandler(org.xml.sax.misc.DeclHandler)

setLexicalHandler

protected void setLexicalHandler(org.xml.sax.misc.LexicalHandler handler)
                          throws SAXException
Set the lexical event handler.

This method is the equivalent to the property:

 http://xml.org/sax/handlers/LexicalHandler
 
Parameters:
-  
See Also:
getLexicalHandler(), setProperty(java.lang.String, java.lang.Object)

getLexicalHandler

protected org.xml.sax.misc.LexicalHandler getLexicalHandler()
                                                     throws SAXException
Returns the lexical handler.
See Also:
setLexicalHandler(org.xml.sax.misc.LexicalHandler)

setNamespaceHandler

protected void setNamespaceHandler(org.xml.sax.misc.NamespaceHandler handler)
                            throws SAXException
Set the namespace declaration scope event handler.

This method is the equivalent to the property:

 http://xml.org/sax/handlers/NamespaceHandler
 
Parameters:
-  
See Also:
getNamespaceHandler(), setProperty(java.lang.String, java.lang.Object)

getNamespaceHandler

protected org.xml.sax.misc.NamespaceHandler getNamespaceHandler()
                                                         throws SAXException
Returns the namespace declaration scope event handler.
See Also:
setNamespaceHandler(org.xml.sax.misc.NamespaceHandler)

setFeature

public void setFeature(java.lang.String featureId,
                       boolean state)
                throws SAXException
Set the state of any feature in a SAX2 parser. The parser might not recognize the feature, and if it does recognize it, it might not be able to fulfill the request.
Parameters:
featureId - The unique identifier (URI) of the feature.
state - The requested state of the feature (true or false).
Throws:
SAXNotRecognizedException - If the requested feature is not known.
SAXNotSupportedException - If the requested feature is known, but the requested state is not supported.
SAXException - If there is any other problem fulfilling the request.
Overrides:
setFeature in class XMLParser

getFeature

public boolean getFeature(java.lang.String featureId)
                   throws SAXException
Query the state of a feature. Query the current state of any feature in a SAX2 parser. The parser might not recognize the feature.
Parameters:
featureId - The unique identifier (URI) of the feature being set.
Returns:
The current state of the feature.
Throws:
SAXNotRecognizedException - If the requested feature is not known.
SAXException - If there is any other problem fulfilling the request.
Overrides:
getFeature in class XMLParser

setProperty

public void setProperty(java.lang.String propertyId,
                        java.lang.Object value)
                 throws SAXException
Set the value of any property in a SAX2 parser. The parser might not recognize the property, and if it does recognize it, it might not support the requested value.
Parameters:
propertyId - The unique identifier (URI) of the property being set.
Object - The value to which the property is being set.
Throws:
SAXNotRecognizedException - If the requested property is not known.
SAXNotSupportedException - If the requested property is known, but the requested value is not supported.
SAXException - If there is any other problem fulfilling the request.
Overrides:
setProperty in class XMLParser

getProperty

public java.lang.Object getProperty(java.lang.String propertyId)
                             throws SAXException
Query the value of a property. Return the current value of a property in a SAX2 parser. The parser might not recognize the property.
Parameters:
propertyId - The unique identifier (URI) of the property being set.
Returns:
The current value of the property.
Throws:
SAXNotRecognizedException - If the requested property is not known.
SAXException - If there is any other problem fulfilling the request.
Overrides:
getProperty in class XMLParser
See Also:
Configurable.getProperty(java.lang.String)

setDTDHandler

public void setDTDHandler(DTDHandler handler)
Sets the DTD handler.
Specified by:
setDTDHandler in interface Parser

setDocumentHandler

public void setDocumentHandler(DocumentHandler handler)
Sets the document handler.
Specified by:
setDocumentHandler in interface Parser

startDTD

public void startDTD(int rootElementType,
                     int publicId,
                     int systemId)
              throws java.lang.Exception
This function will be called when a <!DOCTYPE...> declaration is encountered.
Overrides:
startDTD in class XMLParser

endDTD

public void endDTD()
            throws java.lang.Exception
This function will be called at the end of the DTD.
Overrides:
endDTD in class XMLParser

elementDecl

public void elementDecl(int elementType,
                        java.lang.String contentModel)
                 throws java.lang.Exception
Report an element type declaration. The content model will consist of the string "EMPTY", the string "ANY", or a parenthesised group, optionally followed by an occurrence indicator. The model will be normalized so that all whitespace is removed.
Parameters:
name - The element type name.
model - The content model as a normalized string.
Throws:
SAXException - The application may raise an exception.
Overrides:
elementDecl in class XMLParser

attlistDecl

public void attlistDecl(int elementTypeIndex,
                        int attrNameIndex,
                        int attType,
                        java.lang.String enumString,
                        int attDefaultType,
                        int attDefaultValue)
                 throws java.lang.Exception
Report an attribute type declaration. Only the effective (first) declaration for an attribute will be reported. The type will be one of the strings "CDATA", "ID", "IDREF", "IDREFS", "NMTOKEN", "NMTOKENS", "ENTITY", "ENTITIES", or "NOTATION", or a parenthesized token group with the separator "|" and all whitespace removed.
Parameters:
eName - The name of the associated element.
aName - The name of the attribute.
type - A string representing the attribute type.
valueDefault - A string representing the attribute default ("#IMPLIED", "#REQUIRED", or "#FIXED") or null if none of these applies.
value - A string representing the attribute's default value, or null if there is none.
Throws:
SAXException - The application may raise an exception.
Overrides:
attlistDecl in class XMLParser

internalPEDecl

public void internalPEDecl(int entityName,
                           int entityValue)
                    throws java.lang.Exception
Report an internal parameter entity declaration.
Overrides:
internalPEDecl in class XMLParser

externalPEDecl

public void externalPEDecl(int entityName,
                           int publicId,
                           int systemId)
                    throws java.lang.Exception
Report a parsed external parameter entity declaration.
Overrides:
externalPEDecl in class XMLParser

internalEntityDecl

public void internalEntityDecl(int entityName,
                               int entityValue)
                        throws java.lang.Exception
Report an internal general entity declaration.
Overrides:
internalEntityDecl in class XMLParser

externalEntityDecl

public void externalEntityDecl(int entityName,
                               int publicId,
                               int systemId)
                        throws java.lang.Exception
Report a parsed external general entity declaration.
Overrides:
externalEntityDecl in class XMLParser

unparsedEntityDecl

public void unparsedEntityDecl(int entityName,
                               int publicId,
                               int systemId,
                               int notationName)
                        throws java.lang.Exception
Receive notification of an unparsed entity declaration event.
Overrides:
unparsedEntityDecl in class XMLParser

notationDecl

public void notationDecl(int notationName,
                         int publicId,
                         int systemId)
                  throws java.lang.Exception
Receive notification of a notation declaration event.
Overrides:
notationDecl in class XMLParser

startDocument

public void startDocument(int versionIndex,
                          int encodingIndex,
                          int standaloneIndex)
                   throws java.lang.Exception
Start document.
Overrides:
startDocument in class XMLParser

endDocument

public void endDocument()
                 throws java.lang.Exception
End document.
Overrides:
endDocument in class XMLParser

startNamespaceDeclScope

public void startNamespaceDeclScope(int prefix,
                                    int uri)
                             throws java.lang.Exception
Report the start of the scope of a namespace declaration.
Overrides:
startNamespaceDeclScope in class XMLParser

endNamespaceDeclScope

public void endNamespaceDeclScope(int prefix)
                           throws java.lang.Exception
Report the end of the scope of a namespace declaration.
Overrides:
endNamespaceDeclScope in class XMLParser

startElement

public void startElement(int elementType,
                         XMLAttrList attrList,
                         int attrListIndex)
                  throws java.lang.Exception
Start element
Overrides:
startElement in class XMLParser

endElement

public void endElement(int elementType)
                throws java.lang.Exception
End element.
Overrides:
endElement in class XMLParser

startEntityReference

public void startEntityReference(int entityName,
                                 int entityType,
                                 int entityContext)
                          throws java.lang.Exception
Start entity reference.

endEntityReference

public void endEntityReference(int entityName,
                               int entityType,
                               int entityContext)
                        throws java.lang.Exception
End entity reference.

startCDATA

public void startCDATA()
                throws java.lang.Exception
Start CDATA section.
Overrides:
startCDATA in class XMLParser

endCDATA

public void endCDATA()
              throws java.lang.Exception
End CDATA section.
Overrides:
endCDATA in class XMLParser

characters

public void characters(int dataIndex)
                throws java.lang.Exception
Not called.
Overrides:
characters in class XMLParser

ignorableWhitespace

public void ignorableWhitespace(int dataIndex)
                         throws java.lang.Exception
Not called.
Overrides:
ignorableWhitespace in class XMLParser

processingInstruction

public void processingInstruction(int piTarget,
                                  int piData)
                           throws java.lang.Exception
Processing instruction.
Overrides:
processingInstruction in class XMLParser

processingInstructionInDTD

public void processingInstructionInDTD(int piTarget,
                                       int piData)
                                throws java.lang.Exception
Overrides:
processingInstructionInDTD in class XMLParser

comment

public void comment(int dataIndex)
             throws java.lang.Exception
Comment.
Overrides:
comment in class XMLParser

commentInDTD

public void commentInDTD(int dataIndex)
                  throws java.lang.Exception
Overrides:
commentInDTD in class XMLParser

characters

public void characters(char[] ch,
                       int start,
                       int length)
                throws java.lang.Exception
Characters.
Overrides:
characters in class XMLParser

ignorableWhitespace

public void ignorableWhitespace(char[] ch,
                                int start,
                                int length)
                         throws java.lang.Exception
Ignorable whitespace.
Overrides:
ignorableWhitespace in class XMLParser

XML for Java EA2