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

XML/XSL et SOAP Discussion :

Noeud avec élément identique


Sujet :

XML/XSL et SOAP

  1. #1
    bm
    bm est déconnecté
    Membre confirmé

    Homme Profil pro
    Freelance
    Inscrit en
    Octobre 2002
    Messages
    874
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Freelance
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Octobre 2002
    Messages : 874
    Points : 556
    Points
    556
    Billets dans le blog
    6
    Par défaut Noeud avec élément identique
    Bonjour,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <?xml version="1.0" encoding="utf-8"?>
        <database name="domo>
            <!-- Table mois_12 -->
            <table name="mois_12">
                <column name="id">1</column>
                <column name="hr">01_Dec_00_00</column>
                <column name="pulse">2.0</column>
            </table>
            <table name="mois_12">
                <column name="id">2</column>
                <column name="hr">01_Dec_00_30</column>
                <column name="pulse">1.5</column>
            </table>
        </database>
    Je n'arrive pas à lire dans le noeud column que le nom "pulse"
    J'ai essayé ceci avec python:

    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    from lxml import etree
    tree = etree.parse("mois_12.xml")
    print(tree)
     
    for column in tree.xpath("/database/table/column"):
        print(column.text)     
    print('----------------------------')    
     
    for column in tree.xpath("/database/table/column[column name='pulse']"):
        print(column.text)

    lxml.etree.XPathEvalError: Invalid predicate

    @+

  2. #2
    bm
    bm est déconnecté
    Membre confirmé

    Homme Profil pro
    Freelance
    Inscrit en
    Octobre 2002
    Messages
    874
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Freelance
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Octobre 2002
    Messages : 874
    Points : 556
    Points
    556
    Billets dans le blog
    6
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    for table in tree.xpath("/database/table"):
        print(table[2].text)
    Avec le deuxième élément de table, c'est correct.
    Pas sur que ce soit la meilleure sélection ..

  3. #3
    Modérateur

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

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    Hello,

    ton XPath est faux. Pour sélectionner basé sur un attribut, c'est :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    /database/table/column[@name='pulse']
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 05/10/2007, 13h19
  2. [XSLT] Copier un noeud avec ces éléments sauf un
    Par DelphLaga dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 12/10/2006, 13h55
  3. Réponses: 4
    Dernier message: 20/06/2005, 14h57
  4. [DOM] Accès au contenu textuel d'un noeud avec DOM
    Par comexe2 dans le forum Format d'échange (XML, JSON...)
    Réponses: 2
    Dernier message: 16/07/2004, 15h41
  5. créer un noeuds avec des paramétres
    Par Toxine77 dans le forum XMLRAD
    Réponses: 5
    Dernier message: 21/01/2003, 16h11

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