public interface XPathContext
Modifier and Type | Method and Description |
---|---|
void |
changeOutputDestination(Receiver receiver,
ParseOptions options)
Set a new output destination, supplying the output format details.
|
Sequence |
evaluateLocalVariable(int slotnumber)
Get the value of a local variable, identified by its slot number
|
XPathContext |
getCaller()
Get the calling XPathContext (the next one down the stack).
|
StringCollator |
getCollation(String name)
Get a named collation.
|
Configuration |
getConfiguration()
Get the Configuration
|
Item |
getContextItem()
Get the context item
|
Controller |
getController()
Get the Controller.
|
DateTimeValue |
getCurrentDateTime()
Get the current date and time
|
XPathException |
getCurrentException()
Get the current exception (in saxon:catch)
|
GroupIterator |
getCurrentGroupIterator()
Get the current group iterator.
|
SequenceIterator |
getCurrentIterator()
Get the current iterator.
|
Mode |
getCurrentMode()
Get the current mode.
|
RegexIterator |
getCurrentRegexIterator()
Get the current regex iterator.
|
Rule |
getCurrentTemplateRule()
Get the current template rule.
|
int |
getImplicitTimezone()
Get the implicit timezone
|
int |
getLast()
Get the context size (the position of the last item in the current node list)
|
ParameterSet |
getLocalParameters()
Get the local (non-tunnel) parameters that were passed to the current function or template
|
NamePool |
getNamePool()
Get the Name Pool
|
SequenceReceiver |
getReceiver()
Get the Receiver to which output is currently being written.
|
StackFrame |
getStackFrame()
Get a reference to the local stack frame for variables.
|
ParameterSet |
getTunnelParameters()
Get the tunnel parameters that were passed to the current function or template.
|
boolean |
isAtLast()
Determine whether the context position is the same as the context size
that is, whether position()=last().
|
boolean |
isTemporaryOutputState()
Ask whether the XSLT output state is "temporary" or "final"
|
Iterator |
iterateStackFrames()
Get the context stack.
|
XPathContextMajor |
newCleanContext()
Construct a new context without copying (used for the context in a function call)
|
XPathContextMajor |
newContext()
Construct a new context as a copy of another.
|
XPathContextMinor |
newMinorContext()
Construct a new minor context.
|
void |
notifyChildThreads() |
void |
setCaller(XPathContext caller)
Set the calling XPathContext
|
void |
setCurrentIterator(SequenceIterator iter)
Set a new sequence iterator.
|
void |
setLocalVariable(int slotnumber,
Sequence value)
Set the value of a local variable, identified by its slot number
|
void |
setReceiver(SequenceReceiver receiver)
Change the SequenceReceiver to which output is written
|
int |
useLocalParameter(int parameterId,
int slotNumber,
boolean isTunnel)
Use local parameter.
|
XPathContextMajor newContext()
XPathContextMajor newCleanContext()
XPathContextMinor newMinorContext()
ParameterSet getLocalParameters()
ParameterSet getTunnelParameters()
Controller getController()
Configuration getConfiguration()
NamePool getNamePool()
void setCaller(XPathContext caller)
caller
- the XPathContext of the calling expressionXPathContext getCaller()
void setCurrentIterator(SequenceIterator iter)
iter
- the current iterator. The context item, position, and size are determined by reference
to the current iterator.SequenceIterator getCurrentIterator()
Item getContextItem()
int getLast() throws XPathException
XPathException
- if the context position is undefinedboolean isAtLast() throws XPathException
XPathException
StringCollator getCollation(String name) throws XPathException
Note: although collations are defined in the specification as being part of the static context, Saxon assumes that all available collations have global scope for a transformation or query, so that a collation URI can be translated into an actual collation without knowing where in the source code the collation URI was used. The default collation, however, can vary in different parts of a query or stylesheet, and expressions using the default collation must therefore get it from the static context.
name
- the name (URI) of the required collationXPathException
- if the collation is not recognizedint useLocalParameter(int parameterId, int slotNumber, boolean isTunnel) throws XPathException
parameterId
- Globally-unique parameter identifierslotNumber
- Slot number of the parameter within the stack frame of the called templateisTunnel
- True if a tunnel parameter is required, else falseXPathException
StackFrame getStackFrame()
Sequence evaluateLocalVariable(int slotnumber)
slotnumber
- the slot number allocated at compile time to the variable,
which identifies its position within the local stack framevoid setLocalVariable(int slotnumber, Sequence value)
slotnumber
- the slot number allocated at compile time to the variable,
which identifies its position within the local stack framevalue
- the value of the variablevoid changeOutputDestination(Receiver receiver, ParseOptions options) throws XPathException
receiver
- the new output destinationoptions
- options for schema-validation of the output stream. May be null
if validation is not required (i.e. Validation.PRESERVE)XPathException
- if any dynamic error occurs; and
specifically, if an attempt is made to switch to a final output
destination while writing a temporary tree or sequenceboolean isTemporaryOutputState()
void setReceiver(SequenceReceiver receiver)
receiver
- the SequenceReceiver to be usedSequenceReceiver getReceiver()
Mode getCurrentMode()
Rule getCurrentTemplateRule()
GroupIterator getCurrentGroupIterator()
RegexIterator getCurrentRegexIterator()
DateTimeValue getCurrentDateTime() throws NoDynamicContextException
NoDynamicContextException
int getImplicitTimezone() throws NoDynamicContextException
NoDynamicContextException
Iterator iterateStackFrames()
ContextStackFrame
, starting with the top-most stackframe and
ending at the point the query or transformation was invoked by a calling application.XPathException getCurrentException()
void notifyChildThreads() throws XPathException
XPathException
Copyright (c) 2004-2013 Saxonica Limited. All rights reserved.