org.apache.xerces.impl.xs
Class XSComplexTypeDecl
java.lang.Object
|
+--org.apache.xerces.impl.xs.XSComplexTypeDecl
- All Implemented Interfaces:
- org.w3c.dom.TypeInfo, org.apache.xerces.xs.XSComplexTypeDefinition, org.apache.xerces.xs.XSObject, org.apache.xerces.xs.XSTypeDefinition
- public class XSComplexTypeDecl
- extends java.lang.Object
- implements org.apache.xerces.xs.XSComplexTypeDefinition, org.w3c.dom.TypeInfo
The XML representation for a complexType
schema component is a element information item
INTERNAL:
- Usage of this class is not supported. It may be altered or removed at any time.
- Version:
- $Id: XSComplexTypeDecl.java,v 1.22 2005/06/13 20:43:27 mrglavas Exp $
- Author:
- Elena Litani, IBM, Sandy Gao, IBM
| Fields inherited from interface org.apache.xerces.xs.XSComplexTypeDefinition |
CONTENTTYPE_ELEMENT, CONTENTTYPE_EMPTY, CONTENTTYPE_MIXED, CONTENTTYPE_SIMPLE |
| Fields inherited from interface org.apache.xerces.xs.XSTypeDefinition |
COMPLEX_TYPE, SIMPLE_TYPE |
| Fields inherited from interface org.w3c.dom.TypeInfo |
DERIVATION_EXTENSION, DERIVATION_LIST, DERIVATION_RESTRICTION, DERIVATION_UNION |
|
Method Summary |
boolean |
containsTypeID()
|
boolean |
derivedFrom(java.lang.String ancestorNS,
java.lang.String ancestorName,
short derivationMethod)
Convenience method which checks if this type is derived from the given
ancestor type. |
boolean |
derivedFromType(org.apache.xerces.xs.XSTypeDefinition ancestor,
short derivationMethod)
Convenience method which checks if this type is derived from the given
ancestorType. |
boolean |
getAbstract()
{abstract} A boolean. |
org.apache.xerces.xs.XSObjectList |
getAnnotations()
Optional. |
boolean |
getAnonymous()
A boolean that specifies if the type definition is anonymous. |
XSAttributeGroupDecl |
getAttrGrp()
|
org.apache.xerces.xs.XSAttributeUse |
getAttributeUse(java.lang.String namespace,
java.lang.String name)
|
org.apache.xerces.xs.XSObjectList |
getAttributeUses()
{attribute uses} A set of attribute uses. |
org.apache.xerces.xs.XSWildcard |
getAttributeWildcard()
{attribute wildcard} Optional. |
org.apache.xerces.xs.XSTypeDefinition |
getBaseType()
{base type definition} Either a simple type definition or a complex
type definition. |
XSCMValidator |
getContentModel(CMBuilder cmBuilder)
|
short |
getContentType()
{content type} One of empty, a simple type definition (see
simpleType, or mixed, element-only (see
cmParticle). |
short |
getDerivationMethod()
{derivation method} Either extension or restriction. |
short |
getFinal()
{final} For complex type definition it is a subset of {extension, restriction}. |
short |
getFinalSet()
|
java.lang.String |
getName()
The name of this XSObject depending on the
XSObject type. |
java.lang.String |
getNamespace()
The namespace URI of this node, or null if it is
unspecified. |
org.apache.xerces.xs.XSNamespaceItem |
getNamespaceItem()
A namespace schema information item corresponding to the target
namespace of the component, if it is globally declared; or
null otherwise. |
org.apache.xerces.xs.XSParticle |
getParticle()
A particle for mixed or element-only content model, otherwise
null |
short |
getProhibitedSubstitutions()
{prohibited substitutions} |
org.apache.xerces.xs.XSSimpleTypeDefinition |
getSimpleType()
A simple type definition corresponding to simple content model,
otherwise null |
java.lang.String |
getTargetNamespace()
|
short |
getType()
Get the type of the object, i.e ELEMENT_DECLARATION. |
short |
getTypeCategory()
Return whether this type definition is a simple type or complex type. |
java.lang.String |
getTypeName()
The name of a type declared for the associated element or attribute,
or null if unknown. |
java.lang.String |
getTypeNamespace()
The namespace of the type declared for the associated element or
attribute or null if the element does not have
declaration or if no namespace information is available. |
boolean |
isDerivedFrom(java.lang.String typeNamespaceArg,
java.lang.String typeNameArg,
int derivationMethod)
This method returns if there is a derivation between the reference
type definition, i.e. |
boolean |
isDOMDerivedFrom(java.lang.String ancestorNS,
java.lang.String ancestorName,
int derivationMethod)
Checks if a type is derived from another given the the name, namespace
and derivation method. |
boolean |
isFinal(short derivation)
{final} For complex type definition it is a subset of {extension,
restriction}. |
boolean |
isProhibitedSubstitution(short prohibited)
{prohibited substitutions} A subset of {extension, restriction}. |
void |
reset()
|
void |
setContainsTypeID()
|
void |
setIsAbstractType()
|
void |
setIsAnonymous()
|
void |
setName(java.lang.String name)
|
void |
setValues(java.lang.String name,
java.lang.String targetNamespace,
org.apache.xerces.xs.XSTypeDefinition baseType,
short derivedBy,
short schemaFinal,
short block,
short contentType,
boolean isAbstract,
XSAttributeGroupDecl attrGrp,
XSSimpleType simpleType,
XSParticleDecl particle,
XSObjectListImpl annotations)
|
java.lang.String |
toString()
|
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
XSComplexTypeDecl
public XSComplexTypeDecl()
setValues
public void setValues(java.lang.String name,
java.lang.String targetNamespace,
org.apache.xerces.xs.XSTypeDefinition baseType,
short derivedBy,
short schemaFinal,
short block,
short contentType,
boolean isAbstract,
XSAttributeGroupDecl attrGrp,
XSSimpleType simpleType,
XSParticleDecl particle,
XSObjectListImpl annotations)
setName
public void setName(java.lang.String name)
getTypeCategory
public short getTypeCategory()
- Description copied from interface:
org.apache.xerces.xs.XSTypeDefinition
- Return whether this type definition is a simple type or complex type.
- Specified by:
getTypeCategory in interface org.apache.xerces.xs.XSTypeDefinition
getTypeName
public java.lang.String getTypeName()
- Description copied from interface:
org.w3c.dom.TypeInfo
- The name of a type declared for the associated element or attribute,
or
null if unknown.
- Specified by:
getTypeName in interface org.w3c.dom.TypeInfo
getFinalSet
public short getFinalSet()
getTargetNamespace
public java.lang.String getTargetNamespace()
containsTypeID
public boolean containsTypeID()
setIsAbstractType
public void setIsAbstractType()
setContainsTypeID
public void setContainsTypeID()
setIsAnonymous
public void setIsAnonymous()
getContentModel
public XSCMValidator getContentModel(CMBuilder cmBuilder)
getAttrGrp
public XSAttributeGroupDecl getAttrGrp()
toString
public java.lang.String toString()
- Overrides:
toString in class java.lang.Object
derivedFromType
public boolean derivedFromType(org.apache.xerces.xs.XSTypeDefinition ancestor,
short derivationMethod)
- Description copied from interface:
org.apache.xerces.xs.XSTypeDefinition
- Convenience method which checks if this type is derived from the given
ancestorType.
- Specified by:
derivedFromType in interface org.apache.xerces.xs.XSTypeDefinition
- Following copied from interface:
org.apache.xerces.xs.XSTypeDefinition
- Parameters:
ancestorType - An ancestor type definition.derivationMethod - A bit combination representing a subset of {
DERIVATION_RESTRICTION, DERIVATION_EXTENSION, DERIVATION_UNION, DERIVATION_LIST
}.- Returns:
- True if this type is derived from
ancestorType
using only derivation methods from the derivationMethod
.
derivedFrom
public boolean derivedFrom(java.lang.String ancestorNS,
java.lang.String ancestorName,
short derivationMethod)
- Description copied from interface:
org.apache.xerces.xs.XSTypeDefinition
- Convenience method which checks if this type is derived from the given
ancestor type.
- Specified by:
derivedFrom in interface org.apache.xerces.xs.XSTypeDefinition
- Following copied from interface:
org.apache.xerces.xs.XSTypeDefinition
- Parameters:
namespace - An ancestor type namespace.name - An ancestor type name.derivationMethod - A bit combination representing a subset of {
DERIVATION_RESTRICTION, DERIVATION_EXTENSION, DERIVATION_UNION, DERIVATION_LIST
}.- Returns:
- True if this type is derived from
ancestorType
using only derivation methods from the derivationMethod
.
isDOMDerivedFrom
public boolean isDOMDerivedFrom(java.lang.String ancestorNS,
java.lang.String ancestorName,
int derivationMethod)
- Checks if a type is derived from another given the the name, namespace
and derivation method. See:
http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core.html#TypeInfo-isDerivedFrom
- Parameters:
ancestorNS - The namspace of the ancestor type declarationancestorName - The name of the ancestor type declarationderivation - The derivation method- Returns:
- boolean True if the ancestor type is derived from the reference
type by the specifiied derivation method.
reset
public void reset()
getType
public short getType()
- Get the type of the object, i.e ELEMENT_DECLARATION.
- Specified by:
getType in interface org.apache.xerces.xs.XSObject
getName
public java.lang.String getName()
- The
name of this XSObject depending on the
XSObject type.
- Specified by:
getName in interface org.apache.xerces.xs.XSObject
getAnonymous
public boolean getAnonymous()
- A boolean that specifies if the type definition is anonymous.
Convenience attribute. This is a field is not part of
XML Schema component model.
- Specified by:
getAnonymous in interface org.apache.xerces.xs.XSTypeDefinition
getNamespace
public java.lang.String getNamespace()
- The namespace URI of this node, or
null if it is
unspecified. defines how a namespace URI is attached to schema
components.
- Specified by:
getNamespace in interface org.apache.xerces.xs.XSObject
getBaseType
public org.apache.xerces.xs.XSTypeDefinition getBaseType()
- {base type definition} Either a simple type definition or a complex
type definition.
- Specified by:
getBaseType in interface org.apache.xerces.xs.XSTypeDefinition
getDerivationMethod
public short getDerivationMethod()
- {derivation method} Either extension or restriction. The valid constant
value for this
XSConstants EXTENTION, RESTRICTION.
- Specified by:
getDerivationMethod in interface org.apache.xerces.xs.XSComplexTypeDefinition
isFinal
public boolean isFinal(short derivation)
- {final} For complex type definition it is a subset of {extension,
restriction}. For simple type definition it is a subset of
{extension, list, restriction, union}.
- Specified by:
isFinal in interface org.apache.xerces.xs.XSTypeDefinition
- Parameters:
derivation - Extension, restriction, list, union constants
(defined in XSConstants).- Returns:
- True if derivation is in the final set, otherwise false.
getFinal
public short getFinal()
- {final} For complex type definition it is a subset of {extension, restriction}.
- Specified by:
getFinal in interface org.apache.xerces.xs.XSTypeDefinition
- Returns:
- A bit flag that represents:
{extension, restriction) or none for complexTypes;
{extension, list, restriction, union} or none for simpleTypes;
getAbstract
public boolean getAbstract()
- {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.
- Specified by:
getAbstract in interface org.apache.xerces.xs.XSComplexTypeDefinition
getAttributeUses
public org.apache.xerces.xs.XSObjectList getAttributeUses()
- {attribute uses} A set of attribute uses.
- Specified by:
getAttributeUses in interface org.apache.xerces.xs.XSComplexTypeDefinition
getAttributeWildcard
public org.apache.xerces.xs.XSWildcard getAttributeWildcard()
- {attribute wildcard} Optional. A wildcard.
- Specified by:
getAttributeWildcard in interface org.apache.xerces.xs.XSComplexTypeDefinition
getContentType
public short getContentType()
- {content type} One of empty, a simple type definition (see
simpleType, or mixed, element-only (see
cmParticle).
- Specified by:
getContentType in interface org.apache.xerces.xs.XSComplexTypeDefinition
getSimpleType
public org.apache.xerces.xs.XSSimpleTypeDefinition getSimpleType()
- A simple type definition corresponding to simple content model,
otherwise
null
- Specified by:
getSimpleType in interface org.apache.xerces.xs.XSComplexTypeDefinition
getParticle
public org.apache.xerces.xs.XSParticle getParticle()
- A particle for mixed or element-only content model, otherwise
null
- Specified by:
getParticle in interface org.apache.xerces.xs.XSComplexTypeDefinition
isProhibitedSubstitution
public boolean isProhibitedSubstitution(short prohibited)
- {prohibited substitutions} A subset of {extension, restriction}.
- Specified by:
isProhibitedSubstitution in interface org.apache.xerces.xs.XSComplexTypeDefinition
- Parameters:
prohibited - extention or restriction constants (defined in
XSConstants).- Returns:
- True if prohibited is a prohibited substitution, otherwise
false.
getProhibitedSubstitutions
public short getProhibitedSubstitutions()
- {prohibited substitutions}
- Specified by:
getProhibitedSubstitutions in interface org.apache.xerces.xs.XSComplexTypeDefinition
- Returns:
- A bit flag corresponding to prohibited substitutions
getAnnotations
public org.apache.xerces.xs.XSObjectList getAnnotations()
- Optional. Annotation.
- Specified by:
getAnnotations in interface org.apache.xerces.xs.XSComplexTypeDefinition
getNamespaceItem
public org.apache.xerces.xs.XSNamespaceItem getNamespaceItem()
- Description copied from interface:
org.apache.xerces.xs.XSObject
- A namespace schema information item corresponding to the target
namespace of the component, if it is globally declared; or
null otherwise.
- Specified by:
getNamespaceItem in interface org.apache.xerces.xs.XSObject
- See Also:
XSObject.getNamespaceItem()
getAttributeUse
public org.apache.xerces.xs.XSAttributeUse getAttributeUse(java.lang.String namespace,
java.lang.String name)
getTypeNamespace
public java.lang.String getTypeNamespace()
- Description copied from interface:
org.w3c.dom.TypeInfo
- The namespace of the type declared for the associated element or
attribute or
null if the element does not have
declaration or if no namespace information is available.
- Specified by:
getTypeNamespace in interface org.w3c.dom.TypeInfo
isDerivedFrom
public boolean isDerivedFrom(java.lang.String typeNamespaceArg,
java.lang.String typeNameArg,
int derivationMethod)
- Description copied from interface:
org.w3c.dom.TypeInfo
- This method returns if there is a derivation between the reference
type definition, i.e. the
TypeInfo on which the method
is being called, and the other type definition, i.e. the one passed
as parameters.
- Specified by:
isDerivedFrom in interface org.w3c.dom.TypeInfo
- Following copied from interface:
org.w3c.dom.TypeInfo
- Parameters:
typeNamespaceArg - the namespace of the other type definition.typeNameArg - the name of the other type definition.derivationMethod - the type of derivation and conditions applied
between two types, as described in the list of constants provided
in this interface.- Returns:
- If the document's schema is a DTD or no schema is associated
with the document, this method will always return
false
. If the document's schema is an XML Schema, the method will
true if the reference type definition is derived from
the other type definition according to the derivation parameter. If
the value of the parameter is 0 (no bit is set to
1 for the derivationMethod parameter),
the method will return true if the other type
definition can be reached by recursing any combination of {base
type definition}, {item type definition}, or {member type
definitions} from the reference type definition.
Copyright © 1999-2005 Apache XML Project. All Rights Reserved.