JSON: The Fat-Free Alternative to XML
JSON:豐富而免費的XML替代品
(這個標題這麼翻譯,不知道對不對,呵呵)
可延伸標記語言 (XML)(XML)是源自標準通用標記語言 (SGML)(SGML)的文字格式設定。與SGML相比,XML很簡單。超文字標記語言 (HTML)(HTML),通過比較,甚至更簡單。即便如此,好的HTML參考書,有一英寸厚。這是因為組織檔案的格式和結構是一個複雜的業務。
圍繞XML的熱點大多是圍繞一個新的角色,一個可以與之互換的資料序列化格式。
XML作為資料表示語言提供了兩個巨大的優勢:
1、它是基於文本的。
2、它是平台獨立的。
相比其他的資料交換格式而言,這些優勢使獨立應用達到更高的水平。事實上,XML已經是一個W3C標準。
不幸的是,XML不適合資料交換,就像一把扳手是不適合駕駛的手指。它承載了很多的行李,和大多數程式設計語言的資料模型不匹配。當大多數程式員第一次看到XML,他們是多麼醜陋和低效的,令人震驚。事實證明,第一反應是正確的。還有另一種文字元號,具有XML的所有優勢,但更適合於資料交換。這種符號是JavaScript對象符號(JSON)。
基於XML的最明智的(見例如xmlsuck.org)建議,XML作為資料交換格式存在大問題,但這些缺點是用互通性和開放性的利益來補償的。
JSON的互通性和開放承諾提供同樣的好處,但沒有同樣的缺點。
讓我們來比較XML和JSON的XML社區認為重要的屬性。
來自http://www.simonstl.com/articles/whyxml.htm
簡單
XML比SGML簡單,但是JSON比XML要簡單得多。 JSON有一個更簡單的文法,更直接地在現代程式設計語言中使用的資料結構和地圖。
可擴充性
JSON是不可擴充的,因為它並不需要。 JSON是一個文檔標記語言,所以它是沒有必要來定義新的標籤或屬性來代表資料。
互連性
JSON作為XML的互通性潛力。
開放
JSON至少是跟XML一樣的開放,或許因為它不是在企業/政治標準化鬥爭的中心。
來自http://www.karto.ethz.ch/neumann/caving/cavexml/why_xml.html
總的來說,下面是XML的一些優勢。
XML是人類可讀
對於人來說,JSON比XML更易於閱讀。也容易寫。它也更容易為機器讀寫。
XML可以用來作為交換格式,使使用者能夠在類似的應用程式之間傳遞資料。
Json也同樣能做到。
XML提供了一種資料結構,因此,它資訊豐富
JSON也是一樣的
XML很容易處理,因為資料結構是簡單而標準的
JSON處理更容易,因為它的結構更簡單。
有一個可重用的使用廣泛的軟體提供給程式員來處理XML,使他們不必重新發明代碼
JSON的,是一個簡單的符號,專門的處理軟體要少得多。在語言JavaScript和Python JSON符號建成的程式設計語言,沒有額外的軟體。在其他語言中,只有少量的JSON特定的代碼是必要的。例如,封裝到Java的JSON提供三個簡單的類是從JSON.org免費提供。
XML把資料結構和資料分開。
XML需要翻譯成一個文檔結構的資料結構。這個映射可以是複雜的。 JSON結構是基於數組和記錄,這是它的組成部分。基於XML結構元素(可嵌套),屬性(不能),原始常值內容,實體,DTD和其他薈萃結構。
一種常見的交換格式
JSON是一個更好的資料交換格式。 XML是一個更好的檔案交換格式。應該使用合適的工具來適應合適的工作。
一個資料的許多意見
JSON不提供任何顯示功能,因為它不是一個檔案標記語言。
來自http://www.softwareag.com/xml/about/xml_why.htm
自我描述的資料
XML和JSON在這一點上是相同的。
是傳統的資料庫和格式的完整一體化
(關於XML的報道有時有點誇張)XML檔案可以包含任何可以想象的資料類型 - 從經典的資料,如文字和數字,或如聲音等多媒體對象,像Java applets或ActiveX組件的常用格式。
JSON沒有<[CDATA [[]]>功能,因此它不適合作為聲音或影像或其他大型的位元據的載體。 JSON的資料進行了最佳化。此外,如果在資料交換系統提供可執行程式,可以引進危險的安全問題。
國際化
XML和JSON都使用Unicode。
開放和可擴充
XML的特點之一是一類開放式結構允許您在需要時添加其他國家的藝術元素。這意味著,你總是可以使你的系統接受特定行業的詞彙。
這些詞彙可以自動轉換為JSON,使資料從XML到JSON非常簡單。
來自
http://www.xmlspy.com/manual/whyxml.htm
XML是很容易被人和機器閱讀
JSON是人類和機器都容易閱讀。
XML是物件導向
實際上,XML是面向文檔。 JSON是面向資料。 JSON可以更容易地被映射到物件導向的系統。
XML在電腦行業被廣泛採用
JSON是剛剛開始為大家所熟知的,它是簡單的。把XML轉換為JSON的便利性使得JSON很容易為人所接受。
頭一次翻譯文章,挺耗時間蠻有難度的,也挺好玩的。希望大家幫著挑錯。
英語原文地址
http://www.json.org/xml