Xerces-C++  3.2.3
List of all members
AbstractDOMParser Class Reference

This class implements the Document Object Model (DOM) interface. More...

Inheritance diagram for AbstractDOMParser:
XMemory XMLDocumentHandler XMLErrorReporter XMLEntityHandler PSVIHandler XercesDOMParser

Public Types

Public constants
enum  ValSchemes { Val_Never , Val_Always , Val_Auto }
 ValScheme enum used in setValidationScheme Val_Never: Do not report validation errors. More...
 
- Public Types inherited from XMLErrorReporter
enum  ErrTypes { ErrType_Warning , ErrType_Error , ErrType_Fatal , ErrTypes_Unknown }
 

Public Member Functions

Destructor
virtual ~AbstractDOMParser ()
 Destructor. More...
 
Utility methods
void reset ()
 Reset the parser. More...
 
DOMDocumentadoptDocument ()
 Adopt the DOM document. More...
 
Getter methods
DOMDocumentgetDocument ()
 Get the DOM document. More...
 
const XMLValidatorgetValidator () const
 Get a const reference to the validator. More...
 
ValSchemes getValidationScheme () const
 This method returns an enumerated value that indicates the current validation scheme set on this parser. More...
 
bool getDoSchema () const
 Get the 'do schema' flag. More...
 
bool getValidationSchemaFullChecking () const
 Get the 'full schema constraint checking' flag. More...
 
bool getIdentityConstraintChecking () const
 Get the identity constraint checking' flag. More...
 
XMLSize_t getErrorCount () const
 Get error count from the last parse operation. More...
 
bool getDoNamespaces () const
 Get the 'do namespaces' flag. More...
 
bool getExitOnFirstFatalError () const
 Get the 'exit on first error' flag. More...
 
bool getValidationConstraintFatal () const
 This method returns the state of the parser's validation-constraint-fatal flag. More...
 
bool getCreateEntityReferenceNodes () const
 Get the 'include entity references' flag. More...
 
bool getIncludeIgnorableWhitespace () const
 Get the 'include ignorable whitespace' flag. More...
 
XMLChgetExternalSchemaLocation () const
 Get the set of Namespace/SchemaLocation that is specified externally. More...
 
XMLChgetExternalNoNamespaceSchemaLocation () const
 Get the noNamespace SchemaLocation that is specified externally. More...
 
SecurityManagergetSecurityManager () const
 Get the SecurityManager instance attached to this parser. More...
 
const XMLSize_tgetLowWaterMark () const
 Get the raw buffer low water mark for this parser. More...
 
bool getLoadExternalDTD () const
 Get the 'Loading External DTD' flag. More...
 
bool getLoadSchema () const
 Get the 'Loading Schema' flag. More...
 
bool getCreateCommentNodes () const
 Get the 'create comment node' flag. More...
 
bool getCalculateSrcOfs () const
 Get the 'calculate src offset flag'. More...
 
bool getStandardUriConformant () const
 Get the 'force standard uri flag'. More...
 
PSVIHandlergetPSVIHandler ()
 This method returns the installed PSVI handler. More...
 
const PSVIHandlergetPSVIHandler () const
 This method returns the installed PSVI handler. More...
 
bool getCreateSchemaInfo () const
 Get the 'associate schema info' flag. More...
 
bool getDoXInclude () const
 Get the 'do XInclude' flag. More...
 
bool getGenerateSyntheticAnnotations () const
 Get the 'generate synthetic annotations' flag. More...
 
bool getValidateAnnotations () const
 Get the 'validate annotations' flag. More...
 
bool getIgnoreAnnotations () const
 Get the 'ignore annotations' flag. More...
 
bool getDisableDefaultEntityResolution () const
 Get the 'disable default entity resolution' flag. More...
 
bool getSkipDTDValidation () const
 Get the 'skip DTD validation' flag. More...
 
bool getHandleMultipleImports () const
 Get the 'handle multiple schema imports' flag. More...
 
Setter methods
void setGenerateSyntheticAnnotations (const bool newValue)
 set the 'generate synthetic annotations' flag More...
 
void setValidateAnnotations (const bool newValue)
 set the 'validlate annotations' flag More...
 
void setDoNamespaces (const bool newState)
 Set the 'do namespaces' flag. More...
 
void setExitOnFirstFatalError (const bool newState)
 Set the 'exit on first error' flag. More...
 
void setValidationConstraintFatal (const bool newState)
 This method allows users to set the parser's behaviour when it encounters a validation constraint error. More...
 
void setCreateEntityReferenceNodes (const bool create)
 Set the 'include entity references' flag. More...
 
void setIncludeIgnorableWhitespace (const bool include)
 Set the 'include ignorable whitespace' flag. More...
 
void setValidationScheme (const ValSchemes newScheme)
 This method allows users to set the validation scheme to be used by this parser. More...
 
void setDoSchema (const bool newState)
 Set the 'do schema' flag. More...
 
void setValidationSchemaFullChecking (const bool schemaFullChecking)
 This method allows the user to turn full Schema constraint checking on/off. More...
 
