Thx a lot martin !!!!
It works perfectly...I´ll have to do a few adaptions but that´s a good first
step :)
Thx again
cheers
Patrick Szabo
EPD / XSLT Konvertierung
Tel.: +43-1-534 52-1573
Fax.: +43-1-534 52-1573
patrick(_dot_)szabo(_at_)lexisnexis(_dot_)at
LexisNexis Verlag ARD Orac GmbH & Co KG
Marxergasse 25, 1030 Wien
FN 8333f, Handelsgericht Wien
www.lexisnexis.at
-----Ursprüngliche Nachricht-----
Von: Martin Honnen [mailto:Martin(_dot_)Honnen(_at_)gmx(_dot_)de]
Gesendet: Donnerstag, 20. November 2008 15:10
An: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Betreff: Re: AW: [xsl] grouping-problem i guess
Szabo, Patrick (LNG-VIE) wrote:
Here an input with more lists
<liste>
<ziffernliste>
<listelem><symbol >1.</symbol>text</listelem>
<listelem><symbol >2.</symbol>text</listelem>
</ziffernliste>
<schluss>XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX</schluss>
<schluss>YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY</schluss>
<strichliste>
<listelem><symbol >-</symbol>text</listelem>
<listelem><symbol >-</symbol>text</listelem>
</strichliste>
<schluss>AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA</schluss>
<schluss>BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB</schluss>
</liste>
<nummerierte-liste>
<listnum>1.</listnum>
<punkt>
<absatz>text</absatz>
</punkt>
<listnum>2.</listnum>
<punkt>
<absatz>text</absatz>
<absatz>XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX</absatz>
<absatz>YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY</absatz>
</punkt>
</nummerierte-liste>
<liste>
<punkt>
<absatz>text</absatz>
</punkt>
<punkt>
<absatz>text</absatz>
<absatz>AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA</absatz>
<absatz>BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB</absatz>
</punkt>
</liste>
The following stylesheet produces the described result:
<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="2.0">
<xsl:output method="xml" indent="yes"/>
<xsl:template match="liste">
<xsl:for-each-group select="*" group-starting-with="ziffernliste |
strichliste">
<xsl:apply-templates select="current-group()[1]"/>
</xsl:for-each-group>
</xsl:template>
<xsl:template match="ziffernliste">
<nummerierte-liste>
<xsl:apply-templates select="listelem" mode="ziffer"/>
</nummerierte-liste>
</xsl:template>
<xsl:template match="listelem" mode="ziffer">
<listnum>
<xsl:value-of select="symbol"/>
</listnum>
<punkt>
<xsl:apply-templates select="text()"/>
<xsl:if test="position() eq last()">
<xsl:apply-templates select="current-group()[self::schluss]"/>
</xsl:if>
</punkt>
</xsl:template>
<xsl:template match="strichliste">
<liste>
<xsl:apply-templates select="listelem" mode="strich"/>
</liste>
</xsl:template>
<xsl:template match="listelem" mode="strich">
<punkt>
<xsl:apply-templates select="text()"/>
<xsl:if test="position() eq last()">
<xsl:apply-templates select="current-group()[self::schluss]"/>
</xsl:if>
</punkt>
</xsl:template>
<xsl:template match="schluss | listelem/text()">
<absatz>
<xsl:value-of select="."/>
</absatz>
</xsl:template>
</xsl:stylesheet>
--
Martin Honnen
http://JavaScript.FAQTs.com/
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--