XSSimpleTypeDefinition Class Reference

Inheritance diagram for XSSimpleTypeDefinition:

XSTypeDefinition XSObject XMemory

List of all members.

Public Types

enum  VARIETY { VARIETY_ABSENT = 0, VARIETY_ATOMIC = 1, VARIETY_LIST = 2, VARIETY_UNION = 3 }
enum  FACET {
  FACET_NONE = 0, FACET_LENGTH = 1, FACET_MINLENGTH = 2, FACET_MAXLENGTH = 4,
  FACET_PATTERN = 8, FACET_WHITESPACE = 16, FACET_MAXINCLUSIVE = 32, FACET_MAXEXCLUSIVE = 64,
  FACET_MINEXCLUSIVE = 128, FACET_MININCLUSIVE = 256, FACET_TOTALDIGITS = 512, FACET_FRACTIONDIGITS = 1024,
  FACET_ENUMERATION = 2048
}
enum  ORDERING { ORDERED_FALSE = 0, ORDERED_PARTIAL = 1, ORDERED_TOTAL = 2 }

Public Member Functions

Constructors
 XSSimpleTypeDefinition (DatatypeValidator *const datatypeValidator, VARIETY stVariety, XSTypeDefinition *const xsBaseType, XSSimpleTypeDefinition *const primitiveOrItemType, XSSimpleTypeDefinitionList *const memberTypes, XSAnnotation *headAnnot, XSModel *const xsModel, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 The default constructor.
Destructor
 ~XSSimpleTypeDefinition ()
XSSimpleTypeDefinition methods
VARIETY getVariety () const
 [variety]: one of {atomic, list, union} or absent
XSSimpleTypeDefinitiongetPrimitiveType ()
 If variety is atomic the primitive type definition (a built-in primitive datatype definition or the simple ur-type definition) is available, otherwise null.
XSSimpleTypeDefinitiongetItemType ()
 If variety is list the item type definition (an atomic or union simple type definition) is available, otherwise null.
XSSimpleTypeDefinitionListgetMemberTypes () const
 If variety is union the list of member type definitions (a non-empty sequence of simple type definitions) is available, otherwise null.
int getDefinedFacets () const
 [facets]: get all facets defined on this type.
bool isDefinedFacet (FACET facetName)
 Convenience method.
int getFixedFacets () const
 [facets]: get all facets defined and fixed on this type.
bool isFixedFacet (FACET facetName)
 Convenience method.
const XMLCh * getLexicalFacetValue (FACET facetName)
 Convenience method.
StringListgetLexicalEnumeration ()
 Returns a list of enumeration values.
StringListgetLexicalPattern ()
 Returns a list of pattern values.
ORDERING getOrdered () const
 Fundamental Facet: ordered.
bool getFinite () const
 Fundamental Facet: cardinality.
bool getBounded () const
 Fundamental Facet: bounded.
bool getNumeric () const
 Fundamental Facet: numeric.
XSAnnotationListgetAnnotations ()
 Optional.
XSFacetListgetFacets ()
 
Returns:
list of constraining facets.

XSMultiValueFacetListgetMultiValueFacets ()
 
Returns:
list of enumeration and pattern facets.

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.
DatatypeValidator * getDatatypeValidator () const

Protected Attributes

int fDefinedFacets
int fFixedFacets
VARIETY fVariety
DatatypeValidator * fDatatypeValidator
XSFacetListfXSFacetList
XSMultiValueFacetListfXSMultiValueFacetList
StringListfPatternList
XSSimpleTypeDefinitionfPrimitiveOrItemType
XSSimpleTypeDefinitionListfMemberTypes
XSAnnotationListfXSAnnotationList

Friends

class XSObjectFactory


Member Enumeration Documentation

enum XSSimpleTypeDefinition::VARIETY

Enumerator:
VARIETY_ABSENT  The variety is absent for the anySimpleType definition.
VARIETY_ATOMIC  Atomic type.
VARIETY_LIST  List type.
VARIETY_UNION  Union type.

enum XSSimpleTypeDefinition::FACET

Enumerator:
FACET_NONE  No facets defined.
FACET_LENGTH  4.3.1 Length
FACET_MINLENGTH  4.3.2 minLength.
FACET_MAXLENGTH  4.3.3 maxLength.
FACET_PATTERN  4.3.4 pattern.
FACET_WHITESPACE  4.3.5 whitespace.
FACET_MAXINCLUSIVE  4.3.7 maxInclusive.
FACET_MAXEXCLUSIVE  4.3.9 maxExclusive.
FACET_MINEXCLUSIVE  4.3.9 minExclusive.
FACET_MININCLUSIVE  4.3.10 minInclusive.
FACET_TOTALDIGITS  4.3.11 totalDigits .
FACET_FRACTIONDIGITS  4.3.12 fractionDigits.
FACET_ENUMERATION  4.3.5 enumeration.

enum XSSimpleTypeDefinition::ORDERING

Enumerator:
ORDERED_FALSE  A constant defined for the 'ordered' fundamental facet: Not ordered.
ORDERED_PARTIAL  A constant defined for the 'ordered' fundamental facet: partially ordered.
ORDERED_TOTAL  A constant defined for the 'ordered' fundamental facet: total ordered.


Constructor & Destructor Documentation

XSSimpleTypeDefinition::XSSimpleTypeDefinition ( DatatypeValidator *const   datatypeValidator,
VARIETY  stVariety,
XSTypeDefinition *const   xsBaseType,
XSSimpleTypeDefinition *const   primitiveOrItemType,
XSSimpleTypeDefinitionList *const   memberTypes,
XSAnnotation headAnnot,
XSModel *const   xsModel,
MemoryManager *const   manager = XMLPlatformUtils::fgMemoryManager 
)

The default constructor.

Parameters:
datatypeValidator 
stVariety 
xsBaseType 
primitiveOrItemType 
memberTypes 
headAnnot 
xsModel 
manager The configurable memory manager

XSSimpleTypeDefinition::~XSSimpleTypeDefinition (  ) 


Member Function Documentation

XSSimpleTypeDefinition::VARIETY XSSimpleTypeDefinition::getVariety (  )  const

[variety]: one of {atomic, list, union} or absent

XSSimpleTypeDefinition * XSSimpleTypeDefinition::getPrimitiveType (  ) 

If variety is atomic the primitive type definition (a built-in primitive datatype definition or the simple ur-type definition) is available, otherwise null.

XSSimpleTypeDefinition * XSSimpleTypeDefinition::getItemType (  ) 

If variety is list the item type definition (an atomic or union simple type definition) is available, otherwise null.

XSSimpleTypeDefinitionList * XSSimpleTypeDefinition::getMemberTypes (  )  const

If variety is union the list of member type definitions (a non-empty sequence of simple type definitions) is available, otherwise null.

int XSSimpleTypeDefinition::getDefinedFacets (  )  const

[facets]: get all facets defined on this type.

The value is a bit combination of FACET_XXX constants of all defined facets.

bool XSSimpleTypeDefinition::isDefinedFacet ( FACET  facetName  ) 

Convenience method.

[Facets]: check whether a facet is defined on this type.

Parameters:
facetName The name of the facet.
Returns:
True if the facet is defined, false otherwise.

int XSSimpleTypeDefinition::getFixedFacets (  )  const

[facets]: get all facets defined and fixed on this type.

bool XSSimpleTypeDefinition::isFixedFacet ( FACET  facetName  ) 

Convenience method.

[Facets]: check whether a facet is defined and fixed on this type.

Parameters:
facetName The name of the facet.
Returns:
True if the facet is fixed, false otherwise.

const XMLCh* XSSimpleTypeDefinition::getLexicalFacetValue ( FACET  facetName  ) 

Convenience method.

Returns a value of a single constraining facet for this simple type definition. This method must not be used to retrieve values for enumeration and pattern facets.

Parameters:
facetName The name of the facet, i.e. FACET_LENGTH, FACET_TOTALDIGITS (see XSConstants).To retrieve value for pattern or enumeration, see enumeration and pattern.
Returns:
A value of the facet specified in facetName for this simple type definition or null.

StringList* XSSimpleTypeDefinition::getLexicalEnumeration (  ) 

Returns a list of enumeration values.

StringList * XSSimpleTypeDefinition::getLexicalPattern (  ) 

Returns a list of pattern values.

ORDERING XSSimpleTypeDefinition::getOrdered (  )  const

Fundamental Facet: ordered.

bool XSSimpleTypeDefinition::getFinite (  )  const

Fundamental Facet: cardinality.

bool XSSimpleTypeDefinition::getBounded (  )  const

Fundamental Facet: bounded.

bool XSSimpleTypeDefinition::getNumeric (  )  const

Fundamental Facet: numeric.

XSAnnotationList * XSSimpleTypeDefinition::getAnnotations (  ) 

Optional.

A set of [annotation]s.

XSFacetList * XSSimpleTypeDefinition::getFacets (  ) 

Returns:
list of constraining facets.

This method must not be used to retrieve values for enumeration and pattern facets.

XSMultiValueFacetList * XSSimpleTypeDefinition::getMultiValueFacets (  ) 

Returns:
list of enumeration and pattern facets.

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

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

Implements XSTypeDefinition.

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

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

Implements XSTypeDefinition.

XSNamespaceItem* XSSimpleTypeDefinition::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 XSSimpleTypeDefinition::getAnonymous (  )  const [virtual]

A boolean that specifies if the type definition is anonymous.

Convenience attribute.

Implements XSTypeDefinition.

XSTypeDefinition* XSSimpleTypeDefinition::getBaseType (  )  [virtual]

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

Implements XSTypeDefinition.

bool XSSimpleTypeDefinition::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.

DatatypeValidator * XSSimpleTypeDefinition::getDatatypeValidator (  )  const


Friends And Related Function Documentation

friend class XSObjectFactory [friend]


Member Data Documentation

int XSSimpleTypeDefinition::fDefinedFacets [protected]

int XSSimpleTypeDefinition::fFixedFacets [protected]

VARIETY XSSimpleTypeDefinition::fVariety [protected]

DatatypeValidator* XSSimpleTypeDefinition::fDatatypeValidator [protected]

XSFacetList* XSSimpleTypeDefinition::fXSFacetList [protected]

XSMultiValueFacetList* XSSimpleTypeDefinition::fXSMultiValueFacetList [protected]

StringList* XSSimpleTypeDefinition::fPatternList [protected]

XSSimpleTypeDefinition* XSSimpleTypeDefinition::fPrimitiveOrItemType [protected]

XSSimpleTypeDefinitionList* XSSimpleTypeDefinition::fMemberTypes [protected]

XSAnnotationList* XSSimpleTypeDefinition::fXSAnnotationList [protected]


The documentation for this class was generated from the following file:
Generated on Thu Feb 19 11:35:46 2009 for Xerces-C++ by  doxygen 1.5.4