|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.saxonica.schema.SchemaStructure com.saxonica.schema.SimpleComponentReference com.saxonica.schema.Particle com.saxonica.schema.ElementParticle
public class ElementParticle
A reference to an element declaration within the content model of a complex type. This corresponds to an <xs:element ref="x"> element in the XML representation of a schema. Where a local element declaration appears in a content model, using the form <xs:element name="x">, both an element declaration and an element particle are created.
Field Summary |
---|
Fields inherited from class com.saxonica.schema.Particle |
---|
UNBOUNDED |
Fields inherited from class com.saxonica.schema.SimpleComponentReference |
---|
nameCode, symbolSpace, target |
Fields inherited from interface net.sf.saxon.type.SchemaComponent |
---|
FIXED_UP, INCOMPLETE, INVALID, UNVALIDATED, VALIDATED, VALIDATING |
Constructor Summary | |
---|---|
ElementParticle(EnterpriseConfiguration config,
SourceLocator locator)
Creates a new element particle |
Method Summary | |
---|---|
void |
compile(SchemaCompiler compiler)
Compile this local element declaration, considered as a particle of some complex type, by compiling its own complex type definition. |
boolean |
containsElementWildcard()
Ask whether the particle contains an element wildcard |
ElementParticle |
copy()
Copy an element particle |
boolean |
fixup(SchemaCompiler compiler)
Check references from this component to other components |
void |
gatherAllPermittedElements(IntHashSet result,
boolean ignoreWildcards)
Find the set of all element particles allowed within the content model of this particle, identified by their integer fingerprints. |
ElementDecl |
getDeclaration()
Returns the ElementDecl that this element definition references. |
String |
getDisplayName()
Returns the display name of this Element particle. |
int |
getElementParticleCardinality(int fingerprint)
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)
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 |
getName()
Returns the local name of this Element particle. |
String |
getNamespaceURI()
Get the namespace URI of this element particle |
Term |
getTerm()
Get the term corresponding to this particle |
boolean |
isEmptiable()
Determine if this particle can be empty |
boolean |
isPointless(ModelGroup container)
Test whether the particle is pointless, as described in XML Schema Part 1 Schema Component Constraint: Particle Valid (Restriction) |
void |
lookForCycles(Stack references,
SchemaCompiler compiler)
This method is called to look for cycles. |
void |
serializeParticle(SchemaModelSerializer serializer)
Serialize the particle |
void |
setReference(ElementDecl declaration)
Set the reference to a specific (typically non-global) element declaration |
String |
toString()
|
boolean |
validate(SchemaCompiler compiler)
Check the validity (consistency) of this element definition. |
Methods inherited from class com.saxonica.schema.Particle |
---|
computeParticleCardinality, getMaxOccurs, getMinOccurs, isVulnerable, markVulnerableSubParticles, setMaxOccurs, setMinOccurs, setVulnerable |
Methods inherited from class com.saxonica.schema.SimpleComponentReference |
---|
getFingerprint, getNameCode, getSymbolSpace, getTarget, isResolved, setNameCode, setTarget, tryToResolve |
Methods inherited from class com.saxonica.schema.SchemaStructure |
---|
elaborate, getColumnNumber, getConfiguration, getFixupStatus, getLineNumber, getPublicId, getRedefinitionLevel, getSchemaDocumentURI, getSystemId, getValidationStatus, setConfiguration, setFixupStatus, setLineNumber, setLocator, setRedefinitionLevel, setSchemaDocumentURI, setSystemId, setValidationStatus |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface com.saxonica.schema.UserSchemaComponent |
---|
elaborate |
Methods inherited from interface net.sf.saxon.type.SchemaComponent |
---|
getRedefinitionLevel, getValidationStatus |
Methods inherited from interface com.saxonica.schema.ComponentReference |
---|
getConfiguration |
Methods inherited from interface javax.xml.transform.SourceLocator |
---|
getColumnNumber, getLineNumber, getPublicId, getSystemId |
Constructor Detail |
---|
public ElementParticle(EnterpriseConfiguration config, SourceLocator locator)
config
- the Configuration to which this element declaration
belongslocator
- identifies the location of the element declaration in the
source schema documentMethod Detail |
---|
public ElementParticle copy()
public String getDisplayName()
public String getNamespaceURI()
public String getName()
public ElementDecl getDeclaration() throws UnresolvedReferenceException
UnresolvedReferenceException
- if the reference from the element
particle to the corresponding element declaration has not been resolvedpublic void setReference(ElementDecl declaration)
declaration
- the element declaration to which this particle refers.public boolean isEmptiable()
isEmptiable
in class Particle
public boolean isPointless(ModelGroup container)
isPointless
in class Particle
container
- the model group containing this particle; null if there is no containing model group
public void lookForCycles(Stack references, SchemaCompiler compiler) throws SchemaException, UnresolvedReferenceException
SchemaStructure
lookForCycles
in interface UserSchemaComponent
lookForCycles
in class SchemaStructure
references
- A stack of objects that contain direct or indirect references
to this object, and that must therefore not be referred to from this object.compiler
- the schema compiler
SchemaException
UnresolvedReferenceException
public boolean fixup(SchemaCompiler compiler) throws SchemaException, UnresolvedReferenceException
fixup
in interface UserSchemaComponent
fixup
in class Particle
compiler
- is used for reporting errors
SchemaException
UnresolvedReferenceException
public boolean validate(SchemaCompiler compiler) throws SchemaException
validate
in interface UserSchemaComponent
validate
in class Particle
compiler
- the schema compiler
SchemaException
- if an error is found and the
error listener decides that the error is fatalpublic void compile(SchemaCompiler compiler) throws SchemaException
compile
in class Particle
compiler
- the schema compiler
SchemaException
- if compilation fails.public Term getTerm()
getTerm
in class Particle
public SchemaType getElementParticleType(int fingerprint)
getElementParticleType
in class Particle
fingerprint
- Identifies the name of the child element within this content model
public int getElementParticleCardinality(int fingerprint)
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 StaticProperty.EMPTY
.
getElementParticleCardinality
in class Particle
fingerprint
- Identifies the name of the child element within this content model
public boolean containsElementWildcard()
containsElementWildcard
in class Particle
public void gatherAllPermittedElements(IntHashSet result, boolean ignoreWildcards) throws SchemaException
gatherAllPermittedElements
in class Particle
result
- an initially-empty integer set in which the results are accumulatedignoreWildcards
- if true, wildcards are ignored. If false, the result will be
an integer set containing the value -1, meaning that it is not possible to enumerate
the elements that can appear in the content.
SchemaException
- if an error is found in the schemapublic String toString()
toString
in class Object
public void serializeParticle(SchemaModelSerializer serializer) throws XPathException
serializeParticle
in class Particle
serializer
- the object responsible for serialization
XPathException
- if serialization fails
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |