Un exemple particulier qui marche :

<xsl:template match="/page/html:html//mova:toto">
    <xsl:value-of select="/page/mova:toto" />
</xsl:template>


Mais je n'arrive pas à généraliser :
<xsl:template match="/page/html:html//mova:*">
    <xsl:value-of select="concat('/page/mova:', local-name())" />
</xsl:template>


J'ai du mal à croire qu'il n'y aurait pas de solution mais je n'arrive pas à la trouver.
Administrateur
"Un string dans un select ?"
>> Laissez pas traîner vos strings n'importe où ! Smiley biggol

OK -> Smiley dehors
Salut,

Je comprend pas trop comment et qu'es que tu veux faire
tu match /page/html:html//mova:toto

et tu fais un value-of de page/mova:toto.

ca veut dire que tu es dans /page/html:html//mova:toto/page/mova:toto?

quelle est ta source et quelle est ton but?

++

Thierry
Salut,
Je suis heureux de voir qu'il y a enfin quelqu'un que ce problème intéresse.

Regarde ici :
http://forum.alsacreations.com/topic.php?fid=3&tid=2292

Dans une première formulation de la question j'avais donné plus de détails et j'ai cru que trop de lecture en décourageait certains.

Pour ce qui est de la structure de mon fichier XML, je te la rappelle ici :

<page>
<html>
<head><titre><mova:titre /></titre></head>
<body>...</body>
</html>
<mova:titre>leTitre</mova:titre>
</page>


En fait, c'est fichier XHTML qui doit me servir de template.
Je l'inclu dans un fichier XML qui contient à la suite les données du template, c'est à dire les élements de remplacement du template.

En fait, mon fichier XML est structuré comme suit :

<page>
<html>... mon template
<mova>... mes données
</page>

Regarde d'abord le lien que je t'ai indiqué ci-dessus. Et si tu veux plus de détails, n'hésite pas à me le demander.

En fait, je n'ai jamais utilisé de spacename et je ne suis pas expert en XSL, mais s'il y avait une solution à mon problème, je crois que ça me permettrais de faire quelque-chose de très intéressant.

Bon, à bientôt. Je compte sur toi maintenant.

Pour essayer de répondre à ta question telle que tu me la poses :
Ca veut dire que je suis dans :
/page/html:html//mova:toto
et que je veux le remplacer par ce qui est dans :
/page/mova:toto

Et, entre parenthèses, enfin, en plus, je n'ai pas bien compris si <page> est dans le spacename html ou mova. Mais enfin, pour une raison que j'explique encore moins, ça ne semble pas me poser de problème.
Modifié par Fredooo (14 Mar 2005 - 19:56)