1

我可以在标签第一次出现时轻松提取它

<skos:prefLabel> Espitaleta, Lina </skos:prefLabel>

并且每次出现:

<skos:prefLabel> Espitaleta, Lina </skos:prefLabel>
<skos:prefLabel xml:lang="en-US"> Espitaleta, Lina </skos:prefLabel>
<skos:prefLabel xml:lang="fr-FR"> Lina Espitaleta </skos:prefLabel>

但是如何仅提取具有特定属性的那些标签?

<skos:prefLabel xml:lang="fr-FR"> Lina Espitaleta </skos:prefLabel>

谢谢

4

1 回答 1

0

根据您的示例,我猜测您正在寻找一个特定的属性值,而不仅仅是一个属性。

GREL 实现在内部使用 JSoup,因此您需要查看它们的选择器语法以了解如何执行此操作。类似于以下内容:

value.parseHtml().select(your selector here)

应该得到你想要的。处理在标签名称和属性名称中以不同方式处理的名称空间有一点细微差别,因此您需要以下内容:

value.parseHtml().select('skos|prefLabel[xml:lang="fr-FR"]')

如果您确实是指属性,而不是属性值,则可以将其简化为:

value.parseHtml().select('skos|prefLabel[xml:lang]')
于 2021-01-30T17:42:22.723 回答