>> English << | Français | Deutsch | Magyar | 中文 | Polski ZVON > Tutorials > XSLT Tutorial
>> Page 8 << | Prev | Next | Contents | Element Index

A template can match from a selection of location paths, individual paths being separated with "|" ( XSLT stylesheet 1 ). Wildcard "*" selects all possibilities. Compare XSLT stylesheet 1 with XSLT stylesheet 2 .

XSLT stylesheet 1

XML Source
<source>

<employee>
     <firstName>Joe</firstName>
     <surname>Smith</surname>
</employee>

</source>

Output
<div>[template: firstName outputs Joe ]</div>

<div>[template: surname outputs Smith ]</div>

HTML view
[template: firstName outputs Joe ]
[template: surname outputs Smith ]
XSLT stylesheet
<xsl:stylesheet version = '1.0'
     xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>

<xsl:template match="firstName|surname">
     <div>
          <xsl:text>[template: </xsl:text>
          <xsl:value-of select="name()"/>
          <xsl:text> outputs </xsl:text>
          <xsl:apply-templates/>
          <xsl:text> ]</xsl:text>
     </div>
</xsl:template>


</xsl:stylesheet>


XSLT stylesheet 2

XML Source
<source>

<employee>
     <firstName>Joe</firstName>
     <surname>Smith</surname>
</employee>

</source>

Output
<div>[template: source outputs
<div>[template: employee outputs
<div>[template: firstName outputs Joe ]</div>

     <div>[template: surname outputs Smith ]</div>
]</div>
]</div>

HTML view
[template: source outputs
[template: employee outputs
[template: firstName outputs Joe ]
[template: surname outputs Smith ]
]
]
XSLT stylesheet
<xsl:stylesheet version = '1.0'
     xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>

<xsl:template match="*">
     <div>
          <xsl:text>[template: </xsl:text>
          <xsl:value-of select="name()"/>
          <xsl:text> outputs </xsl:text>
          <xsl:apply-templates/>
          <xsl:text> ]</xsl:text>
     </div>
</xsl:template>


</xsl:stylesheet>