public final class AttributeDecl extends SchemaStructure implements UserSchemaComponent, SerializableSchemaComponent, SchemaDeclaration
COMPONENT_FUNCTION_TYPE, FIXED_UP, INCOMPLETE, INVALID, UNVALIDATED, VALIDATED, VALIDATING
Constructor and Description |
---|
AttributeDecl(EnterpriseConfiguration config,
boolean global)
Creates a new AttrDecl in the given schema.
|
Modifier and Type | Method and Description |
---|---|
boolean |
fixup(SchemaCompiler compiler)
Check references from this component to other components
|
Function |
getComponentAsFunction()
Get the schema component in the form of a function item.
|
StructuredQName |
getComponentName()
Get the attribute name
|
AttributeGroupDecl |
getContainingAttributeGroup()
Get the containing attribute group.
|
UserComplexType |
getContainingComplexType()
Get the containing complex type.
|
String |
getDefaultValue()
Returns the default value of this attribute declaration.
|
String |
getDisplayName()
Returns the name of the attribute defined by this AttributeDecl.
|
int |
getFingerprint()
Gets the fingerprint of this attribute name
|
AtomicSequence |
getFixedValue()
Returns the fixed value of this attribute declaration.
|
String |
getName()
Get the local name of this Attribute Declaration.
|
SimpleType |
getSimpleType()
Get the type associated with this Attribute Declaration.
|
String |
getTargetNamespace()
Get the namespace URI of this element declaration.
|
SimpleType |
getType()
Get the type of this attribute declaration.
|
boolean |
hasTypeAlternatives()
Determine, in the case of an Element Declaration, whether there are type alternatives defined
|
boolean |
isAbstract()
Determine, in the case of an Element Declaration, whether it is nillable.
|
boolean |
isGlobal()
Determine whether this attribute declaration is global.
|
boolean |
isInheritable()
Ask whether this attribute is inheritable
|
boolean |
isNillable()
Determine, in the case of an Element Declaration, whether it is nillable.
|
boolean |
isSameDeclaration(AttributeDecl other)
Test whether this is the same declaration as another attribute declaration.
|
NodeTest |
makeSchemaNodeTest()
Create a NodeTest that implements the semantics of schema-element(name) or
schema-attribute(name) applied to this element or attribute declaration.
|
void |
serialize(SchemaModelSerializer serializer)
Serialize the schema component
|
void |
setAttributeName(StructuredQName attributeName)
Set the attribute name.
|
void |
setAttributeName(StructuredQName attributeName,
int fingerprint)
Set the attribute name.
|
void |
setContainingAttributeGroup(AttributeGroupDecl type)
Sets the containing attribute group definition.
|
void |
setContainingComplexType(UserComplexType type)
Sets the containing complex type definition.
|
void |
setDefaultValue(String value)
Sets the default value.
|
void |
setFixedValue(AtomicSequence value)
Sets the fixed value.
|
void |
setInheritable(boolean inherit)
Say whether this attribute is inheritable
|
void |
setNamespaceResolver(NamespaceResolver resolver)
Set the namespace resolver for resolving QName-valued fixed and default values
|
void |
setSimpleType(SimpleType simpleType)
Sets the SimpleType for this attribute declaration.
|
void |
setTypeReference(TypeReference type)
Sets the schema type for this attribute declaration.
|
boolean |
testFixedValue(CharSequence value,
NamespaceResolver resolver)
Test a value against the fixed value.
|
boolean |
validate(SchemaCompiler compiler)
Checks the validity of this Attribute declaration
|
elaborate, getColumnNumber, getConfiguration, getFixupStatus, getLineNumber, getPublicId, getRedefinitionLevel, getSchemaDocumentURI, getSystemId, getValidationStatus, lookForCycles, makeXPathExpressionPropertyRecord, saveLocation, setConfiguration, setFixupStatus, setLineNumber, setLocator, setRedefinitionLevel, setSchemaDocumentURI, setSystemId, setValidationStatus
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
elaborate, lookForCycles
getRedefinitionLevel, getValidationStatus
public AttributeDecl(EnterpriseConfiguration config, boolean global)
config
- the configuration that contains the new attrDeclglobal
- true if the attribute declaration is globalpublic boolean isGlobal()
public void setContainingComplexType(UserComplexType type)
type
- the containing complex typepublic UserComplexType getContainingComplexType()
public void setContainingAttributeGroup(AttributeGroupDecl type)
type
- the containing attribute grouppublic AttributeGroupDecl getContainingAttributeGroup()
public String getName()
public String getTargetNamespace()
public String getDisplayName()
public void setAttributeName(StructuredQName attributeName, int fingerprint)
attributeName
- the attribute name.fingerprint
- the fingerprint of the attribute namepublic void setAttributeName(StructuredQName attributeName)
attributeName
- the attribute name.public StructuredQName getComponentName()
getComponentName
in interface SchemaDeclaration
public void setTypeReference(TypeReference type)
type
- the schema type for this element declaration.public int getFingerprint()
getFingerprint
in interface SchemaDeclaration
public SimpleType getSimpleType() throws MissingComponentException
MissingComponentException
- if the reference from
the attribute declaration to its type has not been resolvedpublic SimpleType getType() throws MissingComponentException
getType
in interface SchemaDeclaration
SimpleType
MissingComponentException
public String getDefaultValue()
public AtomicSequence getFixedValue()
public void setSimpleType(SimpleType simpleType)
simpleType
- the SimpleType for this attribute
declarationpublic void setDefaultValue(String value)
value
- the default valuepublic void setFixedValue(AtomicSequence value)
value
- the fixed value. This will initially be saved as an UntypedAtomicValue; later, when the type
is known, it will be converted to the correct typepublic void setNamespaceResolver(NamespaceResolver resolver)
resolver
- the namespace resolverpublic NodeTest makeSchemaNodeTest() throws MissingComponentException
makeSchemaNodeTest
in interface SchemaDeclaration
MissingComponentException
- if the type of the declaration is not present in the schema.public void setInheritable(boolean inherit)
inherit
- true if it is inheritablepublic boolean isInheritable()
public boolean hasTypeAlternatives()
hasTypeAlternatives
in interface SchemaDeclaration
public boolean fixup(SchemaCompiler compiler) throws SchemaException, MissingComponentException
fixup
in interface UserSchemaComponent
fixup
in class SchemaStructure
compiler
- used for error reportingSchemaException
MissingComponentException
public boolean validate(SchemaCompiler compiler) throws SchemaException
validate
in interface UserSchemaComponent
SchemaException
- if the error listener decides an error is fatalpublic boolean testFixedValue(CharSequence value, NamespaceResolver resolver) throws ValidationException, MissingComponentException
value
- the value to be testedresolver
- Namespace resolver for use if the value is namespace-sensitive (QName or NOTATION)ValidationException
- if the value is not valid for this typeMissingComponentException
public boolean isSameDeclaration(AttributeDecl other)
other
- the other attribute declarationpublic boolean isNillable()
isNillable
in interface SchemaDeclaration
public boolean isAbstract()
isAbstract
in interface SchemaDeclaration
public void serialize(SchemaModelSerializer serializer) throws XPathException
serialize
in interface SerializableSchemaComponent
serializer
- the object responsible for performing the serializationMissingComponentException
- if the component cannot be serialized because it contains dangling referencesXPathException
- if serialization failspublic Function getComponentAsFunction()
SchemaComponent
getComponentAsFunction
in interface SchemaComponent
Copyright (c) 2004-2014 Saxonica Limited. All rights reserved.