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

Valider XML Discussion :

[XML] Transformer du XML mal-formé en XML bien-formé ?


Sujet :

Valider XML

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2007
    Messages : 2
    Points : 2
    Points
    2
    Par défaut [XML] Transformer du XML mal-formé en XML bien-formé ?
    Bonjour,

    j'ai un client qui reçoit du XML d'un de ses fournisseurs. Ce XML semble être mal-formé, non standard. Il n'arrive pas à l'interpreter (utilisé avec une DTD). Le volume est assez important et il n'est à priori pas envisageable de modifier le XML à la source.

    Est-ce qu'il existe un outil, une librairie ou une méthode ayant fait ses preuves pouvant transformer ce flux XML mal-formé en XML bien-formé (je ne connais pas les erreurs, mais c'est probablement des problèmes de balises fermantes, de hierarchie etc ...)

    Merci d'avance pour vos réponses.

  2. #2
    Expert éminent
    Avatar de GrandFather
    Inscrit en
    Mai 2004
    Messages
    4 587
    Détails du profil
    Informations personnelles :
    Âge : 54

    Informations forums :
    Inscription : Mai 2004
    Messages : 4 587
    Points : 7 103
    Points
    7 103
    Par défaut
    Bonjour,

    il existe un outil, Tidy, qui sert un peu à cela pour des sources (X)HTML, mais il n'existe pas d'outil de "réparation XML" généraliste.

    Ca s'explique d'ailleurs assez facilement, puisque la sémantique véhiculée par la structure XML ne peut pas toujours être inférée, même quand on dispose de la DTD. Par exemple, pour ce fragment de XML mal formé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <p>Ceci est du texte avec un mot en <b>gras. Le reste de la phrase est en texte normal</p>
    Il est impossible à un logiciel de déterminer où il doit placer exactement la balise fermante </b>.

    Ou encore :
    Code : 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"?>
    <!DOCTYPE a [
        <!ELEMENT a (b|c)*>
        <!ELEMENT b EMPTY>
        <!ELEMENT c (b)*>
    ]>
    <a>
        <b/>
        <b/>
        <b/>
        </c>
    </a>
    Où placer la balise ouvrante <c> ?
    FAQ XML
    ------------
    « Le moyen le plus sûr de cacher aux autres les limites de son savoir est de ne jamais les dépasser »
    Giacomo Leopardi

Discussions similaires

  1. Transformer un Form en XML
    Par mahdidadi1 dans le forum Windows Forms
    Réponses: 1
    Dernier message: 23/11/2009, 00h31
  2. Transformer un Form en XML
    Par clavelski dans le forum Services Web
    Réponses: 0
    Dernier message: 24/02/2009, 13h41
  3. xhtml->xml transformation xslt
    Par yos dans le forum XSL/XSLT/XPATH
    Réponses: 6
    Dernier message: 14/06/2005, 11h17
  4. renvoyer des données sous forme de XML hiérarchique
    Par DiGueDao dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 12/01/2005, 18h06
  5. [DTD][java]Verifier qu'un doc XML est bien formé
    Par bart64 dans le forum Valider
    Réponses: 3
    Dernier message: 08/01/2005, 14h17

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