<fsDecl>

<fsDecl> (declaración de estructura de rasgo) declara un tipo de estructura de rasgo [18.11 Feature System Declaration]
Móduloiso-fs — Feature Structures
Atributosatt.global (@xml:id, @n, @xml:lang, @xml:base, @xml:space) (att.global.rendition (@rend, @style, @rendition)) (att.global.linking (@corresp, @synch, @sameAs, @copyOf, @next, @prev, @exclude, @select)) (att.global.analytic (@ana)) (att.global.facs (@facs)) (att.global.change (@change)) (att.global.responsibility (@cert, @resp))
typeproporciona un nombre para el tipo de estructura de rasgo que está siendo declarada.
Estado Necesario
Tipo de datos

<rng:ref name="data.enumerated"/>
data.enumerated
baseTypesproporciona el nombre de una o más estructura de rasgo dadas, de las cuales este tipo hereda especificaciones de rasgo y restricciones; si este tipo incluye una especificación de rasgo con el mismo nombre que las especificadas por este atributo, o si más de una especificación con el mismo nombre se hereda, entonces el conjunto de posibles valores se definen por la unión de estas. De la misma manera, el conjunto de restricciones aplicable se deriva de la combinación de las restricciones especificadas explícitamente dentro de este elemento con aquellas referidas por el atributo baseTypes. Cuando no se especifica ningún baseTypes, no se hereda ninguna especificación de rasgo o restricción.
Estado Opcional
Tipo de datos 1–∞ apariciones de 

<rng:ref name="data.name"/>
data.name
separado por espacio en blanco
Contenido en
iso-fs: fsdDecl
Puede contener
Declaración

<rng:element name="fsDecl">
 <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: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,
   att.global.rendition.attributes,
   att.global.linking.attributes,
   att.global.analytic.attributes,
   att.global.facs.attributes,
   att.global.change.attributes,
   att.global.responsibility.attributes,
   attribute type { data.enumerated },
   attribute baseTypes { list { data.name+ } }?,
   ( fsDescr?, fDecl+, fsConstraints? )
}
Ejemplo
<fsDecl type="SomeName">
 <fsDescr>Describes what this type of fs represents</fsDescr>
 <fDecl name="featureOne">
<!-- The declaration for featureOne -->
  <vRange>
<!-- the range of possible values for this feature -->
  </vRange>
 </fDecl>
 <fDecl name="featureTwo">
<!-- The declaration for featureTwo -->
  <vRange>
<!-- the range of possible values for this feature -->
  </vRange>
 </fDecl>
 <fsConstraints>
<!-- Any additional constraints for the feature structure -->
 </fsConstraints>
</fsDecl>