Hallo Thomas,
XML ist eine Sprache zur Beschreibung von Datenformaten -
Das ist doch gar nicht so falsch,
Doch, sogar eine ganze Menge.
Nein ;-)
Reden wir gleich über XML-Schema: da hätte ich dem Satz von oben ohne Probleme zustimmen können. Mit einer Schema beschreibt man tatsächlich ein Datenformat, nämlich das eines (oder mehreren ) XML-Dokuments.
Ja, und auch eine DTD ist ein Schema!
Ich finde, dass der "Dokumentjargon" keines wegs verfehlt ist, erstens sollte das daran erninnern, welche Hintergründe XML hat und zweitens die Hysterie so manch einer Programmierer etwas dämpfen. Es war durchaus der Sinn von XML eine Auszeichnungssprache zur Verfügung zu stellen, die auch Semantik in die Auszeichnung bringt,
100% Zustimmung. Nur: auch Daten profitieren von der semantischen Auszeichnung. Dass XML von der Dokumentenschiene kommt, ist unumstritten. Aber seine Stärke liegt eben gerade darin, dass es AUCH die Datenschiene bedienen kann.
aber viele sehen darin nur noch eben ein Datenaustauschformat (was wie gesagt nur ein Aspekt ist). Und es stört mich überhaupt nicht, wenn die "Programmierer" daran erinnert werden, dass XML aus dem MarkUp bereich stammt ;-) .
Ja gut, aber nochmal: Datenformat heisst nicht gleich DatenAUSTAUSCHformat. Daten hast du immer. Wenn du ein CMS nutzt um Deinen Produktkatalog zu publishen und holst Dir dann eben die Datenfragmente aus einer DB oder auch plain XML-Files, dann mischt sich bereits der Daten- und Dokumentenaspekt. Und genau dafür ist XML bestens geeignet. Daten kannst du auch nur halten, ohne sie auszutauschen.
XML ist ein Datenformat, das habe ich ja auch nicht in Frage gestellt. Aber was ist bitte ein "Datenformat mit Datendefinitionssprache"?
Na ganz einfach, es ist nicht nur einfach ein Format, sondern stellt auch die Möglichkeit zur Verfügung eigene Formate zu definieren.
Wie gesagt XML, beschreibt keine Datenformate.
Diesen Teil Deiner Argumentation verstehe ich nicht. Mit XML kann ich mein eigenes Datenformat definieren; oder nenne es Dokumenttyp oder XML-Anwendung. Ich verstehe Deinen Punkt noch nicht ganz...
Dass in XML Daten strukturiert erfasst werden können ist auch klar (obwohl ich in der letzen Zeit strak daran zweifle, dass Leute noch wirklich wissen was "strukturiert" bedeutet, aber das ist eine andere Sache).
Hm, das mag sein, aber so aufregend ist dass nicht, sage ich mal etwas polemisch ;-)
XML ist eben besonders für hierachisch strukturierbare Daten geeignet. Weniger für relational besser strukturierbare. Oder anders formuliert, man muss eben relationale in hierarchische Strukturen auflösen bzw. verstärkt den - im Vergleich zur relationalen Tabellen - recht schwachen ID-Mechanismus nutzen.
Und wie schon gesagt: mit Schema kann ich z.B. ein Datenformat eben für ein XML-Dokument beschreiben. SVG, RDF und RSS etc basieren auf XML sie _beschreiben_ in der Tat Datenformate.
Den letzen Satz verstehe ich nicht. Kann ich nicht mit DTDs auch ein Datenformat beschreiben?
Wenn wir es ganz genau nehmen ist XML keine Auszeichnugssprache im herkömmlichen Sinn.
Was ist denn eine Auszeichnungssprache im herkömmlichen Sinne? Meinst du das XML zusätzlich eine Metasprache ist?
Ich mache mir gerne dabei die Meinung von Elliotte Rusty Harold (XML Bible) eigen, wenn er sagt
"XML is a set of rules for defining semantic tags that break a document into parts and identify the different parts of the document. It is a meta-markup language that defines a syntax used to define other domain-specific, semantic, structured markup languages."
Das sagt für mich nicht mehr, als das XML sowohl Auszeichnungsregeln als auch Deklarationsregeln hat (also Datenformat mit Datendefinitionssprache ist oder auch Auszeichnungssprache als auch Metasprache gleichzeitig ist). XML ist natürlcih keine Auszeichnungssprache mit festem Vokabular. Das meinst du wohl mit nicht herkömmlich. Trotzdem ist es kein wirkliches Argument gegen den Begriff Datenformat. CSV-Dateien sind auch ein Datenformat, ohne ein festes Vokabular vorzugeben...
Gruß Franz