Hai cercato esempi di documenti JSON e XML?
Mentre sia JSON che XML sono utilizzati per rappresentare arbitrariamente gli alberi , XML è molto più dettagliato. Ogni elemento nell'albero ha un nome (il nome del tipo di elemento) e l'elemento deve essere racchiuso in una coppia di tag corrispondente. Al contrario, JSON esprime alberi in un tipo di notazione "nested array" simile a quello di Javascript (infatti, un documento JSON può essere letteralmente analizzato come Javascript per produrre l'array corrispondente).
Dai uno sguardo allo at the differences.
XML è naturalmente semanticamente più ricco, poiché gli elementi possono essere decorate con un numero arbitrario di attributi , e può contenere elementi contenuto misto di flusso di testo libero e altri elementi nidificati. Ad esempio, il seguente frammento sarebbe noioso per esprimere come JSON:
<paragraph>
This is an entire paragraph of <emph>text</emph>. It is interspersed with
further, nested <emph>XML elements</emph>, as well as the occasional
<link href="http://stackoverflow.com/a/12346394/596781">hyperlink</link>.
</paragraph>
D'altra parte, i dati -come documenti possono essere molto più semplice in JSON. Immagina:
<properties>
<property type="int" name="ID">123</property>
<property type="date" name="birthday">19700101</property>
<references>
<url>http://stackoverflow.com/a/12346394/596781</url>
<doi>something.made.up</doi>
</references>
</properties>
Questo diventa un array JSON molto compatto.
Una considerazione secondaria è la quantità di set di strumenti che circondano entrambi i formati. Mentre gli strumenti JSON riguardano principalmente l'analisi dei dati JSON, il W3C ha sviluppato un insieme molto ampio di tecnologie aderenti per manipolare XML in modo sistematico, come XSLT e XPATH.
In breve, e come opinione molto personale, direi che XML riguarda il documento e JSON riguarda i dati. XML si sentirà più naturale e utile per documenti strutturati di grandi dimensioni, mentre JSON è spesso il formato più semplice e meno verboso per la trasmissione di serie di dati.
Una risposta completa considera tutte e tre le risposte principali che hai ricevuto. Se si sta tentando di scegliere tra XML e JSON, sarebbe opportuno chiedersi quale scopo servirà. Se si desidera la serializzazione compatta per la trasmissione o l'archiviazione di massa, JSON è l'ideale. Se si desidera eseguire la manipolazione dei documenti, XML è, come rileva Kerrek, molto meglio supportato dalle tecnologie aderenti. Se si utilizza il framework .NET questo è meno importante perché LINQ può eseguire query/trasformare praticamente qualsiasi cosa. –
@PeterWone: Non c'è niente come "le prime tre risposte" su StackOverflow, perché l'ordine varia nel tempo in base ai voti espressi. Per fare riferimento a risposte specifiche, si prega di nominare l'autore o dare il permalink. Nello specifico, al momento in cui scriviamo, abbiamo una risposta con 21 voti e tre risposte con 5 voti ciascuno. Quindi quali sono i "primi tre"? :) – KPM
@ KPM - sì, ed è esattamente quello che intendevo: le tre risposte con il punteggio più alto al momento del commento. Ho * fatto * il nome di uno degli autori, e il mio commento era in grado di stare da solo; Cito quelle risposte puramente come cortesia agli autori. Ad ogni modo, eccoci anni dopo e sono ancora le prime tre risposte e le tre migliori risposte. –