Package net.sf.saxon.sxpath
Class XPathDynamicContext
- java.lang.Object
- 
- net.sf.saxon.sxpath.XPathDynamicContext
 
- 
 public class XPathDynamicContext extends java.lang.ObjectThis object represents the dynamic XPath execution context for use in the free-standing Saxon XPath API. The dynamic context holds the context item and the values of external variables used by the XPath expression.This object is always created via the method XPathExpression.createDynamicContext(net.sf.saxon.om.Item)
- 
- 
Constructor SummaryConstructors Modifier Constructor Description protectedXPathDynamicContext(ItemType contextItemType, XPathContextMajor contextObject, SlotManager stackFrameMap)
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidcheckExternalVariables(SlotManager stackFrameMap, int numberOfExternals)Check that all external variables have been given a valueCollectionFindergetCollectionFinder()Get the collection finder associated with this configuration.ItemgetContextItem()Get the context itemErrorReportergetErrorReporter()Get the error listener.UnparsedTextURIResolvergetUnparsedTextURIResolver()Get the URI resolver for unparsed text.javax.xml.transform.URIResolvergetURIResolver()Get the URI resolver.XPathContextgetXPathContextObject()For system use: get the wrapped XPathContext objectvoidsetCollectionFinder(CollectionFinder cf)Set the collection finder associated with this configuration.voidsetContextItem(Item item)Set the context item for evaluation of the XPath ExpressionvoidsetErrorReporter(ErrorReporter listener)Set the error listener.voidsetUnparsedTextURIResolver(UnparsedTextURIResolver resolver)Set an object that will be used to resolve URIs used in fn:unparsed-text() and related functions.voidsetURIResolver(javax.xml.transform.URIResolver resolver)Set an object that will be used to resolve URIs used in document(), etc.voidsetVariable(XPathVariable variable, Sequence value)Set the value of an external variable used within the XPath expression
 
- 
- 
- 
Constructor Detail- 
XPathDynamicContextprotected XPathDynamicContext(ItemType contextItemType, XPathContextMajor contextObject, SlotManager stackFrameMap) 
 
- 
 - 
Method Detail- 
setContextItempublic void setContextItem(Item item) throws XPathException Set the context item for evaluation of the XPath Expression- Parameters:
- item- the context item
- Throws:
- XPathException- if the node is in a document that was built under the wrong configuration
 
 - 
getContextItempublic Item getContextItem() Get the context item- Returns:
- the context item if there is one, or null otherwise
 
 - 
setVariablepublic void setVariable(XPathVariable variable, Sequence value) throws XPathException Set the value of an external variable used within the XPath expression- Parameters:
- variable- the object representing the variable. Note that setting the value of a variable does not modify the- XPathVariableobject itself, which means that this method is thread-safe.
- value- The value of the variable.
- Throws:
- XPathException- if the supplied value does not conform to the required type of the variable; or if the supplied value contains a node that does not belong to this Configuration (or another Configuration that shares the same namePool)
 
 - 
setURIResolverpublic void setURIResolver(javax.xml.transform.URIResolver resolver) Set an object that will be used to resolve URIs used in document(), etc. The URIResolver is set locally to this XPathContext object.- Parameters:
- resolver- An object that implements the URIResolver interface, or null.
- Since:
- 9.2. Changed in 9.6 to set the URIResolver locally.
 
 - 
getURIResolverpublic javax.xml.transform.URIResolver getURIResolver() Get the URI resolver.- Returns:
- the user-supplied URI resolver if there is one, or null otherwise. If no URIResolver has been set locally, the URIResolver in the Controller is returned; this in turn defaults to the URIResolver set in the Configuration.
- Since:
- 9.2. Changed in 9.6 to use a local URIResolver.
 
 - 
getCollectionFinderpublic CollectionFinder getCollectionFinder() Get the collection finder associated with this configuration. This is used to dereference collection URIs used in the fn:collection and fn:uri-collection functions- Returns:
- the CollectionFinder to be used
- Since:
- 9.7
 
 - 
setCollectionFinderpublic void setCollectionFinder(CollectionFinder cf) Set the collection finder associated with this configuration. This is used to dereference collection URIs used in the fn:collection and fn:uri-collection functions- Parameters:
- cf- the CollectionFinder to be used
- Since:
- 9.7
 
 - 
setErrorReporterpublic void setErrorReporter(ErrorReporter listener) Set the error listener. The ErrorListener is set locally to this XPathContext object.- Parameters:
- listener- the ErrorListener to be used
- Since:
- 9.2. Changed in 9.6 to set the ErrorListener locally. Changed in 10.0 to use an ErrorReporter rather than an ErrorListener
 
 - 
getErrorReporterpublic ErrorReporter getErrorReporter() Get the error listener. If no ErrorListener has been set locally, the ErrorListener in the Controller is returned; this in turn defaults to the ErrorListener set in the Configuration.- Returns:
- the ErrorListener in use. This will always be an UnfailingErrorListener, which is a Saxon subclass of ErrorListener that throws no exceptions.
- Since:
- 9.2. Changed in 9.6 to use a local ErrorListener. Changed in 10.0 to use an ErrorReporter rather than an ErrorListener
 
 - 
getXPathContextObjectpublic XPathContext getXPathContextObject() For system use: get the wrapped XPathContext object- Returns:
- the underlying XPathContext object
 
 - 
setUnparsedTextURIResolverpublic void setUnparsedTextURIResolver(UnparsedTextURIResolver resolver) Set an object that will be used to resolve URIs used in fn:unparsed-text() and related functions.- Parameters:
- resolver- An object that implements the UnparsedTextURIResolver interface, or null.
- Since:
- 9.5
 
 - 
getUnparsedTextURIResolverpublic UnparsedTextURIResolver getUnparsedTextURIResolver() Get the URI resolver for unparsed text.- Returns:
- the user-supplied unparsed text URI resolver if there is one, or the system-defined one otherwise
- Since:
- 9.5
 
 - 
checkExternalVariablesprotected void checkExternalVariables(SlotManager stackFrameMap, int numberOfExternals) throws XPathException Check that all external variables have been given a value- Parameters:
- stackFrameMap- describes the stack frame
- numberOfExternals- the number of variables that need to be supplied
- Throws:
- XPathException- if required variables have not been given a value
 
 
- 
 
-