XPath для элементов с атрибутом не равным или не существует

У меня есть следующий формат XML:

<test>
 <table>
   <rows>
     <row ID = "1" Name ="A"/>
     <row ID = "2" SubID = "1" Name ="B"/>
     <row ID = "3" Name ="C"/>
     <row ID = "4" SubID = "1" Name ="D"/>
     <row ID = "5" Name ="E"/>
     <row ID = "4" SubID = "2" Name ="E"/>
   </rows>
   .
   .
 </table>
</test>

Я хотел бы взять все строки, кроме тех, которые имеютSubID = 1.

Сложность в том, что не все строки имеют атрибутSubIDи что не все строки с атрибутомSubIDимеют одинаковое значение.

Идеальный результат должен быть:

<row ID = "1" Name ="A"/>
<row ID = "3" Name ="C"/>
<row ID = "5" Name ="E"/>
<row ID = "4" SubID = "2" Name ="E"/>

Я пытался использовать XPath с отрицанием по значению, но это не сработает:

/test/table/row/not(@SubID=1)

Любая помощь?

Ответы на вопрос(1)

Ваш ответ на вопрос