在氧气中运行XQuery:Can';t访问文档节点中的节点

在氧气中运行XQuery:Can';t访问文档节点中的节点,xquery,exist-db,oxygenxml,Xquery,Exist Db,Oxygenxml,我想编写一个查询,返回XML文档中的特定元素,但当我使用路径表达式返回文档中的元素(即文档节点之外的元素)时,它总是返回一个空序列 下面是我要查询的XML的前几行: <?xml version="1.0" encoding="UTF-8"?> <?xml-model href="http://www.tei-c.org/release/xml/tei/custom/schema/relaxng/tei_all.rng" type="application/xml" schema

我想编写一个查询,返回XML文档中的特定元素,但当我使用路径表达式返回文档中的元素(即文档节点之外的元素)时,它总是返回一个空序列

下面是我要查询的XML的前几行:

<?xml version="1.0" encoding="UTF-8"?>
<?xml-model href="http://www.tei-c.org/release/xml/tei/custom/schema/relaxng/tei_all.rng" type="application/xml" schematypens="http://relaxng.org/ns/structure/1.0"?>
<?xml-model href="http://www.tei-c.org/release/xml/tei/custom/schema/relaxng/tei_all.rng" type="application/xml"
    schematypens="http://purl.oclc.org/dsdl/schematron"?>
<TEI xmlns="http://www.tei-c.org/ns/1.0">
   <teiHeader>
      <fileDesc>
         <titleStmt>
            <title>LMW Day Book, pp. 160-161</title>
我还可以使用doc()函数返回单个文档节点。但是,我不能使用路径表达式返回文档节点中的节点。例如,下面返回一个空序列:

let $title := doc("/db/apps/Step3_LMWdbk_Jana's_Files")/TEI/teiHeader/fileDesc/titleStmt/title
return $title
我排除的是:

为了进一步测试,我又编写了几个查询,包括一个访问最外面的元素(即
doc(…)/TEI)和一个访问所有元素(即
doc(…)/cell
):它们都返回一个空序列。这表明路径表达式中的错误不是根本问题


我正在OxygenXML编辑器中运行XQuery。我已经将一个eXist数据库连接到oXygen,并且正在使用eXist数据库提供的XQuery引擎。我已经检查了我是否连接到eXist,并且我的转换场景使用eXist作为它的转换器

注意,文档有一个默认名称空间
,因此在查询前加上
声明默认元素名称空间“http://www.tei-c.org/ns/1.0“
。由于没有显示整个文档,可能会使用其他名称空间。

同意这可能是名称空间问题。另一种方法是使用
declare namespace tei=”声明名称空间http://www.tei-c.org/ns/1.0";
并在路径表达式中的元素前面加上
tei
名称空间前缀,例如:
/tei:tei/tei:teiHeader/tei:fileDesc/tei:titlesmt/tei:title
。您应该对下面的答案提供一些反馈。。。
let $title := doc("/db/apps/Step3_LMWdbk_Jana's_Files")/TEI/teiHeader/fileDesc/titleStmt/title
return $title