Xerces-C++ 3.3.0
XMLContentModel Class Referenceabstract

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

#include <xercesc/framework/XMLContentModel.hpp>

Inheritance diagram for XMLContentModel:
XMemory

Static Public Attributes

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

Destructor

virtual ~XMLContentModel ()
 
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
 
 XMLContentModel ()
 

Additional Inherited Members

- Public Member Functions inherited from XMemory
void * operator new (size_t size)
 This method overrides operator new.
 
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.
 
void * operator new (size_t size, void *ptr)
 This method overrides placement operator new.
 
void operator delete (void *p)
 This method overrides operator delete.
 
void operator delete (void *p, MemoryManager *memMgr)
 This method provides a matching delete for the custom operator new.
 
void operator delete (void *p, void *ptr)
 This method provides a matching delete for the placement new.
 
- Protected Member Functions inherited from XMemory
 XMemory ()
 Protected default constructor.
 

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

◆ ~XMLContentModel()

virtual XMLContentModel::~XMLContentModel ( )
virtual

◆ XMLContentModel()

XMLContentModel::XMLContentModel ( )
protected

Member Function Documentation

◆ checkUniqueParticleAttribution()

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

◆ getContentLeafNameTypeVector()

virtual ContentLeafNameTypeVector * XMLContentModel::getContentLeafNameTypeVector ( ) const
pure virtual

◆ getNextState()

virtual unsigned int XMLContentModel::getNextState ( unsigned int currentState,
XMLSize_t elementIndex ) const
pure virtual

◆ handleRepetitions()

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

◆ validateContent()

virtual bool XMLContentModel::validateContent ( QName **const children,
XMLSize_t childCount,
unsigned int emptyNamespaceId,
XMLSize_t * indexFailingChild,
MemoryManager *const manager = XMLPlatformUtils::fgMemoryManager ) const
pure virtual

◆ validateContentSpecial()

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

◆ gEOCFakeId

const unsigned int XMLContentModel::gEOCFakeId
static

◆ gEpsilonFakeId

const unsigned int XMLContentModel::gEpsilonFakeId
static

◆ gInvalidTrans

const unsigned int XMLContentModel::gInvalidTrans
static

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