Partage
  • Partager sur Facebook
  • Partager sur Twitter

Ouvrir du XML depuis javascript : quid du DTD?

    16 avril 2010 à 0:44:08

    Bonjour, dans une appli web j'ouvre des fichiers xml depuis javascript.
    Pour l'instant je fais ça sans librairies, cela dit si vous en connaissez qui me faciliteraient la tâche je ne suis pas contre.
    ça donne donc des lignes du genre :
    xmlDoc=new window.XMLHttpRequest();
    xmlDoc.open("GET",url,false);
    xmlDoc.send("");
    

    Ça fonctionne plus ou moins, sauf que :
    -le DTD n'est pas pris en compte. J'ai mis dans le DTD des valeurs par défaut pour certains attributs, or ils apparaissent comme undefined au lieu de prendre la valeur par défaut lorsque non renseignés, y'a-t-il moyen de prendre en compte ces valeurs par défaut?
    -le premier nœud renvoyé est le doctype qui justement devrait être analysé et non renvoyé à mon sens.
    -il n'y a aucun moyen de repasser du DOM au format XML par la suite, j'ai du faire à la main du code qui retransforme l'arbre en texte XML, c'est pas pratique.
    -Je ne sais pas comment charger du XML depuis une textarea au lieu d'aller chercher un fichier xml.

    Mon plus gros problème reste le premier point, mais des réponses à mes autres interrogations m'intéressent néanmoins.

    Quelqu'un aurait-il un élément de réponse à m'apporter?

    [EDIT]
    On vient de m'apporter la solution à deux de mes points :
    - Pour repasser du DOM au texte : new XMLSerializer().serializeToString(doc)
    - Pour charger du xml depuis la textarea : doc = new DOMParser().parseFromString(document.getElementById("area").innerHTML, "text/xml");
    • Partager sur Facebook
    • Partager sur Twitter

    Ouvrir du XML depuis javascript : quid du DTD?

    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
    • Editeur
    • Markdown