Sorting xquery,保留排序顺序

Sorting xquery,保留排序顺序,sorting,xquery,Sorting,Xquery,有没有办法在xquery中保留排序顺序?我的问题是数据必须在返回时传递到MVC框架的get-response()函数,所以我认为它会自动恢复到文档顺序。我认为在subsequence()函数的第一个参数中正确排序将捕获排序后的第一个“n”项,但事实并非如此。我还尝试在调用subsequence()之前对$search results参数进行排序,但这也不起作用。请参阅以下代码: let $data := <figures count="{$count}"

有没有办法在
xquery
中保留排序顺序?我的问题是数据必须在返回时传递到MVC框架的
get-response()
函数,所以我认为它会自动恢复到文档顺序。我认为在
subsequence()
函数的第一个参数中正确排序将捕获排序后的第一个“n”项,但事实并非如此。我还尝试在调用
subsequence()
之前对$search results参数进行排序,但这也不起作用。请参阅以下代码:

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) )
let$data:=

你是说传递给
utils:get response
$data
没有按此flwor中的顺序排列?这里没有明显的错误,因此我将重点确保症状是真实的。您对结果未按规定排序有多大信心?您对$item//figure/@ftype返回单个原子值的信心有多大?是的,我确定结果没有按指定排序,而且我还确定@ftype是一个原子值,特别是一个字符串,是两个值之一。传递给utils:get-response()的$data可能已排序,但我从该函数返回的不是