Hallo Philipp!
eigentlich für alle, nur machens die meisten nicht ;)
Ich frage mich hier ob es bei DTDs eher darum geht einen Standard für einen Datenaustausch zu haben, also wenn die Dokumente valide sind dann verstehen das auch alle Parser die damit zu tun haben, oder ob der Parser auch so was davon hat. Z.B. bei HTML hat man ja so zu sagen die DTD im Kopf(oder in SELFHTML ;-)), und die Browser halt so zu sagen mit einkompiliert(nicht die DTD sondern deren Logik), ich weiß z.B. was ich innerhalb von <table></table> zu verwenden habe, und wo genau #PCDATA stehen darf. Dasselbe weiß auch der Browser, udn bisher war es immer so das man was geschreiben hat, udn anstatt es zu validieren wurde es halt im Browser ausprobiert und wenn es in den meisten Brwsern lief war es "valide". Wozu das am Ende geführt hat kann man an einigen Browsern und vielen Internetseiten bewundern. Ich finde Bowser und HTML sind ein eigenes Kapitel was noch sehr weit von XML entfernt ist, weil man nicht mal eben alle Internetseiten valide machen kann und Monopolisten wie MS in seine Software-Entwicklung reinreden kann. Mir geht es jetz gerade eher im XML an sich.
Entweder ich entwickle einen Parser wie früher dei Browser, der die Struktur des XML-Dokumentes schon vorher kennt und entsprechend mit den Daten umgehen kann, oder ich entwickle einen Parser, der _immer_ eine DTD braucht, um mit den XML-Daten überhaupt was anfangen zu können, oder?
ich bin mir selber nicht ganz sicher, glaube jedoch gehört zu haben, dass bei einem XHTML-Doctype auch der XML statt HTML Parser anspringt. Ich schätze jedoch, dass dies auch Browserabhängig ist.
Keine Ahnung, aber wenigstens könnsn die aktuellen Browser langsam ein wenig XML, soweit ich weiß ist XML beim (IE < 6 && IE >= 5) zwar möglich, aber nur sehr chlecht, (IE >=6 && Mozilla 1.1) sind da schon besser und können durchaus XML mit XSL darstellen. Kann man eigentlich serverseitig verläßlich erfahren ob der Client XML kann? Über den User_Agent wohl kaum, vielleicht über eine Test-XML-Seite in einem 1px Frame, die bei funktionierendem XML irgendwas auf dem Server nachläd oder sowas?
Die Parser interessieren sich IMO nur für wellformed, nicht für die Validität (evtl. optional doch?), wenn ich nicht irre. Es werden also im Normalfall keine externen Ressourcen eingelesen.
Was heißt "der Parser"? Ist es in XML nicht so dass es ganz viele verschiedene Parser gibt die bei Validität halt alle kompatibel sind? Ich meine Parser auch in dem Sinn einer Software die Daten per XML- austauscht...
Viele Grüße
Andreas