Comment ignorer les espaces de noms au cours de xsl temps de traduction
J'ai un xml comme ci-dessous.
<?xml version="1.0" encoding="UTF-8"?>
<books xmlns="http://www.books.com/SRK">
<name>English</name>
</books
Je la sortie suivante après la traduction à l'aide de xsl .
<?xml version="1.0" encoding="UTF-8"?>
<books>
<name>English</name>
</books>
- Je besoin d'une feuille de style xsl à ignorer l'espace de noms.J'ai essayé quelque chose mais sa ne fonctionne pas avec l'espace de noms.
J'ai besoin de votre aide.Votre aide serait appréciée.
Bienvenue DONC. Lors de la publication du code, veuillez indentation de 4 espaces ou utiliser le
Vous pouvez poster de plus en plus complexe de l'échantillon de votre entrée?
{}
bouton dans l'éditeur de sorte qu'il affiche correctement. J'ai corrigé pour vous.Vous pouvez poster de plus en plus complexe de l'échantillon de votre entrée?
OriginalL'auteur malledugu | 2011-06-06
Vous devez vous connecter pour publier un commentaire.
Cette transformation:
lorsqu'il est appliqué au document XML fourni par le:
produit le voulait, résultat correct:
[not(self::*)]
. Je l'ai testé et il fonctionne aussi bien. (+1)Il semble également que seul le deuxième modèle est nécessaire. Suis-je le droit?
Pour ce document XML spécifique que dans le second modèle de produit le résultat voulu. Toutefois, un document XML en général a: attributs, commentaires-nœuds, PI-nœuds. Ma solution fonctionne avec n'importe quel document XML qui a tout mélange de ces types de nœuds.
Son travail seulement, si je comprend les modèles susmentionnés si j'ai ajouté quelques autres modèles autres que ci-dessus, on puis la traduction n'est pas du tout de travail .Aucun modèle de prise en exécution.
afin d'utiliser ces modèles dans le contexte, vous avez besoin de comprendre comment le traitement XSLT est un modèle qui fonctionne, c'est à dire, comment XSLT décide de ce que les modèles à appliquer, à ce que les nœuds. Voir, par exemple, soe.ucsc.edu/classes/cmps183/Spring06/lectures/...
OriginalL'auteur Dimitre Novatchev
Probablement que vous êtes absent de la déclaration de l'espace de noms pour le
book
élément. Exemple:En outre, assurez-vous d'utiliser
local-name()
fonction permettant d'obtenir le nom d'un élément sans liées à l'espace de noms.Exemple
obtient:
Deuxième Exemple
Vous pouvez créer une transformation appelée local d'identité.xsl contenant @Dimitre solution. Ensuite, vous pouvez l'importer dans votre transformation. Parce que vous avez un espace de noms, afin de faire correspondre les éléments que vous devez modifier tous vos requêtes Xpath, y compris le préfixe de vous déclarer dans la transformation, comme dans l'exemple suivant:
OriginalL'auteur Emiliano Poggi