Read XSLT 2.0 and XPath 2.0 Programmer's Reference, 4th Edition Online
Authors: Michael Kay
XPTY0020
In an axis step, the context item is not a node
When you use an expression such as
title
or
@code
or
..
or
ancestor::chap
, you are selecting nodes relative to the context node. If the context item is an atomic value, then these expressions can't be evaluated.
Note that even rooted path expressions (those starting with
/
) require a context node, because they always select nodes within the same document that contains the context node.
XSLT Errors (XT)
XTDE0030
The value of an attribute value template is invalid for that attribute
For example, with
$z
was “maybe.”
XTDE0040
When invoking a stylesheet by specifying an initial template, the name must match that of a named template in the stylesheet
XTDE0045
When invoking a stylesheet with an initial mode, the mode name must match the mode name of at least one
xsl:template
in the stylesheet
XTDE0047
When invoking a stylesheet, both an initial template and an initial mode were specified
An initial template means you want to start by calling a named template, so the initial mode wouldn't be used.
XTDE0050
When invoking a stylesheet, a value must be provided for every stylesheet parameter that specifies
required=“yes”
XTDE0060
When invoking a stylesheet by specifying an initial template, the initial template must not have any required parameters
Any parameters you supply when starting the transformation are matched against global stylesheet parameters, not against the local parameters of the first template to be executed. These local parameters, if any, will always take their default values.
XTDE0160
If the implementation does not support backward-compatible behavior, then instructions that invoke this behavior must not be evaluated
XSLT processors are not required to support 1.0 mode. If you request it by setting
version=“1.0”
, and then evaluate an instruction with this setting in scope, the processor must report a fatal error.
XTDE0290
Where the result of an XPath expression is required to be a lexical QName, the resulting name must have a prefix that is declared in the stylesheet
This applies for example to the first argument of the
key()
function, or the third argument of
format-number()
. For some situations there is a more specific error code.