事情是这样的……我有一个疑问:
for $item in doc("order.xml")//item
$name:= doc("catalog.xml")//product[number = $item/@num]/name
return <item num="{$item/@num" (: a1 :)
name="{$name}" (: a2 :)
quan="{$item/@quantity}"/> (: a3 :)
....没有逗号,对吧?后来,它说“如果后面的逗号firstresult
不存在,那将是一个语法错误,因为查询正文中会有两个单独的表达式”,关于不同的查询:
declare boundary-space preserve;
declare namespace prod = "http://datypic.com/prod";
declare variable $catalog := doc("catalog.xml")//catalog;
<firstResult>{count($catalog/product)}</firstResult> (: b1 :)
<prod:secondResult>{$catalog/product/number}</prod:secondResult> (: b2 :)
“独立查询”(b1 和 b2)和“同一查询的不同部分”(a1、a2 和 a3)之间的界线在哪里?