XQuery将参数传递给函数

时间:2018-07-19 18:45:20

标签: xml xquery element document

我想将XML文档作为参数传递给称为评估的函数:

declare function my_namespace:evaluate($tree as element()) as element(fraction{
     do something}

我使用doc()进行了尝试,但是它返回了一个 document-node ,我不能将其转换为 元素。有人可以告诉我如何将XML文件读取为 element ,以便将其传递给函数吗?

我尝试过:

for $tree in doc("baum.xml")
let $tree :=$tree treat as element()
return $tree

和:

let $tree := document("baum.xml")

1 个答案:

答案 0 :(得分:3)

文档节点具有单个根元素作为子元素。您可以使用一个简单的子步骤将此根元素传递给您的函数:

let $tree := doc("baum.xml")/*
return my_namespace:evaluate($tree)