net.sf.saxon.trace

Class Location

public class Location extends Object

This class holds constants identifying different kinds of location in a source stylesheet or query. These constants are used in the getConstructType() method of class InstructionInfo. Some of these locations represent points where the dynamic context changes, and they are therefore recorded as such on the context stack. Some of the locations represent points in the evaluation of a stylesheet (or query or XPath expression) that are notified to the trace listener. Some fulfil both roles.

Any constant used in StandardNames can be used as a Location. Such names are generally used to identify XSLT instructions. They are also used for equivalent constructs in XQuery, for example XSL_ELEMENT is used for a computed element constructor in XQuery. The constants in StandardNames are all in the range 0-1023, so constants defined in this class are outside this range.

The constants in this file are annotated with Q to indicate they can appear in XQuery trace output, T to indicate they can appear in XSLT trace output, and/or C to indicate that they can appear on the dynamic context stack.

Field Summary
static intBUILT_IN_TEMPLATE
An XSLT built-in template rule.
static intCASE_EXPRESSION
CASE clause within "typeswitch".
static intCONTROLLER
The outer system environment, identified as the caller of a user query or stylesheet.
static intDEFAULT_EXPRESSION
DEFAULT clause within "typeswitch".
static intELSE_EXPRESSION
An XPath or XQuery "else" clause.
static intEXTENSION_INSTRUCTION
An XSLT instruction.
static intFILTER_EXPRESSION
An XPath or XQuery filter expression.
static intFOR_EXPRESSION
An XPath or XQuery "for" clause.
static intFUNCTION
A function declaration in XSLT or XQuery
static intFUNCTION_CALL
An XPath function call to a user-defined function.
static intGROUPING_KEY
A grouping key in XSLT.
static intIF_EXPRESSION
An XPath or XQuery "if" expression.
static intLAZY_EVALUATION
Lazy evaluation of an expression (this code is used to identify a context created as a saved copy of an existing context, to be stored in a Closure).
static intLET_EXPRESSION
An XQuery "let" clause, or an XSLT local variable (which compiles into a LET clause).
static intLITERAL_RESULT_ATTRIBUTE
An attribute of an XSLT literal result element or of an XQuery direct element constructor.
static intLITERAL_RESULT_ELEMENT
An XSLT literal result element, or an XQuery direct element constructor.
static intORDER_BY_CLAUSE
An order-by clause in a FLWOR expression.
static intPATH_EXPRESSION
An XPath or XQuery path expression.
static intPATTERN
An XSLT Pattern.
static intRETURN_EXPRESSION
An XPath or XQuery "return" clause.
static intSAXON_EVALUATE
An XPath expression constructed dynamically using saxon:evaluate (or saxon:expression).
static intSAXON_HIGHER_ORDER_EXTENSION_FUNCTION
A higher-order extension function such as saxon:sum, saxon:highest.
static intSAXON_SERIALIZE
The saxon:serialize() extension function.
static intSORT_KEY
A sort key (or order-by key).
static intTEMPLATE
An XSLT user-written template rule or named template.
static intTHEN_EXPRESSION
An XPath or XQuery "then" clause.
static intTRACE_CALL
An explicit call of the fn:trace() function.
static intTYPESWITCH_EXPRESSION
An XPath or XQuery "typeswitch" expression.
static intUNCLASSIFIED
Unclassified location.
static intVALIDATE_EXPRESSION
An XPath or XQuery "validate" expression.
static intWHERE_CLAUSE
A WHERE clause in a FLWOR expression.
static intXPATH_EXPRESSION
XPath expression, otherwise unclassified.
static intXPATH_IN_XSLT
Entry point to a top-level XPath expression within an XSLT stylesheet.

Field Detail

BUILT_IN_TEMPLATE

public static final int BUILT_IN_TEMPLATE
An XSLT built-in template rule. Usage: TC

CASE_EXPRESSION

public static final int CASE_EXPRESSION
CASE clause within "typeswitch". Usage: Q

CONTROLLER

public static final int CONTROLLER
The outer system environment, identified as the caller of a user query or stylesheet. Usage:C

DEFAULT_EXPRESSION

public static final int DEFAULT_EXPRESSION
DEFAULT clause within "typeswitch". Usage: Q

