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 :

[XSL] Copie exacte d'un fichier


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    160
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Novembre 2003
    Messages : 160
    Points : 89
    Points
    89
    Par défaut [XSL] Copie exacte d'un fichier
    Bonjour à tous.

    Je souhaiterais écrire un fichier XSL qui ferait simplement la copie exacte du fichier d'origine. J'ai pour l'instant le .xsl suivant qui ne fonctionne pas pour des raisons que j'ignore encore.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <?xml version="1.0"?> 
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:output method="xml" encoding="windows-1252"/>
     <xsl:template match="*">
        <xsl:copy>
          <xsl:for-each select="@*">
            <xsl:copy-of select="."/>
          </xsl:for-each>
          <xsl:apply-templates select="node()"/>
         </xsl:copy>
      </xsl:template>
     
    </xsl:stylesheet>
    J'ai parcouru les FAQ et autres cours mais n'ai rien trouvé répondant à mon problème. Merci d'avance pour vos lumières

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    1 466
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 1 466
    Points : 1 610
    Points
    1 610
    Par défaut
    http://xml.developpez.com/sources/?page=modifs
    En replaçant les "translate" par des
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <xsl:value-of select="."/>
    ou encore plus simple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
     
       <!-- Identity transformation template -->			
       <xsl:template match="/ | @* | * | comment() | processing-instruction() | text()"> 
       	<xsl:copy> 
       		<xsl:apply-templates select="@* | * | comment() | processing-instruction() | text()"/> 
       	</xsl:copy> 
       </xsl:template> 
     
     
    </xsl:stylesheet>

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    160
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Novembre 2003
    Messages : 160
    Points : 89
    Points
    89
    Par défaut
    Désolé mais ton XSL ne fonctionne pas, que ce soit avec IE ou encore XMLSpy... Il n'existe aucun moyen simple de bêtement copier un fichier XML?? Quid de la balise foreach? Ne permet-elle pas de parcourir récursivement toutes les nodes d'un document?

    Désolé de ces questions rudimentaires, mais j'avoue être un poil décontenancé

  4. #4
    Rédacteur

    Avatar de Erwy
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2003
    Messages
    4 967
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2003
    Messages : 4 967
    Points : 10 927
    Points
    10 927
    Par défaut
    encore plus simple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?xml version="1.0" encoding="UTF-8"?>
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    	<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
    	<xsl:template match="/">
    	<xsl:for-each select="node()">
    	<xsl:copy-of select="."></xsl:copy-of>
    	</xsl:for-each>
    	</xsl:template>
    </xsl:stylesheet>
    Citation Envoyé par hobotalker
    Quid de la balise foreach? Ne permet-elle pas de parcourir récursivement toutes les nodes d'un document?
    Non, ici elle permet de selectionner tous les noeuds (commentaires,processing-instruction , element) et xsl:copy-of fait une copie du noeud et de ses descendants

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    160
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Novembre 2003
    Messages : 160
    Points : 89
    Points
    89
    Par défaut
    Merci pour vos réponses, c'est résolu. Hop !

  6. #6
    Membre expérimenté
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    1 466
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 1 466
    Points : 1 610
    Points
    1 610
    Par défaut
    J'ai testé avec ie, msxml, xalan, saxon et mon template passe, je vois pas trop ce qui pouvait clocher.

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

Discussions similaires

  1. [VBA-E]macro fichier protégé xsl copie de fichiers partagés
    Par matou_aouh dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 06/04/2006, 15h08
  2. [VBA-E]récup controle copie de cellules de fichiers
    Par Chin dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 27/02/2006, 10h26
  3. [XSL] copy-of select avec un "|" possible?
    Par luta dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 23/11/2005, 09h51
  4. [XSL] Caractère incorrect dans un fichier XML
    Par nicobest dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 05/09/2005, 14h06
  5. [XSL]Copie du contenu d'un fichier en XSL
    Par fidififouille dans le forum XSL/XSLT/XPATH
    Réponses: 17
    Dernier message: 16/06/2004, 12h35

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