Einmal nur mit Profis (2)

Das Datenformat XML hat den Vorteil, dass es (sofern vernünftig und vorausschauend Gestaltet), dass es für den Mensch recht gut lesbar ist und auch vom Computer gut verstanden wird.

<?xml version="1.0" encoding="ISO-8859-1"?>
<bookstore>
  <book category="cooking">
     <title lang="en">Everyday Italian</title>
     <author>Giada De Laurentiis</author>
     <year>2005</year>
     <price>30.00</price>
  </book>
  <book category="children">
    <title lang="en">Harry Potter</title>
    <author>J K. Rowling</author>
    <year>2005</year>
    <price>29.99</price>
  </book>
  <book category="web">
    <title lang="en">Learning XML</title>
    <author>Erik T. Ray</author>
    <year>2003</year>
    <price>39.95</price>
   </book>
</bookstore>

(geklaut von hier)

Ebenfalls gültige Syntax ist sowas (das gleiche Beispiel, aber ohne „Punkt und Komma“):

<?xml version="1.0" encoding="ISO-8859-1"?><bookstore><book category="cooking"> <title lang="en">Everyday Italian</title><author>Giada De Laurentiis</author><year>2005</year><price>30.00</price></book><book category="children"><title lang="en">Harry Potter</title><author>J K. Rowling</author><year>2005</year> <price>29.99</price></book><book category="web"><title lang="en">Learning XML</title><author>Erik T. Ray</author><year>2003</year><price>39.95</price></book> </bookstore>

Da wirds schon schwierig mit „Menschenlesbar“, deshalb gibt es wiederum Tools welche das wieder etwas lesbarer machen.

Format 1 hat bei der Verarbeitung einen gewissen Vorteil: der Programmierer kann das Zeilenweise lesen und die Zeilenlänge limitieren um „buffer overruns“ (eine sehr beliebte Sicherheitslücke) zu vermeiden.

Und die Verarbeitung (sofern ordentlich formatiert) ist wesentlich einfacher: findet man in der gleichen Zeile einen eröffnenden und schliessenden Bezeichner wie „<author>…</author>“ dann steht da wohl ein interessanter Datenwert drin, ansonsten wird halt eine Gruppe, Untergruppe, Unteruntergruppe etc.. eröffnet.

Ich lege das vorläufige Zwischenergebnis der Verarbeitung in einer Datei auf der Festplatte ab, das tut nicht weh.

Format 2 ist etwas schwieriger weil die Ebenenstruktur nicht in der Datei steht sondern vom Parser selber zu ermitteln ist. Das kostet Rechenzeit und ist auch in letzter Konsequenz ein Sicherheitsproblem wie hier beschrieben – sowas hat mein primiver Parser gar nicht drin.


Jedenfalls habe ich heute so einen „ohne Punkt und Komma“-Datensalat bekommen.

Macht nichts, dafür gibt es sogenannte „tidy“ Tools (also Programme, die das wieder aufräumen – leider meisstens nicht so, wie erwartet).

Nach etwas Nachbearbeitung schicke ich dem Kollegen die Datei mit dem Kommentar „also so hätte ich das gerne“ zurück.

Seine Antwort war „Also der Internet Explorer und Notepad++ zeigen meine Datei und deine Datei gleich an.

Mal schauen wie lange ich brauche um dem Jungen klar zu machen, dass man sich nicht auf Anzeigeprogramme verlassen soll die einem alles schick und ordentlich präsentieren.

Wäre eine neue Geschäftsidee: Brillen für Frauen. Blenden Unordentlichkeit und Dreck auf dem Fussboden aus.

Dieser Beitrag wurde unter Allgemein veröffentlicht. Setzen Sie ein Lesezeichen auf den Permalink.