-2

JSONの代わりにXMLを使用する必要がある場合とその理由を誰かが知っていますか?

ありがとう

4

2 に答える 2

5

XML-長所

  1. より厳密-提供されたXMLデータが構文的に正しいかどうかを分析できるドキュメントタイプ定義(DTD)とともに提供できます
  2. 名前空間-さまざまなリソースからのデータを混合するのに役立ちます(たとえば、SpringCoreとSpringSecurityの名前空間を使用できます。これはマークアップの読み取りと理解に役立ちます)
  3. XPathでナビゲートできます-マークアップ内に深くネストされたものを探すのをスピードアップするのに役立ちます
  4. 膨大なデータセットは、SAXパーサーなどの軽量プロセッサを介して解析できます
  5. JSONを介したXMLの使用を強制できる一部のプロトコル(SOAPなど)で使用されます
  6. ブロックの周りが長くなります-一部の古いライブラリは使用できます/使用できます
  7. 優れたツールのサポート(Scalaでのネイティブ使用やIDEサポートなど)

XML-短所

  1. それが本当に大きくなっているときに読みにくい-維持するのが難しい
  2. ネットワーク帯域幅とディスク使用量に大きな影響を与える可能性のあるすべての不要なタグ(<some_long_tag_name>...</some_long_tag_name>1つのファイルでx1000回遭遇するなど)によるオーバーヘッドが発生します

JSON-長所

  1. 人間が読みやすい

  2. おかげでウェブブラウザのネイティブサポートJavaScript

JSON-短所

  1. タイプ定義が含まれていません("some_object" : "10" // String or Int?

  2. ある種のDTDの欠如(「some_object」が必要であることをどのように判断できますか?)

これらは単なる主要なものです。正直なところ、それについて本を書くことができたので、なぜ人々がこの質問を格下げしているのか不思議ではありません...しかし、私はあなたを少し助けるのに適切だと思いました。

于 2012-06-21T09:07:59.543 に答える
2

(ツール、ライブラリ、メソッド、および知識の現状で)XMLが推奨される場合の例:

  • いくつかのルールに従った検証(XSD、Relax NG)
  • SOAPまたはREST/XMLを介した確立された(または一部の人が言うかもしれないレガシー)システムとの通信
  • W3C標準(XML署名)またはOasis標準(WS-Security)に基づくデジタル署名
  • いくつかの外部レシピを使用してプレゼンテーションが必要になる可能性がある場合-XSLT
  • たとえば、ApacheFOPでXSLを使用してPDFを生成する必要がある場合
  • 標準のweb/application.configファイルを使用して.NETアプリケーションを構成する必要がある場合
  • 群れを追いかけるのではなく、仕事をやりたいだけのとき
于 2012-06-21T09:08:26.373 に答える