void setIdentityConstraintChecking (const bool newState)
 This method allows users to enable or disable the parser's identity constraint checks. More...
 
void setExternalSchemaLocation (const XMLCh *const schemaLocation)
 This method allows the user to specify a list of schemas to use. More...
 
void setExternalSchemaLocation (const char *const schemaLocation)
 This method is same as setExternalSchemaLocation(const XMLCh* const). More...
 
void setExternalNoNamespaceSchemaLocation (const XMLCh *const noNamespaceSchemaLocation)
 This method allows the user to specify the no target namespace XML Schema Location externally. More...
 
void setExternalNoNamespaceSchemaLocation (const char *const noNamespaceSchemaLocation)
 This method is same as setExternalNoNamespaceSchemaLocation(const XMLCh* const). More...
 
void setSecurityManager (SecurityManager *const securityManager)
 This allows an application to set a SecurityManager on the parser; this object stores information that various components use to limit their consumption of system resources while processing documents. More...
 
void setLowWaterMark (XMLSize_t lwm)
 Set the raw buffer low water mark for this parser. More...
 
void setLoadExternalDTD (const bool newState)
 Set the 'Loading External DTD' flag. More...
 
void setLoadSchema (const bool newState)
 Set the 'Loading Schema' flag. More...
 
void setCreateCommentNodes (const bool create)
 Set the 'create comment nodes' flag. More...
 
void setCalculateSrcOfs (const bool newState)
 Enable/disable src offset calculation. More...
 
void setStandardUriConformant (const bool newState)
 Force standard uri. More...
 
void useScanner (const XMLCh *const scannerName)
 Set the scanner to use when scanning the XML document. More...
 
void useImplementation (const XMLCh *const implementationFeatures)
 Set the implementation to use when creating the document. More...
 
virtual void setPSVIHandler (PSVIHandler *const handler)
 This method installs the user specified PSVI handler on the parser. More...
 
void setCreateSchemaInfo (const bool newState)
 Set the 'associate schema info' flag. More...
 
void setDoXInclude (const bool newState)
 Set the 'do XInclude' flag. More...
 
void setIgnoreAnnotations (const bool newValue)
 Set the 'ignore annotation' flag. More...
 
void setDisableDefaultEntityResolution (const bool newValue)
 Set the 'disable default entity resolution' flag. More...
 
void setSkipDTDValidation (const bool newValue)
 Set the 'skip DTD validation' flag. More...
 
void setHandleMultipleImports (const bool newValue)
 Set the 'handle multiple schema imports' flag. More...
 
Parsing methods
void parse (const InputSource &source)
 Parse via an input source object. More...
 
void parse (const XMLCh *const systemId)
 Parse via a file path or URL. More...
 
void parse (const char *const systemId)
 Parse via a file path or URL (in the local code page) More...
 
bool parseFirst (const XMLCh *const systemId, XMLPScanToken &toFill)
 Begin a progressive parse operation. More...
 
bool parseFirst (const char *const systemId, XMLPScanToken &toFill)
 Begin a progressive parse operation. More...
 
bool parseFirst (const InputSource &source, XMLPScanToken &toFill)
 Begin a progressive parse operation. More...
 
bool parseNext (XMLPScanToken &token)
 Continue a progressive parse operation. More...
 
void parseReset (XMLPScanToken &token)
 Reset the parser after a progressive parse. More...
 
Implementation of the PSVIHandler interface.
virtual void handleElementPSVI (const XMLCh *const localName, const XMLCh *const uri, PSVIElement *elementInfo)
 Receive notification of the PSVI properties of an element. More...
 
virtual void handlePartialElementPSVI (const XMLCh *const localName, const XMLCh *const uri, PSVIElement *elementInfo)
 Receive notification of partial PSVI properties of an element. More...
 
virtual void handleAttributesPSVI (const XMLCh *const localName, const XMLCh *const uri, PSVIAttributeList *psviAttributes)
 Enables PSVI information about attributes to be passed back to the application. More...
 
Implementation of the XMLDocumentHandler interface.
virtual void docCharacters (const XMLCh *const chars, const XMLSize_t length, const bool cdataSection)
 Handle document character events. More...
 
virtual void docComment (const XMLCh *const comment)
 Handle a document comment event. More...
 
virtual void docPI (const XMLCh *const target, const XMLCh *const data)
 Handle a document PI event. More...
 
virtual void endDocument ()
 Handle the end of document event. More...
 
virtual void endElement (const XMLElementDecl &elemDecl, const unsigned int urlId, const bool isRoot, const XMLCh *const elemPrefix)
 Handle and end of element event. More...
 
virtual void endEntityReference (const XMLEntityDecl &entDecl)
 Handle and end of entity reference event. More...
 
virtual void ignorableWhitespace (const XMLCh *const chars, const XMLSize_t length, const bool cdataSection)
 Handle an ignorable whitespace vent. More...
 
virtual void resetDocument ()
 Handle a document reset event. More...
 
virtual void startDocument ()
 Handle a start document event. More...
 
