This module, both source code and documentation, is in the Public Domain, and comes with NO WARRANTY.
This class is available as a convenience base class for SAX2 applications: it provides default implementations for all of the callbacks in the four core SAX2 handler classes:
Application writers can extend this class when they need to implement only part of an interface; parser writers can instantiate this class to provide default handlers when the application has not supplied its own.
This class replaces the deprecated SAX1 HandlerBase class.
function resolveEntity(const publicId : SAXString; const systemId : SAXString) : IInputSource;
Resolve an external entity.Always return nil, 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.
procedure notationDecl(const name : SAXString; const publicId : SAXString; const systemId : SAXString);
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.
procedure unparsedEntityDecl(const name : SAXString; const publicId : SAXString; const systemId : SAXString; const notationName : SAXString);
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.
procedure setDocumentLocator(const Locator : ILocator);
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.
procedure startDocument();
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).
procedure endDocument();
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 end of a document (such as finalising a tree or closing an output file).
procedure startPrefixMapping(const prefix : SAXString; const uri : SAXString);
Receive notification of the start of a Namespace mapping.By default, do nothing. Application writers may override this method in a subclass to take specific actions at the start of each Namespace prefix scope (such as storing the prefix mapping).
procedure endPrefixMapping(const prefix : SAXString);
Receive notification of the end of a Namespace mapping.By default, do nothing. Application writers may override this method in a subclass to take specific actions at the end of each prefix mapping.
procedure startElement(const uri : SAXString; const localName : SAXString; const qName : SAXString; const atts : IAttributes);
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).
procedure endElement(const uri : SAXString; const localName : SAXString; const qName : SAXString);
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).
procedure characters(const ch : SAXString);
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).
procedure ignorableWhitespace(const ch : SAXString);
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).
procedure processingInstruction(const target : SAXString; const data : SAXString);
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.
procedure skippedEntity(const name : SAXString);
Receive notification of a skipped entity.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.
procedure warning(const e : ISAXParseError);
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.
procedure error(const e : ISAXParseError);
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.
procedure fatalError(const e : ISAXParseError);
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 parsing events.