就Tim Bray對JSON和XML的比較的幾點看法

gudesheng發表於2008-01-03

原文:Tim Bray on JSON and XML

Tim有一篇有趣的帖子,這篇帖子比較了JSON和XML。他的比較讓我對其中的一些細節產生了興趣。

就這篇帖子,我有一些具體的提問:

1、我沒有找到為什麼JSON比XML擁有不同的流特性的原因。我所編寫的每個JSON分析器都在底層有一層用於流的輸入輸出,並且就像大多數時興XML棧一樣,擁有一個針對上一層的延遲快取機制(和型別對映)。那為什麼說XML天生就更適於流處理?

2、正如在註釋中,Joe Gregorio針對Tim的貼子的闡述,我也偏好JSON只允許基於UTF格式編碼的簡化。

3、Tim闡述道當遇到處理資料順序的情況時使用XML,但是JSON擁有一個完美的順序排列器(陣列),可以被用於很多情況。

4、我也沒有購買JSON,這不是什麼題外話。沒有什麼東西可以阻止JSON價值的追捧者忽略沒有意義的欄位標籤。當然,這需要通過使用慣例來避免名稱空間衝突,但是我不信在同XML的名稱名稱生存了幾乎10年之後,這種做法還是一件糟糕的事情。

5、至於在文字處理上,(相對於XML)我喜歡JSON。你可以巧妙地區分數字和看起來像數字的文字,並且更加重要的是,你可以在無需恢復到base64編碼的情況下,表示含有控制符的字串。當然,我還是沒有拉下有意義的空白和無意義的空白之間的不明確性。對於JSON來說,那很明確,來自於資料本身。對於XML來說,你需要DTD或schema來確定。Tim肯定就是Text先生,所以我很肯定他一定會告訴我要想要這些東西是錯誤的想法。

6、至於產出能力,我沒有看見這與{ “FirstName”: “Tim”, “LastName”: “Ewald” }XML的等同部分(我應該在這將它打出來,但是對於我這一生,我都不能讓.TEXT正確的逃脫萬物的束縛)相比有多差勁。當然,我能將XSLT應用於後者來產出HTML,但是如果我是一個Swing、AWT、User32或者是Avalon使用者又會怎樣呢。

簡而言之,我想XML對於JSON最大的優勢在於它的慣性。在XML這裡,有一大堆處理它的工具和一大堆以XML為載體的資料。

要取代XML,JSON還要翻過一座大山。它的歸宿是新的、不再擁有Javascript/Browser元件的應用程式(感謝Dare)

上面所述的立場中,有它的簡單性和流行趨勢因素在裡面。 



Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1492200


相關文章