<fDecl>

<fDecl> ひとつの素性を宣言する.名前,構造,定義域,デフォルト値など. 18.11 素性システム宣言
モジュールiso-fs — 18 素性構造
属性
name 素性の名前を示す.要素fの属性nameと一致する もの.
状態 必須
データ型

<rng:ref name="data.name"/>
data.name
文字列.
optional 当該素性値があるかどうかを示す.
状態 任意
データ型

<rng:data type="boolean"/>
xsd:boolean
解説
素性が選択的とされる場合,素性構造から外してもよい. 必須の素性がない場合,その値は,明示的に宣言されているデフォル ト値をとるとされる.デフォルト値が宣言されていない場合,特別な値 anyをとるとされる. 選択的な素性がない場合,値はないか,または(デフォルト値を含む)あ らゆる値が無視されるとされる.
当該モジュールを使用するもの
下位
宣言

<rng:element name="fDecl">
<rng:ref name="att.global.attributes"/>
<rng:attribute name="name">
 <rng:ref name="data.name"/>
</rng:attribute>
<rng:optional>
 <rng:attribute name="optionala:defaultValue="true">
  <rng:data type="boolean"/>
 </rng:attribute>
</rng:optional>
<rng:group>
 <rng:optional>
  <rng:ref name="fDescr"/>
 </rng:optional>
 <rng:ref name="vRange"/>
 <rng:optional>
  <rng:ref name="vDefault"/>
 </rng:optional>
</rng:group>
</rng:element>
element fDecl
{
   att.global.attributes,
   attribute name { data.name },
   attribute optional { xsd:boolean }?,
   ( fDescr?, vRange, vDefault? )
}
<fDecl name="INV">
 <fDescr>inverted sentence</fDescr>
 <vRange>
  <vAlt>
   <binary value="true"/>
   <binary value="false"/>
  </vAlt>
 </vRange>
 <vDefault>
  <binary value="false"/>
 </vDefault>
</fDecl>