ELSE_EXPRESSION

public static final int ELSE_EXPRESSION
An XPath or XQuery "else" clause. Usage: Q

EXTENSION_INSTRUCTION

public static final int EXTENSION_INSTRUCTION
An XSLT instruction. The name of the instruction (which may be an extension instruction) can be obtained using the fingerprint property. Usage:T

FILTER_EXPRESSION

public static final int FILTER_EXPRESSION
An XPath or XQuery filter expression. Usage: C

FOR_EXPRESSION

public static final int FOR_EXPRESSION
An XPath or XQuery "for" clause. Usage: Q

FUNCTION

public static final int FUNCTION
A function declaration in XSLT or XQuery

FUNCTION_CALL

public static final int FUNCTION_CALL
An XPath function call to a user-defined function. The "expression" property references the actual expression, of class ComputedExpression. The "target" property references the function being called, of class UserFunction. Usage: QTC

GROUPING_KEY

public static final int GROUPING_KEY
A grouping key in XSLT. Usage: C

IF_EXPRESSION

public static final int IF_EXPRESSION
An XPath or XQuery "if" expression. Usage: Q

LAZY_EVALUATION

public static final int LAZY_EVALUATION
Lazy evaluation of an expression (this code is used to identify a context created as a saved copy of an existing context, to be stored in a Closure). Usage: C

LET_EXPRESSION

public static final int LET_EXPRESSION
An XQuery "let" clause, or an XSLT local variable (which compiles into a LET clause). Usage: Q,T

LITERAL_RESULT_ATTRIBUTE

public static final int LITERAL_RESULT_ATTRIBUTE
An attribute of an XSLT literal result element or of an XQuery direct element constructor. Usage: QT

LITERAL_RESULT_ELEMENT

public static final int LITERAL_RESULT_ELEMENT
An XSLT literal result element, or an XQuery direct element constructor. Usage:QT

ORDER_BY_CLAUSE

public static final int ORDER_BY_CLAUSE
An order-by clause in a FLWOR expression. Usage: Q

PATH_EXPRESSION

public static final int PATH_EXPRESSION
An XPath or XQuery path expression. Usage: C

PATTERN

public static final int PATTERN
An XSLT Pattern. Usage: C

RETURN_EXPRESSION

public static final int RETURN_EXPRESSION
An XPath or XQuery "return" clause. Usage: Q

SAXON_EVALUATE

public static final int SAXON_EVALUATE
An XPath expression constructed dynamically using saxon:evaluate (or saxon:expression). Usage: QTC

SAXON_HIGHER_ORDER_EXTENSION_FUNCTION

public static final int SAXON_HIGHER_ORDER_EXTENSION_FUNCTION
A higher-order extension function such as saxon:sum, saxon:highest. Usage: C

SAXON_SERIALIZE

public static final int SAXON_SERIALIZE
The saxon:serialize() extension function. Usage: C

SORT_KEY

public static final int SORT_KEY
A sort key (or order-by key). Usage: C

TEMPLATE

public static final int TEMPLATE
An XSLT user-written template rule or named template. Usage: TC

THEN_EXPRESSION

public static final int THEN_EXPRESSION
An XPath or XQuery "then" clause. Usage: Q

TRACE_CALL

public static final int TRACE_CALL
An explicit call of the fn:trace() function. Usage: QT

TYPESWITCH_EXPRESSION

public static final int TYPESWITCH_EXPRESSION
An XPath or XQuery "typeswitch" expression. Usage: Q

UNCLASSIFIED

public static final int UNCLASSIFIED
Unclassified location. Used in fallback cases only.

VALIDATE_EXPRESSION

public static final int VALIDATE_EXPRESSION
An XPath or XQuery "validate" expression. Usage: Q

WHERE_CLAUSE

public static final int WHERE_CLAUSE
A WHERE clause in a FLWOR expression. Usage: Q

XPATH_EXPRESSION

public static final int XPATH_EXPRESSION
XPath expression, otherwise unclassified. The "expression" property references the actual expression, of class ComputedExpression. Used in fallback cases only.

XPATH_IN_XSLT

public static final int XPATH_IN_XSLT
Entry point to a top-level XPath expression within an XSLT stylesheet. Usage: TC