XML
JSON
初心者
YAML
TOML

【目的無しの泥臭調査④】主なデータフォーマットについて、把握する。


  • ふと気になったことを、淡々と赴くままに調査していく、この上ない自己満足記事第四弾。

  • 四回目にして、「この快楽行為は際限なく続いてしまう」と、全てを悟ってしまった、生粋のさとり世代は、「とことんこの山道を登りきる」という、更に悟りを重ねる始末。

  • 今回は、前から知りたかった各データフォーマット調査をしてみよう。


調査対象


  • JSON

  • XML

  • YAML

  • TOML


JSON


  • JavaScriptベース表記の軽量データ記述言語。


書き方

{

"name": "hanako",
"age": 3,
"job" : "baby"
}


特徴


  • PythonやPHP等、多数の言語との親和性が高く、汎用的。

  • 構造をシンプルに記述できる。

  • テキストベース

  • 文字コードはUTF8が必須。

  • コメント書けない


事例


  • 各種API

  • JS関連ライブラリ


XML


  • データ構造化マークアップ言語。


書き方

<users>

<user>
<name>hanako</name>
<age>3</age>
</user>
<user>
<name>taro</name>
<age>2</age>
</user>
</users>>


特徴


  • 新しくタグや属性を定義・使用可能

  • システム間のデータ交換が容易

  • データの再利用性が高い


事例


  • RSS

  • Office Open XML


YAML


  • データ構造やオブジェクト表現のための設定言語。


書き方

user:

- name: hanako
age: 3
job:
- baby
- heroine

- name: taro
age: 2
job:
- baby
- hero


特徴


  • 記法がシンプルで、可読性も高い

  • コメントが書ける

  • テキストベース

  • 終了タグが必要ない


事例


  • Ruby on Rails

  • Ruby関連ファイル


TOML


  • 最小限の明瞭設定言語。


書き方

title = "hello"

[owner]
name = "hanako"
age = 3

[database]
server = "80.80"
ports = [ 80, 81, 82 ]


特徴


  • 読みやすい

  • 明確に設計されている。

  • 多様な言語に対応

  • コメントが書ける


事例


  • GitLab

  • pip

  • vim


まとめ


  • 今回は主なデータフォーマット調査ということで、各々の「取り柄・長所・特技・欠点」等を、資格すらももらえない「親の気分」で把握していく、まごころ作業。

  • この変遷は、「人間にもコンピュータにも分かりやすく、読みやすく」という「開発者達の愛情と熱意の歴史でもある」という、未来永劫似合わない感情に浸る。

  • 今後の、「愛溢れる新たなデータ形式」への開発にいそしんでいる開発者達に敬意を示しながら、またひそひそ調査生活を過ごすことにしよう。


参考