http://xml.apache.org/http://www.apache.org/http://www.w3.org/

Home

Readme
Charter
Release Info

Installation
Download
Build Instructions

FAQs
Samples
API Docs

DOM C++ Binding
Programming
Migration Guide

Feedback
Bug-Reporting
PDF Document

Source Repository
User Mail Archive
Devel Mail Archive

API Docs for SAX and DOM
 

XSComplexTypeDefinition Class Reference

This class represents a complexType definition schema component. More...

Inheritance diagram for XSComplexTypeDefinition:

Inheritance graph
[legend]
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 XMLCh * getName ()
 The name of type NCName of this declaration as defined in XML Namespaces.
const XMLCh * getNamespace ()
 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

Detailed Description

This class represents a complexType definition schema component.

This is *always* owned by the validator /parser object from which it is obtained.


Member Enumeration Documentation

enum XSComplexTypeDefinition::CONTENT_TYPE
 

Enumeration values:
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

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.

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.

XSAnnotationList* XSComplexTypeDefinition::getAnnotations  ) 
 

A set of [annotations].

bool XSComplexTypeDefinition::getAnonymous  )  const [virtual]
 

A boolean that specifies if the type definition is anonymous.

Convenience attribute.

Implements XSTypeDefinition.

XSAttributeUseList * XSComplexTypeDefinition::getAttributeUses  ) 
 

A set of attribute uses.

XSWildcard * XSComplexTypeDefinition::getAttributeWildcard  )  const
 

Optional.An attribute wildcard.

XSTypeDefinition* XSComplexTypeDefinition::getBaseType  )  [virtual]
 

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

Implements XSTypeDefinition.

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).

XSConstants::DERIVATION_TYPE XSComplexTypeDefinition::getDerivationMethod  )  const
 

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

const XMLCh* XSComplexTypeDefinition::getName  )  [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.

XSParticle * XSComplexTypeDefinition::getParticle  )  const
 

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

short XSComplexTypeDefinition::getProhibitedSubstitutions  )  const
 

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

XSSimpleTypeDefinition * XSComplexTypeDefinition::getSimpleType  )  const
 

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

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.


Friends And Related Function Documentation

friend class XSObjectFactory [friend]
 


Member Data Documentation

ComplexTypeInfo* XSComplexTypeDefinition::fComplexTypeInfo [protected]
 

XSParticle* XSComplexTypeDefinition::fParticle [protected]
 

short XSComplexTypeDefinition::fProhibitedSubstitution [protected]
 

XSAnnotationList* XSComplexTypeDefinition::fXSAnnotationList [protected]
 

XSAttributeUseList* XSComplexTypeDefinition::fXSAttributeUseList [protected]
 

XSSimpleTypeDefinition* XSComplexTypeDefinition::fXSSimpleTypeDefinition [protected]
 

XSWildcard* XSComplexTypeDefinition::fXSWildcard [protected]
 


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


Copyright © 1994-2004 The Apache Software Foundation. All Rights Reserved.