YAML(ヤムル)とは、システムの設定ファイルやデータの受け渡しに使われる、人が読み書きしやすいデータ記述形式(フォーマット)のことです。名前は「YAML Ain’t Markup Language」という再帰的な頭字語に由来し、XMLとは異なり行の位置(インデント)でデータの階層構造を表現するのが特徴です。
現実世界に例えると、YAMLは「箇条書きでまめたメモ」のようなものです。文章を囲みタグでいちいち区切る代わりに、行の位置を一段下げるだけで「これは上の項目に属する内容だ」と分かるように書けるため、人の目にも構造がひと目で伝わりやすくなっています。
YAMLの基本ルール
- インデントで階層を表現
半角スペースで字下げすることで、データの親子関係を表します。タブ文字は使用できません。 - key: value形式
「項目名: 値」のように、コロンで区切って値を記述します。 - リストはハイフンで表現
行頭に「- 」を付けることで、複数の値を並べたリストを表現できます。 - 拡張子は「.yml」または「.yaml」
テキストファイルとして保存し、プログラムから読み込んで設定内容を反映させます。
他のデータ形式との比較
| 形式 | 記法 | 特徴 |
|---|---|---|
| YAML | インデント中心 | 記号が少なく人が読み書きしやすい |
| JSON | 波かっこ・かぎかっこ | プログラムからの読み書きに適している |
| XML | タグで囲む | 厳密な構造を表現できるが記述が長くなりがち |
主な用途
YAMLは、Dockerのコンテナ構成を定義する「docker-compose.yml」や、Kubernetesのマニフェストファイル、GitHub ActionsなどCI/CDツールの設定ファイルで広く採用されています。複雑な設定内容を、見た目にも分かりやすく管理できる点が評価されています。
YAMLが読み書きしやすい理由
JSONやXMLは、プログラムが正確に処理できるよう記号を多用しますが、その分、人間にとっては波かっこやタグが増えて読みにくくなりがちです。YAMLはコメントを書き込める点も大きな特徴で、「# 」に続けて設定項目の意図をメモしておけるため、後から見直したときにも内容を理解しやすくなります。
記述時の注意点
YAMLはインデントの崩れがそのままエラーの原因になるという弱点があります。スペースの数がずれているだけで階層構造が変わってしまうため、エディタの支援機能を使いながら、インデントを統一して記述することが重要です。
YAMLを扱う際のポイント
YAMLファイルを編集する際は、専用の拡張機能を持つコードエディタを使うと、インデントのずれや構文の誤りを事前に指摘してもらえます。設定を変更する前には元のファイルを控えておき、意図しない構造の崩れがないかを保存前に見直す習慣をつけておくと、トラブルを防ぎやすくなります。


コメント