我有一个xml,它是几个子系统查询的合并输出。现在我必须选择很多信息。例如:
/合并/响应/ BenutzerDaten / Deaktiviert
如果/ Merge / response / results / result / dn以"结尾,o = test,c = de"并且只有一个结果以该模式结束:
/合并/响应/结果/结果/属性/ identnummer
如果/ Merge / response / results / result / dn以"结束,DC = TEST,DC = DE":
/合并/响应/结果/结果/属性/邮编
最好的办法是什么?
这是我的灵魂xml的简化样本:
0 11 22 33 33
0 11 22 33 33
0 11 22 33 33
0 11 22 33 33
0 11 22 33 33
预期结果应如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<Merge>
<response>
<results>
<result>
<dn>cn=user1,ou=members,ou=group1,o=test,c=de</dn>
<attributes>
<identnummer>re3232</identnummer>
<uid>user1</uid>
[...]
<adminuid>admin3</adminuid>
</attributes>
</result>
</results>
</response>
<response>
<results>
<result>
<dn>CN=user1,OU=Users,DC=TEST,DC=DE</dn>
<attributes>
<postalCode>12345</postalCode>
<company>My Company</company>
[...]
<streetAddress>XSLT Road 1</streetAddress>
</attributes>
</result>
</results>
</response>
<response>
<secDN>principalName=user1,cn=Users,secDomain=Default</secDN>
<Benutzerdaten>
<Deaktiviert>false</Deaktiviert>
<Gesperrt>false</Gesperrt>
[...]
<PasswortGueltig>true</PasswortGueltig>
</Benutzerdaten>
</response>
<Nutzdaten>
<Identifikation>
<AdminID>admin3</AdminID>
<BenutzerID>user1</BenutzerID>
</Identifikation>
<Benutzerdaten>
<Datentyp>Account-Daten</Datentyp>
<Datentyp>Anwendungs-Daten</Datentyp>
<Datentyp>Benutzer-Daten</Datentyp>
</Benutzerdaten>
</Nutzdaten>
</Merge>
这是我不成功的尝试:
<?xml version="1.0" encoding="UTF-8"?>
<UserData>
<user>user1</user>
<source1>
<identnummer>re3232</identnummer>
</source1>
<source2>
<postalCode>12345</postalCode>
</source2>
<source3>
<Deaktiviert>false</Deaktiviert>
</source3>
</UserData>
答案 0 :(得分:0)
尝试以下方法:
Member