XSComplexTypeDefinition Class Reference

Inheritance diagram for XSComplexTypeDefinition:

XSTypeDefinition XSObject XMemory

List of all members.

Public Types

enum  CONTENT_TYPE { CONTENTTYPE_EMPTY = 0, CONTENTTYPE_SIMPLE = 1, CONTENTTYPE_ELEMENT = 2, CONTENTTYPE_MIXED = 3 }

Public Member Functions

Constructors
 XSComplexTypeDefinition (ComplexTypeInfo *const complexTypeInfo, XSWildcard *const xsWildcard, XSSimpleTypeDefinition *const xsSimpleType, XSAttributeUseList *const xsAttList, XSTypeDefinition *const xsBaseType, XSParticle *const xsParticle, XSAnnotation *const headAnnot, XSModel *const xsModel, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 The default constructor.
Destructor
 ~XSComplexTypeDefinition ()
XSComplexTypeDefinition methods
XSConstants::DERIVATION_TYPE getDerivationMethod () const
 [derivation method]: either DERIVATION_EXTENSION, DERIVATION_RESTRICTION, or DERIVATION_NONE (see XSObject).
bool getAbstract () const
 [abstract]: a boolean.
XSAttributeUseListgetAttributeUses ()
 A set of attribute uses.
XSWildcardgetAttributeWildcard () const
 Optional.An attribute wildcard.
CONTENT_TYPE getContentType () const
 [content type]: one of empty (CONTENTTYPE_EMPTY), a simple type definition (CONTENTTYPE_SIMPLE), mixed ( CONTENTTYPE_MIXED), or element-only ( CONTENTTYPE_ELEMENT).
XSSimpleTypeDefinitiongetSimpleType () const
 A simple type definition corresponding to simple content model, otherwise null.
XSParticlegetParticle () const
 A particle for mixed or element-only content model, otherwise null.
bool isProhibitedSubstitution (XSConstants::DERIVATION_TYPE toTest)
 [prohibited substitutions]: a subset of {extension, restriction}
short getProhibitedSubstitutions () const
 [prohibited substitutions]: A subset of {extension, restriction} or DERIVATION_NONE represented as a bit flag (see XSObject).
XSAnnotationListgetAnnotations ()
 A set of [annotations].
const XMLChgetName () const
 The name of type NCName of this declaration as defined in XML Namespaces.
const XMLChgetNamespace ()
 The [target namespace] of this object, or null if it is unspecified.
XSNamespaceItemgetNamespaceItem ()
 A namespace schema information item corresponding to the target namespace of the component, if it's globally declared; or null otherwise.
bool getAnonymous () const
 A boolean that specifies if the type definition is anonymous.
XSTypeDefinitiongetBaseType ()
 {base type definition}: either a simple type definition or a complex type definition.
bool derivedFromType (const XSTypeDefinition *const ancestorType)
 Convenience method: check if this type is derived from the given ancestorType.

Protected Attributes

ComplexTypeInfo * fComplexTypeInfo
XSWildcardfXSWildcard
XSAttributeUseListfXSAttributeUseList
XSSimpleTypeDefinitionfXSSimpleTypeDefinition
XSAnnotationListfXSAnnotationList
XSParticlefParticle
short fProhibitedSubstitution

Friends

class XSObjectFactory


Member Enumeration Documentation

Enumerator:
CONTENTTYPE_EMPTY  Represents an empty content type.

A content type with the distinguished value empty validates elements with no character or element information item children.

CONTENTTYPE_SIMPLE  Represents a simple content type.

A content type which is a simple validates elements with character-only children.

CONTENTTYPE_ELEMENT  Represents an element-only content type.

An element-only content type validates elements with children that conform to the supplied content model.

CONTENTTYPE_MIXED  Represents a mixed content type.


Constructor & Destructor Documentation

XSComplexTypeDefinition::XSComplexTypeDefinition ( ComplexTypeInfo *const   complexTypeInfo,
XSWildcard *const   xsWildcard,
XSSimpleTypeDefinition *const   xsSimpleType,
XSAttributeUseList *const   xsAttList,
XSTypeDefinition *const   xsBaseType,
XSParticle *const   xsParticle,
XSAnnotation *const   headAnnot,
XSModel *const   xsModel,
MemoryManager *const   manager = XMLPlatformUtils::fgMemoryManager 
)

The default constructor.

Parameters:
complexTypeInfo 
xsWildcard 
xsSimpleType 
xsAttList 
xsBaseType 
xsParticle 
headAnnot 
xsModel 
manager The configurable memory manager

XSComplexTypeDefinition::~XSComplexTypeDefinition (  ) 


Member Function Documentation

XSConstants::DERIVATION_TYPE XSComplexTypeDefinition::getDerivationMethod (  )  const

[derivation method]: either DERIVATION_EXTENSION, DERIVATION_RESTRICTION, or DERIVATION_NONE (see XSObject).

bool XSComplexTypeDefinition::getAbstract (  )  const

[abstract]: a boolean.

Complex types for which abstract is true must not be used as the type definition for the validation of element information items.

XSAttributeUseList * XSComplexTypeDefinition::getAttributeUses (  ) 

A set of attribute uses.

References fXSAttributeUseList.

XSWildcard * XSComplexTypeDefinition::getAttributeWildcard (  )  const

Optional.An attribute wildcard.

References fXSWildcard.

CONTENT_TYPE XSComplexTypeDefinition::getContentType (  )  const

[content type]: one of empty (CONTENTTYPE_EMPTY), a simple type definition (CONTENTTYPE_SIMPLE), mixed ( CONTENTTYPE_MIXED), or element-only ( CONTENTTYPE_ELEMENT).

XSSimpleTypeDefinition * XSComplexTypeDefinition::getSimpleType (  )  const

A simple type definition corresponding to simple content model, otherwise null.

References fXSSimpleTypeDefinition.

XSParticle * XSComplexTypeDefinition::getParticle (  )  const

A particle for mixed or element-only content model, otherwise null.

References fParticle.

bool XSComplexTypeDefinition::isProhibitedSubstitution ( XSConstants::DERIVATION_TYPE  toTest  ) 

[prohibited substitutions]: a subset of {extension, restriction}

Parameters:
toTest Extention or restriction constants (see XSObject).
Returns:
True if toTest is a prohibited substitution, otherwise false.

short XSComplexTypeDefinition::getProhibitedSubstitutions (  )  const

[prohibited substitutions]: A subset of {extension, restriction} or DERIVATION_NONE represented as a bit flag (see XSObject).

References fProhibitedSubstitution.

XSAnnotationList* XSComplexTypeDefinition::getAnnotations (  ) 

A set of [annotations].

const XMLCh* XSComplexTypeDefinition::getName (  )  const [virtual]

The name of type NCName of this declaration as defined in XML Namespaces.

Implements XSTypeDefinition.

const XMLCh* XSComplexTypeDefinition::getNamespace (  )  [virtual]

The [target namespace] of this object, or null if it is unspecified.

Implements XSTypeDefinition.

XSNamespaceItem* XSComplexTypeDefinition::getNamespaceItem (  )  [virtual]

A namespace schema information item corresponding to the target namespace of the component, if it's globally declared; or null otherwise.

Implements XSTypeDefinition.

bool XSComplexTypeDefinition::getAnonymous (  )  const [virtual]

A boolean that specifies if the type definition is anonymous.

Convenience attribute.

Implements XSTypeDefinition.

XSTypeDefinition* XSComplexTypeDefinition::getBaseType (  )  [virtual]

{base type definition}: either a simple type definition or a complex type definition.

Implements XSTypeDefinition.

bool XSComplexTypeDefinition::derivedFromType ( const XSTypeDefinition *const   ancestorType  )  [virtual]

Convenience method: check if this type is derived from the given ancestorType.

Parameters:
ancestorType An ancestor type definition.
Returns:
Return true if this type is derived from ancestorType.

Implements XSTypeDefinition.


Friends And Related Function Documentation

friend class XSObjectFactory [friend]


Member Data Documentation

ComplexTypeInfo* XSComplexTypeDefinition::fComplexTypeInfo [protected]

Referenced by getAttributeWildcard().

Referenced by getAttributeUses().

Referenced by getSimpleType().

Referenced by getParticle().


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

Generated on Fri Jan 29 15:30:49 2010 for Xerces-C++ by  doxygen 1.5.6