前のトピック: 区切り文字の詳細

次のトピック: コンポーネント記述子構文


記述子の構造

各記述子ファイルの全体的な構造は以下のとおりです。

entity-type entity-name
   {
    attributes-and-subentities
   } 

各項目の説明:


type および name は、それぞれサブエンティティのタイプと名前です。

attributes は「名前=値」ペアのカンマ区切りリストです。 属性はエンティティの見出し行の後に { } ブロックで指定することもできます。 属性がエンティティ定義と同じ行に指定された場合(コロンの後)、値を指定せずに 2 値の属性を指定することができます(属性名のみを指定すると、「1 に設定」という意味になります)。例を以下に示します。

   volume boot: dev=/dev/hda1, ro 

これは、以下と同義になります。

   volume boot: dev=/dev/hda1, ro=1 

各サブエンティティ タイプはネームスペースを定義します。そのネームスペース内では、指定された名前の 1 つのサブエンティティのみが存在できます。 これは、タイプの一切ないサブエンティティに適用されます(タイプのないサブエンティティとは、たとえばタイプに空の文字列を含むものがあります)。

属性は、インラインおよび { } ブロックの両方で指定できます。これは通常避けるべきですが、例外として、ある特定の属性を区別する必要がある場合があります(たとえば下位コンポーネントで指定する .class 属性など)。それ以外の場合、属性の数が少ないシンプルなサブエンティティにはインライン構文が適切です。属性数またはサブエンティティ数の多い複雑なエンティティについては、{ } ブロックを使用します。