XML/XSLT stylesheet/list type

Материал из Web эксперт
Перейти к: навигация, поиск

Integer list

File: Transform.xslt
<?xml version="1.0"?>
<xsl:stylesheet version="2.0" 
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xsl:output method="text"/>
 
  <xsl:variable name="some-numbers" as="xs:integer*" select="1 to 5"/>
  <xsl:variable name="reversed-numbers" as="xs:integer*" select="reverse(1 to 5)"/>
  <xsl:template match="/">
    <xsl:value-of select="$some-numbers" separator=", "/>
    <xsl:text>&#xA;</xsl:text>
    <xsl:value-of select="$reversed-numbers" separator=", "/>
  </xsl:template>
</xsl:stylesheet>
Output:
1, 2, 3, 4, 5
5, 4, 3, 2, 1



Variable of string list

File: Data.xml
<?xml version="1.0" encoding="utf-8"?>
<cars>
  <manufacturer name="Chevrolet">
    <car>Corvette</car>
    <car>Impala</car>
    <car>Malibu</car>
  </manufacturer>
  <manufacturer name="Ford">
    <car>Pinto</car>
    <car>Mustang</car>
    <car>Taurus</car>
  </manufacturer>
  <manufacturer name="Volkswagen">
    <car>Beetle</car>
    <car>Jetta</car>
    <car>Passat</car>
    <car>Touraeg</car>
  </manufacturer>
</cars>

File: Transform.xslt
<?xml version="1.0"?>
<xsl:stylesheet version="2.0"
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xsl:output method="text"/>
  <xsl:variable name="months" as="xs:string*"
    select=""January", "February", "March", "April", 
            "May", "June", "July", "August", 
            "September", "October", "November", "December""/>
  <xsl:template match="/">
    <xsl:value-of select="1 to 7" separator=", "/>
    <xsl:text>&#xA;</xsl:text>
    <xsl:value-of select="$months" separator="&#xA;"/>
  </xsl:template>
</xsl:stylesheet>
Output:
1, 2, 3, 4, 5, 6, 7
January
February
March
April
May
June
July
August
September
October
November
December