Bitte schön:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="2.0" xmlns="http://earth.google.com/kml/2.1"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:ont="http://www.w3.org/1999/XSL/ont"
xmlns:rdf="http://www.w3.org/1999/XSL/rdf"
xmlns:fn="http://www.w3.org/2005/xpath-functions"
xmlns:fb="http://www.w3.org/23"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:tm="http://www.datenverdrahten.de/tm">
<xsl:output method="xml" indent="yes"/>
<xsl:template match="/">
<kml>
<Document>
<visibility>0</visibility>
<open>1</open>
<xsl:apply-templates/>
</Document>
</kml>
</xsl:template>
<xsl:template match="ontratedDisease">
<xsl:for-each select="ontDisease">
<xsl:variable name="heute" select="xs:date(fn:current-date())"/>
<Folder>
<visibility>0</visibility>
<open>0</open>
<name><xsl:value-of select="ontdiseaseName"/></name>
<xsl:for-each select="onthasVierWRating/ontVierWRating">
<xsl:variable name="vergangen" select="./ontlastTimeDiagnosed"/>
<xsl:variable name="Tag">
<xsl:choose>
<xsl:when test="substring($vergangen,2,1)='.'">
0<xsl:value-of select="normalize-
space(substring($vergangen,1,1))"/>
</xsl:when>
<xsl:otherwise> <!--test="substring(vergangen,1,1)='2'">-->
<xsl:value-of select="normalize-
space(substring($vergangen,1,2))"/>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:variable name="Monat">
<xsl:choose>
<xsl:when test="substring($vergangen,2,1)='.' and
substring($vergangen,4,1)='.'">
0<xsl:value-of select="normalize-
space(substring($vergangen,3,1))"/>
</xsl:when>
<xsl:when test="substring($vergangen,2,1)='.'">
<xsl:value-of select="normalize-
space(substring($vergangen,3,2))"/>
</xsl:when>
<xsl:when test="substring($vergangen,3,1)='.' and
substring($vergangen,5,1)='.'">
0<xsl:value-of select="normalize-
space(substring($vergangen,4,1))"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="normalize-
space(substring($vergangen,4,2))"/>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:variable name="Jahr">
<xsl:choose>
<xsl:when test="substring($vergangen,2,1)='.' and
substring($vergangen,4,1)='.'">
<xsl:value-of select="normalize-
space(substring($vergangen,5,4))"/>
</xsl:when>
<xsl:when test="substring($vergangen,2,1)='.'">
<xsl:value-of select="normalize-
space(substring($vergangen,6,4))"/>
</xsl:when>
<xsl:when test="substring($vergangen,3,1)='.' and
substring($vergangen,5,1)='.'">
<xsl:value-of select="normalize-
space(substring($vergangen,6,4))"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="normalize-
space(substring($vergangen,7,4))"/>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
<xsl:variable name="Datum" select="concat(normalize-space($Jahr),
('-'),normalize-space($Monat),('-'),normalize-space($Tag))"/>
<xsl:variable name="Datum1" select="$Datum"/>
Tag:<xsl:value-of select="$Tag"/>
Monat:<xsl:value-of select="$Monat"/>
Jahr:<xsl:value-of select="$Jahr"/>
heute:<xsl:value-of select="(xs:date($heute))"/>
Die nächste Zeile funktioniert jetzt aber nicht. Da er es nicht als Datum erkennt.~~~xml
Differenz der Tage <xsl:value-of select="fn:days-
from-duration($heute - xs:date($Datum))"/>
</xsl:for-each>
</Folder>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
Zu der XML Datei gibt es nicht viel zu sagen.
Der auszulesende Wert liegt in dieversen Unterordnern die an der Struktur der XSL erkennbar sein sollten:
<ontlastTimeDiagnosed rdf:datatype="&xsd;
date">22.5.2006</ontlastTimeDiagnosed>
Wenn ihr noch was wissen wollt. Immer her mit den Fragen.
Raspu