Вот пример XML, с которым я имею дело:
<subchapter>
<section>
</section>
</subchapter>
<part>
<section>
</section>
</part>
<part>
<section>
</section>
</part>
<quotedContent>
<section>
</section>
</quotedContent>
Я пытаюсь отфильтровать определенные узлы в зависимости от типа их родительских узлов. Другими словами, я хочу найти все узлы <section>
НЕ в узлах <quotedContent>
. В дополнение к <part>
и <subchapter>
существуют различные другие родительские узлы, которые я хочу включить в мой конечный результат. Таким образом, речь идет об исключении только <quotedContent>
узлов. Я почти уверен, что это просто вопрос получения правильной строки xpath.
Я использую пакет R xml2, в частности функцию xml_find_all (), следующим образом:
xml_find_all(ustc, "..//d1:section[parent='part']", ns = xml_ns(ustc))
На основев приведенном выше примере xml я ожидал получить два узла - первые два, а не последний внутри.