Hallo Phlipp,
- es schein heute der Tag von den Philipps zu sein - :-)
Auch dein Problem ist an sich keine Frage von/zu XML.Das Teil zeigt alles mögliche an, manches brauche ich jedoch nicht. Durch eine Variable hab ich das jetzt einigermassen in griff bekommen (es sollen eigentlich nur die Deutschen Server angezeigt werden), dennoch hab ich das gefühl es geht einfacher. Und zwarist es ja so, dass die <server> tags doch recht gross sind. Und wenn ich jetzt sage mich interessiert der englische server nicht, parst er mir trotzdem ALLE inhalte dieses Servers (durch eine Variable unterdrücke ich nur die anzeige von den inhalten, geparst werden sie ja trotzdem). Meine Frage ist jetzt, ob ich nicht einfach "sagen" kann, den Tag und alle untergeordneten sollst du gänzlich überspringen.
Erst die Antwort: Ja, du könntest.
Aber dazu müsstest du einen Parser nehmen, der mit einem SAX API arbeitet (was kaum der Fall sein wird, wenn du nicht mit Java arbeitest)
Die andere Methode ist der Zugriff über DOM auf die XML-Datei.
Der Unterschied zwischen den beiden Methoden ist, dass beim zugriff über DOM erst die ganze XML-Datei in dem Speicher eingelesen werden muss, bevor du damit weiterarbeiten kannst und das kostet bei großen XML-Dateien (wobei deine nicht wirklich groß ist (51Kb ist wirklich kaum eine Größe)), nicht nur Memory, aber auch Zeit.SAX arbeitet anders: er geht event-basiert vor, d.h. du kannst dem Parser einen "event" mitteilen bei dem er etwas machen soll (nach dem Motto: sag mir, wenn etwas passiert). Also, er geht vom Anfang des Dokuments vor und liest auch alles - aber nur durch- und meldet immer wieder zurück was er gefunden hat.
In deinem Fall: du sagst ihm, dass er bei type="german" etwas tun soll. Er geht also und meldet
- server name="Excalibur" type="English" updated="17-11-2002 1:40:01"
- server name="Broceliande" type="French" updated="17-11-2002 01:40:00"
- server name="Avalon" type="German" updated="17-11-2002 01:40:00"
STOP!
Tja, so weit über DOM und SAX.
Infos unter: http://www.saxproject.org/
Über andere Spachen als Java: http://www.saxproject.org/?selected=langsFür ein paar einfache Links zum Thema XML, PHP (EXPAT), wäre ich schon sehr dankbar.
http://www.phpbuilder.com/columns/justin20000428.php3 Achtung der Artikel ist auf mehrere Seiten unterteilt.
http://www.xml.com/pub/a/1999/09/expat/index.html
Grüße
Thomas
Danke dir Thomas, ich denke das hat mir in dem ganzen wirrwar etwas weitergeholfen. Also lassen sich quasi auch eigene Events definieren. Nicht nur StartElement und EndElement. Und danke auch für die Links...
Grüße
Philipp