com.saxonica.schema
Class ChoiceModelGroup
java.lang.Object
com.saxonica.schema.SchemaStructure
com.saxonica.schema.ModelGroup
com.saxonica.schema.ChoiceModelGroup
- All Implemented Interfaces:
- Term, UserSchemaComponent, Serializable, SourceLocator, SchemaComponent
public class ChoiceModelGroup
- extends ModelGroup
A ChoiceCompositor represents an xs:choice element in the schema
- See Also:
- Serialized Form
Method Summary |
String |
getCompositorName()
Get the name of this compositor |
boolean |
isEmptiable()
Determine if empty content is allowed |
boolean |
isPointless(ModelGroup container)
Test whether the compositor is pointless, as described in XML Schema Part 1
Schema Component Constraint: Particle Valid (Restriction) |
boolean |
validate(SchemaCompiler compiler)
Checks the validity of this Compositor definition. |
Methods inherited from class com.saxonica.schema.ModelGroup |
addParticle, compile, containsAll, fixup, gatherAllPermittedElements, getContentModelSize, getElementParticleCardinality, getElementParticleType, getListOfParticles, getSimplifiedContentModel, getTerm, isEmpty, iterateParticles, lookForCycles, serialize, setContentModel |
Methods inherited from class com.saxonica.schema.SchemaStructure |
elaborate, getColumnNumber, getConfiguration, getFixupStatus, getLineNumber, getPublicId, getSystemId, getValidationStatus, setConfiguration, setFixupStatus, setLineNumber, setLocator, setSystemId, setValidationStatus |
ChoiceModelGroup
public ChoiceModelGroup()
isEmptiable
public boolean isEmptiable()
throws UnresolvedReferenceException
- Determine if empty content is allowed
- Specified by:
isEmptiable
in class ModelGroup
- Returns:
- true if empty content matches this compositor, which is true if the compositor
as a whole has minOccurs=0, or if any of the choices allows empty content.
- Throws:
UnresolvedReferenceException
isPointless
public boolean isPointless(ModelGroup container)
- Test whether the compositor is pointless, as described in XML Schema Part 1
Schema Component Constraint: Particle Valid (Restriction)
- Overrides:
isPointless
in class ModelGroup
- Parameters:
container
- not used
- Returns:
- true if the particle is pointless (which effectively means it can't match anything)
validate
public boolean validate(SchemaCompiler compiler)
throws SchemaException
- Checks the validity of this Compositor definition.
- Specified by:
validate
in interface UserSchemaComponent
- Overrides:
validate
in class ModelGroup
- Returns:
- true when this Schema definition is valid, otherwise false.
- Throws:
SchemaException
- when the error listener decides an error is fatal
getCompositorName
public String getCompositorName()
- Get the name of this compositor
- Specified by:
getCompositorName
in class ModelGroup
- Returns:
- one of "sequence", "choice", or "all"
Copyright (C) Michael H. Kay. All rights reserved.