2

我需要获取所有具有属性owl:NamedIndividual的子节点的节点。rdf:type"some-attr"

<owl:NamedIndividual rdf:about="some-text">
        <rdf:type rdf:resource="some-attr"/>
        ...
</owl:NamedIndividual>

问题是前缀 (owl, rdf) - 我在其他情况下使用 local-name() 函数来解决这个问题,但我不知道如何在属性的情况下应用它。

我已经尝试过这种方式(问题在于@我期望):

/*[local-name()='NamedIndividual'][local-name()='type'[local-name()='@resource'='some-attr']]/
4

1 回答 1

2

@*[local-name() = 'resource' and . = 'some-attr']选择本地名称为resource且值为 的属性some-attr。所以把它放在你的路径表达式中:

/*[local-name()='NamedIndividual']
  [*[local-name()='type' and @*[local-name() = 'resource' and . = 'some-attr']]]
于 2013-06-16T11:36:22.190 回答