|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectnet.sf.saxon.Configuration
com.saxonica.validate.SchemaAwareConfiguration
A subclass of Configuration that defines a schema-aware processor. This contains helper methods invoked both at compile time and at run-time to perform operations that are allowed only in a schema-aware processor; the superclass Configuration contains the dummy versions of these methods used in a non-schema-aware processor. The interface is designed so that the calling classes contain no references to classes that are available only in the schema-aware product.
Applications should avoid using this class directly, and should instead access all the
necessary functionality through its superclass, Configuration
.
Nested Class Summary | |
static class |
SchemaAwareConfiguration.SurrogateSchema
A SurrogateSchema is a dummy schema object that is stored in the schema cache while the schema for a given namespace is being processed. |
Field Summary |
Fields inherited from class net.sf.saxon.Configuration |
DO_NOT_RECOVER, JAVA_APPLICATION, listener, optimizer, RECOVER_SILENTLY, RECOVER_WITH_WARNINGS, recoveryPolicy, vendorFunctionLibrary, XML_SCHEMA, XML10, XML11, XPATH, XQUERY, XSLT |
Constructor Summary | |
SchemaAwareConfiguration()
|
Method Summary | |
void |
addSchema(java.lang.Object schema)
Add a schema to the cache |
void |
addSchemaSource(javax.xml.transform.Source schemaSource)
Load a schema, which will be available for use by all subsequent operations using this SchemaAwareConfiguration. |
void |
addSurrogateSchema(java.lang.String namespace)
Put a temporary schema marker in the cache, to indicate that a schema for a given namespace is being processed. |
void |
displayLicenseMessage()
Display a message about the license status |
Receiver |
getAnnotationStripper(Receiver destination)
Add to a pipeline a receiver that strips all type annotations. |
SchemaDeclaration |
getAttributeDeclaration(int fingerprint)
Get a global attribute declaration |
Receiver |
getDocumentValidator(Receiver receiver,
java.lang.String systemId,
NamePool namePool,
int validationMode,
int stripSpace,
SchemaType schemaType)
Get a document-level validator to add to a Receiver pipeline |
SchemaDeclaration |
getElementDeclaration(int fingerprint)
Get a global element declaration |
Receiver |
getElementValidator(Receiver out,
int nameCode,
int locationId,
SchemaType schemaType,
int validation,
NamePool pool)
Get a Receiver that can be used to validate an element, and that passes the validated element on to a target receiver. |
javax.xml.transform.ErrorListener |
getErrorListener()
Get the ErrorListener to which errors are reported |
java.util.Set |
getImportedNamespaces()
Get the set of namespaces of imported schemas |
int[] |
getOccurrenceLimits()
Get the occurrence limits previously set using setOccurrenceLimits (or the default) |
Optimizer |
getOptimizer()
Factory method to get an Optimizer |
Receiver |
getOutputMethod(java.lang.String clarkName)
Get a configuration-defined output method. |
java.lang.String |
getProductTitle()
Get a message used to identify this product when a transformation is run using the -t option |
java.lang.Object |
getSchema(java.lang.String namespace)
Get a schema from the cache. |
SchemaType |
getSchemaType(int fingerprint)
Get the top-level schema type with a given fingerprint. |
SchemaURIResolver |
getSchemaURIResolver()
Get the user-defined SchemaURIResolver for resolving URIs used in "import schema" declarations; if none has been explicitly set, returns the standard schema URI resolver. |
PreparedSchema |
getSuperSchema()
Get the SuperSchema, containing references to all names defined in all known schemas |
VendorFunctionLibrary |
getVendorFunctionLibrary()
Get the FunctionLibrary used to bind calls on Saxon-defined extension functions |
boolean |
isSchemaAware(int language)
Determine if the configuration is schema-aware |
boolean |
isSealedNamespace(java.lang.String namespace)
Test whether a schema namespace is sealed. |
NodeTest |
makeSubstitutionGroupTest(SchemaDeclaration elementDecl)
Make a test for elements corresponding to a given element declaration |
java.lang.String |
readInlineSchema(NodeInfo root,
java.lang.String expected)
Read an inline schema from a stylesheet |
void |
readMultipleSchemas(PipelineConfiguration pipe,
java.lang.String baseURI,
java.util.List schemaLocations,
java.lang.String expected)
Read schemas from a list of schema locations |
java.lang.String |
readSchema(PipelineConfiguration pipe,
java.lang.String baseURI,
java.lang.String schemaLocation,
java.lang.String expected)
Read a schema from a given schema location |
void |
removeSchema(java.lang.String namespace)
Remove the schema for a given namespace. |
javax.xml.transform.Source |
resolveSource(javax.xml.transform.Source source,
Configuration config)
Implement the SourceResolver interface |
void |
sealNamespace(java.lang.String namespace)
Mark a schema namespace as being sealed. |
void |
setOccurrenceLimits(int minimum,
int maximum)
Set the occurrence limits to be used when compiling a finite state automaton. |
void |
setPlatform(Platform platform)
Set the Platform to be used for platform-dependent methods |
void |
supplyLicenseKey(java.io.BufferedReader reader)
This method allows the contents of a license key to be supplied programmatically. |
int |
validateAttribute(int nameCode,
java.lang.CharSequence value,
int validation)
Validate an attribute value (XSLT only) |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
public SchemaAwareConfiguration()
Method Detail |
public void setPlatform(Platform platform)
setPlatform
in class Configuration
platform
- the platform to be usedpublic void supplyLicenseKey(java.io.BufferedReader reader)
reader
- A reader that will be used to read the contents of the license file
(for example, a StringReader)
java.lang.IllegalArgumentException
- if the key supplied is not a valid OEM license keypublic java.lang.String getProductTitle()
getProductTitle
in class Configuration
public final boolean isSchemaAware(int language)
isSchemaAware
in class Configuration
language
- public void displayLicenseMessage()
displayLicenseMessage
in class Configuration
public javax.xml.transform.ErrorListener getErrorListener()
getErrorListener
in class Configuration
public void setOccurrenceLimits(int minimum, int maximum)
minimum
- The highest value of minOccurs that will be strictly enforced. If the actual
value of minOccurs in a schema is higher than this value, it will be treated as if this value
had been specified. The default is 100.maximum
- The highest value of maxOccurs that will be strictly enforced. If the actual
value of maxOccurs in a schema is higher than this value, it will be treated as if "unbounded"
had been specified. The default is 250.public int[] getOccurrenceLimits()
public SchemaURIResolver getSchemaURIResolver()
getSchemaURIResolver
in class Configuration
public java.lang.String readSchema(PipelineConfiguration pipe, java.lang.String baseURI, java.lang.String schemaLocation, java.lang.String expected) throws SchemaException
readSchema
in class Configuration
pipe
- baseURI
- the base URI for resolving relative URIsschemaLocation
- the location "hint" where to find the schema document. Must not be null.expected
- the target namespace expected; null if there is no
expectation
SchemaException
public void readMultipleSchemas(PipelineConfiguration pipe, java.lang.String baseURI, java.util.List schemaLocations, java.lang.String expected) throws SchemaException
readMultipleSchemas
in class Configuration
pipe
- baseURI
- the base URI for resolving relative URIsschemaLocations
- the list of location "hints" where to find the schema document. Must not be null.expected
- the target namespace expected; null if there is no
expectation
SchemaException
public java.lang.String readInlineSchema(NodeInfo root, java.lang.String expected) throws SchemaException
readInlineSchema
in class Configuration
root
- the xs:schema element in the stylesheetexpected
- the target namespace expected; null if there is no
expectation
SchemaException
public void addSchemaSource(javax.xml.transform.Source schemaSource) throws SchemaException
addSchemaSource
in class Configuration
schemaSource
- the JAXP Source object identifying the schema document to be loaded
SchemaException
- if the schema cannot be read or parsed or if it is invalidpublic void addSchema(java.lang.Object schema) throws SchemaException
addSchema
in class Configuration
schema
- This must be a SchemaReference (it is defined as an Object because a dummy
version of the method exists in Saxon-B).
SchemaException
public void addSurrogateSchema(java.lang.String namespace)
public java.lang.Object getSchema(java.lang.String namespace)
getSchema
in class Configuration
public void removeSchema(java.lang.String namespace)
public java.util.Set getImportedNamespaces()
getImportedNamespaces
in class Configuration
public PreparedSchema getSuperSchema()
public void sealNamespace(java.lang.String namespace)
sealNamespace
in class Configuration
namespace
- the namespace URI of the components to be sealedpublic boolean isSealedNamespace(java.lang.String namespace)
isSealedNamespace
in class Configuration
namespace
- the namespace URI of the components to be tested
public SchemaDeclaration getElementDeclaration(int fingerprint)
getElementDeclaration
in class Configuration
public SchemaDeclaration getAttributeDeclaration(int fingerprint)
getAttributeDeclaration
in class Configuration
public SchemaType getSchemaType(int fingerprint)
getSchemaType
in class Configuration
fingerprint
- the fingerprint of the schema type
public Receiver getDocumentValidator(Receiver receiver, java.lang.String systemId, NamePool namePool, int validationMode, int stripSpace, SchemaType schemaType)
getDocumentValidator
in class Configuration
receiver
- The receiver to which events should be sent after validationsystemId
- the base URI of the document being validatednamePool
- the namePool to be used by the validatorvalidationMode
- for example Validation.STRICT or Validation.STRIP. The integer may
also have the bit Validation.VALIDATE_OUTPUT set, indicating that the strean being validated
is to be treated as a final output stream (which means multiple errors can be reported)stripSpace
- schemaType
- The type against which the outermost element of the document must be validated
(null if there is no constraint)
public Receiver getElementValidator(Receiver out, int nameCode, int locationId, SchemaType schemaType, int validation, NamePool pool) throws XPathException
getElementValidator
in class Configuration
out
- the target receiver to receive the validated elementnameCode
- the nameCode of the element to be validated. This must correspond to the
name of an element declaration in a loaded schemaschemaType
- the schema type (typically a complex type) against which the element is to
be validatedvalidation
- The validation mode, for example Validation.STRICT or Validation.LAXpool
- The name pool
XPathException
public int validateAttribute(int nameCode, java.lang.CharSequence value, int validation) throws ValidationException
validateAttribute
in class Configuration
nameCode
- the name of the attributevalue
- the value of the attribute as a stringvalidation
- STRICT or LAX
ValidationException
- if the value is invalidpublic Receiver getAnnotationStripper(Receiver destination)
getAnnotationStripper
in class Configuration
public NodeTest makeSubstitutionGroupTest(SchemaDeclaration elementDecl)
makeSubstitutionGroupTest
in class Configuration
public VendorFunctionLibrary getVendorFunctionLibrary()
getVendorFunctionLibrary
in class Configuration
public Optimizer getOptimizer()
getOptimizer
in class Configuration
public javax.xml.transform.Source resolveSource(javax.xml.transform.Source source, Configuration config) throws XPathException
resolveSource
in interface SourceResolver
resolveSource
in class Configuration
XPathException
public Receiver getOutputMethod(java.lang.String clarkName)
getOutputMethod
in class Configuration
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |