Inheritance diagram for SAXParser:
Public Types | |
enum | ValSchemes { Val_Never, Val_Always, Val_Auto } |
Public Methods | |
Constructors and Destructor | |
SAXParser (XMLValidator *const valToAdopt=0) | |
~SAXParser () | |
Getter methods | |
DocumentHandler * | getDocumentHandler () |
const DocumentHandler * | getDocumentHandler () const |
EntityResolver * | getEntityResolver () |
const EntityResolver * | getEntityResolver () const |
ErrorHandler * | getErrorHandler () |
const ErrorHandler * | getErrorHandler () const |
const XMLScanner & | getScanner () const |
const XMLValidator & | getValidator () const |
ValSchemes | getValidationScheme () const |
bool | getDoSchema () const |
bool | getValidationSchemaFullChecking () const |
int | getErrorCount () const |
bool | getDoNamespaces () const |
bool | getExitOnFirstFatalError () const |
bool | getValidationConstraintFatal () const |
XMLCh * | getExternalSchemaLocation () const |
XMLCh * | getExternalNoNamespaceSchemaLocation () const |
bool | getURLEntityCaching () const |
XMLCh * | getURLEntityCacheDir () const |
Setter methods | |
void | setDoNamespaces (const bool newState) |
void | setValidationScheme (const ValSchemes newScheme) |
void | setDoSchema (const bool newState) |
void | setValidationSchemaFullChecking (const bool schemaFullChecking) |
void | setExitOnFirstFatalError (const bool newState) |
void | setValidationConstraintFatal (const bool newState) |
void | setExternalSchemaLocation (const XMLCh *const schemaLocation) |
void | setExternalSchemaLocation (const char *const schemaLocation) |
void | setExternalNoNamespaceSchemaLocation (const XMLCh *const noNamespaceSchemaLocation) |
void | setExternalNoNamespaceSchemaLocation (const char *const noNamespaceSchemaLocation) |
void | setURLEntityCaching (const bool useCache) |
void | setURLEntityCacheDir (const XMLCh *cachedir) |
void | setURLEntityCacheDir (const char *cachedir) |
Advanced document handler list maintenance methods | |
void | installAdvDocHandler (XMLDocumentHandler *const toInstall) |
bool | removeAdvDocHandler (XMLDocumentHandler *const toRemove) |
Implementation of SAX 1.0 interface's. | |
virtual void | parse (const InputSource &source, const bool reuseGrammar=false) |
virtual void | parse (const XMLCh *const systemId, const bool reuseGrammar=false) |
virtual void | parse (const char *const systemId, const bool reuseGrammar=false) |
virtual void | setDocumentHandler (DocumentHandler *const handler) |
virtual void | setDTDHandler (DTDHandler *const handler) |
virtual void | setErrorHandler (ErrorHandler *const handler) |
virtual void | setEntityResolver (EntityResolver *const resolver) |
Progressive scan methods | |
bool | parseFirst (const XMLCh *const systemId, XMLPScanToken &toFill, const bool reuseGrammar=false) |
bool | parseFirst (const char *const systemId, XMLPScanToken &toFill, const bool reuseGrammar=false) |
bool | parseFirst (const InputSource &source, XMLPScanToken &toFill, const bool reuseGrammar=false) |
bool | parseNext (XMLPScanToken &token) |
void | parseReset (XMLPScanToken &token) |
Implementation of the DocTypeHandler Interface | |
virtual void | attDef (const DTDElementDecl &elemDecl, const DTDAttDef &attDef, const bool ignore) |
virtual void | doctypeComment (const XMLCh *const comment) |
virtual void | doctypeDecl (const DTDElementDecl &elemDecl, const XMLCh *const publicId, const XMLCh *const systemId, const bool hasIntSubset) |
virtual void | doctypePI (const XMLCh *const target, const XMLCh *const data) |
virtual void | doctypeWhitespace (const XMLCh *const chars, const unsigned int length) |
virtual void | elementDecl (const DTDElementDecl &decl, const bool isIgnored) |
virtual void | endAttList (const DTDElementDecl &elemDecl) |
virtual void | endIntSubset () |
virtual void | endExtSubset () |
virtual void | entityDecl (const DTDEntityDecl &entityDecl, const bool isPEDecl, const bool isIgnored) |
virtual void | resetDocType () |
virtual void | notationDecl (const XMLNotationDecl ¬Decl, const bool isIgnored) |
virtual void | startAttList (const DTDElementDecl &elemDecl) |
virtual void | startIntSubset () |
virtual void | startExtSubset () |
virtual void | TextDecl (const XMLCh *const versionStr, const XMLCh *const encodingStr) |
Implementation of the XMLDocumentHandler Interface. | |
virtual void | docCharacters (const XMLCh *const chars, const unsigned int length, const bool cdataSection) |
virtual void | docComment (const XMLCh *const comment) |
virtual void | docPI (const XMLCh *const target, const XMLCh *const data) |
virtual void | endDocument () |
virtual void | endElement (const XMLElementDecl &elemDecl, const unsigned int urlId, const bool isRoot) |
virtual void | endEntityReference (const XMLEntityDecl &entDecl) |
virtual void | ignorableWhitespace (const XMLCh *const chars, const unsigned int length, const bool cdataSection) |
virtual void | resetDocument () |
virtual void | startDocument () |
virtual void | startElement (const XMLElementDecl &elemDecl, const unsigned int urlId, const XMLCh *const elemPrefix, const RefVectorOf< XMLAttr > &attrList, const unsigned int attrCount, const bool isEmpty, const bool isRoot) |
virtual void | startEntityReference (const XMLEntityDecl &entDecl) |
virtual void | XMLDecl (const XMLCh *const versionStr, const XMLCh *const encodingStr, const XMLCh *const standaloneStr, const XMLCh *const actualEncodingStr) |
Implementation of the XMLErrorReporter Interface. | |
virtual void | error (const unsigned int errCode, const XMLCh *const msgDomain, const XMLErrorReporter::ErrTypes errType, const XMLCh *const errorText, const XMLCh *const systemId, const XMLCh *const publicId, const unsigned int lineNum, const unsigned int colNum) |
virtual void | resetErrors () |
Implementation of the XMLEntityHandler Interface. | |
virtual void | endInputSource (const InputSource &inputSource) |
virtual bool | expandSystemId (const XMLCh *const systemId, XMLBuffer &toFill) |
virtual void | resetEntities () |
virtual InputSource * | resolveEntity (const XMLCh *const publicId, const XMLCh *const systemId) |
virtual void | startInputSource (const InputSource &inputSource) |
Deprecated Methods | |
bool | getDoValidation () const |
void | setDoValidation (const bool newState) |
Protected Methods | |
SAXParser (const SAXParser &) | |
void | operator= (const SAXParser &) |
Protected Attributes | |
VecAttrListImpl | fAttrList |
DocumentHandler * | fDocHandler |
DTDHandler * | fDTDHandler |
unsigned int | fElemDepth |
EntityResolver * | fEntityResolver |
ErrorHandler * | fErrorHandler |
unsigned int | fAdvDHCount |
XMLDocumentHandler ** | fAdvDHList |
unsigned int | fAdvDHListSize |
bool | fParseInProgress |
XMLScanner * | fScanner |
It can be used to instantiate a validating or non-validating parser, by setting a member flag.
|
Constructor with an instance of validator class to use for validation.
|
|
Destructor |
|
This method is used to report an attribute definition. This method is a no-op for this SAX driver implementation.
|
|
This method is used to report all the characters scanned by the parser. The driver will invoke the 'characters' method of the user installed SAX Document Handler. If any advanced callback handlers are installed, the corresponding 'docCharacters' method will also be invoked.
Implements XMLDocumentHandler. |
|
This method is used to report any comments scanned by the parser. This method is a no-op unless, unless an advanced callback handler is installed, in which case the corresponding 'docComment' method is invoked.
Implements XMLDocumentHandler. |
|
This method is used to report any PI scanned by the parser. Any PI's occurring before any 'content' are not reported to any SAX handler as per the specification. However, all PI's within content are reported via the SAX Document Handler's 'processingInstruction' method. If any advanced callback handlers are installed, the corresponding 'docPI' method will be invoked.
Implements XMLDocumentHandler. |
|
This method is used to report a comment occurring within the DTD. This method is a no-op for this SAX driver implementation.
|
|
This method is used to report the DOCTYPE declaration. This method is a no-op for this SAX driver implementation.
|
|
This method is used to report any PI declarations occurring inside the DTD definition block. This method is a no-op for this SAX driver implementation.
|
|
This method is used to report any whitespaces occurring inside the DTD definition block. This method is a no-op for this SAX driver implementation.
|
|
This method is used to report an element declarations successfully scanned by the parser. This method is a no-op for this SAX driver implementation.
|
|
This method is used to report the end of an attribute list declaration for an element. This method is a no-op for this SAX driver implementation.
|
|
This method is used to indicate the end of root element was just scanned by the parser. Corresponding 'endDocument' method of the user installed SAX Document Handler will also be invoked. In addition, if any advanced callback handlers are installed, the corresponding 'endDocument' method is invoked.
Implements XMLDocumentHandler. |
|
This method is used to indicate the end tag of an element. The driver will invoke the corresponding 'endElement' method of the SAX Document Handler interface. If any advanced callback handlers are installed, the corresponding 'endElement' method is also invoked.
Implements XMLDocumentHandler. |
|
This method is used to indicate that an end of an entity reference was just scanned. If any advanced callback handlers are installed, the corresponding 'endEnityReference' method is invoked.
Implements XMLDocumentHandler. |
|
This method is used to report the end of the external subset. This method is a no-op for this SAX driver implementation. |
|
This method is used to indicate the end of parsing of an external entity file. This method is a no-op for this SAX driver implementation.
Implements XMLEntityHandler. |
|
This method is used to report the end of the internal subset. This method is a no-op for this SAX driver implementation. |
|
This method is used to report any entity declarations. For unparsed entities, this driver will invoke the SAX DTDHandler::unparsedEntityDecl callback.
|
|
This method is used to report back errors found while parsing the XML file. The driver will call the corresponding user installed SAX Error Handler methods: 'fatal', 'error', 'warning' depending on the severity of the error. This classification is defined by the XML specification.
|
|
This method allows an installed XMLEntityHandler to further process any system id's of enternal entities encountered in the XML file being parsed, such as redirection etc. This method always returns 'false' for this SAX driver implementation.
Implements XMLEntityHandler. |
|
This method returns the installed document handler. Suitable only for 'rvalue' usages.
|
|
This method returns the installed document handler. Suitable for 'lvalue' usages.
|
|
This method returns the state of the parser's namespace handling capability.
|
|
Get the 'do schema' flag This method returns the state of the parser's schema processing flag.
|
|
This method returns the state of the parser's validation handling flag which controls whether validation checks are enforced or not.
|
|
This method returns the installed entity resolver. Suitable for 'rvalue' usages.
|
|
This method returns the installed entity resolver. Suitable for 'lvalue' usages.
|
|
Get error count from the last parse operation. This method returns the error count from the last parse operation. Note that this count is actually stored in the scanner, so this method simply returns what the scanner reports.
|
|
This method returns the installed error handler. Suitable for 'rvalue' usages.
|
|
This method returns the installed error handler. Suitable for 'lvalue' usages.
|
|
This method returns the state of the parser's exit-on-First-Fatal-Error flag.
|
|
Get the noNamespace SchemaLocation that is specified externaly. This method returns the no target namespace XML Schema Location that was specified using setExternalNoNamespaceSchemaLocation. The parser owns the returned string, and the memory allocated for the returned string will be destroyed when the parser is deleted. To ensure assessiblity of the returned information after the parser is deleted, callers need to copy and store the returned information somewhere else.
|
|
Get the set of Namespace/SchemaLocation that is specified externaly. This method returns the list of Namespace/SchemaLocation that was specified using setExternalSchemaLocation. The parser owns the returned string, and the memory allocated for the returned string will be destroyed when the parser is deleted. To ensure assessiblity of the returned information after the parser is deleted, callers need to copy and store the returned information somewhere else.
|
|
This method returns a reference to the underlying scanner object. It allows read only access to data maintained in the scanner.
|
|
This method returnsthe absolute path of the directory where the files are cached.
|
|
This method returns the state of the parser's entity file caching capability.
|
|
This method returns the state of the parser's validation-constraint-fatal flag.
|
|
Get the 'full schema constraint checking' flag This method returns the state of the parser's full schema constraint checking flag.
|
|
This method returns an enumerated value that indicates the current validation scheme set on this parser.
|
|
This method returns a reference to the parser's installed validator.
|
|
This method is used to report all the whitespace characters, which are determined to be 'ignorable'. This distinction between characters is only made, if validation is enabled. Corresponding 'ignorableWhitespace' method of the user installed SAX Document Handler interface is called. Any whitespace before content is not reported to the SAX Document Handler method, as per the SAX specification. However, if any advanced callback handlers are installed, the corresponding 'ignorableWhitespace' method is invoked.
Implements XMLDocumentHandler. |
|
This method installs the specified 'advanced' document callback handler, thereby allowing the user to customize the processing, if they choose to do so. Any number of advanced callback handlers maybe installed. The methods in the advanced callback interface represent Xerces-C extensions. There is no specification for this interface.
|
|
This method is used to report any notation declarations. If there is a user installed DTDHandler, then the driver will invoke the SAX DTDHandler::notationDecl callback.
|
|
This method invokes the parsing process on the XML file specified by the native char* string parameter 'systemId'.
Implements Parser. |
|
This method invokes the parsing process on the XML file specified by the Unicode string parameter 'systemId'.
Implements Parser. |
|
This method invokes the parsing process on the XML file specified by the InputSource parameter.
Implements Parser. |
|
Begin a progressive parse operation This method is used to start a progressive parse on a XML file. To continue parsing, subsequent calls must be to the parseNext method. It scans through the prolog and returns a token to be used on subsequent scanNext() calls. If the return value is true, then the token is legal and ready for further use. If it returns false, then the scan of the prolog failed and the token is not going to work on subsequent scanNext() calls.
|
|
Begin a progressive parse operation This method is used to start a progressive parse on a XML file. To continue parsing, subsequent calls must be to the parseNext method. It scans through the prolog and returns a token to be used on subsequent scanNext() calls. If the return value is true, then the token is legal and ready for further use. If it returns false, then the scan of the prolog failed and the token is not going to work on subsequent scanNext() calls.
|
|
Begin a progressive parse operation This method is used to start a progressive parse on a XML file. To continue parsing, subsequent calls must be to the parseNext method. It scans through the prolog and returns a token to be used on subsequent scanNext() calls. If the return value is true, then the token is legal and ready for further use. If it returns false, then the scan of the prolog failed and the token is not going to work on subsequent scanNext() calls.
|
|
Continue a progressive parse operation This method is used to continue with progressive parsing of XML files started by a call to 'parseFirst' method. It parses the XML file and stops as soon as it comes across a XML token (as defined in the XML specification). Relevant callback handlers are invoked as required by the SAX specification.
|
|
Reset the parser after a progressive parse If a progressive parse loop exits before the end of the document is reached, the parser has no way of knowing this. So it will leave open any files or sockets or memory buffers that were in use at the time that the parse loop exited. The next parse operation will cause these open files and such to be closed, but the next parse operation might occur at some unknown future point. To avoid this problem, you should reset the parser if you exit the loop early. If you exited because of an error, then this cleanup will be done for you. Its only when you exit the file prematurely of your own accord, because you've found what you wanted in the file most likely.
|
|
This method removes the 'advanced' document handler callback from the underlying parser scanner. If no handler is installed, advanced callbacks are not invoked by the scanner.
|
|
This method allows the user installed DTD handler to reset itself. |
|
This method allows the user installed Document Handler and any advanced callback handlers to 'reset' themselves. Implements XMLDocumentHandler. |
|
This method allows the installed XMLEntityHandler to reset itself. This method is a no-op for this SAX driver implementation. Implements XMLEntityHandler. |
|
This method allows the user installed Error Handler callback to 'reset' itself. This method is a no-op for this SAX driver implementation. Implements XMLErrorReporter. |
|
This method allows a user installed entity handler to further process any pointers to external entities. The applications can implement 'redirection' via this callback. The driver should call the SAX EntityHandler 'resolveEntity' method.
Implements XMLEntityHandler. |
|
This method installs the user specified SAX Document Handler callback function on parser.
Implements Parser. |
|
This method allows users to enable or disable the parser's namespace processing. When set to true, parser starts enforcing all the constraints / rules specified by the NameSpace specification. The parser's default state is: false. This flag is ignored by the underlying scanner if the installed validator indicates that namespace constraints should be enforced.
|
|
Set the 'schema support' flag This method allows users to enable or disable the parser's schema processing. When set to false, parser will not process any schema found. The parser's default state is: false.
|
|
This method allows users to enable or disable the parser's validation checks. By default, the parser does not to any validation. The default value is false.
|
|
This method installs the user specified DTD handler on the parser.
Implements Parser. |
|
This method installs the user specified entity resolver on the parser. It allows applications to trap and redirect calls to external entities.
Implements Parser. |
|
This method installs the user specified error handler on the parser.
Implements Parser. |
|
This method allows users to set the parser's behaviour when it encounters the first fatal error. If set to true, the parser will exit at the first fatal error. If false, then it will report the error and continue processing. The default value is 'true' and the parser exits on the first fatal error.
|
|
This method is same as setExternalNoNamespaceSchemaLocation(const XMLCh* const). It takes native char string as parameter
|
|
This method allows the user to specify the no target namespace XML Schema Location externally. If specified, the instance document's noNamespaceSchemaLocation attribute will be effectively ignored. If this method is called more than once, only the last one takes effect. The syntax is the same as for the noNamespaceSchemaLocation attribute that may occur in an instance document: e.g."file_name.xsd".
|
|
This method is same as setExternalSchemaLocation(const XMLCh* const). It takes native char string as parameter
|
|
This method allows the user to specify a list of schemas to use. If the targetNamespace of a schema specified using this method matches the targetNamespace of a schema occuring in the instance document in the schemaLocation attribute, or if the targetNamespace matches the namespace attribute of the "import" element, the schema specified by the user using this method will be used (i.e., the schemaLocation attribute in the instance document or on the "import" element will be effectively ignored). If this method is called more than once, only the last one takes effect. The syntax is the same as for schemaLocation attributes in instance documents: e.g, "http://www.example.com file_name.xsd". The user can specify more than one XML Schema in the list.
|
|
This method is same as setURLEntityCacheDir(const XMLCh* const). It takes native char string as parameter
|
|
Set the absolute path where the files are to be cached. This method allows the users to specify the absolute path of the directory where the files are to be cached. If this method is not invoked by the user but the Caching is turned on, the current directory is used by default. The parser's default value is : PWD
|
|
Set the external entity file caching flag This method allows users to enable or disable the parsers external entity file caching. When set to false, the external entity files are not cached locally. The parser's default behaviour is: true. (always caches files)
|
|
This method allows users to set the parser's behaviour when it encounters a validtion constraint error. If set to true, and the the parser is set to exit when it encounter the first fatal error, the parser will exit at the first encounter. If false, then it will report the error and continue processing. The default value is 'false'.
|
|
This method allows the user to turn full Schema constraint checking on/off. Only takes effect if Schema validation is enabled. If turned off, partial constraint checking is done. Full schema constraint checking includes those checking that may be time-consuming or memory intensive. Currently, particle unique attribution constraint checking and particle derivation resriction checking are controlled by this option. The parser's default state is: false.
|
|
This method allows users to set the validation scheme to be used by this parser. The value is one of the ValSchemes enumerated values defined by this class:
The parser's default state is: Val_Auto.
|
|
This method is used to indicate the start of an element's attribute list declaration. This method is a no-op for this SAX driver implementation.
|
|
This method is used to report the start of the parsing process. The corresponding user installed SAX Document Handler's method 'startDocument' is invoked. If any advanced callback handlers are installed, then the corresponding 'startDocument' method is also called.
Implements XMLDocumentHandler. |
|
This method is used to report the start of an element. It is called at the end of the element, by which time all attributes specified are also parsed. The corresponding user installed SAX Document Handler's method 'startElement' is invoked. If any advanced callback handlers are installed, then the corresponding 'startElement' method is also called.
Implements XMLDocumentHandler. |
|
This method is used to indicate the start of an entity reference. If any advanced callback handlers are installed, the corresponding 'endEnityReference' method is invoked.
Implements XMLDocumentHandler. |
|
This method is used indicate the start of the external subset. This method is a no-op for this SAX driver implementation. |
|
This method is used to indicate the start of parsing an external entity file. This method is a no-op for this SAX driver implementation.
Implements XMLEntityHandler. |
|
This method is used indicate the start of the internal subset. This method is a no-op for this SAX driver implementation. |
|
This method is used to report the TextDecl. Refer to the XML specification for the syntax of a TextDecl. This method is a no-op for this SAX driver implementation.
|
|
This method is used to report the XML decl scanned by the parser. Refer to the XML specification to see the meaning of parameters. This method is a no-op for this SAX driver implementation.
Implements XMLDocumentHandler. |