virtual void startElement (const XMLElementDecl &elemDecl, const unsigned int urlId, const XMLCh *const elemPrefix, const RefVectorOf< XMLAttr > &attrList, const XMLSize_t attrCount, const bool isEmpty, const bool isRoot)
 Handle a start element event. More...
 
virtual void startEntityReference (const XMLEntityDecl &entDecl)
 Handle a start entity reference event. More...
 
virtual void XMLDecl (const XMLCh *const versionStr, const XMLCh *const encodingStr, const XMLCh *const standaloneStr, const XMLCh *const actualEncStr)
 Handle an XMLDecl event. More...
 
- Public Member Functions inherited from XMemory
void * operator new (size_t size)
 This method overrides operator new. More...
 
void * operator new (size_t size, MemoryManager *memMgr)
 This method defines a custom operator new, that will use the provided memory manager to perform the allocation. More...
 
void * operator new (size_t size, void *ptr)
 This method overrides placement operator new. More...
 
void operator delete (void *p)
 This method overrides operator delete. More...
 
void operator delete (void *p, MemoryManager *memMgr)
 This method provides a matching delete for the custom operator new. More...
 
void operator delete (void *p, void *ptr)
 This method provides a matching delete for the placement new. More...
 
- Public Member Functions inherited from XMLDocumentHandler
virtual ~XMLDocumentHandler ()
 
- Public Member Functions inherited from XMLErrorReporter
virtual ~XMLErrorReporter ()
 Default destructor. More...
 
virtual void error (const unsigned int errCode, const XMLCh *const errDomain, const ErrTypes type, const XMLCh *const errorText, const XMLCh *const systemId, const XMLCh *const publicId, const XMLFileLoc lineNum, const XMLFileLoc colNum)=0
 Called to report errors from the scanner or validator. More...
 
virtual void resetErrors ()=0
 Called before a new parse event to allow the handler to reset. More...
 
- Public Member Functions inherited from XMLEntityHandler
virtual ~XMLEntityHandler ()
 Default destructor. More...
 
virtual void endInputSource (const InputSource &inputSource)=0
 This method get called after the scanner has finished reading from the given input source while processing external entity references. More...
 
virtual bool expandSystemId (const XMLCh *const systemId, XMLBuffer &toFill)=0
 This method allows the passes the scanned systemId to the entity handler, thereby giving it a chance to provide any customized handling like resolving relative path names. More...
 
virtual void resetEntities ()=0
 This method allows the entity handler to reset itself, so that it can be used again. More...
 
virtual InputSourceresolveEntity (XMLResourceIdentifier *resourceIdentifier)=0
 This method allows the entity handler to provide customized application specific entity resolution. More...
 
virtual void startInputSource (const InputSource &inputSource)=0
 This method will be called before the scanner starts reading from an input source while processing external entity references. More...
 
- Public Member Functions inherited from PSVIHandler
virtual ~PSVIHandler ()
 

Protected Member Functions

Constructors
 AbstractDOMParser (XMLValidator *const valToAdopt=0, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager, XMLGrammarPool *const gramPool=0)
 Construct a AbstractDOMParser, with an optional validator. More...
 
Protected getter methods
DOMNodegetCurrentNode ()
 Get the current DOM node. More...
 
XMLScanner * getScanner () const
 Get the XML scanner. More...
 
GrammarResolver * getGrammarResolver () const
 Get the Grammar resolver. More...
 
bool getParseInProgress () const
 Get the parse in progress flag. More...
 
MemoryManagergetMemoryManager () const
 
Protected setter methods
void setCurrentNode (DOMNode *toSet)
 Set the current DOM node. More...
 
void setDocument (DOMDocument *toSet)
 Set the document node. More...
 
void setParseInProgress (const bool toSet)
 Set the parse in progress flag. More...
 
- Protected Member Functions inherited from XMemory
 XMemory ()
 Protected default constructor. More...
 
- Protected Member Functions inherited from XMLDocumentHandler
 XMLDocumentHandler ()
 
- Protected Member Functions inherited from XMLErrorReporter
 XMLErrorReporter ()
 Default constructor. More...
 
- Protected Member Functions inherited from XMLEntityHandler
 XMLEntityHandler ()
 Protected default constructor. More...
 
- Protected Member Functions inherited from PSVIHandler
 PSVIHandler ()
 

Protected helper methods

bool fCreateEntityReferenceNodes
 
bool fIncludeIgnorableWhitespace
 
bool fWithinElement
 
bool fParseInProgress
 
bool fCreateCommentNodes
 
bool fDocumentAdoptedByUser
 
bool fCreateSchemaInfo
 
bool fDoXInclude
 
XMLScanner * fScanner
 
XMLChfImplementationFeatures
 
DOMNodefCurrentParent
 
DOMNodefCurrentNode
 
DOMEntityImpl * fCurrentEntity
 
DOMDocumentImpl * fDocument
 
DOMDocumentTypeImpl * fDocumentType
 
RefVectorOf< DOMDocumentImpl > * fDocumentVector
 
GrammarResolver * fGrammarResolver
 
XMLStringPool * fURIStringPool
 
XMLValidatorfValidator
 
MemoryManagerfMemoryManager
 
XMLGrammarPoolfGrammarPool
 
