1
我需要使用corb来生成报告。MarkLogic Xquery
Data:
Collection A : Col1,Col2,Col3,Col4
Collecntion B: Col1,Col5,Col6,Col7
Collection C: Col1,Col8,Col9
Output Requirement: Col1,Col2,Col5,Col6,Col8
其中Col1中是一种方式,集合B中的内部连接,C
我uri.xqy
看起来是这样的:
(:Get the list from Col1 to join on all:)
let $listFromCol1 := cts:element-values(xs:QName("Col1"),(),(),cts:and-query(....))
let $A := cts:uris((),(),cts:and-query((cts:collection-query("A"),cts:element-range-query(xs:QName("Col1"),"=",$ListFromCol1)))
let $B := cts:uris((),(),cts:and-query((cts:collection-query("B"),cts:element-range-query(xs:QName("Col1"),"=",$ListFromCol1)))
let $C := cts:uris((),(),cts:and-query((cts:collection-query("C"),cts:element-range-query(xs:QName("Col1"),"=",$ListFromCol1)))
现在,我得到了个人收藏品中的URI。我需要将其传递给我的process.xqy
的return (count($uris), $uris)
。
我想知道如何获得所有$ A,$ B,$ C的计数以及对$ A,$ B,$ C的所有URI进行连接。
请帮
你要遍历Col1中值,而不是URI的。 Corb允许你将Col1的值返回,就好像它们是uris一样吗?如果您然后在col1上进行cts:search,您可以在与该记录相关的一次打击中获得所有文档,并且可以构建您的报告所需的记录。否则它变得有点复杂.. – grtjn
感谢您的回复。不幸的是,你的建议只适用于一小部分记录。当我尝试用A,B,C ..ML中的每个节点创建xml元素都不起作用。因此CoRB。而且,我相信CoRB需要将URI提供给Process.xqy – Bharadwaj
你试过了吗? ;-) – grtjn