[xsl] problem while processing external document

Subject: [xsl] problem while processing external document
From: "Klocker Christoph" <Christoph.Klocker@xxxxxxxxxxxxx>
Date: Thu, 3 Mar 2005 14:02:17 +0100
Hi

I have a problem where I can't find an answer for it.
I have an xml file with several of these "artikel" elements

<artikel>
	<nummer>122</nummer>
	<heft>6</heft>
	<seite>152</seite>
	<erkenntnis>
		<stelle>VwGH</stelle>
		<datum>29.10.2003</datum>
		<gz gz-jahr="2003" stelle="VwGH">2003/13/0033</gz>
	</erkenntnis>
	<iv-eintrag>
	<gesetztesstelle>EStG 1988 ' 16 Abs 1 Z 9, ' 26 Z 4</gesetztesstelle>
	<beschreibung>Keine Differenzreisekosten f|r Verpflegungsmehraufwand eines an
die Tankstellen in einem politischen Bezirk Mineralvl liefernden
Lkw-Lenkers</beschreibung>
	<stichwort></stichwort>
	</iv-eintrag>
</artikel>


I process this file with this stylesheet


<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform";>
	<xsl:output method="xml" encoding="UTF-8" indent="yes"/>
	<xsl:template match="node()| @*">
		<xsl:copy>
			<xsl:apply-templates select="@* | node()"/>
		</xsl:copy>
	</xsl:template>
	<xsl:template match="stichwort">

<xsl:for-each
select="document('Steuerindex2004-7.xml')//eintrag[.//verweis/artikel/zeitsch
rift[text()='VStZB']]
[substring-after(verweis/artikel/fundstelle,'/')=current()/../../nummer]">

<xsl:for-each select="stichwort[@verwendung='VStZB_Steuerindex']">
	<xsl:copy>
		<xsl:if test="hauptstichwort">
			<xsl:element name="haupt">
			<xsl:value-of select="normalize-space(hauptstichwort)"/>
			</xsl:element>
		</xsl:if>
		<xsl:if test="substichwort">
		<xsl:element name="sub">
			<xsl:value-of select="normalize-space(substichwort)"/>
		</xsl:element>
		</xsl:if>
		<xsl:if test="subsubstichwort">
			<xsl:element name="subsub">
		<xsl:value-of select="normalize-space(subsubstichwort)"/>
		</xsl:element>
		</xsl:if>
	</xsl:copy>
</xsl:for-each>
</xsl:for-each>
	</xsl:template>
</xsl:stylesheet>


For every empty <stichwort> I look up in the Steuerindex2004-7.xml to get all
of the <hauptstichwort>, <substichwort> <subsubstichwort>.


The Problem I have, It works fine, if I have no second <verweis> element, like
the first <eintrag>. The second however doesn't work. If I remove the
"<verweis> <artikel><zeitschrift>ARD</zeitschrift><artikel><verweis>" element
or put it on second place it works fine!!

I am using saxonb8.2.

/christoph

The file 'Steuerindex2004-7.xml looks like this:

<eintrag absatz="1" paragraph="20" z_litera="d" ziffer="2">
	<satz>Nichtabzugsfdhigkeit des Arbeitszimmer eines Rechtsanwaltes im
        Wohnungsverband als Zweitkanzlei und f|r die Vorbereitung von
        Vortragstdtigkeit</satz>
	<verweis>
		<entscheidung>
			<stelle>VwGH</stelle>
			<datum>2003-07-03</datum>
			<geschaeftszahl>99/15/0177</geschaeftszahl>
		</entscheidung>
	</verweis>
	<verweis>
		<artikel>
			<zeitschrift>VStZB</zeitschrift>
			<fundstelle>2004/291</fundstelle>
		</artikel>
	</verweis>
	<stichwort verwendung="VStZB_Steuerindex">
		<hauptstichwort>Arbeitszimmer</hauptstichwort>
		<substichwort>Rechtsanwalt</substichwort>
		<subsubstichwort>als Zweitkanzlei und Vorbereitung f|r
          Vortragstdtigkeit</subsubstichwort>
	</stichwort>
</eintrag>
<eintrag absatz="2" paragraph="2">
	<satz>Innerbetrieblicher Verlustausgleich mit nicht beg|nstigtem
        Verdu_erungsgewinn, auch wenn dieser zeitlich nach einem mit dem
        ermd_igten Steuersatz nach ' 37 Abs 1 idF vor dem SteuerreformG 1993
        zu besteuernden \bergangsgewinn aus dem Wechsel der
        Gewinnermittlungsart entstanden ist</satz>
	<verweis>
		<entscheidung>
			<stelle>VwGH</stelle>
			<datum>2004-02-24</datum>
			<geschaeftszahl>99/14/0250</geschaeftszahl>
		</entscheidung>
	</verweis>
	<verweis>
		<artikel>
			<zeitschrift>ARD</zeitschrift>
			<fundstelle>5505/12/2004</fundstelle>
		</artikel>
	</verweis>
	<verweis>
		<artikel>
			<zeitschrift>VStZB</zeitschrift>
			<fundstelle>2004/354</fundstelle>
		</artikel>
	</verweis>
	<stichwort verwendung="VStZB_Steuerindex">
		<hauptstichwort>Verlustausgleich</hauptstichwort>
		<substichwort>innerbetrieblicher</substichwort>
		<subsubstichwort>au_erordentliche Eink|nfte</subsubstichwort>
	</stichwort>

</eintrag>

Current Thread