XMLBufferMgr fBufMgr
 
XMLBuffer & fInternalSubset
 
PSVIHandlerfPSVIHandler
 
void resetPool ()
 
bool isDocumentAdopted () const
 Returns true if the user has adopted the document. More...
 

Deprecated DocTypeHandler Interfaces

virtual void attDef (const DTDElementDecl &elemDecl, const DTDAttDef &attDef, const bool ignoring)
 
virtual void doctypeComment (const XMLCh *const comment)
 
virtual void doctypeDecl (const DTDElementDecl &elemDecl, const XMLCh *const publicId, const XMLCh *const systemId, const bool hasIntSubset, const bool hasExtSubset=false)
 
virtual void doctypePI (const XMLCh *const target, const XMLCh *const data)
 
virtual void doctypeWhitespace (const XMLCh *const chars, const XMLSize_t 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 &notDecl, 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)
 
virtual DOMCDATASectioncreateCDATASection (const XMLCh *, XMLSize_t)
 
virtual DOMTextcreateText (const XMLCh *, XMLSize_t)
 
virtual DOMElementcreateElement (const XMLCh *name)
 
virtual DOMElementcreateElementNS (const XMLCh *namespaceURI, const XMLCh *elemPrefix, const XMLCh *localName, const XMLCh *qName)
 
virtual DOMAttrcreateAttr (const XMLCh *name)
 
virtual DOMAttrcreateAttrNS (const XMLCh *namespaceURI, const XMLCh *elemPrefix, const XMLCh *localName, const XMLCh *qName)
 

Detailed Description

This class implements the Document Object Model (DOM) interface.

It is used as a base for DOM parsers (i.e. XercesDOMParser, DOMLSParser).

Member Enumeration Documentation

◆ ValSchemes

ValScheme enum used in setValidationScheme Val_Never: Do not report validation errors.

Val_Always: The parser will always report validation errors. Val_Auto: The parser will report validation errors only if a grammar is specified.

See also
setValidationScheme
Enumerator
Val_Never 
Val_Always 
Val_Auto 

Constructor & Destructor Documentation

◆ ~AbstractDOMParser()

virtual AbstractDOMParser::~AbstractDOMParser ( )
virtual

Destructor.

◆ AbstractDOMParser()

AbstractDOMParser::AbstractDOMParser ( XMLValidator *const  valToAdopt = 0,
MemoryManager *const  manager = XMLPlatformUtils::fgMemoryManager,
XMLGrammarPool *const  gramPool = 0 
)
protected

Construct a AbstractDOMParser, with an optional validator.

Constructor with an instance of validator class to use for validation. If you don't provide a validator, a default one will be created for you in the scanner.

Parameters
valToAdoptPointer to the validator instance to use. The parser is responsible for freeing the memory.
gramPoolPointer to the grammar pool instance from external application (through derivatives). The parser does NOT own it.
managerPointer to the memory manager to be used to allocate objects.

Member Function Documentation

◆ adoptDocument()

DOMDocument* AbstractDOMParser::adoptDocument ( )

Adopt the DOM document.

This method returns the DOMDocument object representing the root of the document tree.

The caller will adopt the DOMDocument and thus is responsible to call DOMDocument::release() to release the associated memory. The parser will not delete it. The ownership is transferred from the parser to the caller.

Returns
The adopted DOMDocument object which represents the entire XML document.

◆ attDef()

virtual void AbstractDOMParser::attDef ( const DTDElementDecl &  elemDecl,
const DTDAttDef &  attDef,
const bool  ignoring 
)
virtual

◆ createAttr()

virtual DOMAttr* AbstractDOMParser::createAttr ( const XMLCh name)
protectedvirtual

◆ createAttrNS()

virtual DOMAttr* AbstractDOMParser::createAttrNS ( const XMLCh namespaceURI,
const XMLCh elemPrefix,
const XMLCh localName,
const XMLCh qName 
)
protectedvirtual

◆ createCDATASection()

virtual DOMCDATASection* AbstractDOMParser::createCDATASection ( const XMLCh ,
XMLSize_t   
)
protectedvirtual

◆ createElement()

virtual DOMElement* AbstractDOMParser::createElement ( const XMLCh name)
protectedvirtual

◆ createElementNS()

virtual DOMElement* AbstractDOMParser::createElementNS ( const XMLCh namespaceURI,
const XMLCh elemPrefix,
const XMLCh localName,
const XMLCh qName 
)
protectedvirtual

◆ createText()

virtual DOMText* AbstractDOMParser::createText ( const XMLCh ,
XMLSize_t   
)
protectedvirtual

◆ docCharacters()

virtual void AbstractDOMParser::docCharacters ( const XMLCh *const  chars,
const XMLSize_t  length,
const bool  cdataSection 
)
virtual

Handle document character events.

This method is used to report all the characters scanned by the parser. This DOM implementation stores this data in the appropriate DOM node, creating one if necessary.

Parameters
charsA const pointer to a Unicode string representing the character data.
lengthThe length of the Unicode string returned in 'chars'.
cdataSectionA flag indicating if the characters represent content from the CDATA section.

