http://www.w3schools.com/schema/schema_dtypes_date.asp
Wie kann ich den XSLT-Prozessor einfach anweisen, eine Datumsangabe zu formatieren ? Also zum Beispiel
<sendung datum="2002-01-03"/>
soll in der Ausgabe zu "3.Januar 2002" mutieren.
<xsl:value-of select="@datum"/>
ralf ...
Hallo,
Teil 1 (der Tag):
<xsl:value-of select="number(substring(@datum,9))"/>xsl:text.</xsl:text>
Die number-Funktion ist notwendig, um die führende Null wegzukriegen.
die 9 kommt daher, daß substring bei 1 zu zählen beginnt, nicht bei 0!
Teil 3 (das Jahr):
<xsl:value-of select="substring(@datum,1,4)"/>
Teil 2 (der Monat) ist etwas aufwendiger:
xsl:choose
<xsl:when test="substring(@datum,6,2) = 1">Januar</xsl:when>
<xsl:when test="substring(@datum,6,2) = 2">Februar</xsl:when>
<xsl:when test="substring(@datum,6,2) = 3">März</xsl:when>
<xsl:when test="substring(@datum,6,2) = 4">April</xsl:when>
<xsl:when test="substring(@datum,6,2) = 5">Mai</xsl:when>
<xsl:when test="substring(@datum,6,2) = 6">Juni</xsl:when>
<xsl:when test="substring(@datum,6,2) = 7">Juli</xsl:when>
<xsl:when test="substring(@datum,6,2) = 8">August</xsl:when>
<xsl:when test="substring(@datum,6,2) = 9">September</xsl:when>
<xsl:when test="substring(@datum,6,2) = 10">Oktober</xsl:when>
<xsl:when test="substring(@datum,6,2) = 11">November</xsl:when>
<xsl:when test="substring(@datum,6,2) = 12">Dezember</xsl:when>
</xsl:choose>
(vielleicht gibt es für den Monat eine einfachere Lösung, meine funktioniert zumindest)
Die 3 Teile mußt Du dann noch in der richtigen Reihenfolge zusammensetzen, aber das schaffst Du hoffentlich.