IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

XSL/XSLT/XPATH XML Discussion :

[XSLT] Comment supprimer le namespace en sortie?


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 37
    Points : 44
    Points
    44
    Par défaut [XSLT] Comment supprimer le namespace en sortie?
    Bonjour,

    Tout d'abord voici une partie de mon XSLT :
    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
     
    <?xml version="1.0"?>
    <xsl:stylesheet version="2.0"
    	xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    	xmlns:toto="http://monURL">
     
    	<xsl:output method="xml" indent="yes" omit-xml-declaration="yes" />
    	<xsl:strip-space elements="*" />
     
    	<xsl:template match="*">
    		<xsl:if test="node()">
    			<xsl:copy>
    				<xsl:apply-templates />
    			</xsl:copy>
    		</xsl:if>
    	</xsl:template>
     
    	<xsl:template match="/monTag">
    		<toto:monTag>
    			<xsl:apply-templates />
    		</toto:monTag>
    	</xsl:template>
     
    </xsl:stylesheet>
    Voici ma sortie :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <toto:monTag xmlns:toto="http://monUrl">
    ...
    </toto:monTag>
    Mon soucis est que je ne souhaite pas avoir en sortie le namespace c'est-à-dire que je désire ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <toto:monTag>
    ...
    </toto:monTag>
    Quelqu'un serait-il comment faire?

    Merci d'avance.

    PS : je débute avec XSLT soyez indulgent...

  2. #2
    Expert éminent
    Avatar de GrandFather
    Inscrit en
    Mai 2004
    Messages
    4 587
    Détails du profil
    Informations personnelles :
    Âge : 54

    Informations forums :
    Inscription : Mai 2004
    Messages : 4 587
    Points : 7 103
    Points
    7 103
    Par défaut
    Bonjour,

    tu devrais pouvoir y arriver en utilisant l'attribut exclude-result-prefixes de xsl:output (pour plus d'infos, recherche dans le forum avec ce terme). Mais bon, ce n'est pas très orthodoxe : sans l'indication de l'espace de noms un nom de balise comme toto:monTag n'a plus la même sémantique (avec l'espace de nom toto est un préfixe séparé du nom de la balise par :, et sans espace de noms toto: fait partie du nom de la balise), je ne suis pas certain que les applications qui vont lire ton fichier XML transformé vont apprécier...

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 37
    Points : 44
    Points
    44
    Par défaut
    J'avais déjà essayé d'utliser cet attribut dans xsl:stylesheet car dans xsl:ouput il n'existe pas.
    Par contre cela ne marche pas : j'ai toujours en sortie la déclaration du namespace dans monTag.
    Normal?

    Sinon, pour donner plus d'informations sur mon application, le résultat que j'obtiens par la transformation XSLT est seulement un bout d'un fichier XML. En effet, mon résultat est rajouté dans un autre fichier XML où il y a déjà le namespace avec le préfixe toto déclaré.

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 37
    Points : 44
    Points
    44
    Par défaut
    Tanpis je n'ai pas réussi à trouver de solution.
    Je vais donc devoir directement modifier le string obtenu après la transformation.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XSLT] Supprimer le namespace?
    Par fabou3377 dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 12/05/2021, 22h48
  2. Réponses: 2
    Dernier message: 12/04/2010, 10h26
  3. Comment supprimer un clip à la sortie d'une frame ?
    Par dryzd dans le forum ActionScript 1 & ActionScript 2
    Réponses: 7
    Dernier message: 16/06/2009, 14h15
  4. [Xslt] comment supprimer le xmlns:meta="urn:microsoft-m
    Par Landolsi dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 10/02/2006, 15h06
  5. namespace dans feuille xslt : comment ca marche exactement ?
    Par guipom dans le forum XSL/XSLT/XPATH
    Réponses: 13
    Dernier message: 11/11/2004, 16h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo