<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
version="2.0"
exclude-result-prefixes="#all"
>
<xsl:output indent="yes"/>
<xsl:template match="/">
<xsl:variable name="utc-timestamp" select="current-dateTime()"/>
<xsl:variable name="gmt-timestamp" select="adjust-dateTime-to-timezone($utc-timestamp, xs:dayTimeDuration('PT0H'))"/>
<xsl:variable name="eu-timestamp" select="adjust-dateTime-to-timezone($utc-timestamp, xs:dayTimeDuration('PT1H'))"/>
<xsl:variable name="est-timestamp" select="adjust-dateTime-to-timezone($utc-timestamp, xs:dayTimeDuration('-PT5H'))"/>
<xsl:variable name="fcccYear" select="substring($est-timestamp,7,2)"/>
<date timestamp="{$utc-timestamp}">
<gmt str="{$gmt-timestamp}">
<xsl:value-of select="$fcccYear"/>
</gmt>
<est str="{$est-timestamp}">
<xsl:value-of select="format-dateTime($est-timestamp, '[D01][M01][Y0001][h]:[m][PN,*-2] [ZN,*-3]', (), (), 'us')"/>
</est>
</date>
</xsl:template>
</xsl:stylesheet>
Я пытаюсь получить подстроку настроенного времени, и я получаю ошибку ниже, что нормально. Может кто-нибудь, пожалуйста, дайте мне знать, как преобразовать XS: dateTime в XS: String
ОШИБКА: Обязательный тип элемента первого аргумента substring (): xs: string; предоставленное значение имеет тип элемента xs: dateTime