Clarity
You can increase the clarity of your queries by improving the layout of the query, making appropriate use of names, and using comments liberally. In addition to the recommendations in this chapter, you can go to http://www.xqdoc.org/xquery-style.html for some more detailed XQuery style conventions.
Improving the Layout
To make the structure of a query more obvious, you should make appropriate use of whitespace and parentheses. Whitespace (line breaks, spaces, and tabs) is allowed anywhere between keywords to make it more readable.
It is helpful to split longer FLWOR and conditional expressions into multiple lines and indent each clause to line up, as shown in Example 15-1. FLWORs embedded within FLWORs should be further indented. When constructing XML results, you should indent the element constructors just as you would indent the elements in an XML document.
Example 15-1. Making use of whitespace
Less clear query for $product in doc("catalog.xml")//product return <product><number>{$product/number}</number> <price>{for $price in doc("prices.xml")//prod where $product/number = $price/@num return $price/price}</price> </product> More clear query for $product in doc("catalog.xml")//product return <product> <number>{$product/number}</number> <price>{for $price in doc("prices.xml")//prod return $price/price}</price> </product>
Parentheses can be used around most expressions to group them together. If the beginning and end of an expression are not obvious, parentheses are highly recommended. ...
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