Hallo ich habe ein Problem mit der Adressierung bei XPath.
Mit folgendem Stück Code
will ich den Inhalt der MAPPING Tags folgender XML Datei bearbeiten
[XML]
<?xml version="1.0" encoding="UTF-8" standalone="no"?><MMI>
<MAPPINGTABLES>
<MAPPINGTABLE hash="key" name="ack_caption_job_2" type="map">
<MAPPING key="0">TEST</MAPPING>
<MAPPING key="1">TEST</MAPPING>
<MAPPING key="2">TEST</MAPPING>
<MAPPING key="3">TEST</MAPPING>
<MAPPING key="4">TEST</MAPPING>
<MAPPING key="5">TEST</MAPPING>
<MAPPING key="6">TEST</MAPPING>
<MAPPING key="7">TEST</MAPPING>
<MAPPING key="8">TEST</MAPPING>
<MAPPING key="9">TEST</MAPPING>
<MAPPING key="10">TEST</MAPPING>
<MAPPING key="11">TEST</MAPPING>
<MAPPING key="12">TEST</MAPPING>
<MAPPING key="13">TEST</MAPPING>
<MAPPING key="14">TEST</MAPPING>
<MAPPING key="15">TEST</MAPPING>
<MAPPING key="16">TEST</MAPPING>
<MAPPING key="-1">TEST</MAPPING>
<MAPPING key="default"/>
</MAPPINGTABLE>
</MAPPINGTABLES>
</MMI>[/XML]
Mein Code lässt mich soweit auch den Inhalt zwischen allen MAPPING Tags (in dem Fall Test) bearbeiten und ändern. Jedoch würde ich gerne in jede Zeile etwas anderes schreiben und hoffte nun ich kann das mit XPath so addressieren, dass er mir das MAPPING Tag adressiert, welches z.B. den key="1" enthält.
Ist sowas irgendwie möglich, ich hab nämlich nix dazu gefunden...
Mit folgendem Stück Code
Java:
XPathExpression expr = xpath.compile("//MAPPINGTABLES//MAPPINGTABLE//MAPPING//text()");
will ich den Inhalt der MAPPING Tags folgender XML Datei bearbeiten
[XML]
<?xml version="1.0" encoding="UTF-8" standalone="no"?><MMI>
<MAPPINGTABLES>
<MAPPINGTABLE hash="key" name="ack_caption_job_2" type="map">
<MAPPING key="0">TEST</MAPPING>
<MAPPING key="1">TEST</MAPPING>
<MAPPING key="2">TEST</MAPPING>
<MAPPING key="3">TEST</MAPPING>
<MAPPING key="4">TEST</MAPPING>
<MAPPING key="5">TEST</MAPPING>
<MAPPING key="6">TEST</MAPPING>
<MAPPING key="7">TEST</MAPPING>
<MAPPING key="8">TEST</MAPPING>
<MAPPING key="9">TEST</MAPPING>
<MAPPING key="10">TEST</MAPPING>
<MAPPING key="11">TEST</MAPPING>
<MAPPING key="12">TEST</MAPPING>
<MAPPING key="13">TEST</MAPPING>
<MAPPING key="14">TEST</MAPPING>
<MAPPING key="15">TEST</MAPPING>
<MAPPING key="16">TEST</MAPPING>
<MAPPING key="-1">TEST</MAPPING>
<MAPPING key="default"/>
</MAPPINGTABLE>
</MAPPINGTABLES>
</MMI>[/XML]
Mein Code lässt mich soweit auch den Inhalt zwischen allen MAPPING Tags (in dem Fall Test) bearbeiten und ändern. Jedoch würde ich gerne in jede Zeile etwas anderes schreiben und hoffte nun ich kann das mit XPath so addressieren, dass er mir das MAPPING Tag adressiert, welches z.B. den key="1" enthält.
Ist sowas irgendwie möglich, ich hab nämlich nix dazu gefunden...