ACEXML  6.1.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Public Member Functions | List of all members
ACEXML_Element_Def_Builder Class Referenceabstract

An abstract virtual class that defines the interface to define an element definition. More...

#include <Element_Def_Builder.h>

Inheritance diagram for ACEXML_Element_Def_Builder:
Inheritance graph
Collaboration diagram for ACEXML_Element_Def_Builder:
Collaboration graph

Public Types

enum  CONTENT_TYPE {
  EMPTY, ANY, MIXED, CHILDREN,
  UNDEFINED
}
 
enum  CARDINALITY { ONE, ZERO_OR_MORE, ONE_OR_MORE, ONE_OR_ZERO }
 
typedef auto_ptr
< ACEXML_Element_Def_Builder
VAR
 

Public Member Functions

virtual ~ACEXML_Element_Def_Builder ()=0
 
virtual int setElementName (const ACEXML_Char *namespaceURI, const ACEXML_Char *localName, const ACEXML_Char *qName)=0
 
virtual int setContentType (CONTENT_TYPE type)=0
 
virtual int insertMixedElement (const ACEXML_Char *namespaceURI, const ACEXML_Char *localName, const ACEXML_Char *qName)=0
 
virtual int startChildGroup ()=0
 
virtual int endChildGroup (CARDINALITY card)=0
 
virtual int setChoice ()=0
 
virtual int setSequence ()=0
 
virtual int insertElement (const ACEXML_Char *namespaceURI, const ACEXML_Char *localName, const ACEXML_Char *qName)=0
 
virtual void dump (void)=0
 

Detailed Description

An abstract virtual class that defines the interface to define an element definition.

This class defines how to define an element definition after parsing a DTD.

Member Typedef Documentation

Member Enumeration Documentation

Enumerator:
ONE 
ZERO_OR_MORE 
ONE_OR_MORE 
ONE_OR_ZERO 
Enumerator:
EMPTY 
ANY 
MIXED 
CHILDREN 
UNDEFINED 

Constructor & Destructor Documentation

ACEXML_Element_Def_Builder::~ACEXML_Element_Def_Builder ( )
pure virtual

Member Function Documentation

virtual void ACEXML_Element_Def_Builder::dump ( void  )
pure virtual

Dump the content of the attribute definition.

Implemented in ACEXML_Debug_Element_Builder.

virtual int ACEXML_Element_Def_Builder::endChildGroup ( CARDINALITY  card)
pure virtual

End a new group of children.

Return values
0on success.

Implemented in ACEXML_Debug_Element_Builder.

virtual int ACEXML_Element_Def_Builder::insertElement ( const ACEXML_Char namespaceURI,
const ACEXML_Char localName,
const ACEXML_Char qName 
)
pure virtual

Insert an new element into the current child group.

Return values
0on success, -1 otherwise.

Implemented in ACEXML_Debug_Element_Builder.

virtual int ACEXML_Element_Def_Builder::insertMixedElement ( const ACEXML_Char namespaceURI,
const ACEXML_Char localName,
const ACEXML_Char qName 
)
pure virtual

Insert one more element into Mixed definition.

Implemented in ACEXML_Debug_Element_Builder.

virtual int ACEXML_Element_Def_Builder::setChoice ( )
pure virtual

Set the type of current child group to Choice.

Return values
0on success, -1 if the type of the child group has already been set and this action conflicts with the previous setting.

Implemented in ACEXML_Debug_Element_Builder.

virtual int ACEXML_Element_Def_Builder::setContentType ( CONTENT_TYPE  type)
pure virtual

Define the content type of the element.

Return values
0if valid, -1 otherwise.

Implemented in ACEXML_Debug_Element_Builder.

virtual int ACEXML_Element_Def_Builder::setElementName ( const ACEXML_Char namespaceURI,
const ACEXML_Char localName,
const ACEXML_Char qName 
)
pure virtual

Define the name of the element.

Return values
0if valid, -1 otherwise.

Implemented in ACEXML_Debug_Element_Builder.

virtual int ACEXML_Element_Def_Builder::setSequence ( )
pure virtual

Set the type of current child group to Sequence.

Return values
0on success, -1 if the type of the child group has already been set and this action conflicts with the previous setting.

Implemented in ACEXML_Debug_Element_Builder.

virtual int ACEXML_Element_Def_Builder::startChildGroup ( )
pure virtual

Start a new group of children.

Implemented in ACEXML_Debug_Element_Builder.


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