All Packages Class Hierarchy This Package Previous Next Index
Class jumbo.xml.SAX
java.lang.Object
|
+----org.xml.sax.HandlerBase
|
+----jumbo.xml.SAX
- public class SAX
- extends HandlerBase
David Megginson's SAX demo, amended by PeterMR to build a simple
jumbo.xml.XTree. Comments are from both authors. Where possible I have left in
David's comments in case others wish to hack this code. David's code
is commented out through slash-star-dash-dash.
- Author:
- David Megginson, 1998, Peter Murray-Rust, 1998
-
AELFRED
-
-
defaultParserClassName
-
-
defaultParserType
-
-
DXP
-
-
LARK
-
-
MSXML
-
-
nParserTypes
-
-
parserTypeStrings
-
-
XP
-
-
SAX(String)
- create a new SAXTree using the default parser
-
SAX(String, String)
- create a new SAXTree.
-
SAX(StringReader)
- Create a SAX from a UTF-16 character stream.
-
characters(char[], int, int)
- Receive notification of character data inside an element.
-
displayError(SAXParseException)
- display the input and highlight the first fatal error
-
endDocument()
- Receive notification of the end of the document.
-
endElement(String)
- Receive notification of the end of an element.
-
error(SAXParseException)
- Receive notification of a recoverable parser error.
-
fatalError(SAXParseException)
- Report a fatal XML parsing error.
-
getEntityTable()
- return the entity table created by SAX (null if no entities)
-
getErrorMessage(SAXParseException)
- get an error message string from a SAXParseException
-
getNotationTable()
- return the notation table created by SAX (null if no notations)
-
getTree()
- return the XTree created by SAX
-
ignorableWhitespace(char[], int, int)
- Receive notification of ignorable whitespace in element content.
-
main(String[])
- Main entry point for an application.
-
notationDecl(String, String, String)
- Receive notification of a notation declaration.
-
printErrors()
- print the accumulated errors
-
processingInstruction(String, String)
- Receive notification of a processing instruction.
-
resolveEntity(String, String)
- Resolve an external entity.
-
setDocumentLocator(Locator)
- Receive a Locator object for document events.
-
startDocument()
- Receive notification of the beginning of the document.
-
startElement(String, AttributeList)
- Receive notification of the start of an element.
-
unparsedEntityDecl(String, String, String, String)
- Receive notification of an unparsed entity declaration.
-
warning(SAXParseException)
- Receive notification of a parser warning.
AELFRED
public static final int AELFRED
DXP
public static final int DXP
LARK
public static final int LARK
MSXML
public static final int MSXML
XP
public static final int XP
nParserTypes
public static final int nParserTypes
parserTypeStrings
public static final String parserTypeStrings[]
defaultParserType
public static final int defaultParserType
defaultParserClassName
public static final String defaultParserClassName
SAX
public SAX(String urlString) throws XException
- create a new SAXTree using the default parser
- Parameters:
- String - urlString the URL with the XML document
- Throws: XException
- IO problems or parsing errors
SAX
public SAX(String urlString,
String parserClassName) throws XException
- create a new SAXTree.
- Parameters:
- String - urlString the URL with the XML document
- String - parserClassName the parser to use (as a full class name)
- Throws: XException
- IO problems or parsing errors
SAX
public SAX(StringReader reader) throws XException
- Create a SAX from a UTF-16 character stream.
From DM's CharacterStreamDemo; the default parser is used. Precede
this by a call of the form:
StringReader reader = new StringReader(string);
- Parameters:
- StringReader - reader the StringReader created from the String
- Throws: XException
- IO problems or parsing errors
resolveEntity
public InputSource resolveEntity(String publicId,
String systemId) throws SAXException
- Resolve an external entity.
Always return null, so that the parser will use the system
identifier provided in the XML document. This method implements
the SAX default behaviour: application writers can override it
in a subclass to do special translations such as catalog lookups
or URI redirection.
- Parameters:
- publicId - The public identifer, or null if none is
available.
- systemId - The system identifier provided in the XML
document.
- Returns:
- The new input source, or null to require the
default behaviour.
- Throws: SAXException
- IO problems or parsing errors
- Overrides:
- resolveEntity in class HandlerBase
- See Also:
- resolveEntity
notationDecl
public void notationDecl(String name,
String publicId,
String systemId)
- Receive notification of a notation declaration.
By default, do nothing. Application writers may override this
method in a subclass if they wish to keep track of the notations
declared in a document.
- Parameters:
- name - The notation name.
- publicId - The notation public identifier, or null if not
available.
- systemId - The notation system identifier.
- Overrides:
- notationDecl in class HandlerBase
- See Also:
- notationDecl
unparsedEntityDecl
public void unparsedEntityDecl(String name,
String publicId,
String systemId,
String notationName)
- Receive notification of an unparsed entity declaration.
By default, do nothing. Application writers may override this
method in a subclass to keep track of the unparsed entities
declared in a document.
- Parameters:
- name - The entity name.
- publicId - The entity public identifier, or null if not
available.
- systemId - The entity system identifier.
- notationName - The name of the associated notation.
- Overrides:
- unparsedEntityDecl in class HandlerBase
- See Also:
- unparsedEntityDecl
setDocumentLocator
public void setDocumentLocator(Locator locator)
- Receive a Locator object for document events.
By default, do nothing. Application writers may override this
method in a subclass if they wish to store the locator for use
with other document events.
- Parameters:
- locator - A locator for all SAX document events.
- Overrides:
- setDocumentLocator in class HandlerBase
- See Also:
- setDocumentLocator, Locator
startDocument
public void startDocument() throws SAXException
- Receive notification of the beginning of the document.
By default, do nothing. Application writers may override this
method in a subclass to take specific actions at the beginning
of a document (such as allocating the root node of a tree or
creating an output file).
- Throws: SAXException
- IO problems or parsing errors
- Overrides:
- startDocument in class HandlerBase
- See Also:
- startDocument
endDocument
public void endDocument() throws SAXException
- Receive notification of the end of the document.
By default, do nothing. Application writers may override this
method in a subclass to take specific actions at the beginning
of a document (such as finalising a tree or closing an output
file).
- Throws: SAXException
- IO problems or parsing errors
- Overrides:
- endDocument in class HandlerBase
- See Also:
- endDocument
startElement
public void startElement(String name,
AttributeList attributes) throws SAXException
- Receive notification of the start of an element.
By default, do nothing. Application writers may override this
method in a subclass to take specific actions at the start of
each element (such as allocating a new tree node or writing
output to a file).
- Parameters:
- name - The element type name.
- attributes - The specified or defaulted attributes.
- Throws: SAXException
- IO problems or parsing errors
- Overrides:
- startElement in class HandlerBase
- See Also:
- startElement
endElement
public void endElement(String name) throws SAXException
- Receive notification of the end of an element.
By default, do nothing. Application writers may override this
method in a subclass to take specific actions at the end of
each element (such as finalising a tree node or writing
output to a file).
- Parameters:
- name - The element type name.
- attributes - The specified or defaulted attributes.
- Throws: SAXException
- IO problems or parsing errors
- Overrides:
- endElement in class HandlerBase
- See Also:
- endElement
characters
public void characters(char ch[],
int start,
int length) throws SAXException
- Receive notification of character data inside an element.
By default, do nothing. Application writers may override this
method to take specific actions for each chunk of character data
(such as adding the data to a node or buffer, or printing it to
a file).
- Parameters:
- ch - The characters.
- start - The start position in the character array.
- length - The number of characters to use from the
character array.
- Throws: SAXException
- IO problems or parsing errors
- Overrides:
- characters in class HandlerBase
- See Also:
- characters
ignorableWhitespace
public void ignorableWhitespace(char ch[],
int start,
int length) throws SAXException
- Receive notification of ignorable whitespace in element content.
By default, do nothing. Application writers may override this
method to take specific actions for each chunk of ignorable
whitespace (such as adding data to a node or buffer, or printing
it to a file).
- Parameters:
- ch - The whitespace characters.
- start - The start position in the character array.
- length - The number of characters to use from the
character array.
- Throws: SAXException
- IO problems or parsing errors
- Overrides:
- ignorableWhitespace in class HandlerBase
- See Also:
- ignorableWhitespace
processingInstruction
public void processingInstruction(String target,
String data) throws SAXException
- Receive notification of a processing instruction.
By default, do nothing. Application writers may override this
method in a subclass to take specific actions for each
processing instruction, such as setting status variables or
invoking other methods.
- Parameters:
- target - The processing instruction target.
- data - The processing instruction data, or null if
none is supplied.
- Throws: SAXException
- IO problems or parsing errors
- Overrides:
- processingInstruction in class HandlerBase
- See Also:
- processingInstruction
warning
public void warning(SAXParseException e) throws SAXException
- Receive notification of a parser warning.
The default implementation does nothing. Application writers
may override this method in a subclass to take specific actions
for each warning, such as inserting the message in a log file or
printing it to the console.
- Parameters:
- e - The warning information encoded as an exception.
- Throws: SAXException
- IO problems or parsing errors
- Overrides:
- warning in class HandlerBase
- See Also:
- warning, SAXParseException
error
public void error(SAXParseException e) throws SAXException
- Receive notification of a recoverable parser error.
The default implementation does nothing. Application writers
may override this method in a subclass to take specific actions
for each error, such as inserting the message in a log file or
printing it to the console.
- Parameters:
- e - The warning information encoded as an exception.
- Throws: SAXException
- IO problems or parsing errors
- Overrides:
- error in class HandlerBase
- See Also:
- warning, SAXParseException
fatalError
public void fatalError(SAXParseException e) throws SAXException
- Report a fatal XML parsing error.
The default implementation throws a SAXParseException.
Application writers may override this method in a subclass if
they need to take specific actions for each fatal error (such as
collecting all of the errors into a single report): in any case,
the application must stop all regular processing when this
method is invoked, since the document is no longer reliable, and
the parser may no longer report non-error events.
- Parameters:
- e - The error information encoded as an exception.
- Throws: SAXException
- IO problems or parsing errors
- Overrides:
- fatalError in class HandlerBase
- See Also:
- fatalError, SAXParseException
getErrorMessage
public String getErrorMessage(SAXParseException e)
- get an error message string from a SAXParseException
getTree
public XTree getTree()
- return the XTree created by SAX
- Returns:
- XTree the XTree
getEntityTable
public Hashtable getEntityTable()
- return the entity table created by SAX (null if no entities)
- Returns:
- Hashtable the hashtable of entities
getNotationTable
public Hashtable getNotationTable()
- return the notation table created by SAX (null if no notations)
- Returns:
- Hashtable the hashtable of notations
printErrors
public void printErrors()
- print the accumulated errors
displayError
public void displayError(SAXParseException spe)
- display the input and highlight the first fatal error
main
public static void main(String args[]) throws Exception
- Main entry point for an application.
- Throws: Exception
- almost anything in the galaxy could go wrong
All Packages Class Hierarchy This Package Previous Next Index