YAML
YAML(YAML Ain't Markup Language)は、設定向けのデータ直列化形式で、インデントで階層を表し、コメントと参照をサポートし、JSONよりも手書き編集に適する。
目的
JSONより書きやすく保守しやすい設定形式を提供し、コメント、複数ドキュメント、アンカー参照をサポートする。
メカニズム
インデント(スペースのみ、タブ不可)がネストを表し、コロンがキーと値を区切り、ハイフンがリスト項目を示す。コメント(#)、複数ドキュメント(---)、参照のためのアンカー(&)とエイリアス(*)をサポートする。型推論(yes/no が真偽値になる)に注意が必要である。
ユースケース
- CI/CDパイプラインの設定(GitHub Actions、GitLab CI)
- Kubernetesのマニフェスト
- Docker Composeの設定
- アプリケーションの設定ファイル
例
- 入力
name: Ada age: 36OutputThe object {name:"Ada", age:36}Indentation expresses hierarchy
よくあるエラー
- Indenting with tabs (YAML allows spaces only)
- Use spaces for indentation consistently
関連用語
JSON
JSON(JavaScript Object Notation)は、JavaScript のオブジェクトリテラルに基づく軽量なデータ交換形式である。キー・バリューペアと配列を使う。 用語集
TOML
TOML(Tom's Obvious, Minimal Language)は設定向けのフォーマットで、テーブルとキーと値のペアでデータを表現する。明示的な意味を持ち、暗黙の型推論はない。 用語集
XML
XML(Extensible Markup Language)は、タグツリーでデータを記述するW3C標準のマークアップ言語で、名前空間、スキーマ検証、スタイル変換をサポートする。 用語集
INI
INI は伝統的な設定ファイル形式である。[section] ヘッダーと key=value ペアで設定をグループ化する。シンプルだが標準化されておらず、実装ごとに細部が異なる。 用語集
Frontmatter
フロントマター(Frontmatter)は、文書の先頭に置かれる --- で区切られた YAML/TOML/JSON メタデータブロックであり、静的サイトジェネレーターで広く使用される。 用語集
関連ツール
YAML コンバーター
Convert between YAML and JSON online。無料、プライベート、100%クライアントサイド。 ツール
JSON YAML 相互変換ツール
Convert between JSON and YAML formats online。無料、プライベート、100%クライアントサイド。 ツール
YAML から XML への変換
Yaml To Xml — 純クライアントサイドツール。プライバシーファースト、サーバー往復なし。 ツール
YAML から CSV への変換
Yaml To Csv — 純クライアントサイドツール。プライバシーファースト、サーバー往復なし。 ツール