Skip to Content
XQuery
book

XQuery

by Priscilla Walmsley
March 2007
Intermediate to advanced
512 pages
21h 15m
English
O'Reilly Media, Inc.
Content preview from XQuery

XPDY0002

An expression relies on some part of the dynamic context that is undefined. Most often, this is a path expression or function call that relies on the current context item but the context item is undefined. This may be because you used a relative path, when no outer expression set the context for the path. For example, if your entire query is:

//catalog/product

and the context is not set outside the query by the processor, this error will be raised because the processor will not know what the path is relative to. Instead, start your path with a function call or variable that sets the context, as in:

 doc("catalog.xml")//catalog/product

This error may occur when you use paths in a FLWOR expression and forget to start each path with a step that sets the context. For example:

for $prod in doc("catalog.xml")//product
where number > 500
return number

In this case, the processor does not automatically know to evaluate number relative to the $prod variable; it has to be explicitly specified, as in:

for $prod in doc("catalog.xml")//product
where $prod/number > 500
return $prod/number

This error might also occur if you forget to put the dollar sign in front of the variable name, causing the processor to interpret it as a path. For example:

for $prod in doc("catalog.xml")//product
return prod

With the dollar sign omitted from the beginning of prod in the return clause, the processor will interpret it as a relative path to a child element named prod.

A number of built-in function calls will raise ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

XSLT

XSLT

Doug Tidwell
XPath and XPointer

XPath and XPointer

John Simpson
XQuery Kick Start

XQuery Kick Start

James McGovern, Per Bothner, Kurt Cagle, James Linn, Vaidyanathan Nagarajan

Publisher Resources

ISBN: 0596006349Errata