繁体   English   中英

Jackrabbit是否支持XPath联合(|)运算符?

[英]Does Jackrabbit support the XPath union (|) operator?

我正在尝试在2个不同的节点下搜索特定名称。 这有效

/jcr:root/db067409/libraries/bd0b868d/_x0030_//*[@name="FIRST"]

但是当我尝试像这样与第二个节点进行OR运算时...

/jcr:root/db067409/libraries/bd0b868d/_x0030_//*[@name="FIRST"]|/jcr:root/db067409/libraries/_x0033_78d57e4/_x0031_//*[@name="FIRST"]

我不再获得任何搜索结果。 请有人指出我做错了什么。

我真正想做的就是遵循这些原则。 如果我有/ a / b / ID1 / VERSION1和/ a / b / ID2 / VERSION2,我想要一个xpath之类的/ a / b /(ID1 / VERSION1或ID2 / VERSION2)// * [@ name = “某些名称”]。

答案是否定的。 不幸的是,它不会引发您所期望的UnsupportedOperationException。 吉拉(Jira)中有一个项目,但是我想他们已经忽略了它,因为Xpath现在已被弃用。

如果确实需要联合,请使用JCR_SQL2。

编辑

该线程指示在Jackrabbit 2.0中提供类似联合的功能,但不早于此。

对于JCR Xpath或JCR-SQL,[Joins]是不可能的,但是对于JCR 2.0(JCR-SQL2)中的新查询模型,[Joins]是不可能的。 从CQ 5.3 / CRX 2.0 / Jackrabbit 2.0开始支持。 请注意,这些联接的优化不是很好。

实际上, JCR 2.0中不推荐使用XPath

JCR 1.0定义了不同于JCR-SQL2的SQL方言,以及XPath的方言。 不支持这些语言。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM