Hallo Kati,
ich möchte mir gerne über eine html-Datei das Alter meiner Patienten ausgeben lassen. Das sieht folgendermaßen in meiner .xslt aus:
<xsl:for-each select="Patient">
<xsl:value-of select="year-from-date(current-date()) - year-from- date(Geburtsdatum)"/>
xsl:text Jahre</xsl:text><br/></xsl:for-each>
Diese Datumsfunktionen stammen aus XPath 2.0 und werden mit XSLT 2.0 oder XQuery 1.0 verwendet. Browser unterstützen nur XSLT/XPath 1.0. Mit einem Prozessor wie Saxon oder AltovaXML funktioniert dieser Test:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xsl:template match="/">
<xsl:value-of select="fn:year-from-date(fn:current-date()) - fn:year-from-date(xs:date('1970-01-01'))"/><!-- 39 -->
</xsl:template>
</xsl:stylesheet>
Grüße,
Thomas