XSElementDeclaration Class Reference

Inheritance diagram for XSElementDeclaration:

XSObject XMemory

List of all members.

Public Member Functions

Constructors
 XSElementDeclaration (SchemaElementDecl *const schemaElementDecl, XSTypeDefinition *const typeDefinition, XSElementDeclaration *const substitutionGroupAffiliation, XSAnnotation *const annot, XSNamedMap< XSIDCDefinition > *const identityConstraints, XSModel *const xsModel, XSConstants::SCOPE elemScope=XSConstants::SCOPE_ABSENT, XSComplexTypeDefinition *const enclosingTypeDefinition=0, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
 The default constructor.
Destructor
 ~XSElementDeclaration ()
overridden XSXSObject methods
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.
XSElementDeclaration methods
XSTypeDefinitiongetTypeDefinition () const
 [type definition]: either a simple type definition or a complex type definition.
XSConstants::SCOPE getScope () const
 Optional.
XSComplexTypeDefinitiongetEnclosingCTDefinition () const
 The complex type definition for locally scoped declarations (see scope).
XSConstants::VALUE_CONSTRAINT getConstraintType () const
 [Value constraint]: one of VC_NONE, VC_DEFAULT, VC_FIXED.
const XMLChgetConstraintValue ()
 [Value constraint]: the actual value with respect to the [type definition].
bool getNillable () const
 If nillable is true, then an element may also be valid if it carries the namespace qualified attribute with local name nil from namespace http://www.w3.org/2001/XMLSchema-instance and value true (xsi:nil) even if it has no text or element content despite a content type which would otherwise require content.
XSNamedMap< XSIDCDefinition > * getIdentityConstraints ()
 identity-constraint definitions: a set of constraint definitions.
XSElementDeclarationgetSubstitutionGroupAffiliation () const
 [substitution group affiliation]: optional.
bool isSubstitutionGroupExclusion (XSConstants::DERIVATION_TYPE exclusion)
 Convenience method.
short getSubstitutionGroupExclusions () const
 [substitution group exclusions]: the returned value is a bit combination of the subset of { DERIVATION_EXTENSION, DERIVATION_RESTRICTION} or DERIVATION_NONE.
bool isDisallowedSubstitution (XSConstants::DERIVATION_TYPE disallowed)
 Convenience method.
short getDisallowedSubstitutions () const
 [disallowed substitutions]: the returned value is a bit combination of the subset of { DERIVATION_SUBSTITUTION, DERIVATION_EXTENSION, DERIVATION_RESTRICTION } corresponding to substitutions disallowed by this XSElementDeclaration or DERIVATION_NONE.
bool getAbstract () const
 {abstract} A boolean.
XSAnnotationgetAnnotation () const
 Optional.
void setTypeDefinition (XSTypeDefinition *typeDefinition)
 methods needed by implementation

Protected Attributes

short fDisallowedSubstitutions
short fSubstitutionGroupExclusions
XSConstants::SCOPE fScope
SchemaElementDecl * fSchemaElementDecl
XSTypeDefinitionfTypeDefinition
XSComplexTypeDefinitionfEnclosingTypeDefinition
XSElementDeclarationfSubstitutionGroupAffiliation
XSAnnotationfAnnotation
XSNamedMap< XSIDCDefinition > * fIdentityConstraints

Friends

class XSObjectFactory


Constructor & Destructor Documentation

XSElementDeclaration::XSElementDeclaration ( SchemaElementDecl *const   schemaElementDecl,
XSTypeDefinition *const   typeDefinition,
XSElementDeclaration *const   substitutionGroupAffiliation,
XSAnnotation *const   annot,
XSNamedMap< XSIDCDefinition > *const   identityConstraints,
XSModel *const   xsModel,
XSConstants::SCOPE  elemScope = XSConstants::SCOPE_ABSENT,
XSComplexTypeDefinition *const   enclosingTypeDefinition = 0,
MemoryManager *const   manager = XMLPlatformUtils::fgMemoryManager 
)

The default constructor.

Parameters:
schemaElementDecl 
typeDefinition 
substitutionGroupAffiliation 
annot 
identityConstraints 
xsModel 
elemScope 
enclosingTypeDefinition 
manager The configurable memory manager

XSElementDeclaration::~XSElementDeclaration (  ) 


Member Function Documentation

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

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

Reimplemented from XSObject.

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

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

Reimplemented from XSObject.

XSNamespaceItem* XSElementDeclaration::getNamespaceItem (  )  [virtual]

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

Reimplemented from XSObject.

XSTypeDefinition * XSElementDeclaration::getTypeDefinition (  )  const

[type definition]: either a simple type definition or a complex type definition.

References fTypeDefinition.

XSConstants::SCOPE XSElementDeclaration::getScope (  )  const

Optional.

One of SCOPE_GLOBAL, SCOPE_LOCAL, or SCOPE_ABSENT. If the scope is local, then the enclosingCTDefinition is present.

References fScope.

XSComplexTypeDefinition * XSElementDeclaration::getEnclosingCTDefinition (  )  const

The complex type definition for locally scoped declarations (see scope).

References fEnclosingTypeDefinition.

XSConstants::VALUE_CONSTRAINT XSElementDeclaration::getConstraintType (  )  const

[Value constraint]: one of VC_NONE, VC_DEFAULT, VC_FIXED.

const XMLCh* XSElementDeclaration::getConstraintValue (  ) 

[Value constraint]: the actual value with respect to the [type definition].

bool XSElementDeclaration::getNillable (  )  const

If nillable is true, then an element may also be valid if it carries the namespace qualified attribute with local name nil from namespace http://www.w3.org/2001/XMLSchema-instance and value true (xsi:nil) even if it has no text or element content despite a content type which would otherwise require content.

XSNamedMap< XSIDCDefinition > * XSElementDeclaration::getIdentityConstraints (  ) 

identity-constraint definitions: a set of constraint definitions.

References fIdentityConstraints.

XSElementDeclaration * XSElementDeclaration::getSubstitutionGroupAffiliation (  )  const

[substitution group affiliation]: optional.

A top-level element definition.

References fSubstitutionGroupAffiliation.

bool XSElementDeclaration::isSubstitutionGroupExclusion ( XSConstants::DERIVATION_TYPE  exclusion  ) 

Convenience method.

Check if exclusion is a substitution group exclusion for this element declaration.

Parameters:
exclusion DERIVATION_EXTENSION, DERIVATION_RESTRICTION or DERIVATION_NONE. Represents final set for the element.
Returns:
True if exclusion is a part of the substitution group exclusion subset.

short XSElementDeclaration::getSubstitutionGroupExclusions (  )  const

[substitution group exclusions]: the returned value is a bit combination of the subset of { DERIVATION_EXTENSION, DERIVATION_RESTRICTION} or DERIVATION_NONE.

References fSubstitutionGroupExclusions.

bool XSElementDeclaration::isDisallowedSubstitution ( XSConstants::DERIVATION_TYPE  disallowed  ) 

Convenience method.

Check if disallowed is a disallowed substitution for this element declaration.

Parameters:
disallowed { DERIVATION_SUBSTITUTION, DERIVATION_EXTENSION, DERIVATION_RESTRICTION } or DERIVATION_NONE. Represents a block set for the element.
Returns:
True if disallowed is a part of the substitution group exclusion subset.

short XSElementDeclaration::getDisallowedSubstitutions (  )  const

[disallowed substitutions]: the returned value is a bit combination of the subset of { DERIVATION_SUBSTITUTION, DERIVATION_EXTENSION, DERIVATION_RESTRICTION } corresponding to substitutions disallowed by this XSElementDeclaration or DERIVATION_NONE.

References fDisallowedSubstitutions.

bool XSElementDeclaration::getAbstract (  )  const

{abstract} A boolean.

XSAnnotation * XSElementDeclaration::getAnnotation (  )  const

Optional.

Annotation.

References fAnnotation.

void XSElementDeclaration::setTypeDefinition ( XSTypeDefinition typeDefinition  ) 

methods needed by implementation

References fTypeDefinition.


Friends And Related Function Documentation

friend class XSObjectFactory [friend]


Member Data Documentation

Referenced by getScope().

SchemaElementDecl* XSElementDeclaration::fSchemaElementDecl [protected]

Referenced by getAnnotation().

Referenced by getIdentityConstraints().


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