yaml ファイルに --- (3 つのダッシュ/ハイフン) が含まれているのはなぜですか? 質問する

yaml ファイルに --- (3 つのダッシュ/ハイフン) が含まれているのはなぜですか? 質問する

YAMLそこで、より読みやすいように、 の代わりに fileを使い始めました。ファイルでは で始まるのapplication.propertiesがわかります。Google で検索して、以下の説明を見つけました。YAML---

YAML では、3 つのダッシュ (“---”) を使用して、ディレクティブとドキュメントのコンテンツを区別します。これは、ディレクティブが存在しない場合にドキュメントの開始を示すためにも機能します。

また、サンプルを試してみたところ、---必ずしも必要ではないことがわかりました。

directiveとを明確に理解していないようですdocument。簡単な例を挙げて説明していただけますか?

ベストアンサー1

すでにご存知のとおり、3 つのダッシュはドキュメントの開始を示す---ために使用されます。つまり、

  1. 現在の仕様に従って、ディレクティブ、つまり、%YAMLまたは行の後にドキュメントの開始を通知します%TAG。例:

    %YAML 1.2
    %TAG !foo! !foo-types/
    ---
    myKey: myValue
    
  2. 同じストリーム内に複数の yaml ドキュメント (例: yaml ファイル)がある場合にドキュメントの開始を通知するには:

    doc 1
    ---
    doc 2
    

    ドキュメント 2 に先行するディレクティブがある場合は、3 つのドットを使用して、パーサーにドキュメント 1 の終了 (およびドキュメント 2 に先行する潜在的なディレクティブの開始) を示す必要があります...。例:

    doc 1
    ...
    %TAG !bar! !bar-types/
    ---
    doc 2
    

この仕様はYAMLパーサーの実装者にとっては良いものです。しかし、この記事ユーザーの視点から読みやすくなります。

おすすめ記事