Xerces-C++  3.1.2
Public Member Functions | Static Public Attributes | Protected Member Functions | List of all members
XMLContentModel Class Referenceabstract

This class defines the abstract interface for all content models. More...

Inheritance diagram for XMLContentModel:
XMemory

Public Member Functions

virtual bool validateContent (QName **const children, XMLSize_t childCount, unsigned int emptyNamespaceId, XMLSize_t *indexFailingChild, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager) const =0
 
virtual bool validateContentSpecial (QName **const children, XMLSize_t childCount, unsigned int emptyNamespaceId, GrammarResolver *const pGrammarResolver, XMLStringPool *const pStringPool, XMLSize_t *indexFailingChild, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager) const =0
 
virtual void checkUniqueParticleAttribution (SchemaGrammar *const pGrammar, GrammarResolver *const pGrammarResolver, XMLStringPool *const pStringPool, XMLValidator *const pValidator, unsigned int *const pContentSpecOrgURI, const XMLCh *pComplexTypeName=0)=0
 
virtual ContentLeafNameTypeVector * getContentLeafNameTypeVector () const =0
 
virtual unsigned int getNextState (unsigned int currentState, XMLSize_t elementIndex) const =0
 
virtual bool handleRepetitions (const QName *const curElem, unsigned int curState, unsigned int currentLoop, unsigned int &nextState, unsigned int &nextLoop, XMLSize_t elementIndex, SubstitutionGroupComparator *comparator) const =0
 
Destructor
virtual ~XMLContentModel ()
 
- 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...
 

Static Public Attributes

static const unsigned int gInvalidTrans
 
static const unsigned int gEOCFakeId
 
static const unsigned int gEpsilonFakeId
 

Protected Member Functions

 XMLContentModel ()
 
- Protected Member Functions inherited from XMemory
 XMemory ()
 Protected default constructor. More...
 

Detailed Description

This class defines the abstract interface for all content models.

All elements have a content model against which (if validating) its content is checked. Each type of validator (DTD, Schema, etc...) can have different types of content models, and even with each type of validator there can be specialized content models. So this simple class provides the abstract API via which all the types of contents models are dealt with generically. Its pretty simple.

Constructor & Destructor Documentation

virtual XMLContentModel::~XMLContentModel ( )
virtual
XMLContentModel::XMLContentModel ( )
protected

Member Function Documentation

virtual void XMLContentModel::checkUniqueParticleAttribution ( SchemaGrammar *const  pGrammar,
GrammarResolver *const  pGrammarResolver,
XMLStringPool *const  pStringPool,
XMLValidator *const  pValidator,
unsigned int *const  pContentSpecOrgURI,
const XMLCh pComplexTypeName = 0 
)
pure virtual
virtual ContentLeafNameTypeVector* XMLContentModel::getContentLeafNameTypeVector ( ) const
pure virtual
virtual unsigned int XMLContentModel::getNextState ( unsigned int  currentState,
XMLSize_t  elementIndex 
) const
pure virtual
virtual bool XMLContentModel::handleRepetitions ( const QName *const  curElem,
unsigned int  curState,
unsigned int  currentLoop,
unsigned int &  nextState,
unsigned int &  nextLoop,
XMLSize_t  elementIndex,
SubstitutionGroupComparator *  comparator 
) const
pure virtual
virtual bool XMLContentModel::validateContent ( QName **const  children,
XMLSize_t  childCount,
unsigned int  emptyNamespaceId,
XMLSize_t indexFailingChild,
MemoryManager *const  manager = XMLPlatformUtils::fgMemoryManager 
) const
pure virtual
virtual bool XMLContentModel::validateContentSpecial ( QName **const  children,
XMLSize_t  childCount,
unsigned int  emptyNamespaceId,
GrammarResolver *const  pGrammarResolver,
XMLStringPool *const  pStringPool,
XMLSize_t indexFailingChild,
MemoryManager *const  manager = XMLPlatformUtils::fgMemoryManager 
) const
pure virtual

Member Data Documentation

const unsigned int XMLContentModel::gEOCFakeId
static
const unsigned int XMLContentModel::gEpsilonFakeId
static
const unsigned int XMLContentModel::gInvalidTrans
static

The documentation for this class was generated from the following file: