Xpath 查询 select 多个主要类型的 JCR 节点

Xpath query to select JCR nodes of multiple primary types

我正在尝试为 select 多个主要类型的 JCR 节点创建一个 xpath 查询。

例如,我可以这样写一个查询:

/jcr:root/content//element(*, nt:unstructured)

到select所有nt:unstructured类型的节点,或者这个:

/jcr:root/content//element(*, nt:file)

获取nt:file

类型的所有节点

是否可以向 select 类型 nt:unstructured 和类型 nt:file 的所有节点写入一个查询?

您可以使用 where 子句在其中筛选 jcr:primaryType

/jcr:root/content//*[@jcr:primaryType='nt:file' 或@jcr:primaryType='nt:unstructured']

请记住,您作为示例提供的查询也 select 多种类型(即超类型和子类型)。

假设您有一个 project:article 类型的节点和一个 project:newsarticle 类型的节点,其中 newsarticle 扩展了文章节点类型。

使用

查询时

/jcr:root/content//元素(*, project:article)

您还将找到这两种类型的节点。