有什么办法可以保留排序顺序xquery
吗?我的问题是数据必须在返回时传递给MVC 框架的 get-response()
函数,所以我认为它会自动恢复为文档顺序。我认为在subsequence()
函数的第一个参数中正确进行排序会在排序后捕获前“n”个项目,但事实并非如此。我还尝试在调用之前对$search-resultssubsequence()
参数进行排序,但这也不起作用。请参阅以下代码:
let $data :=
<figures count="{$count}"
mediatypes="{$mtypes}"
start="{$start}"
end="{$start+$myns:image-paging-default}"
page="{$page}"
increment="{$myns:image-paging-default}"
total-pages="{
if ($count lt $myns:image-paging-default) then
1
else
ceiling(($count + 1) div $myns:image-paging-default)
}"
{
subsequence(
( for $item in ($search-results)
order by $item//figure/@ftype descending
return $item),
$start,
$myns:image-paging-default)
}
</figures>
let $sidebar := xdmp:get-server-field('imagefacets')
return utils:get-response($req, ($data,$sidebar) )