2

attributeowl:NamedIndividualを持つ子を持つすべてのノードを取得する必要があります。rdf:type"some-attr"

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

問題は接頭辞 (フクロウ、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 に答える