Xml 如何使用cts:element值实现下面的XQuery

Xml 如何使用cts:element值实现下面的XQuery,xml,xquery,marklogic,cts-search,Xml,Xquery,Marklogic,Cts Search,我有下面的查询,它使用的是cts:search,在生产中运行时需要花费大量时间 xquery版本“1.0-ml”; (:让$limit:=()改为使用此选项显示所有值:) 对于cts中的$uri:uri匹配(“/tag cloud/*”) 让$values:=“” 设$region:=fn:substring before(fn:substring after($uri,“/tag cloud/”),“.xml”) 让$doc:=concat(“/tag cloud/”,$region,“.xm

我有下面的查询,它使用的是
cts:search
,在生产中运行时需要花费大量时间

xquery版本“1.0-ml”;
(:让$limit:=()改为使用此选项显示所有值:)
对于cts中的$uri:uri匹配(“/tag cloud/*”)
让$values:=“”
设$region:=fn:substring before(fn:substring after($uri,“/tag cloud/”),“.xml”)
让$doc:=concat(“/tag cloud/”,$region,“.xml”)
让$distinct search text:=cts:search(doc($doc)/All searchtext/searchtext,
cts:element属性范围查询(xs:QName(“searchtext”)、xs:QName(“date”),
">=",
(fn:current-date()-xs:dayTimeDuration(“P2D”))
)
)
让$result xml:=对于fn中的$each搜索文本:不同的值($distinct search text/text())
let$count:=count($distinct搜索文本[text()eq$每个搜索文本])
按$count降序排序
返回
fn:concat($region,	;“,$each search text,	;”,$count)
返回
对于(($result xml)[1到15]中的$eachtag)
回报($eachtag)
任何人都可以帮助我使用
cts:element values
函数重新编写上述查询,因为我只需要频率值

我尝试了下面的查询,但筛选工作不正常。任何帮助都是非常感激的

xquery版本“1.0-ml”;
让$limit:=15
(:让$limit:=()改为使用此选项显示所有值:)
对于cts中的$uri:uri匹配(“/tag cloud/*”)
设$region:=fn:substring before(fn:substring after($uri,“/tag cloud/”),“.xml”)
让$values:=
cts:元素值(
xs:QName(“搜索文本”),
"",
(
“校勘=http://marklogic.com/collation/codepoint",
“项目频率”,
“频率顺序”,
“下降”,
如果(fn:exists($limit)),则fn:concat(“limit=,$limit)else()
),
cts:和查询((
cts:element属性范围查询(xs:QName(“searchtext”)、xs:QName(“date”),
">=",
(fn:current-date()-xs:dayTimeDuration(“P2D”))
),
cts:文档查询($uri)))
)
对于$value中的$value
返回
fn:concat($region,	;“,$value,	;”,cts:frequency($value))

谢谢

如果您使用
doc()
检索文档,则无需搜索。您已经有了文档

另一个要点是:您应该尝试构建一个满足您需要的搜索请求,而不是迭代和执行多个搜索请求。例如,不要重复使用<代码> CTS:URI- MatHEL()/CUT>,考虑是否可以使用<代码> CTS:DealTry-Quices()/<代码>子句>

来执行单个<代码> CTS:SexChar()/Cuff>。 对于这个特别的问题,我不确定我是否理解这个目标。如果您在searchtext上创建范围索引,则可以按照中所述计算频率:

如果需要这些频率来反映区域,一种方法是将区域构建到searchtext值中

但是,也许我误解了目标

希望这能有所帮助


Erik Hennum

您所说的“过滤工作不正常”是什么意思?请提供一个示例标记云xml文档,并解释其功能目标。。