Implements XMLDocumentHandler.

◆ docComment()

virtual void AbstractDOMParser::docComment ( const XMLCh *const  comment)
virtual

Handle a document comment event.

This method is used to report any comments scanned by the parser. A new comment node is created which stores this data.

Parameters
commentA const pointer to a null terminated Unicode string representing the comment text.

Implements XMLDocumentHandler.

◆ docPI()

virtual void AbstractDOMParser::docPI ( const XMLCh *const  target,
const XMLCh *const  data 
)
virtual

Handle a document PI event.

This method is used to report any PI scanned by the parser. A new PI node is created and appended as a child of the current node in the tree.

Parameters
targetA const pointer to a Unicode string representing the target of the PI declaration.
dataA const pointer to a Unicode string representing the data of the PI declaration. See the PI production rule in the XML specification for details.

Implements XMLDocumentHandler.

◆ doctypeComment()

virtual void AbstractDOMParser::doctypeComment ( const XMLCh *const  comment)
virtual

◆ doctypeDecl()

virtual void AbstractDOMParser::doctypeDecl ( const DTDElementDecl &  elemDecl,
const XMLCh *const  publicId,
const XMLCh *const  systemId,
const bool  hasIntSubset,
const bool  hasExtSubset = false 
)
virtual

◆ doctypePI()

virtual void AbstractDOMParser::doctypePI ( const XMLCh *const  target,
const XMLCh *const  data 
)
virtual

◆ doctypeWhitespace()

virtual void AbstractDOMParser::doctypeWhitespace ( const XMLCh *const  chars,
const XMLSize_t  length 
)
virtual

◆ elementDecl()

virtual void AbstractDOMParser::elementDecl ( const DTDElementDecl &  decl,
const bool  isIgnored 
)
virtual

◆ endAttList()

virtual void AbstractDOMParser::endAttList ( const DTDElementDecl &  elemDecl)
virtual

◆ endDocument()

virtual void AbstractDOMParser::endDocument ( )
virtual

Handle the end of document event.

This method is used to indicate the end of the current document.

Implements XMLDocumentHandler.

◆ endElement()

virtual void AbstractDOMParser::endElement ( const XMLElementDecl elemDecl,
const unsigned int  urlId,
const bool  isRoot,
const XMLCh *const  elemPrefix 
)
virtual

Handle and end of element event.

This method is used to indicate the end tag of an element. The DOM parser pops the current element off the top of the element stack, and make it the new current element.

Parameters
elemDeclA const reference to the object containing element declaration information.
urlIdAn id referring to the namespace prefix, if namespaces setting is switched on.
isRootA flag indicating whether this element was the root element.
elemPrefixA const pointer to a Unicode string containing the namespace prefix for this element. Applicable only when namespace processing is enabled.

Implements XMLDocumentHandler.

◆ endEntityReference()

virtual void AbstractDOMParser::endEntityReference ( const XMLEntityDecl entDecl)
virtual

Handle and end of entity reference event.

This method is used to indicate that an end of an entity reference was just scanned.

Parameters
entDeclA const reference to the object containing the entity declaration information.

Implements XMLDocumentHandler.

◆ endExtSubset()

virtual void AbstractDOMParser::endExtSubset ( )
virtual

◆ endIntSubset()

virtual void AbstractDOMParser::endIntSubset ( )
virtual

◆ entityDecl()

virtual void AbstractDOMParser::entityDecl ( const DTDEntityDecl &  entityDecl,
const bool  isPEDecl,
const bool  isIgnored 
)
virtual

◆ getCalculateSrcOfs()

bool AbstractDOMParser::getCalculateSrcOfs ( ) const

Get the 'calculate src offset flag'.

This method returns the state of the parser's src offset calculation when parsing an XML document.

Returns
true, if the parser is currently configured to calculate src offsets, false otherwise.
See also
setCalculateSrcOfs

◆ getCreateCommentNodes()

bool AbstractDOMParser::getCreateCommentNodes ( ) const

Get the 'create comment node' flag.

This method returns the flag that specifies whether the parser is creating comment nodes in the DOM tree being produced.

Returns
The state of the create comment node flag.
See also
setCreateCommentNodes

References fCreateCommentNodes.

◆ getCreateEntityReferenceNodes()

bool AbstractDOMParser::getCreateEntityReferenceNodes ( ) const

Get the 'include entity references' flag.

This method returns the flag that specifies whether the parser is creating entity reference nodes in the DOM tree being produced.

Returns
The state of the create entity reference node flag.
See also
setCreateEntityReferenceNodes

References fCreateEntityReferenceNodes.

◆ getCreateSchemaInfo()

bool AbstractDOMParser::getCreateSchemaInfo ( ) const

Get the 'associate schema info' flag.

This method returns the flag that specifies whether the parser is storing schema informations in the element and attribute nodes in the DOM tree being produced.

Returns
The state of the associate schema info flag.
See also
setCreateSchemaInfo

References fCreateSchemaInfo.

◆ getCurrentNode()

DOMNode * AbstractDOMParser::getCurrentNode ( )
protected

Get the current DOM node.

