<if>

<if> définit une valeur conditionnelle par défaut pour un trait ; la condition est indiquée comme une structure de traits et remplie si elle englobe la structure de traits dans le texte pour lequel on cherche une valeur par défaut. [18.11 Feature System Declaration]
Module iso-fs — Feature Structures
Attributs
Contenu dans
iso-fs: vDefault
Peut contenir
Note

Peut contenir une structure de traits suivie d'une valeur de trait ; les deux sont séparées par un élément then.

Exemple
<vDefault>
 <if>
  <fs>
   <f name="VFORM">
    <symbol value="INF"/>
   </f>
   <f name="SUBJ">
    <binary value="true"/>
   </f>
  </fs>
  <then/>
  <symbol value="for"/>
 </if>
</vDefault>
Modèle de contenu
<content>
 <sequence>
  <alternate>
   <elementRef key="fs"/>
   <elementRef key="f"/>
  </alternate>
  <elementRef key="then"/>
  <classRef key="model.featureVal"/>
 </sequence>
</content>
Schéma Declaration
<rng:element name="if">
 <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:group>
  <rng:choice>
   <rng:ref name="fs"/>
   <rng:ref name="f"/>
  </rng:choice>
  <rng:ref name="then"/>
  <rng:ref name="model.featureVal"/>
 </rng:group>
</rng:element>
element if
{
   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,
   ( ( fs | f ), then, model.featureVal )
}