XQuery Errors
This article is part of the Query Portal. It summarizes all error codes that may be thrown by the BaseX XQuery processor.
As the official specifications are written too formal to be easily understood, we tried our best to make this article comprehensible to everyone. The following tables include the error code that is raised by BaseX, a description, and examples of queries raising that error.
Contents
XPST: Static XPath Errors
Code | Description | Examples |
---|---|---|
XPST0003
|
An error occurred while parsing the query string (i.e., before the query could be compiled and executed). This error is the most common one, and may be accompanied by a variety of different error messages. | 1+
|
XPST0005
|
An expression will never results, no matter what input will be processed. | doc('input')/..
|
XPST0008
|
A variable or type name is used that has not been defined in the current scope. | $a---
|
XPST0017
|
• The specified function is unknown, or • it uses the wrong number of arguments. |
fn:unknown()
|
XPST0051
|
An unknown QName is used in a sequence type (e.g. in the target type of the cast expression).
|
1 instance of x
|
XPST0080
|
xs:NOTATION or xs:anyAtomicType is used as target type of cast or castable .
|
1 castable as xs:NOTATION
|
XPST0081
|
• A QName uses a prefix that has not been bound to any namespace, or • A pragma or option declaration has not been prefixed. |
unknown:x
|
XPST: Static XQuery Errors
Code | Description | Examples |
---|---|---|
XQST0009
|
The query imports a schema (schema import is not supported by BaseX). | import schema "x"; ()
|
XQST0022
|
Namespace values must be constant strings. | <elem xmlns="{ 'dynamic' }"/>
|
XQST0031
|
The specified XQuery version is not specified. | xquery version "9.9"; ()
|
XQST0032
|
base-uri was declared twice.
|
declare base-uri "a"; declare base-uri "b"; ()
|
XQST0033
|
A namespace prefix was declared twice. | declare namespace a="a"; declare namespace a="b"; ()
|
XQST0034
|
A function was declared twice. | declare function local:a() { () };
|
XPTY: Type Errors
Code | Description | Examples |
---|---|---|
XPTY0004
|
This error is raised if an expression has the wrong type, or cannot be cast into the specified type. It may be raised both statically (during query compilation) or dynamically (at runtime). | 1 + "A"
|
XPTY0018
|
The result of the last step in a path expression contains both nodes and atomic values. | doc('input.xml')/(*, 1)
|
XPTY0019
|
The result of a step (other than the last step) in a path expression contains an atomic values. | (1 to 10)/*
|
XPDY: Dynamic XPath Errors
Code | Description | Examples |
---|---|---|
XPDY0002
|
• No value has been defined for an external variable, or • no context item has been set before the query was executed. |
declare variable $x external; $x
|
XPDY0050
|
• The operand type of a treat expression does not match the type of the argument, or• the root of the context item must be a document node. |
"string" treat as xs:int
|
XQDY: Dynamic XQuery Errors
Code | Description | Examples |
---|---|---|
XQDY0025
|
Two or more attributes in a constructed element have the same node name. | element x { attribute a { "" } attribute a { "" } }
|
XQDY0026
|
The content of a computed processing instruction contains "?>". | processing-instruction pi { "?>" }
|
XQDY0041
|
The name of a processing instruction is invalid. | processing-instruction { "1" } { "" }
|
XQDY0043
|
The node name of an attribute uses certain pre-defined prefixes or namespaces. | attribute xmlns { "etc" }
|
XQDY0064
|
The name of a processing instruction equals "XML" (case insensitive). | processing-instruction xml { "etc" }
|
XQDY0072
|
The content of a computed comment contains "--" or ends with "-". | comment { "one -- two" }
|
XQDY0074
|
The name of a computed attribute or element is invalid, or uses an unbound prefix. | element { "x y" } { "" }
|
XQDY0095
|
A sequence with more than one item was bound to a group by clause.
|
let $a := (1,2) group by $a return $a
|
XQDY0096
|
The node name of an element uses certain pre-defined prefixes or namespaces. | element { fn:QName("uri", "xml:n") } {}
|
In Progress
Code | Description | Examples |
---|---|---|
|
|