構造を持つテキストファイル

プレインテキスト

This is an example file which was saved in text format.

SGML

Standard Generalized Markup Language

文書の構造を表す規則をDTDで定義して利用する。 定義そのものを自由に記述できるため複雑。

XML

eXtensible Markup Language

記法は定めておき、意味をどのように盛り込むかを定義して使う言語。

<要素 属性1=1 属性2=2 ....>内容</要素>

HTML

HyperText Markup Language

Webページ記述に特化したSGML準拠の形式。 XMLと同様の記法だが利用者による拡張の余地はない。

ここまでは主に文書記述に特化したものである。 以下はデータ記述が主な利用局面のものである。

S式

Lispで使用される表現形式。

(要素1 要素2 ...)

括弧内に値を列挙する。列挙したものは内部的に木構造を取る。 要素にさらにS式をかけるため以下のような記述ができる。

("月曜" (1 "算数") (2 "国語") (3 "理科") (4 "社会"))

YAML

YAML Ain't Markup Language

構造を持つデータを人間の可読性が高くなるように表す記法。

という規則で記述する。

月曜:
      1: 算数
      2: 国語
      3: 理科
      4: 社会

データ項目を1行内に書くインライン形式の場合は以下のように書く。

月曜: {1: 算数, 2: 国語, 3: 理科, 4: 社会}

配列のインラインは [ ] でくくる。

- 松
- 竹
- 梅

は、以下と同じ。

[松, 竹, 梅]

JSON

JavaScript Object Notation

JavaScriptのオブジェクト(値の集合)を表す表記だが、 Webなどのデータのやり取りで利用されることが多い。 YAMLに似ているが行区切りではなく、括弧やコロンで区切る。

YAMLで示したのと同じ例は以下のようになる。

{月曜: {1: 算数, 2: 国語, 3: 理科, 4: 社会}}