net.sf.saxon.sort

Interface CollationURIResolver

public interface CollationURIResolver extends Serializable

A CollationURIResolver accepts a collation name as input, and returns a collation (represented by a Comparator) as output. A CollationURIResolver can be registered with the Configuration (or with the TransformerFactory) to resolve all collation URIs used in a stylesheet or query.
Method Summary
Comparatorresolve(String relativeURI, String baseURI, Configuration config)
Resolve a collation URI (expressed as a string) and return the corresponding collation.

Method Detail

resolve

public Comparator resolve(String relativeURI, String baseURI, Configuration config)
Resolve a collation URI (expressed as a string) and return the corresponding collation.

Parameters: relativeURI the collation URI as written in the query or stylesheet baseURI The base URI of the static context where the collation URI appears. The base URI is available only in cases where the collation URI is resolved at compile time; in cases where the collation URI is not resolved until execution time (typically because it is supplied as an expression rather than as a string literal) this parameter is currently set to null. config The configuration. Provided in case the collation URI resolver needs it.

Returns: a Comparator, representing the collation to be used. Note that although any Comparator may be returned, functions such as contains() that need to break a string into its collation units will work only if the returned Comparator is a java.text.Collator. If the Collation URI cannot be resolved, return null. Note that unlike the JAXP URIResolver, returning null does not cause the default CollationURIResolver to be invoked; if this is required, the user-written CollationURIResolver should explicitly instantiate and invoke the StandardCollationURIResolver before returning null.

Since: 8.5 (this interface is new in Saxon 8.5 and may be revised in the light of experience)