public final class AnyType extends Object implements ComplexType
OPEN_CONTENT_ABSENT, OPEN_CONTENT_INTERLEAVE, OPEN_CONTENT_NONE, OPEN_CONTENT_SUFFIX, VARIETY_ELEMENT_ONLY, VARIETY_EMPTY, VARIETY_MIXED, VARIETY_SIMPLE
DERIVATION_EXTENSION, DERIVATION_LIST, DERIVATION_RESTRICTION, DERIVATION_UNION, DERIVE_BY_SUBSTITUTION
COMPONENT_FUNCTION_TYPE, FIXED_UP, INCOMPLETE, INVALID, UNVALIDATED, VALIDATED, VALIDATING
Modifier and Type | Method and Description |
---|---|
boolean |
allowsAttributes()
Return true if this type (or any known type derived from it by extension) allows the element
to have one or more attributes.
|
boolean |
allowsDerivation(int derivation)
Determines whether derivation (of a particular kind)
from this type is allowed, based on the "final" property
|
void |
analyzeContentExpression(Expression expression,
int kind,
StaticContext env)
Analyze an expression to see whether the expression is capable of delivering a value of this
type.
|
AtomicSequence |
atomize(NodeInfo node)
Get the typed value of a node that is annotated with this schema type.
|
void |
checkTypeDerivationIsOK(SchemaType type,
int block)
Check that this type is validly derived from a given type
|
boolean |
containsElementWildcard()
Ask whether this type (or any known type derived from it by extension) allows the element
to have children that match a wildcard
|
void |
gatherAllPermittedChildren(IntHashSet children,
boolean ignoreWildcards)
Get a list of all the names of elements that can appear as children of an element having this
complex type, as integer fingerprints.
|
void |
gatherAllPermittedDescendants(IntHashSet descendants)
Get a list of all the names of elements that can appear as descendants of an element having this
complex type, as integer fingerprints.
|
int |
getAttributeUseCardinality(int fingerprint)
Find an attribute use within this complex type definition having a given attribute name
(identified by fingerprint), and return the cardinality associated with that attribute,
which will always be 0, 1, or 0-or-1.
|
SimpleType |
getAttributeUseType(int fingerprint)
Find an attribute use within this complex type definition having a given attribute name
(identified by fingerprint), and return the schema type associated with that attribute.
|
SchemaType |
getBaseType()
Get the base type
|
int |
getBlock()
Returns the value of the 'block' attribute for this type, as a bit-signnificant
integer with fields such as
SchemaType.DERIVATION_LIST and SchemaType.DERIVATION_EXTENSION |
FunctionItem |
getComponentAsFunction()
Get the schema component in the form of a function item.
|
int |
getDerivationMethod()
Gets the integer code of the derivation method used to derive this type from its
parent.
|
int |
getDescendantElementCardinality(int fingerprint)
Assuming an element is a permitted descendant in the content model of this type, determine
the cardinality of the element when it appears as a descendant.
|
SchemaType |
getDescendantElementType(int fingerprint)
Assuming an element is a permitted descendant in the content model of this type, determine
the type of the element when it appears as a descendant.
|
String |
getDescription()
Get a description of this type for use in diagnostics
|
String |
getDisplayName()
Get the display name of the type: that is, a lexical QName with an arbitrary prefix
|
int |
getElementParticleCardinality(int fingerprint,
boolean considerExtensions)
Find an element particle within this complex type definition having a given element name
(identified by fingerprint), and return the cardinality associated with that element particle,
that is, the number of times the element can occur within this complex type.
|
SchemaType |
getElementParticleType(int fingerprint,
boolean considerExtensions)
Find an element particle within this complex type definition having a given element name
(identified by fingerprint), and return the schema type associated with that element particle.
|
String |
getEQName()
Get the name of this type as an EQName, that is, a string in the format Q{uri}local.
|
int |
getFinalProhibitions()
Get the types of derivation that are not permitted, by virtue of the "final" property.
|
int |
getFingerprint()
Get the fingerprint of the name of this type
|
static AnyType |
getInstance()
Get the singular instance of this class
|
SchemaType |
getKnownBaseType()
Returns the base type that this type inherits from.
|
String |
getName()
Get the local name of this type
|
int |
getNameCode()
Get the namecode of the name of this type.
|
int |
getRedefinitionLevel()
Get the redefinition level.
|
SimpleType |
getSimpleContentType()
For a complex type with simple content, return the simple type of the content.
|
String |
getSystemId()
Get the URI of the schema document containing the definition of this type
|
String |
getTargetNamespace()
Get the target namespace of this type
|
int |
getValidationStatus()
Get the validation status - always valid
|
int |
getVariety()
Get the variety of this complex type.
|
boolean |
hasAssertions()
Ask whether there are any assertions defined on this complex type
|
boolean |
isAbstract()
Test whether this ComplexType has been marked as abstract.
|
boolean |
isAllContent()
Test whether this complex type has "all" content, that is, a content model
using an xs:all compositor
|
boolean |
isAnonymousType()
Test whether this is an anonymous type
|
boolean |
isAtomicType()
Test whether this SchemaType is an atomic type
|
boolean |
isComplexContent()
Test whether this complex type has complex content
|
boolean |
isComplexType()
Test whether this SchemaType is a complex type
|
boolean |
isEmptiable()
Test whether the content model of this complexType allows empty content
|
boolean |
isEmptyContent()
Test whether the content type of this complex type is empty
|
boolean |
isIdRefType()
Ask whether this type is an IDREF or IDREFS type.
|
boolean |
isIdType()
Ask whether this type is an ID type.
|
boolean |
isMixedContent()
Test whether this complex type allows mixed content
|
boolean |
isRestricted()
Test whether this complex type is derived by restriction
|
boolean |
isSameType(SchemaType other)
Test whether this is the same type as another type.
|
boolean |
isSimpleContent()
Test whether this complex type has simple content
|
boolean |
isSimpleType()
Test whether this SchemaType is a simple type
|
public static AnyType getInstance()
public String getName()
getName
in interface SchemaType
public String getEQName()
getEQName
in interface SchemaType
public String getTargetNamespace()
getTargetNamespace
in interface SchemaType
public int getVariety()
ComplexType.VARIETY_EMPTY
, ComplexType.VARIETY_MIXED
, ComplexType.VARIETY_SIMPLE
, or
ComplexType.VARIETY_ELEMENT_ONLY
getVariety
in interface ComplexType
public int getValidationStatus()
getValidationStatus
in interface SchemaComponent
SchemaComponent.UNVALIDATED
, SchemaComponent.VALIDATING
,
SchemaComponent.VALIDATED
, SchemaComponent.INVALID
, SchemaComponent.INCOMPLETE
public int getRedefinitionLevel()
getRedefinitionLevel
in interface SchemaComponent
public SchemaType getBaseType()
getBaseType
in interface SchemaType
public SchemaType getKnownBaseType() throws IllegalStateException
IllegalStateException
- if this type is not valid.public int getDerivationMethod()
getDerivationMethod
in interface SchemaType
SchemaType.DERIVATION_RESTRICTION
public boolean allowsDerivation(int derivation)
allowsDerivation
in interface SchemaType
derivation
- the kind of derivation, for example SchemaType.DERIVATION_LIST
public int getFinalProhibitions()
getFinalProhibitions
in interface SchemaType
SchemaType.DERIVATION_EXTENSION
public FunctionItem getComponentAsFunction()
getComponentAsFunction
in interface SchemaComponent
public boolean isAbstract()
isAbstract
in interface ComplexType
public boolean isComplexType()
isComplexType
in interface SchemaType
public boolean isAnonymousType()
isAnonymousType
in interface SchemaType
public boolean isSimpleType()
isSimpleType
in interface SchemaType
public boolean isAtomicType()
isAtomicType
in interface SchemaType
public boolean isIdType()
isIdType
in interface SchemaType
public boolean isIdRefType()
isIdRefType
in interface SchemaType
public int getBlock()
SchemaType.DERIVATION_LIST
and SchemaType.DERIVATION_EXTENSION
getBlock
in interface SchemaType
public boolean isComplexContent()
isComplexContent
in interface ComplexType
public boolean isSimpleContent()
isSimpleContent
in interface ComplexType
public boolean isAllContent()
isAllContent
in interface ComplexType
public SimpleType getSimpleContentType()
getSimpleContentType
in interface ComplexType
public boolean isRestricted()
isRestricted
in interface ComplexType
public boolean isEmptyContent()
isEmptyContent
in interface ComplexType
public boolean isEmptiable()
isEmptiable
in interface ComplexType
public boolean isMixedContent()
isMixedContent
in interface ComplexType
public int getFingerprint()
getFingerprint
in interface SchemaType
public int getNameCode()
getNameCode
in interface SchemaType
public String getDescription()
getDescription
in interface SchemaType
public String getDisplayName()
getDisplayName
in interface SchemaType
public String getSystemId()
getSystemId
in interface SchemaType
public boolean isSameType(SchemaType other)
isSameType
in interface SchemaType
other
- the other typepublic void analyzeContentExpression(Expression expression, int kind, StaticContext env)
analyzeContentExpression
in interface SchemaType
expression
- the expression that delivers the contentkind
- the node kind whose content is being delivered: Type.ELEMENT
,
Type.ATTRIBUTE
, or Type.DOCUMENT
env
- public AtomicSequence atomize(NodeInfo node)
atomize
in interface SchemaType
node
- the node whose typed value is requiredpublic void checkTypeDerivationIsOK(SchemaType type, int block) throws SchemaException
checkTypeDerivationIsOK
in interface SchemaType
type
- the type from which this type is derivedblock
- the derivations that are blocked by the relevant element declarationSchemaException
- if the derivation is not allowedpublic SchemaType getElementParticleType(int fingerprint, boolean considerExtensions)
getElementParticleType
in interface ComplexType
fingerprint
- Identifies the name of the child element within this content modelconsiderExtensions
- public int getElementParticleCardinality(int fingerprint, boolean considerExtensions)
StaticProperty.EXACTLY_ONE
, StaticProperty.ALLOWS_ZERO_OR_ONE
,
StaticProperty.ALLOWS_ZERO_OR_MORE
, StaticProperty.ALLOWS_ONE_OR_MORE
,
If there is no such particle, return zero.getElementParticleCardinality
in interface ComplexType
fingerprint
- Identifies the name of the child element within this content modelconsiderExtensions
- StaticProperty.EMPTY
.public SimpleType getAttributeUseType(int fingerprint)
getAttributeUseType
in interface ComplexType
fingerprint
- Identifies the name of the child element within this content modelpublic int getAttributeUseCardinality(int fingerprint) throws SchemaException
getAttributeUseCardinality
in interface ComplexType
fingerprint
- Identifies the name of the child element within this content modelSchemaException
public boolean allowsAttributes()
allowsAttributes
in interface ComplexType
public void gatherAllPermittedChildren(IntHashSet children, boolean ignoreWildcards) throws SchemaException
gatherAllPermittedChildren
in interface ComplexType
children
- an integer set, initially empty, which on return will hold the fingerprints of all permitted
child elements; if the result contains the value -1, this indicates that it is not possible to enumerate
all the children, typically because of wildcards. In this case the other contents of the set shouldignoreWildcards
- SchemaException
public void gatherAllPermittedDescendants(IntHashSet descendants) throws SchemaException
gatherAllPermittedDescendants
in interface ComplexType
descendants
- an integer set, initially empty, which on return will hold the fingerprints of all permitted
descendant elements; if the result contains the value -1, this indicates that it is not possible to enumerate
all the descendants, typically because of wildcards. In this case the other contents of the set should
be ignored.SchemaException
public SchemaType getDescendantElementType(int fingerprint) throws SchemaException
getDescendantElementType
in interface ComplexType
fingerprint
- the name of the required descendant elementSchemaException
public int getDescendantElementCardinality(int fingerprint) throws SchemaException
getDescendantElementCardinality
in interface ComplexType
fingerprint
- the name of the required descendant elementSchemaException
public boolean containsElementWildcard()
containsElementWildcard
in interface ComplexType
public boolean hasAssertions()
hasAssertions
in interface ComplexType
Copyright (c) 2004-2014 Saxonica Limited. All rights reserved.