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] Recherche d'une valeur d'une donnée


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Membre éclairé Avatar de hedgehog
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    295
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 295
    Par défaut [XSL] Recherche d'une valeur d'une donnée
    Bonjour à tous,

    Je débute totalement en XSL et j'aurais voulu savoir s'il était possible de tester une valeur contenu dans mon XML avant de parcourir celui-ci ou alors si il était possible de le parcourir plusieurs fois ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <TREE>
    <BOUTONS>
    <BTN DONNEE="Donnee1" VALEUR="Valeur1"/>
    <BTN DONNEE="Donnee2" VALEUR="Valeur2"/>
    ...
    </BOUTONS>
    <DOCS>
    <CONTENU CIBLE="Cible1" VALEUR="Valeur1"/>
    <CONTENU CIBLE="Cible2" VALEUR="Valeur2"/>
    <CONTENU CIBLE="Cible3" VALEUR="Valeur3"/>
    ...
    </DOCS>
    </TREE>
    En gros je veux conditionner l'affichage en fonction de la valeur d'une cible.

    Pouvez-vous m'aider ?

    Merci d'avance

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    95
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 95
    Par défaut
    C'est rassurant, je ne suis pas tout seul à débuter ...

    parcourir celui-ci ou alors si il était possible de le parcourir plusieurs fois ?
    Sur ce que j'ai compris, il n'y a pas de limite pour parcourir ton XML

    et pour selectionner une valeur de cible il te suffit de dire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    <xsl:template match="/">
    <!-- tu te place à la racine -->
     
    <xsl:for-each select="TREE/DOCS/CONTENU/*" >   <!-- pour chaque balise contenu-->
     
           <xsl:value-of select=".@VALEUR"  />  <!-- tu lit la valeur contenu -->
     
    </xsl:for-each>
    Normalement c'est ça ... (remarque je debute aussi)

  3. #3
    Membre éclairé Avatar de hedgehog
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    295
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 295
    Par défaut
    Le probléme c'est que je voudrais conditionner l'affichage complet en fonction d'UNE seule valeur (si possible sans parcourir tout le XML).

    Exemple (afin de mieux m'expliquer) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <xsl:if test="Valeur de cible 2='unevaleur' ET Valeur de Valeur2='uneautrevaleur''">
       Affichage du premier bloc
    </xsl:if>
    <xsl:if test="Valeur de cible 2='unevaleur' ET Valeur de Valeur2!='uneautrevaleur''">
       Affichage d'un autre bloc
    </xsl:if>

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    95
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 95
    Par défaut
    Euhh ... là je sais pas encore faire .... désolé

  5. #5
    Membre éclairé Avatar de hedgehog
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    295
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 295
    Par défaut
    C'est bon, j'ai réglé le probléme, je poste le code ca pourrait servir :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <TREE>
    <BOUTONS>
    <BTN DONNEE="Donnee1" VALEUR="Valeur1"/>
    <BTN DONNEE="Donnee2" VALEUR="Valeur2"/>
    ...
    </BOUTONS>
    <DOCS>
    <CONTENU CIBLE="Cible1" VALEUR="Valeur1"/>
    <CONTENU CIBLE="Cible2" VALEUR="Valeur2"/>
    <CONTENU CIBLE="Cible3" VALEUR="Valeur3"/>
    ...
    </DOCS>
    </TREE>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <xsl:variable name="unevariable"><xsl:value-of select="//CONTENU[@CIBLE='unevaleur']/@VALEUR"/></xsl:variable>
    <xsl:if test="$unevariable='quelquechose'">
    OK
    </xsl:if>
    <xsl:if test="$unevariable!='autrechose'">
    KO
    </xsl:if>
    Merci de ton aide DrDam

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 13/04/2015, 11h17
  2. [WD16] Lecture donnée d'une base dans une valeur d'une autre base
    Par gef13 dans le forum WinDev
    Réponses: 2
    Dernier message: 16/11/2011, 09h05
  3. Réponses: 2
    Dernier message: 22/04/2008, 16h21
  4. Réponses: 2
    Dernier message: 27/02/2008, 13h32
  5. Recherche une valeur d'une cellule dans une colonne d'une autre feuille
    Par kourria dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 21/06/2007, 13h48

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