Package com.icl.saxon.expr
Interface StaticContext
-
- All Known Implementing Classes:
ExpressionContext
,StandaloneContext
public interface StaticContext
A StaticContext contains the information needed while an expression or pattern is being parsed. The information is also sometimes needed at run-time.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description boolean
allowsKeyFunction()
Determine whether the key() function is permmitted in this contextBinding
bindVariable(int fingerprint)
Bind a variable to an object that can be used to refer to itboolean
forwardsCompatibleModeIsEnabled()
Determine whether forwards-compatible mode is enabledjava.lang.String
getBaseURI()
Get the Base URI of the stylesheet element, for resolving any relative URI's used in the expression.java.lang.Class
getExternalJavaClass(java.lang.String uri)
Get an external Java class corresponding to a given namespace prefix, if there is one.int
getFingerprint(java.lang.String qname, boolean useDefault)
Get a fingerprint for a name, using this as the context for namespace resolutionint
getLineNumber()
Get the line number of the expression within its containing entity Returns -1 if no line number is availableFunction
getStyleSheetFunction(int fingerprint)
java.lang.String
getSystemId()
Get the System ID of the container of the expression.java.lang.String
getURIForPrefix(java.lang.String prefix)
Get the URI for a prefix, using this Element as the context for namespace resolutionjava.lang.String
getVersion()
Get the effective XSLT version in this region of the stylesheetboolean
isElementAvailable(java.lang.String qname)
Determine if an extension element is availableboolean
isExtensionNamespace(short uriCode)
Determine whether a given URI code identifies an extension element namespaceboolean
isFunctionAvailable(java.lang.String qname)
Determine if a function is availableint
makeNameCode(java.lang.String qname, boolean useDefault)
Make a NameCode, using this Element as the context for namespace resolutionNamespaceTest
makeNamespaceTest(short nodeType, java.lang.String prefix)
Make a NamespaceTest, using this element as the context for namespace resolutionNameTest
makeNameTest(short nodeType, java.lang.String qname, boolean useDefault)
Make a NameTest, using this element as the context for namespace resolutionStaticContext
makeRuntimeContext(NamePool pool)
Copy the context with a different namepool
-
-
-
Method Detail
-
makeRuntimeContext
StaticContext makeRuntimeContext(NamePool pool)
Copy the context with a different namepool
-
getSystemId
java.lang.String getSystemId()
Get the System ID of the container of the expression. This is the containing entity (file) and is therefore useful for diagnostics. Use getBaseURI() to get the base URI, which may be different.
-
getLineNumber
int getLineNumber()
Get the line number of the expression within its containing entity Returns -1 if no line number is available
-
getBaseURI
java.lang.String getBaseURI()
Get the Base URI of the stylesheet element, for resolving any relative URI's used in the expression. Used by the document() function.
-
getURIForPrefix
java.lang.String getURIForPrefix(java.lang.String prefix) throws XPathException
Get the URI for a prefix, using this Element as the context for namespace resolution- Parameters:
prefix
- The prefix- Throws:
XPathException
-
makeNameCode
int makeNameCode(java.lang.String qname, boolean useDefault) throws XPathException
Make a NameCode, using this Element as the context for namespace resolution- Parameters:
qname
- The name as written, in the form "[prefix:]localname"- Throws:
XPathException
-
getFingerprint
int getFingerprint(java.lang.String qname, boolean useDefault) throws XPathException
Get a fingerprint for a name, using this as the context for namespace resolution- Parameters:
qname
- The name as written, in the form "[prefix:]localname"- Returns:
- -1 if the name is not already present in the name pool
- Throws:
XPathException
-
makeNameTest
NameTest makeNameTest(short nodeType, java.lang.String qname, boolean useDefault) throws XPathException
Make a NameTest, using this element as the context for namespace resolution- Throws:
XPathException
-
makeNamespaceTest
NamespaceTest makeNamespaceTest(short nodeType, java.lang.String prefix) throws XPathException
Make a NamespaceTest, using this element as the context for namespace resolution- Throws:
XPathException
-
bindVariable
Binding bindVariable(int fingerprint) throws XPathException
Bind a variable to an object that can be used to refer to it- Parameters:
fingerprint
- The fingerprint of the variable name- Returns:
- a Binding object that can be used to identify it in the Bindery
- Throws:
XPathException
- if the variable has not been declared, or if the context does not allow the use of variables
-
isExtensionNamespace
boolean isExtensionNamespace(short uriCode) throws XPathException
Determine whether a given URI code identifies an extension element namespace- Throws:
XPathException
-
forwardsCompatibleModeIsEnabled
boolean forwardsCompatibleModeIsEnabled() throws XPathException
Determine whether forwards-compatible mode is enabled- Throws:
XPathException
-
getStyleSheetFunction
Function getStyleSheetFunction(int fingerprint) throws XPathException
- Throws:
XPathException
-
getExternalJavaClass
java.lang.Class getExternalJavaClass(java.lang.String uri) throws javax.xml.transform.TransformerException
Get an external Java class corresponding to a given namespace prefix, if there is one.- Parameters:
uri
- The namespace URI corresponding to the prefix used in the function call.- Returns:
- the Java class if a suitable class exists, otherwise return null.
- Throws:
javax.xml.transform.TransformerException
- if the class is found, but cannot be loaded.
-
isElementAvailable
boolean isElementAvailable(java.lang.String qname) throws XPathException
Determine if an extension element is available- Throws:
XPathException
-
isFunctionAvailable
boolean isFunctionAvailable(java.lang.String qname) throws XPathException
Determine if a function is available- Throws:
XPathException
-
allowsKeyFunction
boolean allowsKeyFunction()
Determine whether the key() function is permmitted in this context
-
getVersion
java.lang.String getVersion()
Get the effective XSLT version in this region of the stylesheet
-
-