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 XMLChgetLexicalFacetValue (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 ()
XSMultiValueFacetListgetMultiValueFacets ()
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.
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

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

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.

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

References fVariety.

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.

References fPrimitiveOrItemType, fVariety, and VARIETY_ATOMIC.

XSSimpleTypeDefinition * XSSimpleTypeDefinition::getItemType (  ) 

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

References fPrimitiveOrItemType, fVariety, and VARIETY_LIST.

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.

References fMemberTypes.

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.

References fDefinedFacets.

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.

References fFixedFacets.

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.

References fPatternList.

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.

References fXSAnnotationList.

XSFacetList * XSSimpleTypeDefinition::getFacets (  ) 

Returns:
list of constraining facets. This method must not be used to retrieve values for enumeration and pattern facets.

References fXSFacetList.

XSMultiValueFacetList * XSSimpleTypeDefinition::getMultiValueFacets (  ) 

Returns:
list of enumeration and pattern facets.

References fXSMultiValueFacetList.

const XMLCh* XSSimpleTypeDefinition::getName (  )  const [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

References fDatatypeValidator.


Friends And Related Function Documentation

friend class XSObjectFactory [friend]


Member Data Documentation

Referenced by getDefinedFacets().

Referenced by getFixedFacets().

DatatypeValidator* XSSimpleTypeDefinition::fDatatypeValidator [protected]

Referenced by getDatatypeValidator().

Referenced by getFacets().

Referenced by getMultiValueFacets().

Referenced by getLexicalPattern().

Referenced by getItemType(), and getPrimitiveType().

Referenced by getMemberTypes().

Referenced by getAnnotations().


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