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

Python Discussion :

Boucle balise fichier xml associé à un schéma public


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2018
    Messages
    116
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Novembre 2018
    Messages : 116
    Par défaut Boucle balise fichier xml associé à un schéma public
    Bonjour,

    J'ai un schéma et un xml associé (source Wikipédia mais modifié) :

    Schéma :
    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
      <?xml version="1.0" encoding="UTF-8"?>
      <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNameSpace="load.personne" xmlns="load.personne" elementFormDefault="qualified">
        <xs:element name="personne">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="nom" type="xs:string" />
              <xs:element name="prenom" type="xs:string" />
              <xs:element name="date_naissance" type="xs:date" />
            </xs:sequence>
          </xs:complexType>
        </xs:element>
      </xs:schema>


    Xml:
    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
      <?xml version="1.0" encoding="UTF-8"?>
      <personne xmlns="load.personne" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
        <nom>De Latour</nom>
        <prenom>Jean</prenom>
        <date_naissance>1967-08-13</date_naissance>
      </personne>

    Maintenant j'ai un code Python avec lequel je souhaite accéder aux balises du xml via une boucle mais le debugger ne passe pas dans ma boucle…
    Par contre si je rajoute xsd dans mon xml => <personne xmlnssd="load.personne" xmlnssi="http://www.w3.org/2001/XMLSchema-instance">, ça marche mais je ne dois pas le rajouter justement…

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    import lxml
    from lxml import etree
     
    fichierXml = "C:\Users\Desktop\Schémas-Xml\exemple.xml"
     
    tree = etree.parse(fichierXml)
     
    for balises in tree.xpath("/personne")
         nom = balises.get("nom")
         prenom = balises.get("prenom")
    Merci pour votre aide!

  2. #2
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 748
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 748
    Par défaut
    Salut,

    Vous avez 2 sujets: comment écrire un fichier XML où des éléments sont rattachés à un espace de noms particulier?

    Une fois le XML est correct (il y a des vérificateurs on-line) comment l'analyser avec lxml (qui est une bibliothèque externe et relativement bien documentée à se propos).

    Là vous partez avec des constructions dont vous n'êtes pas sûr tant du côté XML que du côté lxml.
    Avancez par étapes... c'est aussi savoir valider que ce qui est produit à une étape pourra être utilisé comme attendu à l'étape suivante.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2018
    Messages
    116
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Novembre 2018
    Messages : 116
    Par défaut
    Salut,

    Concernant mon schéma et fichier xml, ils sont bon j’ai même vérifié avec XmlSpy.
    Sinon en Python, vous me dites que la méthode lxml n’est pas adaptée dans mon cas ?

  4. #4
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 748
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 748
    Par défaut
    Sinon en Python, vous me dites que la méthode lxml n’est pas adaptée dans mon cas ?
    Ce que je dis, c'est que votre XML n'est pas correct (allez faire un tour sur w3schools pour voir ce que sont les namespaces... Et dites moi où ils décrivent votre syntaxe)

    A partir de là, n'importe quel parseur XML fera ce qu'il peut (et un validateur XML aussi). Et un forum Python c'est pour coder un script Python, pour écrire du XML, il y a des forums ad hoc pour demander de l'aide.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  5. #5
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2018
    Messages
    116
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Novembre 2018
    Messages : 116
    Par défaut
    Salut,

    Pas de soucis je vais demander sur un autre forum merci.
    Bonne journée!

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

Discussions similaires

  1. [Débutant] Sélection balises fichier xml
    Par AI_user02000 dans le forum Général Dotnet
    Réponses: 0
    Dernier message: 22/07/2020, 02h49
  2. Réponses: 0
    Dernier message: 15/06/2012, 17h55
  3. [DOM] Récupérer du code dans balises fichier XML
    Par Capripot dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 10/04/2008, 23h05
  4. [XSD]Valider un fichier XML et son schéma
    Par _Fabien dans le forum Valider
    Réponses: 6
    Dernier message: 20/03/2007, 10h28
  5. [Xml/Xsd]valider son fichier Xml avec un schéma xsd
    Par ePoX dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 09/02/2006, 22h30

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