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] Fusion d'XML côté navigateur


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5
    Points : 4
    Points
    4
    Par défaut [XSL] Fusion d'XML côté navigateur
    Voila j'ai un petit problème et je tourne en rond depuis un bon moment pour essayer de le résoudre sans trop de succés:

    En gros j'ai un fichier xml de départ:
    index.xml
    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"?>
    <?xml-stylesheet type="text/xsl" href="transform.xsl"?>
        <data>
            <par>n°1</par>
            <par>n°2</par>
            <get_doc href="sous_doc_01.xml" />
            <get_doc href="sous_doc_02.xml" />
        </data>
    puis deux autres "sous" fichiers xml de la forme:
    sous_doc_01.xml
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <?xml version="1.0" encoding="utf-8"?>
    <?xml-stylesheet type="text/xsl" href="transform.xsl"?>
        <data>
             <par>n°3</par>
             <par>n°4</par>
        </data>
    sous_doc_02.xml
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <?xml version="1.0" encoding="utf-8"?>
    <?xml-stylesheet type="text/xsl" href="transform.xsl"?>
        <data>
            <par>n°5</par>
            <par>n°6</par>
        </data>

    Avec un feuille xsl dans ce genre là:
    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
    25
    26
    27
    28
    29
     
    <?xml version="1.0" encoding="utf-8" ?>
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
        <xsl:output method="html" encoding="utf-8" standalone="yes"  />
     
        <xsl:template match="/">
            <html>
                <head>
                    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
                </head>
                <body>
                    <xsl:apply-templates select="*"/>
                </body>
            </html>
        </xsl:template>
     
        <xsl:template match="data">
            <xsl:apply-templates select="*"/>
        </xsl:template> 
     
        <xsl:template match="par">
            <p><xsl:number count="par" level="any" format="A"/> :: <xsl:apply-templates /></p>
        </xsl:template>
     
        <xsl:template match="get_doc">
            <xsl:apply-templates select="document(@href)/data/*"/>
        </xsl:template>
     
    </xsl:stylesheet>
    Et le problème c'est que à chaque appel de "document()" le décompte de mon "xsl:number" reprend à A. Alors que je voudrais compter tous les "<par>" ensembles (de A à F).
    Au final c'est pour faire une numérotation sections/sous-sections/etc... automatiques du côté client par un navigateur web, mais avec des fichiers xml éparpillés sur le serveur. Je veux eviter d'utiliser javascript, ou de faire une fusion couteuse du coté du serveur.

    Bref j'ai tenté différents patterns exotiques sans grandes chance , exploré un système de variables pour substituer au xsl:number mais cela devient très vite confus. Et pour finir, ce qui m'a donné le meilleur résultat c'est d'inclure mes sous_fichiers avec une DTD de ce genre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <!DOCTYPE data [
        <!ELEMENT data ANY>
        <!ELEMENT par (#PCDATA)>
        <!ENTITY include_doc_01 SYSTEM "http://adr.fai.fr/sous_doc_01.xml">
        ]>
    Mais je trouve pas çà très "joli" ni très pratique, puis chez moi çà ne fonctionne pas sous Firefox.

    Donc si quelqu'un a une solution ou une nouvelle idée: merçi d'avance

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    284
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 284
    Points : 349
    Points
    349
    Par défaut
    héhé, mauvais forum, je pense !

    Ici, on te conseillera d'effectuer tous les traitements coté serveur et de renvoyer le html transformé directement au client, XMLRAD sert à ca.

    Donc, essaye de voir du coté forum XML/XSL (plus bas dans la liste) si quelqu'un a une idee.

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5
    Points : 4
    Points
    4
    Par défaut
    J'ai complétement zappé le bas du forum ... . Je vais attendre un peu avant de créer un nouveau fil, peut-être qu'un modérateur pourra déplacer celui-ci.

Discussions similaires

  1. [XSL] Fusionner 2 xml
    Par argyronet dans le forum XSL/XSLT/XPATH
    Réponses: 23
    Dernier message: 27/04/2011, 16h58
  2. Transfert de parametres d'un html a un xsl via un xml ;
    Par bricole236 dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 09/08/2005, 09h29
  3. [XSL-FO] [Débutant] xml, xsl, fo fop pdf ...ahhh !
    Par enigma dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 05/08/2005, 09h14
  4. [XSL] Parser fichier xml : erreurs + incompréhensions
    Par totobouchon dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 19/07/2005, 15h47
  5. [XML][XSL][FOP] transformation xml avec fop
    Par Le Marlou dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 05/12/2003, 16h58

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