Y a-t-il un nom XSLT d’élément?

Dans XSLT il y a le

 

pour obtenir la valeur d’un élément, mais y a-t-il quelque chose à sélectionner le nom de tag de l’élément?

Dans une situation comme celle-ci:

   Robert  programmer photography    :   

Pour obtenir un résultat comme celui-ci:

 name : Robert profession : programmer hobby : photography 

Bien sûr, le XSLT ci-dessus ne sera pas compilé car

   

n’existe pas Mais comment cela pourrait-il être fait?

Cela vous donnera le nom de l’élément actuel (nom de la balise)

  

OP-Edit: Cela fera aussi l’affaire:

  

Personne n’a signalé la différence subtile dans la sémantique des fonctions name() et local-name() .

  • name(someNode) renvoie le nom complet du noeud, qui inclut le préfixe et les deux-points si le noeud est un élément ou un atsortingbut.
  • local-name(someNode) ne renvoie que le nom local du nœud, qui n’inclut pas le préfixe et les deux-points si le nœud est un élément ou un atsortingbut.

Par conséquent, dans les situations où un nom peut appartenir à deux espaces de noms différents, il faut utiliser la fonction name() pour que ces noms soient toujours distingués.

Et, BTW, il est possible de spécifier les deux fonctions sans aucun argument :

name() est une abréviation pour name(.)

local-name() est une abréviation pour local-name(.)

Enfin , rappelez-vous que non seulement les éléments et les atsortingbuts ont des noms, ces deux fonctions peuvent également être utilisées sur les PI et sur celles-ci, elles sont identiques).

    :    

Pour les intéressés, il n’y a pas:

  

Cependant, vous pouvez recréer le tag / élément en allant:

    

Ceci est utile dans un modèle xslt qui, par exemple, gère la mise en forme des valeurs de données pour de nombreux éléments différents. Lorsque vous ne connaissez pas le nom de l’élément sur lequel vous travaillez, vous pouvez toujours générer le même élément et modifier la valeur si nécessaire.

  :