<fDecl>

<fDecl> (feature declaration) ひとつの素性を宣言する。名前、構造、定義域、デフォルト値など。 [18.11 Feature System Declaration]
モジュール iso-fs — Feature Structures
属性
name⚓︎ 素性の名前を示す。要素fの属性nameと一致する もの。
状態 必須
データ型 teidata.name
optional⚓︎ 当該素性値があるかどうかを示す。
状態 任意
データ型 teidata.truthValue
初期値 true
解説

素性が選択的とされる場合、素性構造から外してもよい。 必須の素性がない場合、その値は、明示的に宣言されているデフォル ト値をとるとされる。デフォルト値が宣言されていない場合、特別な値 anyをとるとされる。 選択的な素性がない場合、値はないか、または(デフォルト値を含む)あ らゆる値が無視されるとされる。

上位
iso-fs: fsDecl
下位
<fDecl name="INV">
 <fDescr>inverted sentence</fDescr>
 <vRange>
  <vAlt>
   <binary value="true"/>
   <binary value="false"/>
  </vAlt>
 </vRange>
 <vDefault>
  <binary value="false"/>
 </vDefault>
</fDecl>
Content model
<content>
 <sequence>
  <elementRef key="fDescrminOccurs="0"/>
  <elementRef key="vRange"/>
  <elementRef key="vDefaultminOccurs="0"/>
 </sequence>
</content>
宣言
<rng:element name="fDecl">
 <rng:ref name="att.datcat.attributes"/>
 <rng:ref name="att.global.attributes"/>
 <rng:ref name="att.global.rendition.attributes"/>
 <rng:ref name="att.global.linking.attributes"/>
 <rng:ref name="att.global.analytic.attributes"/>
 <rng:ref name="att.global.facs.attributes"/>
 <rng:ref name="att.global.change.attributes"/>
 <rng:ref name="att.global.responsibility.attributes"/>
 <rng:ref name="att.global.source.attributes"/>
 <rng:attribute name="name">
  <rng:ref name="teidata.name"/>
 </rng:attribute>
 <rng:optional>
  <rng:attribute name="optional"
   a:defaultValue="true">

   <rng:ref name="teidata.truthValue"/>
  </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.datcat.attributes,
   att.global.attributes,
   att.global.rendition.attributes,
   att.global.linking.attributes,
   att.global.analytic.attributes,
   att.global.facs.attributes,
   att.global.change.attributes,
   att.global.responsibility.attributes,
   att.global.source.attributes,
   attribute name { teidata.name },
   attribute optional { teidata.truthValue }?,
   ( fDescr?, vRange, vDefault? )
}