У меня возникли проблемы с написанием выражения XPath, чтобы выбрать узлы, которые содержат определенные элементы, в то же время исключая братьев и сестер этого элемента, которые меня не интересуют. Я подозреваю, что это невозможно сделать с XPath, и что я необходимо будет использовать XSLT.XPath selection
Используя этот исходный документ
<items>
<item id="foo1">
<attr1>val1</attr1>
<attr2>val2</attr2>
<attr3>val3</attr3>
<interestingAttribute>val4</interestingAttribute>
</item>
<item id="foo2">
<attr1>val5</attr1>
<attr2>val6</attr2>
<attr3>val7</attr3>
</item>
<item id="foo3">
<attr1>val8</attr1>
<attr2>val9</attr2>
<attr3>val10</attr3>
<interestingAttribute>val11</interestingAttribute>
</item>
</items>
Я хотел бы, чтобы произвести этот результат
<items>
<item id="foo1">
<interestingAttribute>val4</interestingAttribute>
</item>
<item id="foo3">
<interestingAttribute>val11</interestingAttribute>
</item>
</items>
это может быть сделано с помощью XPath? Если нет, то какую XSLT-трансформацию я должен использовать?
Вы хотите создать весь xml, который у вас есть в результате? Или вы просто хотите, чтобы эти конкретные узлы из xpath выполнялись в вашей кодовой базе? –
Я бы предпочел сгенерировать весь XML-документ. Но если есть решение XPath, которое исключает элемент, это тоже хорошо. –
Chris