2009-05-25 4 views
1

En utilisant XSLT, je voudrais être en mesure de transformer ceci:En utilisant XSLT, comment transformer chaque tag en div avec une classe correspondant au nom du tag?

<doc> 
    <tag1>AAA</tag1> 
    Hello ! 
    <tag2>BBB</tag2> 
</doc> 

dans ce:

<div class="doc"> 
    <div class="tag1">AAA</div> 
    Hello ! 
    <div class="tag2">BBB</div> 
</div> 

... mais sans spécifier explicitement un nom de balise dans la feuille de style (il y a trop beaucoup dans le monde réel)

Quelle serait la meilleure façon de faire cela?

Répondre

6

Quelque chose le long des lignes de

<xslt:template match="*"> 
    <div class="{local-name()}"> 
     <xsl:apply-templates /> 
    </div> 
</xslt:template> 
+0

Je n'ai pas faire des choses xsl dans un certain temps, mais le préfixe xslt sur l'élément de modèle délibéré, ou devrait-il être xsl? –

+0

Cela peut être n'importe quoi, en fonction de l'en-tête. Il peut même s'agir d'un espace de noms par défaut! '