com.saxonica.schema
Interface ComponentReference

All Superinterfaces:
javax.xml.transform.SourceLocator
All Known Implementing Classes:
AttributeGroupReference, GroupReference, KeyRef, SimpleComponentReference, TypeReference

public interface ComponentReference
extends javax.xml.transform.SourceLocator

A reference to a schema component. The reference may have been resolved to a specific component, or may be as yet unresolved. Any attempt to use a reference that has not yet been resolved causes an unchecked exception.


Method Summary
 int getFingerprint()
          Get the fingerprint of the target of this reference
 PreparedSchema getSchema()
          Determine the schema containing this reference
 int getSymbolSpace()
          Get the symbol space of the target of this reference
 SchemaComponent getTarget()
          Get the schema component identified by this reference.
 boolean isResolved()
          Determine whether this reference has been resolved
 void tryToResolve(PreparedSchema schema)
          Try to resolve the reference if possible, relative to components present in a given schema.
 
Methods inherited from interface javax.xml.transform.SourceLocator
getColumnNumber, getLineNumber, getPublicId, getSystemId
 

Method Detail

getSchema

public PreparedSchema getSchema()
Determine the schema containing this reference


tryToResolve

public void tryToResolve(PreparedSchema schema)
Try to resolve the reference if possible, relative to components present in a given schema. No error occurs if the reference cannot yet be resolved.

Parameters:
schema - The schema containing the candidate target components for the reference. If null, the schema containing the reference is used.

isResolved

public boolean isResolved()
Determine whether this reference has been resolved


getTarget

public SchemaComponent getTarget()
                          throws UnresolvedReferenceException
Get the schema component identified by this reference.

Returns:
the schema component if the reference has been resolved.
Throws:
UnresolvedReferenceException - if the reference has not been resolved. Note that this is an unchecked exception.

getFingerprint

public int getFingerprint()
Get the fingerprint of the target of this reference


getSymbolSpace

public int getSymbolSpace()
Get the symbol space of the target of this reference