【发布时间】:2019-01-01 13:14:23
【问题描述】:
如何使用basex GUI 从xquery 脚本中运行xpath 查询?
此数据库最简单的xquery 代码:
thufir@dur:~/basex$
thufir@dur:~/basex$ cat db_list_items.xq
let $db := db:open("list")
return root()/descendant::li/a/text()
thufir@dur:~/basex$
不太清楚如何返回上面的结果。
来自basex GUI 的错误日志:
Error:
Stopped at /home/thufir/basex/db_list_items.xq, 4/12:
[XPDY0002] root(): no context value bound.
Compiling:
- pre-evaluate db:open(database[,path]) to document-node(): db:open("list") -> db:open-pre("list", 0)
- inline $db_0
- simplify gflwor
Optimized Query:
root()/descendant::li/a/text()
Query:
let $db := db:open("list") return root()/descendant::li/a/text()
Query plan:
<QueryPlan compiled="true" updating="false">
<CachedPath type="text()*">
<FnRoot name="root([node])" type="node()?"/>
<IterStep axis="descendant" test="li" type="element()*"/>
<IterStep axis="child" test="a" type="element()*"/>
<IterStep axis="child" test="text()" type="text()*"/>
</CachedPath>
</QueryPlan>
使用 basex 查找此数据库的简单查询。
【问题讨论】:
标签: xml xpath xml-parsing xquery basex