Seite 1 von 1

XML <--> Json

Verfasst: Montag 30. April 2007, 11:29
von EnTeQuAk
Nun gibt es ja schon zwei... ;)

bei Ajax, verwenden nun viele Json statt XML, wie ich mitbekommen habe.
Welche Vorteile bringt genau Json so alles mit, außer der (evtl.) besseren Lesbarkeit?


Und was mich am meißten interessiert: Macht es sinn, wenn man bisher Daten für seine Python-Anwendung mit XML gespeichert hat, Json zu nutzen?
Wo genau liegen die Unterschiede?


Herzlichen Dank!

MfG EnTeQuAk

Re: XML <--> Json

Verfasst: Montag 30. April 2007, 11:56
von gerold
EnTeQuAk hat geschrieben:Welche Vorteile bringt genau Json so alles mit, außer der (evtl.) besseren Lesbarkeit?
Hallo EnTeQuAk!

My 5 cents:

- XMLRPC ist in der Standardbibliotek von Python mit dabei. JsonRPC nicht.

- JsonRPC ist nicht so aufbebläht wie XMLRPC. Dadurch ist es bei der Datenübertragung etwas schneller.

- Mit XMLRPC kann so gut wie jede Programmiersprache etwas anfangen.

http://www.python-forum.de/post-36254.html#36254

- XML ist ein Standard zum Datenaustausch, der sich besonders auch im industriellen Umfeld stark durchgesetzt hat bzw. durchgesetzt wurde. Es gibt eigene Datenaustauschserver, die alles über die Schnittstelle XML regeln.

- XML besitzt eigene Regeln (Schema, xsd), mit denen die Datenstruktur kontrolliert werden kann. Mit XSD-Dateien kann jede der datanaustauschenden Parteien prüfen ob die Daten auch korrekt in das XML-File geschrieben wurden.

- XML kann über Templates umgewandelt werden. Z.B. nach XHTML.

- Docbook --> XML-Format für Dokumentationen ( http://docbook.sourceforge.net/ http://www.goshaky.com/docbook-tutorial/index.html )

- JSON ist einfacher und besitzt auch keine derartigen Kontroll- und Übersetzungssysteme.

Durch die Einfachheit ist JSON für viele (einfache) Dinge meist sehr gut geeignet. Vorausgesetzt, dass der Hauptaugenmerk nicht auf den Datenaustausch mit mehreren, evt. unbekannten, gelegt wird. Dafür ist XML um ein vielfaches besser geeignet -- aber auch komplizierter. (Wenn man es richtig macht.)

mfg
Gerold
:-)

Verfasst: Montag 30. April 2007, 15:14
von EnTeQuAk
Danke, Gerold. Sind einige sehr interessante Sachen drinne.

Also ansich ist an XML nichts falsches dran.

Wie sieht es denn mit Erfahrungen aus? Braucht XML-RPC wirklich so viel Länger? Klar ist es eine Implementierungssache. Aber (ich glaub es nicht gelesen zu haben) wie hoch ist der Overhead?

Hat da jemand Erfahrungen?
Durch die Einfachheit ist JSON für viele (einfache) Dinge meist sehr gut geeignet. Vorausgesetzt, dass der Hauptaugenmerk nicht auf den Datenaustausch mit mehreren, evt. unbekannten, gelegt wird.
Aber... JSON-Module gibts ja mitlerweile auch für eine ganze Hand voll Programiersprachen.

Wie siehts eigentlich aus mit XML2JSON convertierern?
Gibt es da so etwas?


MfG EnTeQuAk

Verfasst: Montag 30. April 2007, 15:22
von Leonidas
Naja, der größte Vorteil ist eben, dass JSON einfach eine JavaScript-Datenstruktur ist, die man unter der Verwendung von JSONP sehr hübsch in AJAX-Programmen verwenden kann (JSON-RPC). Du kannst dir mal den JSON-Talk vom 23C3 anschauen.. erfängt etwas langweilig an, aber ab der mitte wird er ziemlich interessant.

Verfasst: Montag 30. April 2007, 15:29
von EnTeQuAk
Du kannst dir mal den JSON-Talk vom 23C3 anschauen.. erfängt etwas langweilig an, aber ab der mitte wird er ziemlich interessant.
Werd ich mal machen, wenn du den hier meinst ;)
Naja, der größte Vorteil ist eben, dass JSON einfach eine JavaScript-Datenstruktur ist, die man unter der Verwendung von JSONP sehr hübsch in AJAX-Programmen verwenden kann (JSON-RPC)
Es ist aber nicht auf Javascript beschränkt. Macht es denn Sinn, JSON auch als XML Alternative für Pythonprogramme zu verwenden? Warum nicht, oder?

So... nu gehts erstmal nach Hause und unterwegs wird sich der 23C3-json-talk reingezogen *g*

MfG EnTeQuAk

Verfasst: Montag 30. April 2007, 15:40
von gerold
EnTeQuAk hat geschrieben:wie hoch ist der Overhead?
Hi EnTeQuAk!

http://www.python-forum.de/post-33093.html#33093

mfg
Gerold
:-)

Verfasst: Montag 30. April 2007, 16:05
von Leonidas
EnTeQuAk hat geschrieben:
Du kannst dir mal den JSON-Talk vom 23C3 anschauen.. erfängt etwas langweilig an, aber ab der mitte wird er ziemlich interessant.
Werd ich mal machen, wenn du den hier meinst ;)
Ja, das ist schon der. Allerdings würde ich dir empfehlen das ganze Video zu sehen, nicht nur den Ton.