This provides derived classes with access to the current node, i.e. the node to which new nodes are being added.

References fCurrentNode.

◆ getDisableDefaultEntityResolution()

bool AbstractDOMParser::getDisableDefaultEntityResolution ( ) const

Get the 'disable default entity resolution' flag.

Returns
true, if the parser is currently configured to not perform default entity resolution, false otherwise.
See also
setDisableDefaultEntityResolution

◆ getDocument()

DOMDocument* AbstractDOMParser::getDocument ( )

Get the DOM document.

This method returns the DOMDocument object representing the root of the document tree. This object provides the primary access to the document's data.

The returned DOMDocument object is owned by the parser.

Returns
The DOMDocument object which represents the entire XML document.

◆ getDoNamespaces()

bool AbstractDOMParser::getDoNamespaces ( ) const

Get the 'do namespaces' flag.

This method returns the state of the parser's namespace processing flag.

Returns
true, if the parser is currently configured to understand namespaces, false otherwise.
See also
setDoNamespaces

◆ getDoSchema()

bool AbstractDOMParser::getDoSchema ( ) const

Get the 'do schema' flag.

This method returns the state of the parser's schema processing flag.

Returns
true, if the parser is currently configured to understand schema, false otherwise.
See also
setDoSchema

◆ getDoXInclude()

bool AbstractDOMParser::getDoXInclude ( ) const

Get the 'do XInclude' flag.

This method returns the flag that specifies whether the parser will process XInclude nodes in the DOM tree being produced.

Returns
The state of the 'do XInclude' flag.
See also
setDoXInclude

References fDoXInclude.

◆ getErrorCount()

XMLSize_t AbstractDOMParser::getErrorCount ( ) const

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.

Returns
number of errors encountered during the latest parse operation.

◆ getExitOnFirstFatalError()

bool AbstractDOMParser::getExitOnFirstFatalError ( ) const

Get the 'exit on first error' flag.

This method returns the state of the parser's exit-on-First-Fatal-Error flag. If this flag is true, then the parse will exit the first time it sees any non-wellformed XML or any validity error. The default state is true.

Returns
true, if the parser is currently configured to exit on the first fatal error, false otherwise.
See also
setExitOnFirstFatalError

◆ getExternalNoNamespaceSchemaLocation()

XMLCh* AbstractDOMParser::getExternalNoNamespaceSchemaLocation ( ) const

Get the noNamespace SchemaLocation that is specified externally.

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 accessibility of the returned information after the parser is deleted, callers need to copy and store the returned information somewhere else.

Returns
a pointer to the no target namespace Schema Location that was specified externally. The pointer spans the same life-time as the parser. A null pointer is returned if nothing was specified externally.
See also
setExternalNoNamespaceSchemaLocation(const XMLCh* const)

◆ getExternalSchemaLocation()

XMLCh* AbstractDOMParser::getExternalSchemaLocation ( ) const

Get the set of Namespace/SchemaLocation that is specified externally.

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 accessibility of the returned information after the parser is deleted, callers need to copy and store the returned information somewhere else.

Returns
a pointer to the list of Namespace/SchemaLocation that was specified externally. The pointer spans the same life-time as the parser. A null pointer is returned if nothing was specified externally.
See also
setExternalSchemaLocation(const XMLCh* const)

◆ getGenerateSyntheticAnnotations()

bool AbstractDOMParser::getGenerateSyntheticAnnotations ( ) const

Get the 'generate synthetic annotations' flag.

Returns
true, if the parser is currently configured to generate synthetic annotations, false otherwise. A synthetic XSAnnotation is created when a schema component has non-schema attributes but has no child annotations so that the non-schema attributes can be recovered under PSVI.
See also
setGenerateSyntheticAnnotations

◆ getGrammarResolver()

GrammarResolver * AbstractDOMParser::getGrammarResolver ( ) const
protected

Get the Grammar resolver.

This provides derived classes with access to the grammar resolver.

References fGrammarResolver.

◆ getHandleMultipleImports()

bool AbstractDOMParser::getHandleMultipleImports ( ) const

Get the 'handle multiple schema imports' flag.

Returns
true, if the parser is currently configured to import multiple schemas with the same namespace, false otherwise.
See also
setHandleMultipleImports

◆ getIdentityConstraintChecking()

bool AbstractDOMParser::getIdentityConstraintChecking ( ) const

Get the identity constraint checking' flag.

This method returns the state of the parser's identity constraint checking flag.

Returns
true, if the parser is currently configured to have identity constraint checking, false otherwise.
See also
setIdentityConstraintChecking

◆ getIgnoreAnnotations()

bool AbstractDOMParser::getIgnoreAnnotations ( ) const

Get the 'ignore annotations' flag.

Returns
true, if the parser is currently configured to ignore annotations, false otherwise.
See also
setIgnoreAnnotations

◆ getIncludeIgnorableWhitespace()

bool AbstractDOMParser::getIncludeIgnorableWhitespace ( ) const

Get the 'include ignorable whitespace' flag.

This method returns the state of the parser's include ignorable whitespace flag.

Returns
'true' if the include ignorable whitespace flag is set on the parser, 'false' otherwise.
See also
setIncludeIgnorableWhitespace

