Voila ...
1) ma fonction :
2) mon xml
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 <xsl:template name="fct_commentaire"> <!-- récupère la description en plusieurs langues si existantes et modification de la balise 'an' en 'en' --> <xsl:param name="chemin" select="/" /> <!-- en parametre : le chemin d'acces en "racine/noeud" --> <xsl:param name="noeud" select="text" /> <!-- en parametre : le nom de la balise que l'on vas créer --> <xsl:for-each select="$chemin/*" > <!--xsl pour chaque noeud fils de $chemin --> <xsl:choose> <!--xsl plusieurs cas possibles --> <xsl:when test="name()='an'"> <!--description existe en anglais (modif de "an" vers "en") --> <xsl:element name="$text"> <xsl:attribute name="lang">en</xsl:attribute> <xsl:value-of select="." /> <!--xsl on récupère la valeur de la balise ""active"" --> </xsl:element > <!-- </text> --> </xsl:when> <!-- fin du cas de la langue anglaise --> <xsl:otherwise> <!--description existe en d'autres langues --><!--xsl tout les autres cas (autres que des when) --> <xsl:element name="$text"> <xsl:attribute name="lang"><xsl:value-of select="name()"/></xsl:attribute> <xsl:value-of select="." /> </xsl:element > <!-- </text> --> </xsl:otherwise> <!-- fin du cas des autres langues --> </xsl:choose> </xsl:for-each> </xsl:template><!-- fin de la fonction -->
3) mon xslt
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 <prompt> <fr>Choisissez un fichier de petits composés (format smiles ou sdf )</fr> <an>Choose a small compound file (smiles or sdf format)</an> </prompt>
4) le resultat : il ne m'ecrit pas mes balises "prompt' ... et je comprend pas pourquoi
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 <xsl:call-template name="fct_commentaire"> <!--xsl fait appel à une fonction --> <xsl:with-param name="chemin" select="./attributes/prompt"/> <!--xsl avec le parametre --> <xsl:param name="noeud" select="prompt" /> </xsl:call-template>
Partager