XSLT 2.0 and XPath 2.0 Programmer's Reference, 4th Edition (767 page)

BOOK: XSLT 2.0 and XPath 2.0 Programmer's Reference, 4th Edition
11.08Mb size Format: txt, pdf, ePub

XPST0008

An expression refers to an element name, attribute name, schema type name, namespace prefix, or variable name that is not defined in the static context

This means that you haven't declared the object that is referenced in the expression. This might be because you misspelled the name, or it might be because you got the namespace prefix wrong—if the name has a prefix, check that it refers to the correct namespace URI, and if it doesn't, check what the default namespace for that kind of name is.

XPST0010

An expression refers to an axis that the implementation does not support

Under XSLT this can only be the namespace axis; processors are not required to support this axis.

XPST0017

The expanded QName and number of arguments in a function call do not match the name and arity of a function signature in the static context

This error either means that the function you are calling has not been declared, or that you are calling it with the wrong number of arguments. Check the namespace.

XPST0021

It is a dynamic error if a value in a cast expression cannot be cast to the required type

Not all casts are allowed. For example, you cannot cast from an integer to a date. This error message means that you have attempted one of these disallowed casts. The casts that are allowed are described in Chapter 9 of this book.

XPST0051

A QName used as an AtomicType in a SequenceType is not defined in the in-scope schema types as an atomic type

This means you have used an expression such as
$x instance of mf:invoice
where the type
mf:invoice
is either not defined at all or is a complex type, a list type, or a union type.

Perhaps you meant to write
$x instance of element(*, mf:invoice)
.

XPST0080

The target type of a cast or castable expression is
xs:NOTATION
or
xs:anyAtomicType

This is subtly different from XPST0051 because these two types are atomic. But they are abstract, so you cannot cast to them.

XPST0081

A QName used in an expression contains a namespace prefix that cannot be expanded into a namespace URI using the statically known namespaces

In other words, you have used a namespace prefix without first declaring it.

XPTY0004

The value of an expression has a type that is not appropriate for the context in which the expression occurs

A common error code. It will occur, for example, if you write
abs(“a”)
, because the argument to
abs()
must be a number. Like other type errors, this may be detected either at compile time or at runtime.

XPTY0018

The last step in a path expression contains both nodes and atomic values

Any expression on the right-hand side of
/
must return either nodes or atomic values, not a mixture.

XPTY0019

A step (other than the last step) in a path expression contains an atomic value

Any expression on the left-hand side of
/
must return nodes, not atomic values.

Other books

A Woman of Courage by J.H. Fletcher
What Never Happens by Anne Holt
Greetings from Sugartown by Carmen Jenner
The Pershore Poisoners by Kerry Tombs
Razor Wire Pubic Hair by Carlton Mellick III
Lanark: a life in 4 books by Alasdair Gray
Highland Light by Cherime MacFarlane
Rule of Night by Trevor Hoyle
Ruby's Fantasy by Cathleen Ross