|
|||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||
java.lang.Objectcom.saxonica.schema.SchemaStructure
com.saxonica.schema.SimpleComponentReference
com.saxonica.schema.Particle
public abstract class Particle
Represents a Particle as defined by XML Schema. A particle is a component of a content model, consisting of a term and a permitted cardinality range. The term may be an element declaration, a wildcard, or a model group. To allow for content models that have not been fully resolved, we also allow a model group reference as a particle (that is, a reference to a named model group definition).
| Field Summary | |
|---|---|
static int |
UNBOUNDED
A constant to represent an UNBOUNDED number of occurrences |
| Fields inherited from interface net.sf.saxon.type.SchemaComponent |
|---|
FIXED_UP, INCOMPLETE, INVALID, UNVALIDATED, VALIDATED, VALIDATING |
| Constructor Summary | |
|---|---|
Particle()
|
|
| Method Summary | |
|---|---|
abstract void |
compile(SchemaCompiler compiler)
Compile a particle |
static int |
computeParticleCardinality(int minOccurs,
int maxOccurs)
Compute an XPath cardinality (e.g. |
abstract boolean |
fixup(SchemaCompiler compiler)
Check references from this component to other components |
abstract 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. |
abstract 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. |
abstract SchemaType |
getElementParticleType(int fingerprint)
Find an element particle within this part of a content model having a given element name (identified by fingerprint), and return the schema type associated with that element particle. |
int |
getMaxOccurs()
Returns the maximum number of occurrences that this Particle may appear in the containing content model |
int |
getMinOccurs()
Returns the minimum number of occurrences that this Particle must appear in the containing content model |
abstract Term |
getTerm()
Get the term corresponding to this particle |
abstract boolean |
isEmptiable()
Determine if empty content is allowed |
abstract boolean |
isPointless(ModelGroup container)
Test whether the particle is pointless, as described in XML Schema Part 1 Schema Component Constraint: Particle Valid (Restriction) |
abstract void |
serializeParticle(SchemaModelSerializer serializer)
Serialize this particle |
void |
setMaxOccurs(int maxOccurs)
Sets the maximum number of occurrences for this Particle within the containing content model |
void |
setMinOccurs(int minOccurs)
Sets the minimum number of occurrences for this Particle within the containing content model |
abstract boolean |
validate(SchemaCompiler compiler)
Check the validity (consistency) of this element definition. |
| 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, getSystemId, getValidationStatus, lookForCycles, setConfiguration, setFixupStatus, setLineNumber, setLocator, setSystemId, setValidationStatus |
| Methods inherited from class java.lang.Object |
|---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface net.sf.saxon.type.SchemaComponent |
|---|
getValidationStatus |
| Methods inherited from interface com.saxonica.schema.ComponentReference |
|---|
getConfiguration |
| Methods inherited from interface javax.xml.transform.SourceLocator |
|---|
getColumnNumber, getLineNumber, getPublicId, getSystemId |
| Field Detail |
|---|
public static int UNBOUNDED
| Constructor Detail |
|---|
public Particle()
| Method Detail |
|---|
public final int getMaxOccurs()
public final int getMinOccurs()
public final void setMaxOccurs(int maxOccurs)
maxOccurs - the maximum number of occurrences for this Particle, or -1 to indicate
that the maximum is unboundedpublic final void setMinOccurs(int minOccurs)
minOccurs - the minimum number of occurrences for this Particlepublic abstract Term getTerm()
public static int computeParticleCardinality(int minOccurs,
int maxOccurs)
minOccurs - Minimum occurrencesmaxOccurs - Maximum occurrences (-1 = unbounded)
public abstract void gatherAllPermittedElements(IntHashSet result,
boolean ignoreWildcards)
throws SchemaException
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.
SchemaExceptionpublic abstract 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 zero.
fingerprint - Identifies the name of the child element within this content model
public abstract boolean isEmptiable()
throws UnresolvedReferenceException
UnresolvedReferenceExceptionpublic abstract SchemaType getElementParticleType(int fingerprint)
fingerprint - Identifies the name of the child element within this content model
public abstract boolean fixup(SchemaCompiler compiler)
throws SchemaException,
UnresolvedReferenceException
fixup in class SchemaStructurecompiler - is used for reporting errors
SchemaException
UnresolvedReferenceException
public abstract boolean validate(SchemaCompiler compiler)
throws SchemaException
compiler -
SchemaException - if an error is found and the
error listener decides that the error is fatal
public abstract void compile(SchemaCompiler compiler)
throws SchemaException
compiler -
SchemaExceptionpublic abstract boolean isPointless(ModelGroup container)
public abstract void serializeParticle(SchemaModelSerializer serializer)
throws XPathException
XPathException
|
|||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||