References fIncludeIgnorableWhitespace.

◆ getLoadExternalDTD()

bool AbstractDOMParser::getLoadExternalDTD ( ) const

Get the 'Loading External DTD' flag.

This method returns the state of the parser's loading external DTD flag.

Returns
false, if the parser is currently configured to ignore external DTD completely, true otherwise.
See also
setLoadExternalDTD
getValidationScheme

◆ getLoadSchema()

bool AbstractDOMParser::getLoadSchema ( ) const

Get the 'Loading Schema' flag.

This method returns the state of the parser's loading schema flag.

Returns
true, if the parser is currently configured to automatically load schemas that are not in the grammar pool, false otherwise.
See also
setLoadSchema

◆ getLowWaterMark()

const XMLSize_t& AbstractDOMParser::getLowWaterMark ( ) const

Get the raw buffer low water mark for this parser.

If the number of available bytes in the raw buffer is less than the low water mark the parser will attempt to read more data before continuing parsing. By default the value for this parameter is 100 bytes. You may want to set this parameter to 0 if you would like the parser to parse the available data immediately without potentially blocking while waiting for more date.

Returns
current low water mark
See also
setSecurityManager

◆ getMemoryManager()

MemoryManager * AbstractDOMParser::getMemoryManager ( ) const
protected

References fMemoryManager.

◆ getParseInProgress()

bool AbstractDOMParser::getParseInProgress ( ) const
protected

Get the parse in progress flag.

This provides derived classes with access to the parse in progress flag.

References fParseInProgress.

◆ getPSVIHandler() [1/2]

PSVIHandler * AbstractDOMParser::getPSVIHandler ( )

This method returns the installed PSVI handler.

Suitable for 'lvalue' usages.

Returns
The pointer to the installed PSVI handler object.

References fPSVIHandler.

◆ getPSVIHandler() [2/2]

const PSVIHandler * AbstractDOMParser::getPSVIHandler ( ) const

This method returns the installed PSVI handler.

Suitable for 'rvalue' usages.

Returns
A const pointer to the installed PSVI handler object.

References fPSVIHandler.

◆ getScanner()

XMLScanner * AbstractDOMParser::getScanner ( ) const
protected

Get the XML scanner.

This provides derived classes with access to the XML scanner.

References fScanner.

◆ getSecurityManager()

SecurityManager* AbstractDOMParser::getSecurityManager ( ) const

Get the SecurityManager instance attached to this parser.

This method returns the security manager that was specified using setSecurityManager.

The SecurityManager instance must have been specified by the application; this should not be deleted until after the parser has been deleted (or a new SecurityManager instance has been supplied to the parser).

Returns
a pointer to the SecurityManager instance specified externally. A null pointer is returned if nothing was specified externally.
See also
setSecurityManager

◆ getSkipDTDValidation()

bool AbstractDOMParser::getSkipDTDValidation ( ) const

Get the 'skip DTD validation' flag.

Returns
true, if the parser is currently configured to skip DTD validation, false otherwise.
See also
setSkipDTDValidation

◆ getStandardUriConformant()

bool AbstractDOMParser::getStandardUriConformant ( ) const

Get the 'force standard uri flag'.

This method returns the state if the parser forces standard uri

Returns
true, if the parser is currently configured to force standard uri, i.e. malformed uri will be rejected.
See also
setStandardUriConformant

◆ getValidateAnnotations()

bool AbstractDOMParser::getValidateAnnotations ( ) const

Get the 'validate annotations' flag.

Returns
true, if the parser is currently configured to validate annotations, false otherwise.
See also
setValidateAnnotations

◆ getValidationConstraintFatal()

bool AbstractDOMParser::getValidationConstraintFatal ( ) const

This method returns the state of the parser's validation-constraint-fatal flag.

Returns
true, if the parser is currently configured to set validation constraint errors as fatal, false otherwise.
See also
setValidationConstraintFatal

◆ getValidationSchemaFullChecking()

bool AbstractDOMParser::getValidationSchemaFullChecking ( ) const

Get the 'full schema constraint checking' flag.

This method returns the state of the parser's full schema constraint checking flag.

Returns
true, if the parser is currently configured to have full schema constraint checking, false otherwise.
See also
setValidationSchemaFullChecking

◆ getValidationScheme()

ValSchemes AbstractDOMParser::getValidationScheme ( ) const

This method returns an enumerated value that indicates the current validation scheme set on this parser.

Returns
The ValSchemes value current set on this parser.
See also
setValidationScheme

◆ getValidator()

const XMLValidator& AbstractDOMParser::getValidator ( ) const

Get a const reference to the validator.

This method returns a reference to the parser's installed validator.

Returns
A const reference to the installed validator object.

◆ handleAttributesPSVI()

virtual void AbstractDOMParser::handleAttributesPSVI ( const XMLCh *const  localName,
const XMLCh *const  uri,
PSVIAttributeList psviAttributes 
)
virtual

Enables PSVI information about attributes to be passed back to the application.

This callback will be made on all elements; on elements with no attributes, the final parameter will be null.

Parameters
localNameThe name of the element upon which start tag these attributes were encountered.
uriThe namespace to which the element is bound
psviAttributesObject containing the attributes' PSVI properties with information to identify them.

Implements PSVIHandler.

◆ handleElementPSVI()

virtual void AbstractDOMParser::handleElementPSVI ( const XMLCh *const  localName,
const XMLCh *const  uri,
PSVIElement elementInfo 
)
virtual

Receive notification of the PSVI properties of an element.

The scanner will issue this call after the XMLDocumentHandler endElement call. Since the scanner will issue the psviAttributes call immediately after reading the start tag of an element, all element content will be effectively bracketed by these two calls.

Parameters
localNameThe name of the element whose end tag was just parsed.
uriThe namespace to which the element is bound
elementInfoObject containing the element's PSVI properties

Implements PSVIHandler.

◆ handlePartialElementPSVI()

virtual void AbstractDOMParser::handlePartialElementPSVI ( const XMLCh *const  localName,
const XMLCh *const  uri,
PSVIElement elementInfo 
)
virtual

Receive notification of partial PSVI properties of an element.

This callback is made right after the psviAttributes call for non-empty element.

The PSVIElement passed in has all fields properly set and it can be safely accessed the same way as the one passed in handleElementPSVI. However, fields listed below always have default values.

getValidity() PSVIItem::VALIDITY_NOTKNOWN getValidationAttemped() PSVIItem::VALIDATION_NONE getMemberTypeDefinition() 0 getSchemaNormalizedValue() 0 getCanonicalRepresentation() 0 getNotationDeclaration() 0

Parameters
localNameThe name of the element upon which start tag these attributes were encountered.
uriThe namespace to which the element is bound
elementInfoObject containing the element's partial PSVI properties

Reimplemented from PSVIHandler.

◆ ignorableWhitespace()

virtual void AbstractDOMParser::ignorableWhitespace ( const XMLCh *const  chars,
const XMLSize_t  length,
const bool  cdataSection 
)
virtual

Handle an ignorable whitespace vent.

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.

Any whitespace before content is ignored. If the current node is already of type DOMNode::TEXT_NODE, then these whitespaces are appended, otherwise a new Text node is created which stores this data. Essentially all contiguous ignorable characters are collected in one node.

Parameters
charsA const pointer to a Unicode string representing the ignorable whitespace character data.
lengthThe length of the Unicode string 'chars'.
cdataSectionA flag indicating if the characters represent content from the CDATA section.

Implements XMLDocumentHandler.

◆ isDocumentAdopted()

bool AbstractDOMParser::isDocumentAdopted ( ) const
protected

Returns true if the user has adopted the document.

◆ notationDecl()

virtual void AbstractDOMParser::notationDecl ( const XMLNotationDecl notDecl,
const bool  isIgnored 
)
virtual

◆ parse() [1/3]

void AbstractDOMParser::parse ( const char *const  systemId)

Parse via a file path or URL (in the local code page)

This method invokes the parsing process on the XML file specified by the native char* string parameter 'systemId'.

Parameters
systemIdA const char pointer to a native string which contains the path to the XML file to be parsed.
Exceptions
SAXExceptionAny SAX exception, possibly wrapping another exception.
XMLExceptionAn exception from the parser or client handler code.
DOMExceptionA DOM exception as per DOM spec.
See also
#parse(InputSource,...)

◆ parse() [2/3]

void AbstractDOMParser::parse ( const InputSource source)

Parse via an input source object.

This method invokes the parsing process on the XML file specified by the InputSource parameter. This API is borrowed from the SAX Parser interface.

Parameters
sourceA const reference to the InputSource object which points to the XML file to be parsed.
Exceptions
SAXExceptionAny SAX exception, possibly wrapping another exception.
XMLExceptionAn exception from the parser or client handler code.
DOMExceptionA DOM exception as per DOM spec.
See also
InputSource::InputSource

◆ parse() [3/3]

void AbstractDOMParser::parse ( const XMLCh *const  systemId)

Parse via a file path or URL.

This method invokes the parsing process on the XML file specified by the Unicode string parameter 'systemId'. This method is borrowed from the SAX Parser interface.

Parameters
systemIdA const XMLCh pointer to the Unicode string which contains the path to the XML file to be parsed.
Exceptions
SAXExceptionAny SAX exception, possibly wrapping another exception.
XMLExceptionAn exception from the parser or client handler code.
DOMExceptionA DOM exception as per DOM spec.
See also
#parse(InputSource,...)

◆ parseFirst() [1/3]

bool AbstractDOMParser::parseFirst ( const char *const  systemId,
XMLPScanToken &  toFill 
)

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.

Parameters
systemIdA pointer to a regular native string representing the path to the XML file to be parsed.
toFillA token maintaing state information to maintain internal consistency between invocation of 'parseNext' calls.
Returns
'true', if successful in parsing the prolog. It indicates the user can go ahead with parsing the rest of the file. It returns 'false' to indicate that the parser could not parse the prolog.
See also
parseNext
#parseFirst(XMLCh*,...)
#parseFirst(InputSource&,...)