我有这个 XML 文件:
<MyXml>
<MandatoryElement1>value</MandatoryElement1>
<MandatoryElement2>value</MandatoryElement2>
<MandatoryElement3>value</MandatoryElement3>
<CustomElement1>value</CustomElement1>
<CustomElement2>value</CustomElement2>
<MyXml>
称为“MandatoryElementX”的所有 3 个元素将始终出现在文件中。名为“CustomElementX”的元素是未知的。这些可以由用户自由添加或删除,并且可以具有任何名称。
我需要的是获取所有不是 MandatoryElements 的元素。所以对于上面的文件,我想要这个结果:
<CustomElement1>value</CustomElement1>
<CustomElement2>value</CustomElement2>
我不知道自定义元素的名称可能是什么,只有 3 个 MandatoryElements 的名称,因此查询需要以某种方式排除这 3 个。
编辑:
即使已经回答了这个问题,我还是想澄清这个问题。这是一个实际的文件:
<Partner>
<!--Mandatory elements-->
<Name>ALU FAT</Name>
<InterfaceName>Account Lookup</InterfaceName>
<RequestFolder>C:\Documents and Settings\user1\Desktop\Requests\ALURequests</RequestFolder>
<ResponseFolder>C:\Documents and Settings\user1\Desktop\Responses</ResponseFolder>
<ArchiveMessages>Yes</ArchiveMessages>
<ArchiveFolder>C:\Documents and Settings\user1\Desktop\Archive</ArchiveFolder>
<Priority>1</Priority>
<!--Custom elements - these can be anything-->
<Currency>EUR</Currency>
<AccountingSystem>HHGKOL</AccountingSystem>
</Partner>
这里的结果是:
<Currency>EUR</Currency>
<AccountingSystem>HHGKOL</AccountingSystem>