XSLT-transformation string zu datetime-format

Ich versuche zu konvertieren ein Datum/Zeit im format-string zu datetime-format. Momentan habe ich diese, aber es funktioniert nicht:

<xsl:function name="hcim:ParseDateTime" as="xs:dateTime">
    <xsl:param name="DateTimeAsString" as="xs:string"/>

    <xsl:variable name="date" select="xs:date(substring($DateTimeAsString, 0, 10))"/>
    <xsl:variable name="time" select="xs:time(substring($DateTimeAsString, 11, 8))"/>
    <xsl:value-of select="dateTime($date, $time)" />
</xsl:function>

Die Fehler ich erhalte, ist:

XSLT2 Transformation failed: Error in XPath 2.0 expression 
    (Cast failed, invalid lexical value - xs:date 'String' - xs:date)
Error occurred in file '******' in statement 
    'select="xs:date(substring($DateTimeAsString, 0, 10))"'.

Gibt es einen besseren Weg, dies zu tun? Meine eingehende Zeichenfolge im format:

2011-07-15 01:05:14 PM

InformationsquelleAutor farbodg | 2013-08-08

Schreibe einen Kommentar