Welche Bedeutung hat XML in der Welt von JSON?

17

Wie wichtig ist es, XML zu lernen, wenn JSON fast alles kann, was ich brauche? Allerdings benutze ich JSON hauptsächlich für AJAX-Anfragen und zum Abrufen von Daten von verschiedenen APIs. Ich bin ein absoluter Neuling in der Webentwicklung und der Grund, warum ich das frage, ist, dass ich wissen möchte, ob ich ein Buch über XML kaufen oder ob ich es einfach weitergeben kann.

Rasmus
quelle
2
Angesichts der Tatsache, dass Sie mit XML auf einer ziemlich konsistenten Basis konfrontiert werden, würde ich fortfahren und das Buch erhalten.
Tim Post
11
Lesen Sie einfach die Norm. Ich fand XML noch nie schwierig zu lernen / zu verstehen, nur langweilig.
Dietbuddha
Ich habe das auch nie verstanden - was ist so schwierig am Verstehen von XML? 99,9% von XML wird nur als Container für Daten verwendet - es sind einfache Textdateien, Leute, nichts Kompliziertes!
Keith Palmer Jr.
Jeder sollte uns CSV ...
Jonathan dos Santos
1
@KeithPalmer: und es gibt immer noch viele Fehler im Internet. Von der falschen Kodierungsdeklaration bis zum fehlenden Escape für Zeichen, die eine XML-Datei als einen einzigen CDATA-Container benötigen. Und lass mich nicht anfangen, wie man Namespaces falsch interpretiert.
Joachim Sauer

Antworten:

29

Sie müssen XML lernen, um überall in der Webwelt Fuß zu fassen. Es ist das, was die B2B-Kommunikation antreibt, und es gibt viele Standard-XML-Formate, die wichtige Informationen beschreiben.

Nur sich auf JSON zu beschränken, ist äußerst selbstlimitierend. Ja, Sie werden AJAX-Anrufe herumschmeißen, aber was passiert, wenn Sie mit einem GeoServer kommunizieren müssen? Es wird den GIS-Standards entsprechen und unter anderem XML in den Formaten WCS (Web Capabilities Service), WMS (Web Map Service) und WFS (Web Feature Service) ausstoßen. Wenn Sie nicht wissen, wie Sie mit XML umgehen sollen, haben Sie Probleme damit.

Natürlich kann jeder Marshaller (Domain-Objekt in Textformat), der es wert ist, seine Objekte in und aus XML / JSON / YAML konvertieren, sodass Sie das Argument vorbringen können, dass Sie sich nur hinter dem Marshaller verstecken müssen befassen sich mit den Domain-Objekten. Webservices stellen WSDL genau für diesen Zweck bereit. Aber früher oder später müssen Sie den Inhalt Ihrer Anfragen und Antworten lesen und verstehen, und das setzt sicherlich ein Verständnis von XML voraus.

Und vergessen wir nicht das gute alte XHTML, den alten Webstandard für HTML-Seiten. Es ist XML.

Kurz gesagt, lernen Sie XML - und behalten Sie JSON, wo immer Sie können, denn es ist reizend.

Gary Rowe
quelle
2
Vielen Dank, Gary! XML sieht zwar so aufgebläht und beängstigend aus, aber wenn man bedenkt, was du gesagt hast, muss ich es wohl lernen ......!
Rasmus
@ Alice Beginne langsam. Stellen Sie es sich als sich wiederholendes HTML vor. Berücksichtigen Sie dann die Groß- und Kleinschreibung. Überlegen Sie sich dann, wie verschiedene Datentypen (z. B. int, string, date) in diesen Elementen oder Attributen dargestellt und markiert werden könnten. Dann machen Sie diese Datentypdarstellung etwas formeller (XSD) und Sie sind so weit, wie Sie es brauchen. Dieses Tutorial soll helfen: devguru.com/features/tutorials/xml/beginning_xml.html
Gary Rowe
1
Ich weiß nicht, welche Sprache / Framework / Plattform Sie verwenden, aber ich bin sicher, dass Sie feststellen werden, dass es Standardbibliotheken zum Parsen und Generieren von XML gibt. Sie sollten nicht selbst spitze Klammern manuell interpretieren.
Carson63000
5
+1, obwohl für das, was es wert ist, XHTML ist nicht wirklich neu und scheint mit HTML 5 auf den Rücksitz
John M Gant
1
Könnte sein. Mein Punkt war mehr, dass das W3C scheint, als ob sich ihr Denken über XHTML in den letzten Jahren ein wenig verändert hat. Es ist immer noch da und wird unterstützt, aber es ist nicht mehr so, als ob Sie eine Art IE-liebender Script-Kiddie mit Tabellenlayout sind, wenn Sie einfaches HTML anstelle von XML verwenden. Es ist jedoch irgendwie tangential zu Ihrer Antwort, tut mir leid.
John M Gant
6

XML überstrahlt JSON definitiv für Markup (was im Namen immerhin angedeutet ist).

Ich möchte keine zufällige XHTML-Seite sehen, die in das JSON-Format konvertiert wurde. Es wäre schrecklich. OpenOffice und die neuesten Versionen von Microsoft Office verwenden komprimiertes XML als Format ihrer Wahl.

Als allgemeine Regel gilt: Markup wird in XML erstellt. strukturierte Daten gehen in JSON.

Dann geben Sie Daten aus und haben die volle Kontrolle über das Format. Wenn Sie Daten gemäß Industriestandards ausgeben oder Daten anderer Personen verwenden, müssen Sie möglicherweise XML auch an Stellen verwenden, an denen JSON angemessener erscheint. Das liegt daran, dass XML schon länger etabliert ist und in vielen Standards verwendet wurde.

TRiG
quelle
+1, insbesondere um den Unterschied zwischen Markup und strukturierten Daten festzustellen.
Arseni Mourzenko