Einzelnen Beitrag anzeigen

Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#1

[JS] XML-Parser-Klasse, wie realisieren?

  Alt 23. Aug 2008, 16:59
Hallo,

da ich im Internet keine kleine XML-Parse-Klssse finden konnte (ich möchte wirklich nur parsen und keine Nodes verändern), dachte ich mir, ich schreibe selbst eine. Doch das ist absolutes Neuland für mich. Zum Parsen ist SAX deutlich schneller als DOM, habe ich herrausgefunden, aber für SAX muss man irgendwas importieren, daher denke ich, DOM wird auf jedenfall überall laufen.

Ich habe mir dann mal ein Tutorial angesehen, um die Grundlagen zu verstehen. Doch da hört's dann auch schon wieder auf. Dort gibt es das Beispiel:

Code:
try //Internet Explorer
  {
  xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
  xmlDoc.async="false";
  xmlDoc.loadXML(text);
  }
catch(e)
  {
  try //Firefox, Mozilla, Opera, etc.
    {
    parser=new DOMParser();
    xmlDoc=parser.parseFromString(text,"text/xml");
    }
  catch(e) {alert(e.message)}
  }
document.write("xmlDoc is loaded, ready for use");
Das Problem ist, dass ich gerne eine Klasse hätte, die ich so verwenden kann:

Code:
xml = new xmlDoc();
xml.LoadXMLString(...);
xml.ParseString();

foreach (xml.nodes as node)
{
  document.write(node.get_value('key'));
}
Nur so als Pseudo-Code. Ich verlange keinesfalls, dass ihr mir das schreibt. Ich hätte gerne ein paar Ansätze.
Der Code oben aus dem Tutorial ist sowas von verzettelt. Dieser lässt sich eigentlich gar nicht aufteilen in die Methoden zum Erzeugen des Objekts und in eine zum Parsen. Gerade im Firefox-Abschnitt findet beides irgendwie gleichzeitig statt.

Kann mir da jemand ein paar Hilfestellungen geben, wie ich zu meiner Wunsch-Klasse komme?

Grüße
  Mit Zitat antworten Zitat