60

数年後、xmlの代わりにyamlが使用されることを読みました。各仕様の相対的な長所と短所を比較してください。

4

5 に答える 5

91

YAMLはそれほど冗長ではありません。信号対雑音比は、すべての括弧がないと高くなります。これにより、多くの人にとって主観的に読みやすく、編集しやすくなります。反対に、解析が少し(ほんの少しだけ)難しくなります。

ただし、最大の違いは、XMLはマークアップ言語であることが意図されており、YAMLは実際にはデータ形式であるということです。単純な階層データの表現はYAMLでより適切に行われる傾向がありますが、実際のマークアップされたテキストは表現するのが面倒です。

編集:参考までに、YAMLは本質的に(歴史的にではありませんが)JSONの「よりクリーンな」バージョン(「JavascriptObject Notation」)であり、後者の知覚されるラインノイズ(括弧と中括弧)を大幅に排除します。特定のプロジェクトに適したYAMLライブラリが見つからない場合は、JSONがより広くサポートされている代替手段であり、YAMLの多くの利点があります。

于 2009-08-20T20:17:39.693 に答える
32

YAMLはXMLよりも冗長ではありません。ただし、 YAMLはデータ専用であり、技術的にはマークアップ言語ではありません(Y AML A'int M arkupL言語)。

于 2009-08-20T20:15:57.263 に答える
17

xmlの大きな利点は、検証するオプションです(括弧内の意見)。

  • スキマトロン(非常に強力)
  • W3C XMLスキーマ(実線)
  • DTD(あまり良くない(xmlでもない))
  • XSD(最もよく使用されます)

そして、データをクエリするためのオプション:

  • XPath(バージョン2.xではさらに優れています)
  • XQuery(ほとんど興味がなくなった)

ほとんどの場合、YAMLはおそらく人間にとって最も読みやすいものです。

JSONは非常に読みやすく、JavaScriptがデータを保存する方法です(間違っている場合は訂正してください)。値を解析するために独自のCスタイルのプログラミング言語を作成するときは、JSONを使用するのが本当に好きです。

于 2012-08-27T15:37:41.413 に答える
10

私が見る主な利点は、人間が読みやすいことです。また、特定のデータ構造(辞書と配列)の概念がすでに組み込まれているため、XMLよりも少し優れています。

反対に、YAMLを解析するためのライブラリサポートはXMLのサポートにほど遠いため、XMLの主な用途の1つを満たすためにYAMLを使用することは困難です。それがアプリケーション間通信です。

于 2009-08-20T20:17:12.893 に答える
9

YAMLが未来であるとはあまり確信していません。私はそれを使用し、WorksForMe™を使用しましたが、仕様について不満を感じることがよくあります。最新のものは、なぜYAMLが好きではないのかです。

于 2009-08-21T12:55:28.630 に答える