Anotando uma instância xml de uma lista de instruções xpath com xslt
Dada uma lista de instruções xpath, desejo escrever uma folha de estilo que será executada em um documento xml e produzir o mesmo documento, mas com um comentário inserido antes do nó identificado em cada instrução xpath. Vamos fazer um exemplo. Comece com uma instância xml contendo as instruções xpath:
<paths>
<xpath location="/root/a" annotate="1"/>
<xpath location="/root/a/b" annotate="2"/>
</paths>
Dada a entrada:
<root>
<a>
<b>B</b>
</a>
<c>C</c>
</root>
Deve produzir:
<root>
<!-- 1 -->
<a>
<!-- 2 -->
<b>B</b>
</a>
<c>C</c>
</root>
Meu pensamento inicial é ter uma folha de estilo de identidade que leva umfile-list
param, chama odocument
função para obter a lista de nós do xpath. Em seguida, ele verifica cada nó da entrada em relação a essa lista e, em seguida, insere o nó de comentário quando encontra um, mas espero que seja altamente ineficiente, pois a lista de xpaths fica grande (ou talvez não, diga-me. Estou usando saxon 9).
Então, minha pergunta: existe uma maneira eficiente de fazer algo assim?