<fsDecl>

<fsDecl> (feature structure declaration) declares one type of feature structure. 18.11 Feature System Declaration
Moduliso-fs — 18 Feature Structures
Attribute
typegives a name for the type of feature structure being declared.
Zustand Obligatorisch
Datentyp

<rng:ref name="data.enumerated"/>
data.enumerated
Werte any convenient string of characters.
baseTypesgives the name of one or more typed feature structures from which this type inherits feature specifications and constraints; if this type includes a feature specification with the same name as that of any of those specified by this attribute, or if more than one specification of the same name is inherited, then the set of possible values is defined by unification. Similarly, the set of constraints applicable is derived by combining those specified explicitly within this element with those implied by the baseTypes attribute. When no baseTypes attribute is specified, no feature specification or constraint is inherited.
Zustand Optional
Datentyp 1–∞ Vorkommen von

<rng:ref name="data.name"/>
data.name
Durch Leerzeichen getrennt
Werte one or more names as defined by the W3C XML Specification
Verwendet von
Kann enthalten
Deklaration

<rng:element name="fsDecl">
<rng:ref name="att.global.attributes"/>
<rng:attribute name="type">
 <rng:ref name="data.enumerated"/>
</rng:attribute>
<rng:optional>
 <rng:attribute name="baseTypes">
  <rng:list>
   <rng:oneOrMore>
    <rng:ref name="data.name"/>
   </rng:oneOrMore>
  </rng:list>
 </rng:attribute>
</rng:optional>
<rng:group>
 <rng:optional>
  <rng:ref name="fsDescr"/>
 </rng:optional>
 <rng:oneOrMore>
  <rng:ref name="fDecl"/>
 </rng:oneOrMore>
 <rng:optional>
  <rng:ref name="fsConstraints"/>
 </rng:optional>
</rng:group>
</rng:element>
element fsDecl
{
   att.global.attributes,
   attribute type { data.enumerated },
   attribute baseTypes { list { data.name+ } }?,
   ( fsDescr?, fDecl+, fsConstraints? )
}
Beispiel
<fsDecl type="SomeName">
 <fsDescr>Describes what this type of fs represents</fsDescr>
 <fDecl name="featureOne">
<!-- The declaration for featureOne -->
 </fDecl>
 <fDecl name="featureTwo">
<!-- The declaration for featureTwo -->
 </fDecl>
 <fsConstraints>
<!-- The feature structure constraints go here -->
 </fsConstraints>
</fsDecl>