com.saxonica.schema
Interface UserSchemaComponent

All Superinterfaces:
SchemaComponent, Serializable
All Known Implementing Classes:
AllModelGroup, AttributeDecl, AttributeGroupDecl, AttributeGroupReference, AttributeUse, ChoiceModelGroup, ElementDecl, ElementParticle, IdentityConstraint, Key, KeyRef, ModelGroup, ModelGroupDefinition, ModelGroupParticle, Notation, SequenceModelGroup, SimpleTypeDefinition, Unique, UserAtomicType, UserComplexType, UserListType, UserSimpleType, UserUnionType

public interface UserSchemaComponent
extends SchemaComponent

A SchemaComponent is an object in a schema. While the schema is being built, a list of such objects is maintained, and on completion, the fixup method is called to resolve forwards references. Subsequently, the validate method is called to invoke validation


Field Summary
 
Fields inherited from interface net.sf.saxon.type.SchemaComponent
FIXED_UP, INCOMPLETE, INVALID, UNVALIDATED, VALIDATED, VALIDATING
 
Method Summary
 void elaborate()
          Elaborate the schema component: after reloading a serialized schema component model, this expands the component with derived information needed during validation episodes.
 boolean fixup(SchemaCompiler compiler)
          Check references from this component to other components
 void lookForCycles(Stack references, SchemaCompiler compiler)
          This method is called to look for cycles.
 boolean validate(SchemaCompiler compiler)
          Checks the validity of this Schema component.
 
Methods inherited from interface net.sf.saxon.type.SchemaComponent
getValidationStatus
 

Method Detail

fixup

boolean fixup(SchemaCompiler compiler)
              throws SchemaException
Check references from this component to other components

Parameters:
compiler -
Returns:
true if all is well, false if errors found
Throws:
SchemaException

lookForCycles

void lookForCycles(Stack references,
                   SchemaCompiler compiler)
                   throws SchemaException,
                          UnresolvedReferenceException
This method is called to look for cycles. The object implementing this method is required (a) to raise an exception if the object itself appears in the list of references, (b) to add itself to the list of references, and (c) to call the lookForCycles method on all the objects that it references.

Parameters:
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 -
Throws:
SchemaException
UnresolvedReferenceException

validate

boolean validate(SchemaCompiler compiler)
                 throws SchemaException
Checks the validity of this Schema component.

Parameters:
compiler -
Returns:
true when this Schema definition is valid, otherwise false.
Throws:
SchemaException - if the ErrorListener decides that an error is fatal.

elaborate

void elaborate()
               throws SchemaException
Elaborate the schema component: after reloading a serialized schema component model, this expands the component with derived information needed during validation episodes. The model is assumed to be valid.

Throws:
SchemaException


Copyright (C) Michael H. Kay. All rights reserved.