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] Test sur un xsl-if qui semble ignoré


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 83
    Points : 52
    Points
    52
    Par défaut [réglé] [XSL] Test sur un xsl-if qui semble ignoré
    Bonjour,

    Je travaille sur le xml suivant :
    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
    <page><Order>
     <links>
          <todoList>
            <Todo>
              <domain>dom01</domain>
              <reference>ref01</reference>
              <status>done</status>
            </Todo>
            <Todo>
              <domain>dom02</domain>
              <reference>ref02</reference>
              <status>done</status>
            </Todo>
          </todoList>
     </links>
    </Order>
    </page>
    Et je fais ensuite ce test en xsl :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
                            <xsl:variable name="where">
                                domain = 'dom01' and reference = 'ref01'
                            </xsl:variable>
     
                            <xsl:if test="/page/Order/links/todoList/Todo[$where]/status != 'done'">
                                todo 
                            </xsl:if>
    Mon problème vient du fait que la condition du if est satisfaite alors que le status du todo recherché est à done et donc n'est pas != 'done'.
    Si je fais un <xsl:value-of select='/page/Order/links/todoList/Todo[$where]/status'/> j'aurai bien 'done' d'affiché.

    Bizarre non ?

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 83
    Points : 52
    Points
    52
    Par défaut
    Je précise que dans mon script le contenu du where est généré avec des value-of select donc je ne peux pas me passer de cette variable
    Le tout se trouve dans un for-each et la recherche sur le [$where] doit forcément renvoyer un statut qui peut être done ou autre.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 83
    Points : 52
    Points
    52
    Par défaut
    Trouvé, je dois faire une variable par clause where et ensuite faire [$where1 and $where2].

    Si on inclus le and dans la variable, il n'est plus reconnu comme un opérateur.

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

Discussions similaires

  1. [XSL]Test sur le noeud fils suivant?
    Par kobe dans le forum XSL/XSLT/XPATH
    Réponses: 9
    Dernier message: 06/07/2006, 15h25
  2. [XSL] Test sur le nom d'une balise
    Par KibitO dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 18/12/2005, 14h44
  3. [XSL][XHTML] test sur position de noeuds (text() et autres)
    Par luta dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 05/09/2005, 18h47
  4. xsl : test sur les chaine de caractère
    Par yos dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 13/07/2005, 16h43
  5. [XSL] Application d'un XSL pour produire un XSL... help
    Par Greedo dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 22/05/2003, 12h30

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