Hallo
Ich wandel eine XML-Datei in eine andere XML-Datei per XSL um. Aus der Quelldatei werden Elemente 1:1 übernommen und dann ein "Nummer"-Attribut hinzugefügt. Die Zieldatei weißt aber nicht erwartete Nummerierung auf:
Quelldatei:
-----------
<root>
<rumpf>
<element>
<absatz>1.1 satz</absatz>
<absatz>1.2 absatz</absatz>
<absatz>1.3 absatz</absatz>
<element>
<absatz>2.1 absatz</absatz>
<absatz>2.2 absatz</absatz>
<absatz>2.3 bsatz</absatz>
<absatz>2.4 bsatz</absatz>
</element>
</element>
<element>
<absatz>3.1 absatz</absatz>
<absatz>3.2 absatz</absatz>
</element>
</rumpf>
</root>
Style Sheet:
------------
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" indent="yes" encoding="UTF-8" omit-xml-declaration="yes" />
<xsl:template match="/">
xsl:apply-templates/
</xsl:template>
<xsl:template match="absatz">
<xsl:variable name="nr">
<xsl:value-of select="position()"/>
</xsl:variable>
<absatz nr="{$nr}">
<xsl:value-of select="text()" />
</absatz>
</xsl:template>
</xsl:stylesheet>
Zieldatei:
----------
<absatz nr="2">1.1 satz</absatz>
<absatz nr="4">1.2 absatz</absatz>
<absatz nr="6">1.3 absatz</absatz>
<absatz nr="2">2.1 absatz</absatz>
<absatz nr="4">2.2 absatz</absatz>
<absatz nr="6">2.3 bsatz</absatz>
<absatz nr="8">2.4 bsatz</absatz>
<absatz nr="2">3.1 absatz</absatz>
<absatz nr="4">3.2 absatz</absatz>
Ich hatte eigentlich folgende Nummerierung erwartet:
<absatz nr="1">1.1 satz</absatz>
<absatz nr="2">1.2 absatz</absatz>
<absatz nr="3">1.3 absatz</absatz>
<absatz nr="1">2.1 absatz</absatz>
<absatz nr="2">2.2 absatz</absatz>
<absatz nr="3">2.3 bsatz</absatz>
<absatz nr="4">2.4 bsatz</absatz>
<absatz nr="4">3.1 absatz</absatz>
<absatz nr="5">3.2 absatz</absatz>
Vielen Dank im voraus!
Tobel