Block in XML entfernen
nralt
- xsl
0 ThomasM
Hallo,
eins vorweg: Anfänger was XSL und XML betrifft
ich habe eine XML-Datei die in einem Programm weiterverarbeitet wird.
Leider hat diese XML-Datei einige Tags, die bei der Weiterverarbeitung stören.
Die Erstellung und Weiterverarbeitung der XML-Datei kann in den betreffenden Programmen nicht beeinflußt werden. Es kann einzig bei der Weiterverarbeitung ein Stylesheet angewendet werden.
Nun kam ich auf die Idee mittels Stylesheet die nichtbenötigten Tags auszublenden. leider wurde ich noch nicht fündig, wie so etwas geht.
XML:
<?xml version = '1.0' encoding = 'ISO-8859-1'?>
<header>
<zulöschen>
<tag1>text1</tag1>
<tag2>text1</tag2>
<tag3>text1</tag3>
</zulöschen>
<wirdnochgebraucht>
<tag1>text1</tag1>
<tag2>text1</tag2>
<tag3>text1</tag3>
</wirdnochgebraucht>
</header>
Es soll also der gesamte Block <zulöschen>...</zulöschen>
Wenn mir jemand einen Tipp geben könnte, wäre dass toll.
Hallo nralt,
Es soll also der gesamte Block <zulöschen>...</zulöschen>
Ansatz: Formal alles mittels Identitätstransformation kopieren, auszuschließende Elemente wie am Ende ersichtlich behandeln:
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" version="1.0" encoding="ISO-8859-1"/>
<xsl:template match="@* | node()">
<xsl:copy>
<xsl:apply-templates select="@* | node()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="zulöschen"/>
</xsl:stylesheet>
Grüße,
Thomas