public class ExpressionContext extends Object implements XSLTStaticContext
Constructor and Description |
---|
ExpressionContext(StyleElement styleElement)
Create a static context for XPath expressions in an XSLT stylesheet
|
Modifier and Type | Method and Description |
---|---|
Expression |
bindVariable(StructuredQName qName)
Bind a variable to an object that can be used to refer to it
|
String |
getBaseURI()
Get the Base URI of the element containing the expression, for resolving any
relative URI's used in the expression.
|
StringCollator |
getCollation(String name)
Get a named collation.
|
Configuration |
getConfiguration()
Get the system configuration
|
DecimalFormatManager |
getDecimalFormatManager()
Get a DecimalFormatManager to resolve the names of decimal formats used in calls
to the format-number() function.
|
String |
getDefaultCollationName()
Get the default collation.
|
String |
getDefaultElementNamespace()
Get the default XPath namespace for elements and types
Return NamespaceConstant.NULL for the non-namespace
|
String |
getDefaultFunctionNamespace()
Get the default function namespace
|
Executable |
getExecutable()
Get the executable
|
int |
getFingerprint(String qname,
boolean useDefault)
Get a fingerprint for a name, using this as the context for namespace resolution
|
FunctionLibrary |
getFunctionLibrary()
Get the function library containing all the in-scope functions available in this static
context
|
Set<String> |
getImportedSchemaNamespaces()
Get the set of imported schemas
|
int |
getLineNumber()
Get the line number of the expression within its containing entity
Returns -1 if no line number is available
|
LocationMap |
getLocationMap()
Get the location map
|
NamePool |
getNamePool()
Get the NamePool used for compiling expressions
|
NamespaceResolver |
getNamespaceResolver()
Get a copy of the NamespaceResolver suitable for saving in the executable code
|
ItemType |
getRequiredContextItemType()
Get the required type of the context item.
|
StyleElement |
getStyleElement()
Get the stylesheet element containing this XPath expression
|
String |
getSystemId()
Get the System ID of the entity containing the expression (used for diagnostics)
|
String |
getURIForPrefix(String prefix)
Get the URI for a prefix, using this Element as the context for namespace resolution.
|
DecimalValue |
getXPathLanguageLevel()
Get the XPath language level supported, as a string.
|
boolean |
isAllowedBuiltInType(BuiltInAtomicType type)
Determine whether a built-in type is available in this context.
|
boolean |
isElementAvailable(String qname)
Determine if an extension element is available
|
boolean |
isImportedSchema(String namespace)
Test whether a schema has been imported for a given namespace
|
boolean |
isInBackwardsCompatibleMode()
Determine whether Backwards Compatible Mode is used
|
boolean |
isSchemaAware()
Ask whether expressions compiled under this static context are schema-aware.
|
void |
issueWarning(String s,
SourceLocator locator)
Issue a compile-time warning
|
XPathContext |
makeEarlyEvaluationContext()
Construct a dynamic context for early evaluation of constant subexpressions
|
public ExpressionContext(StyleElement styleElement)
styleElement
- the element on which the XPath expression appearspublic Configuration getConfiguration()
getConfiguration
in interface StaticContext
public Executable getExecutable()
public boolean isSchemaAware()
isSchemaAware
in interface StaticContext
public XPathContext makeEarlyEvaluationContext()
makeEarlyEvaluationContext
in interface StaticContext
public LocationMap getLocationMap()
getLocationMap
in interface StaticContext
public void issueWarning(String s, SourceLocator locator)
issueWarning
in interface StaticContext
s
- The warning message. This should not contain any prefix such as "Warning".locator
- the location of the construct in question. May be null.public NamePool getNamePool()
getNamePool
in interface StaticContext
public String getSystemId()
getSystemId
in interface StaticContext
public int getLineNumber()
getLineNumber
in interface StaticContext
public String getBaseURI()
getBaseURI
in interface StaticContext
public String getURIForPrefix(String prefix) throws XPathException
getURIForPrefix
in interface StaticContext
prefix
- The prefixXPathException
- if the prefix is not declaredpublic NamespaceResolver getNamespaceResolver()
getNamespaceResolver
in interface StaticContext
public ItemType getRequiredContextItemType()
getRequiredContextItemType
in interface StaticContext
public DecimalFormatManager getDecimalFormatManager()
getDecimalFormatManager
in interface StaticContext
public int getFingerprint(String qname, boolean useDefault) throws XPathException
qname
- The name as written, in the form "[prefix:]localname"useDefault
- Defines the action when there is no prefix. If true, use
the default namespace URI (as for element names). If false, use no namespace URI
(as for attribute names).XPathException
public Expression bindVariable(StructuredQName qName) throws XPathException
bindVariable
in interface StaticContext
qName
- the name of the variableXPathException
- if the variable has not been declaredpublic FunctionLibrary getFunctionLibrary()
getFunctionLibrary
in interface StaticContext
public boolean isElementAvailable(String qname) throws XPathException
isElementAvailable
in interface XSLTStaticContext
XPathException
- if the name is invalid or the prefix is not declaredpublic StringCollator getCollation(String name)
getCollation
in interface StaticContext
name
- The name of the required collation. Supply null to get the default collation.public String getDefaultCollationName()
getDefaultCollationName
in interface StaticContext
public String getDefaultElementNamespace()
getDefaultElementNamespace
in interface StaticContext
public String getDefaultFunctionNamespace()
getDefaultFunctionNamespace
in interface StaticContext
public boolean isInBackwardsCompatibleMode()
isInBackwardsCompatibleMode
in interface StaticContext
public DecimalValue getXPathLanguageLevel()
getXPathLanguageLevel
in interface StaticContext
DecimalValue.TWO
or DecimalValue.THREE
public boolean isImportedSchema(String namespace)
isImportedSchema
in interface StaticContext
namespace
- the target namespace of the required schemapublic Set<String> getImportedSchemaNamespaces()
getImportedSchemaNamespaces
in interface StaticContext
public boolean isAllowedBuiltInType(BuiltInAtomicType type)
isAllowedBuiltInType
in interface StaticContext
type
- the supposedly built-in type. This will always be a type in the
XS or XDT namespace.public StyleElement getStyleElement()
Copyright (c) 2004-2013 Saxonica Limited. All rights reserved.