我是exist-db 和XQuery 的新手。
在exist-db中,我有这个站点地图:目录“registranten”包含目录“data”(带有xml文件)和两个文件“regBasic.xql”和“regSearch.xql”。
我正在尝试使用脚本 regSearch.xql 在 xml 文件中搜索:
xquery version "3.0";
declare option exist:serialize "method=xhtml media-type=text/html";
declare variable $pageTitle := "Resultat";
declare variable $searchphrase := request:get-parameter("searchphrase", ());
<html>
<head>
<meta HTTP-EQUIV="Content-Type" content="text/html; charset=UTF-8"/>
<title>{$pageTitle}</title>
</head>
<body>
<h1>{$pageTitle}</h1>
<p>Søgestreng eller søgeord: "{$searchphrase}"</p>
<ul>
{
for $p in collection("/db/registranten/data")//grundtvig/indholdsregest/p[ft:query(., $searchphrase)]
return
<li>
from: {string(root($p)/grundtvig/filnavn)}<br/>
<i>$p</i>
</li>
}
</ul>
</body>
</html>
当我评估脚本时,出现此错误:“exerr:ERROR XPTY0004: 参数 2 的实际基数与函数签名中声明的基数不匹配:ft:query($nodes as node(), $query as item()) 节点()。预期基数:恰好为 1,得到 0。[在第 17 行,第 100 列,来源:/db/apps/registranten/regSearch.xql]”
这是什么意思以及脚本有什么问题?
Your $searchphrase
变量是一个空序列,这可能表明您没有设置您要求的请求参数request:get-parameter()
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)