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 :

Composer un fichier XML


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Membre régulier
    Inscrit en
    Juin 2009
    Messages
    237
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 237
    Points : 88
    Points
    88
    Par défaut Composer un fichier XML
    Bonjour,

    Peut on avec une feuille de style fusionner plusieurs fichier XML.

    Lire plusieurs XML (de structure différentes)
    Merci

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    fonction document()
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre régulier
    Inscrit en
    Juin 2009
    Messages
    237
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 237
    Points : 88
    Points
    88
    Par défaut
    Merci pour la réponse

    Mon fichier XML est composé (pour simplifier) :
    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="UTF-8"?>
    <!DOCTYPE racine [
    <!ENTITY im1 SYSTEM "img\im1.cgm" NDATA cgm>
    <!ENTITY im2 SYSTEM "img\im2.cgm" NDATA cgm>
    ]>
    <racine a="A" b="B">
      <ele1>
          <ele2>xxxxxxxxxxxxxxxxxx</ele2>
         <ele2>yyyyyyyyyyyy</ele2>
      </ele1>
    </racine>
    Je voudrai inclure des données XML entre </ele1> et </racine>

    Mon code xsl :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    <xsl:output method="xml"  version="1.0" encoding="UTF-8" indent="yes"/>
    <xsl:template match="/racine">
    	<xsl:copy><xsl:apply-templates select="@*"/></xsl:copy>
    	<xsl:apply-templates/>
    	<xsl:copy-of select="document('xx.xml')"/>
    </xsl:template>
    <xsl:template match="@*|*|processing-instruction()|comment()|text()">
    	<xsl:copy>
    		<xsl:apply-templates select="@*|*|processing-instruction()|comment()|text()"/>
    	</xsl:copy>
    </xsl:template>
    Problèmes rencontrés :
    • Je perds le DOCTYPE et ses ENTITY
    • Le fichier XML n'est pas bien balisé : absence </racine>


    Merci pour l'aide

  4. #4
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    Citation Envoyé par henri93 Voir le message
    Je perds le DOCTYPE et ses ENTITY
    Pas grand-chose à y faire. Les DTD sont essentiellement obsolètes et XSLT ne les gère presque pas.
    La seule solution serait de la réécrire dans la XSLT, avec échappement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <xsl:template match="/">
    <xsl:text disable-output-escaping="yes"><![CDATA[
    <!DOCTYPE racine [
    <!ENTITY im1 SYSTEM "img\im1.cgm" NDATA cgm>
    ]>
    ]]></xsl:text>
      <xsl:apply-templates/>
    </xsl:template>
    Citation Envoyé par henri93 Voir le message
    Le fichier XML n'est pas bien balisé : absence </racine>
    <xsl:copy> est fermé bien trop tôt. C'est lui qui ferme <racine>, je te le rappelle.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Membre régulier
    Inscrit en
    Juin 2009
    Messages
    237
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 237
    Points : 88
    Points
    88
    Par défaut
    merci

  6. #6
    Membre régulier
    Inscrit en
    Juin 2009
    Messages
    237
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 237
    Points : 88
    Points
    88
    Par défaut
    Je ne connais pas à l'avance le nombre d'entity ni le contenu

    Il n'existe pas de solutions ?

    Merci

  7. #7
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    Pas en XSLT en tout cas.

    On pourrait imaginer un bricolage mi-SAX mi-XSLT, pour confier à chacun la tâche qu'il fait le mieux, mais ça commence à être compliqué.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

Discussions similaires

  1. composant swing permettant d'editer un fichier xml
    Par mehdi_swatch dans le forum AWT/Swing
    Réponses: 4
    Dernier message: 27/02/2007, 15h11
  2. Réponses: 2
    Dernier message: 28/11/2006, 11h53
  3. Réponses: 9
    Dernier message: 27/06/2006, 21h48
  4. composants pour visualiser un fichier XML
    Par LN(a) dans le forum Composants VCL
    Réponses: 2
    Dernier message: 18/04/2006, 12h54
  5. [Kylix] Composant IBM pour fichiers XML
    Par Mister Nono dans le forum EDI
    Réponses: 1
    Dernier message: 29/09/2002, 20h28

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