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 :

Interroger plusieurs xml avec un xsl


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    lafracas
    Invité(e)
    Par défaut Interroger plusieurs xml avec un xsl
    Comme indiqué dans mon intitulé, j'ai souhaité séparé mes données en plusieurs fichiers xml : un contenant des informations sur des enseignants, un autre sur differentes formations universitaires. Je souhaite avec un même fichier xsl interroger les 2 fichiers comment puis je faire. J'ai déja reussi a faire cela dans une fonction javascript :

    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
     
     
    // chargement du fichier XML
    xml = new ActiveXObject("Microsoft.XMLDOM") ;
    .async = false ;
    .load("formation.xml") ;
     
    // chargement du fichier XSL 
    xsl = new ActiveXObject("Microsoft.XMLDOM") ;
    .async = false ;
    .load("edt.xsl");
     
     
    // transformation
    target = document.getElementById("liste"); 
    .innerHTML = xml.transformNode(xsl);
    Or pour le second fichier, je ne sais comment faire.

    Voici ce que je voudrais faire dasn mon xsl :

    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
    
    <?xml version="1.0" encoding="UTF-8"?>
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format">
    <xsl:template match="/">
    <script language='javascript' src='fonction_edt.js'></script>
    <select>
    <xsl:for-each select="formation/promotion">
    <option><xsl:value-of select="classe"/></option>
    </xsl:for-each>
    </select>
    <select>
    <xsl:for-each select="equipeEducative/enseignant">
    <option><xsl:value-of select="prenom"/><xsl:value-of select="nom"/></option>
    </xsl:for-each>
    </select>
    </xsl:template>
    </xsl:stylesheet>
    
    Mais comment charger les donnees du fichier formation.xml

    Merci pour votre aide ++ lafracas

  2. #2
    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 : 47
    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
    1)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    // chargement du fichier XML2
    xml2 = new ActiveXObject("Microsoft.XMLDOM") ;
    xml2.async = false ;
    xml2.load("formation.xml") 
    xml2.setProperty("language","xpath")
    Puis Il va te falloir passer tes donnees en parametre comme indiqué ici:

    http://www.developpez.net/forums/sho...93&postcount=4

    et dans le paramètre tu mettras la selections de ton noeud racine et de ses descendants comme ceci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xslProc.addParameter("document", xml2.selectNodes("/*"));
    Ton noeud de départ est le noeud element racine avec cette syntaxe.
    Tu pourras faire des requêtes xpath sur ce paramètre

  3. #3
    lafracas
    Invité(e)
    Par défaut
    Merci bien.

    La je suis en train de regarder un peu xquery. Ce ne serait pas plus facile. Je charge uniquement le fichier xsl et dedans je fais des requetes xquery sur les documents xml que je veux ???

    Si c possible, il faut que je trouve comment faire ces requetes. Sur le net g pas trouvé de code précis qui defini comment faire les requetes dans des fichiers externes, comment les appeler dans le xsl ....

    Si vous avez ces reponses avec un ptit exemple ca serait cool, je trouve pas d'exemple concret.

    Merci d'avance ++ lafracas

Discussions similaires

  1. Problème d'affichage d'un fichier xml avec un xsl à cause du xmlns
    Par cocoaparis dans le forum XSL/XSLT/XPATH
    Réponses: 8
    Dernier message: 23/03/2011, 14h48
  2. Trier, réorganiser les données d'un XML avec une XSL
    Par Chouk12 dans le forum XSL/XSLT/XPATH
    Réponses: 10
    Dernier message: 21/03/2009, 21h48
  3. [DOM] Transformation d'un xml avec un xsl
    Par pistache42 dans le forum Format d'échange (XML, JSON...)
    Réponses: 4
    Dernier message: 12/07/2006, 15h39
  4. [XML] [XSLT] Lire du XML avec du XSL
    Par koudjo dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 27/06/2006, 20h51
  5. voir un XML avec une XSL
    Par frouge dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 12/01/2006, 16h17

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