Am 26.08.2008 um 17:08 schrieb Michael Kay:
[..snip.]
<xsl:variable name="veranstaltungen" select="//news/month" />
<xsl:when test="$veranstaltungen[(_at_)year=(_dot_)(_dot_)/@date]/@name =
substring (@name,1,3)">
do something
</xsl:when>
[..snip.]
Why does the "../@date" in the while clause not contain (at
least it seems so) anything?
You haven't shown us your XML source, but my guess is that you are
imagining
that ../@date selects the same thing inside the predicate as it
would select
outside the predicate. In fact the context node changes inside the
predicate. Perhaps you want
test="$veranstaltungen[(_at_)year=current()/../@date]
Michael Kay
http://www.saxonica.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>
--~--
You are right. I need to show you more. Both the XSL and the 2 XML.
And as an extra I'll show you what i want to achieve (archive):
2008 | Jan | Feb | Mär | Apr | May | Jun (with Link) | Jul (with
Link) | Aug (with Link) | Sep | Okt | Nov | Dez
2007 | Jan | Feb | Mär (with Link) | Apr | May | Jun | Jul | Aug |
Sep | Okt | Nov | Dez
XSL:
<dl class="archiv">
<xsl:variable name="veranstaltungen" select="//news/month" />
<xsl:for-each select="document('/var/www/vhosts/feuerbach.de/
httpdocs/relaunch/external_xml/datum.xml')//year[(_at_)date =
$veranstaltungen/@year]">
<xsl:sort select="@date" order="descending"/>
<dt><a href=""><xsl:value-of select="@date" /></a></dt>
<xsl:for-each select="monat">
<xsl:choose>
<xsl:when test="$veranstaltungen[(_at_)year=(_dot_)(_dot_)/@date]/@name = substring
(@name,1,3)">
<dd><a href="" title=""><xsl:value-of select="substring(@name,
1,3)" /></a></dd>
</xsl:when>
<xsl:otherwise>
<dd class="empty"><xsl:value-of select="substring(@name,1,3)" /
></dd>
</xsl:otherwise>
</xsl:choose>
</xsl:for-each>
</xsl:for-each>
</dl>
XML 1:
<news count="007" offset="001" month="" letzter="007">
<month id="3" name="Mär" year="2007" events="1"/>
<month id="7" name="Jul" year="2008" events="2"/>
<month id="8" name="Aug" year="2008" events="3"/>
<month id="9" name="Sep" year="2008" events="1"/>
</news>
XML 2 from document():
<year date="2007">
<monat name="Januar" number="01" start="1" days="31" />
<monat name="Februar" number="02" start="4" days="28" />
<monat name="März" number="03" start="4" days="31" />
<monat name="April" number="04" start="7" days="30" />
<monat name="Mai" number="05" start="2" days="31" />
<monat name="Juni" number="06" start="5" days="30" />
<monat name="Juli" number="07" start="7" days="31" />
<monat name="August" number="08" start="3" days="31" />
<monat name="September" number="09" start="6" days="30" />
<monat name="Oktober" number="10" start="1" days="31" />
<monat name="November" number="11" start="4" days="30" />
<monat name="Dezember" number="12" start="6" days="31" />
</year>
--~------------------------------------------------------------------
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>
--~--