XSLXSL XLink
Le langage de liaison XLink
Comme indiqué par XML Names, l'utilisation des éléments et attributs XLink requiert la déclaration de l'espace de nommage XLink. Exemple.
<monElement
xmlns:xlink="http://www.w3.org/1999/xlink">
...
</monElement>
xmlns:xlink="http://www.w3.org/1999/xlink">
...
</monElement>
Voici un exemple avec un élément "renvoi", issu d'un espace de nommage non-XLink, ayant des attributs globaux XLink :
<mon:renvoi
xmlns:mon="http://exemple.com/"
xmlns:xlink="http://www.w3.org/1999/xlink"
xlink:type="simple"
xlink:href="etudiants.xml"
xlink:role="http://www.exemple.com/props_lien/liste_etudiants"
xlink:title="Liste des étudiants"
xlink:show="new"
xlink:actuate="onRequest">
Liste courante des étudiants
</mon:renvoi>
xmlns:mon="http://exemple.com/"
xmlns:xlink="http://www.w3.org/1999/xlink"
xlink:type="simple"
xlink:href="etudiants.xml"
xlink:role="http://www.exemple.com/props_lien/liste_etudiants"
xlink:title="Liste des étudiants"
xlink:show="new"
xlink:actuate="onRequest">
Liste courante des étudiants
</mon:renvoi>
Exemple complet de fichier XSL à tester avec le fichier XML "mesliens.xml".
<?xml version="1.0" ?>
<xsl:transform version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<h2><xsl:value-of select="liste/site[position()=2]/libelle/@lien"/></h2>
<table border="1">
<xsl:for-each select="liste/site">
<tr>
<td><a href="http://{libelle/@lien}"><xsl:value-of select="libelle"/></a></td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:transform>
<xsl:transform version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<h2><xsl:value-of select="liste/site[position()=2]/libelle/@lien"/></h2>
<table border="1">
<xsl:for-each select="liste/site">
<tr>
<td><a href="http://{libelle/@lien}"><xsl:value-of select="libelle"/></a></td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:transform>
Explication
L'attribut "lien" dans le fichier XML est appelé dans le fichier XSL ci-dessus avec le signe "@".
-> Voir le résultat
Pour aller plus loin...
Le Site officiel du W3c (traduit en français).


