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 :

Traduction de l'expression [XPATH 1.0]


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Membre averti
    Homme Profil pro
    Débutant en XSLT
    Inscrit en
    Avril 2011
    Messages
    54
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Débutant en XSLT

    Informations forums :
    Inscription : Avril 2011
    Messages : 54
    Par défaut Traduction de l'expression
    Bonjour,

    Je suis tombé sur cette expression XPATH dans un when:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .//elementA[elementB/text()][1]/elementB = '1'
    pour un xml ton la structure serait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <elementA>
       <elementB>3</elementB>
    </elementA>
     
    <elementA>
       <elementB>1</elementB>
    </elementA>
    Je débute, j'ai quelques bases mais là j'avoue que la structure me perd !

    Merci d'avance.

  2. #2
    Modérateur

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

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Vérifier que...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .//elementA[elementB/text()][1]/elementB = '1'
    ... Dans les descendants de l'élément en cours...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .//elementA[elementB/text()][1]/elementB = '1'
    ... Qui sont des <elementA>...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .//elementA[elementB/text()][1]/elementB = '1'
    ... Et qui ont un fils <elementB>...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .//elementA[elementB/text()][1]/elementB = '1'
    ... Et que ce fils a un contenu texte ;

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .//elementA[elementB/text()][1]/elementB = '1'
    parmis les <elementA> répondant à ces conditions, donc, prendre le premier...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .//elementA[elementB/text()][1]/elementB = '1'
    ... Et vérifier que les <elementB> de cet <elementA> ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .//elementA[elementB/text()][1]/elementB = '1'
    ... quand on les convertit en string, sont égaux à la string '1'

    Comment convertir des éléments en string :
    - prendre le premier de ces éléments et oublier les autres.
    - concaténer tous ses descendants qui sont des nœuds texte, dans l'ordre. (Autrement dit, prendre son contenu, virer tout ce qui est une balise et garder le reste.)
    - si l'ensemble des éléments est l'ensemble vide, il se convertit en chaîne vide (longueur zéro.)

    Dans ton exemple, il y a un seul <elementB> dont le contenu est '1'. Mais cet <elementB> est fils du second <elementA>, pas du premier. Par conséquent, la condition n'est pas vérifiée.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre averti
    Homme Profil pro
    Débutant en XSLT
    Inscrit en
    Avril 2011
    Messages
    54
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Débutant en XSLT

    Informations forums :
    Inscription : Avril 2011
    Messages : 54
    Par défaut
    Merci beaucoup pour cette explication claire et pédagogique.
    Ca m'aide bcp à structurer ma compréhension du Xpath !

    Bonne soirée,
    Je marque en Résolu.

  4. #4
    Membre Expert
    Avatar de polymorphisme
    Homme Profil pro
    Publishing
    Inscrit en
    Octobre 2009
    Messages
    1 460
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Publishing
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2009
    Messages : 1 460
    Par défaut
    Hello,

    dans ce sens, tu peux t'entrainer en utilisant un navigateur XPath comme avec Eclipse (exemple). C'est très pratique.

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

Discussions similaires

  1. Expression régulière - traduction
    Par capblans dans le forum Langage
    Réponses: 3
    Dernier message: 31/10/2007, 14h29
  2. Expressions réguliéres
    Par Tooms dans le forum Langage
    Réponses: 4
    Dernier message: 06/12/2002, 18h42
  3. Traduction
    Par PierDIDI dans le forum Composants VCL
    Réponses: 3
    Dernier message: 17/09/2002, 23h43
  4. Changement de langue dynamique (D6 et outils de traduction)
    Par agon dans le forum Composants VCL
    Réponses: 4
    Dernier message: 17/09/2002, 16h15
  5. Réponses: 5
    Dernier message: 11/06/2002, 15h21

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