| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322 |
- <?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"
- xmlns:system_cache__appinfo="http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/appinfo.xsd"
- xmlns:system_cache__dita="http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/dita.xsd"
- exclude-result-prefixes="xs"
- version="2.0">
-
-
- <xsl:variable name="debug.dateTime.data" select="'2017-10-10T00:00:00'"/>
-
- <xsl:variable name="debug.dateTime.data2" select="'01.02.2017'"/>
- <xsl:variable name="debug.dateTime.data3" select="'1.12.2008'"/>
-
-
- <xsl:function name="system_cache__dita:year">
- <xsl:param name="date"/>
- <xsl:variable name="date">
- <xsl:value-of select="$date"/>
- </xsl:variable>
- <xsl:choose>
-
- <xsl:when test="string($date) castable as xs:dateTime">
- <!--<xsl:message>#20 passed as dateTime</xsl:message>-->
- <xsl:value-of select="format-date(xs:date(xs:dateTime($date)),'[Y]')"/>
- </xsl:when>
- <xsl:when test="string($date) castable as xs:date">
- <!--<xsl:message>#20 passed as date</xsl:message>-->
- <xsl:value-of select="format-date(xs:date($date),'[Y]')"/>
- </xsl:when>
- <xsl:when test="tokenize(string($date),'\.')[3]">
- <!--<xsl:message>#20 date passed as tokenize</xsl:message>-->
- <xsl:value-of select="tokenize($date,'\.')[3]"/>
- </xsl:when>
- <xsl:when test="tokenize(string($date),'/')[3]">
- <xsl:choose>
- <xsl:when test="string-length(substring-before(tokenize(string($date),'/')[3],' '))=4">
- <xsl:value-of select="substring-before(tokenize(string($date),'/')[3],' ')"/>
- <xsl:message>#28-33A WARNING (system_cache__dita:year) date from="<xsl:value-of select="$date"/>" == "<xsl:value-of select="substring-before(tokenize(string($date),'/')[3],' ')"/>"</xsl:message>
- </xsl:when>
- <xsl:otherwise>
- <xsl:message terminate="no">#28-33 ERROR ERROR in date format for value "<xsl:value-of select="$date"/>"! =="<xsl:value-of select="substring-before(tokenize(string($date),'/')[3],' ')"/>" </xsl:message>
- </xsl:otherwise>
- </xsl:choose>
-
- </xsl:when>
- <xsl:otherwise>
- <xsl:value-of select="'NaN'"/>
- <xsl:message terminate="no">#28 ERROR ERROR in date format for value "<xsl:value-of select="$date"/>"! </xsl:message>
- </xsl:otherwise>
-
- </xsl:choose>
-
-
- </xsl:function>
-
- <!--<xsl:function name="system_cache__dita:year-month">
- <xsl:param name="date"/>
- <xsl:variable name="date">
- <xsl:choose>
- <xsl:when test="tokenize($date,'-')[3]">
- <xsl:value-of select="tokenize($date,'-')[1]"/><xsl:text>-</xsl:text><xsl:value-of select="tokenize($date,'-')[2]"/>
- </xsl:when>
- <xsl:otherwise>
- <xsl:value-of select="$date"/>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:variable>
-
-
-
-
- <xsl:variable name="out">
- <xsl:choose>
- <!-\- TU BYLA LINIA 41 -\->
- <xsl:when test="string($date) castable as xs:dateTime">
- <!-\-<xsl:message>#20 passed as dateTime</xsl:message>-\->
- <xsl:value-of select="format-date(xs:date(xs:dateTime($date)),'[Y-M]')"/>
- </xsl:when>
- <xsl:when test="string($date) castable as xs:date">
- <!-\-<xsl:message>#20 passed as date</xsl:message>-\->
- <xsl:value-of select="format-date(xs:date($date),'[Y-M]')"/>
- </xsl:when>
- <xsl:when test="tokenize(string($date),'\.')[3]">
- <!-\-<xsl:message>#20 date passed as tokenize</xsl:message>-\->
- <xsl:value-of select="tokenize($date,'\.')[3]"/><xsl:text>-</xsl:text>
- <xsl:value-of select="tokenize($date,'\.')[2]"/>
- </xsl:when>
- <xsl:when test="tokenize(string($date),'/')[3]">
- <xsl:choose>
- <xsl:when test="string-length(substring-before(tokenize(string($date),'/')[3],' '))=4">
- <xsl:value-of select="substring-before(tokenize(string($date),'/')[3],' ')"/><xsl:text>-</xsl:text><xsl:value-of select="tokenize(string($date),'/')[2]"/>
- <xsl:message>#28-91A WARNING (system_cache__dita:year-month) date from="<xsl:value-of select="$date"/>" == "<xsl:value-of select="substring-before(tokenize(string($date),'/')[3],' ')"/>-<xsl:value-of select="tokenize(string($date),'/')[2]"/>"</xsl:message>
- </xsl:when>
- <xsl:otherwise>
- <xsl:message terminate="no">#28-91 ERROR ERROR in date format for value "<xsl:value-of select="$date"/>"! =="<xsl:value-of select="substring-before(tokenize(string($date),'/')[3],' ')"/>" </xsl:message>
- </xsl:otherwise>
- </xsl:choose>
-
- </xsl:when>
- <xsl:otherwise>
- <xsl:value-of select="'NaN'"/>
- <xsl:message terminate="no">#28-B ERROR ERROR in date format for value "<xsl:value-of select="$date"/>"! </xsl:message>
- </xsl:otherwise>
-
- </xsl:choose>
- </xsl:variable>
- <xsl:value-of select="$out"/>
-
- </xsl:function>-->
-
-
- <xsl:function name="system_cache__dita:year-month">
- <xsl:param name="date"/>
- <xsl:choose>
-
- <xsl:when test="string($date) castable as xs:dateTime">
- <!--<xsl:message>#20 passed as dateTime</xsl:message>-->
- <xsl:value-of select="format-date(xs:date(xs:dateTime($date)),'[Y]')"/>-<xsl:value-of select="number(format-date(xs:date(xs:dateTime($date)),'[M]')) "/>
- </xsl:when>
- <xsl:when test="string($date) castable as xs:date">
- <!--<xsl:message>#20 passed as date</xsl:message>-->
- <xsl:value-of select="format-date(xs:date($date),'[Y]')"/>-<xsl:value-of select="number(format-date(xs:date($date),'[M]'))"/>
- </xsl:when>
- <xsl:when test="tokenize(string($date),'\.')[3]">
- <!--<xsl:message>#20 date passed as tokenize</xsl:message>-->
- <xsl:value-of select="tokenize($date,'\.')[3]"/><xsl:text>-</xsl:text>
- <xsl:value-of select="number(tokenize($date,'\.')[2])"/>
- </xsl:when>
-
- <xsl:when test="tokenize(string($date),'/')[3]">
- <xsl:choose>
- <xsl:when test="string-length(substring-before(tokenize(string($date),'/')[3],' '))=4">
-
- <xsl:value-of select="substring-before(tokenize(string(system_cache__dita:date.serialize_string($date)),'/')[3],' ')"/><xsl:text>-</xsl:text><xsl:value-of select="number(tokenize(string(system_cache__dita:date.serialize_string($date)),'/')[2])"/>
- <xsl:message>#28-135 WARNING (system_cache__dita:year-month) date from="<xsl:value-of select="$date"/>" == "<xsl:value-of select="substring-before(tokenize(string($date),'/')[3],' ')"/>-<xsl:value-of select="number(tokenize(string($date),'/')[2])"/>"</xsl:message>
- </xsl:when>
- <xsl:otherwise>
- <xsl:message terminate="no">#28-135 ERROR ERROR in date format for value "<xsl:value-of select="$date"/>"! =="<xsl:value-of select="substring-before(tokenize(string($date),'/')[3],' ')"/>" </xsl:message>
- </xsl:otherwise>
- </xsl:choose>
-
- </xsl:when>
-
- <xsl:otherwise>
- <xsl:value-of select="'NaN'"/>
- <xsl:message terminate="no">#28-135-C ERROR ERROR in date format for value "<xsl:value-of select="$date"/>"! </xsl:message>
- </xsl:otherwise>
-
- </xsl:choose>
-
-
- </xsl:function>
-
-
- <xsl:function name="system_cache__dita:year-month-day">
- <xsl:param name="date"/>
- <xsl:choose>
-
- <xsl:when test="string($date) castable as xs:dateTime">
- <!--<xsl:message>#20 passed as dateTime</xsl:message>-->
- <!--<xsl:value-of select="format-date(xs:date(xs:dateTime($date)),'[Y]')"/>-<xsl:value-of select="number(format-date(xs:date(xs:dateTime($date)),'[M]')) "/>-<xsl:value-of select="number(format-date(xs:date(xs:dateTime($date)),'[D]')) "/>-->
- <xsl:value-of select="format-date(xs:date(xs:dateTime($date)),'[Y0001]-[M01]-[D01]')"/>
- </xsl:when>
- <xsl:when test="string($date) castable as xs:date">
- <!--<xsl:message>#20 passed as date</xsl:message>-->
- <!--<xsl:value-of select="format-date(xs:date($date),'[Y]')"/>-<xsl:value-of select="number(format-date(xs:date($date),'[M]'))"/>-<xsl:value-of select="number(format-date(xs:date($date),'[D]'))"/>-->
- <xsl:value-of select="format-date(xs:date($date),'[Y0001]-[M01]-[D01]')"/>
- </xsl:when>
- <xsl:when test="tokenize(string($date),'\.')[3]">
- <!--<xsl:message>#20 date passed as tokenize</xsl:message>-->
- <xsl:value-of select="tokenize($date,'\.')[3]"/><xsl:text>-</xsl:text>
- <xsl:if test="number(tokenize($date,'\.')[2]) < 10">0</xsl:if><xsl:value-of select="number(tokenize($date,'\.')[2])"/><xsl:text>-</xsl:text>
- <xsl:if test="number(tokenize($date,'\.')[1]) < 10">0</xsl:if><xsl:value-of select="number(tokenize($date,'\.')[1])"/>
- </xsl:when>
-
- <xsl:when test="tokenize(string($date),'/')[3]">
- <xsl:choose>
- <xsl:when test="string-length(substring-before(tokenize(string($date),'/')[3],' '))=4">
- <xsl:value-of select="substring-before(tokenize(string(system_cache__dita:date.serialize_string($date)),'/')[3],' ')"/>
- <xsl:text>-</xsl:text>
- <xsl:if test="number(tokenize(string(system_cache__dita:date.serialize_string($date)),'/')[2]) < 10">0</xsl:if>
- <xsl:value-of select="number(tokenize(string(system_cache__dita:date.serialize_string($date)),'/')[2])"/><xsl:text>-</xsl:text>
- <xsl:if test="number(tokenize(string(system_cache__dita:date.serialize_string($date)),'/')[1]) < 10">0</xsl:if>
- <xsl:value-of select="number(tokenize(string(system_cache__dita:date.serialize_string($date)),'/')[1])"/>
- <xsl:message>#28-180 WARNING (system_cache__dita:year-month) date from="<xsl:value-of select="$date"/>" == "<xsl:value-of select="substring-before(tokenize(string($date),'/')[3],' ')"/>-<xsl:value-of select="number(tokenize(string($date),'/')[2])"/>"</xsl:message>
- </xsl:when>
- <xsl:otherwise>
- <xsl:message terminate="no">#28-180 ERROR ERROR in date format for value "<xsl:value-of select="$date"/>"! =="<xsl:value-of select="substring-before(tokenize(string($date),'/')[3],' ')"/>" </xsl:message>
- </xsl:otherwise>
- </xsl:choose>
-
- </xsl:when>
-
- <xsl:otherwise>
- <xsl:value-of select="'NaN'"/>
- <xsl:message terminate="no">#28-180-C ERROR ERROR in date format for value "<xsl:value-of select="$date"/>"! </xsl:message>
- </xsl:otherwise>
-
- </xsl:choose>
-
-
- </xsl:function>
-
-
- <xsl:function name="system_cache__dita:year-timestamp-day">
- <xsl:param name="date"/>
- <xsl:variable name="date">
- <xsl:value-of select="$date"/>
- </xsl:variable>
- <xsl:choose>
-
- <xsl:when test="string($date) castable as xs:dateTime">
- <!--<xsl:message>#20 passed as dateTime</xsl:message>-->
- <xsl:value-of select="number(format-date(xs:date(xs:dateTime($date)),'[Y]')) * 365 * number(format-date(xs:date(xs:dateTime($date)),'[M]')) * 30 + number(format-date(xs:date(xs:dateTime($date)),'[D]'))"/>
- </xsl:when>
- <!--<xsl:when test="string($date) castable as xs:date">
- <!-\-<xsl:message>#20 passed as date</xsl:message>-\->
- <xsl:value-of select="number(format-date(xs:date($date),'[Y]')) * 365 * number(format-date(xs:date($date),'[M]')) * 30 + number(format-date(xs:date($date),'[D]'))"/>
- </xsl:when>-->
- <xsl:when test="string($date) castable as xs:date">
- <!--<xsl:message>#20 passed as date</xsl:message>-->
- <xsl:value-of select="number(format-date(xs:date($date),'[Y]')) * 365 + number(format-date(xs:date($date),'[M]')) * 30 + number(format-date(xs:date($date),'[D]'))"/>
- </xsl:when>
-
- </xsl:choose>
-
-
- </xsl:function>
-
- <xsl:function name="system_cache__dita:year-timestamp-month">
- <xsl:param name="date"/>
- <xsl:choose>
-
- <xsl:when test="string($date) castable as xs:dateTime">
- <!--<xsl:message>#20 passed as dateTime</xsl:message>-->
- <xsl:value-of select="number(format-date(xs:date(xs:dateTime($date)),'[Y]')) * 365 * number(format-date(xs:date(xs:dateTime($date)),'[M]')) * 30 "/>
- </xsl:when>
- <!--<xsl:when test="string($date) castable as xs:date">
- <!-\-<xsl:message>#20 passed as date</xsl:message>-\->
- <xsl:value-of select="number(format-date(xs:date($date),'[Y]')) * 365 * number(format-date(xs:date($date),'[M]')) * 30 + number(format-date(xs:date($date),'[D]'))"/>
- </xsl:when>-->
- <xsl:when test="string($date) castable as xs:date">
- <!--<xsl:message>#20 passed as date</xsl:message>-->
- <xsl:value-of select="number(format-date(xs:date($date),'[Y]')) * 365 + number(format-date(xs:date($date),'[M]')) * 30 "/>
- </xsl:when>
- <xsl:otherwise>
- <xsl:value-of select="false()"/>
- <xsl:message>#245 ERROR IN system_cache__dita:year-timestamp-month $date = <xsl:value-of select="$date"/>;</xsl:message>
- </xsl:otherwise>
-
- </xsl:choose>
-
-
- </xsl:function>
-
-
-
-
- <xsl:function name="system_cache__dita:year-quarter">
- <xsl:param name="date"/>
- <xsl:variable name="date">
- <xsl:value-of select="$date"/>
- </xsl:variable>
- <xsl:choose>
-
- <xsl:when test="string($date) castable as xs:dateTime">
- <!--<xsl:message>#20 passed as dateTime</xsl:message>-->
- <xsl:value-of select="format-date(xs:date(xs:dateTime($date)),'[Y]')"/>|<xsl:value-of select="ceiling(number(format-date(xs:date(xs:dateTime($date)),'[M]')) div 3)"/>
- </xsl:when>
- <xsl:when test="string($date) castable as xs:date">
- <!--<xsl:message>#20 passed as date</xsl:message>-->
- <xsl:value-of select="format-date(xs:date($date),'[Y]')"/>|<xsl:value-of select="ceiling(number(format-date(xs:date($date),'[M]')) div 3)"/>
- </xsl:when>
- <xsl:when test="tokenize(string($date),'\.')[3]">
- <!--<xsl:message>#20 date passed as tokenize</xsl:message>-->
- <xsl:value-of select="tokenize($date,'\.')[3]"/><xsl:text>|</xsl:text>
- <xsl:value-of select="ceiling(number(tokenize($date,'\.')[2]) div 3)"/>
- </xsl:when>
-
- <xsl:when test="tokenize(string($date),'/')[3]">
- <xsl:choose>
- <xsl:when test="string-length(substring-before(tokenize(string($date),'/')[3],' '))=4">
-
- <xsl:value-of select="substring-before(tokenize(string(system_cache__dita:date.serialize_string($date)),'/')[3],' ')"/><xsl:text>|</xsl:text><xsl:value-of select="ceiling(number(tokenize(string(system_cache__dita:date.serialize_string($date)),'/')[2]) div 3)"/>
- <xsl:message>#28-131A WARNING (system_cache__dita:year-quarter) date from="<xsl:value-of select="$date"/>" == "<xsl:value-of select="substring-before(tokenize(string($date),'/')[3],' ')"/>|<xsl:value-of select="ceiling(number(tokenize(string($date),'/')[2]) div 3)"/>"</xsl:message>
- </xsl:when>
- <xsl:otherwise>
- <xsl:message terminate="no">#28-131 ERROR ERROR in date format for value "<xsl:value-of select="$date"/>"! =="<xsl:value-of select="substring-before(tokenize(string($date),'/')[3],' ')"/>" </xsl:message>
- </xsl:otherwise>
- </xsl:choose>
-
- </xsl:when>
-
- <xsl:otherwise>
- <xsl:value-of select="'NaN'"/>
- <xsl:message terminate="no">#28-C ERROR ERROR in date format for value "<xsl:value-of select="$date"/>"! </xsl:message>
- </xsl:otherwise>
-
- </xsl:choose>
-
-
- </xsl:function>
-
- <xsl:function name="system_cache__dita:date.serialize_string">
- <xsl:param name="date_string"/>
- <xsl:variable name="out">
- <xsl:value-of select="$date_string"/>
- </xsl:variable>
- <xsl:value-of select="$out"/>
- </xsl:function>
-
-
- <xsl:template name="debug.dateTime">
- <xsl:value-of select="$debug.dateTime.data"/>=<xsl:value-of select="system_cache__dita:year($debug.dateTime.data)"/><xsl:text>
- </xsl:text>
- <xsl:value-of select="$debug.dateTime.data2"/>=<xsl:value-of select="system_cache__dita:year($debug.dateTime.data2)"/><xsl:text>
- </xsl:text>
- <xsl:value-of select="$debug.dateTime.data3"/>=<xsl:value-of select="system_cache__dita:year($debug.dateTime.data3)"/><xsl:text>
- </xsl:text>
- </xsl:template>
- </xsl:stylesheet>
|