English | >> Français << | Deutsch | Magyar | 中文 | Polski ZVON > Tutorials > XSLT Tutorial
>> Page 46 << | Précédent | Suivant | Contenu | Index des éléments

La fonction lang() renvoie true ou false suivant que la langue du noeud contextuel telle qu'elle est spécifiée par les attributs xml:lang est identique à ou est un sous-ensemble de la langue spécifiée par la chaîne d'arguments. La langue du noeud contextuel est déterminée par la valeur de l'attribut xml:lang du noeud contextuel, ou, si le noeud contextuel ne comporte pas d'attribut xml:lang, par la valeur de l'attribut xml:lang de l'ancêtre le plus proche du noeud contextuel comportant un attribut xml:lang. Si cet attribut n'est pas présent, alors la fonction lang() renvoie false. S'il est présent, la fonction lang() renvoie true si la valeur de l'attribut est égale à l'argument sans tenir compte de sa casse, ou, s'il y a un suffixe commen?ant par -, de telle sorte que la valeur de l'attribut soit égale à l'argument sans tenir compte du suffixe, ni de la casse.

Feuille de style XSLT 1

Source XML
<source>

<P xml:lang="de">
     <text xml:lang="cs">a</text>
     <text xml:lang="en">and</text>
     <text>und</text>
</P>

</source>

Sortie
<P>Czech: a</P>

<P>English: and</P>

<P>German: und</P>

Vue HTML

Czech: a

English: and

German: und

Feuille de style XSLT
<xsl:stylesheet version = '1.0'
     xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>

<xsl:template match="text">
     <P>
          <xsl:choose>
               <xsl:when test='lang("cs")'>
                    <xsl:text>Czech: </xsl:text>
               </xsl:when>
               <xsl:when test='lang("en")'>
                    <xsl:text>English: </xsl:text>
               </xsl:when>
               <xsl:when test='lang("de")'>
                    <xsl:text>German: </xsl:text>
               </xsl:when>
          </xsl:choose>
          <xsl:value-of select="."/>
     </P>
</xsl:template>


</xsl:stylesheet>