Exemple de <xsl:fallback>
La feuille de style fallback.xsl fournit une autre méthode de traitement d'un document XML. Elle essaie de traiter le document XML avec un élément <xsl:import-table> hypothétique. Cet élément n'étant pas pris en charge dans la version actuelle de l'analyseur, le document est traité tour à tour avec le script à l'intérieur de l'élément de secours.
Fichier XML (records.xml)
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="fallback.xsl"?>
<records>
<record>
<name>Adam Barr</name>
<address>222 Cherry</address>
<phone>555-797-2355</phone>
</record>
<record>
<name>Jeff Adell</name>
<address>730 Elm</address>
<phone>555-797-5555</phone>
</record>
</records>
Fichier XSLT (fallback.xsl)
<?xml version="1.0"?>
<xsl:stylesheet version="1.1"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" >
<xsl:template match="/">
<HTML>
<HEAD><TITLE>Output Table</TITLE></HEAD>
<BODY>
<xsl:import-table href="blah.html" name="sample">
<xsl:fallback>
<p>
This version of the parser does not support the creation of a
table with the 'xsl:import-table' element, so the following
table has been generated using the 'fallback' element.
</p>
<table border='2'>
<xsl:for-each select='records/record'>
<tr>
<td><xsl:value-of select='name'/></td>
<td><xsl:value-of select='address'/></td>
<td><xsl:value-of select='phone'/></td>
</tr>
</xsl:for-each>
</table>
</xsl:fallback>
</xsl:import-table>
</BODY>
</HTML>
</xsl:template>
</xsl:stylesheet>
Sortie
Dans ce scénario, la version actuelle de l'analyseur ne prend pas en charge la création d'une table avec l'élément <xsl:import-table> . Ainsi, la table suivante est générée à l'aide de l'élément <xsl:fallback> :
Adam Barr |
222 Cherry |
555-797-2355 |
Jeff Adell |
730 Elm |
555-797-5555 |