<form>

<form> (form information group) groups all the information on the written and spoken forms of one headword. [9.3.1 Information on Written and Spoken Forms]
Module dictionaries — Dictionaries
Attributes att.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)) (att.global.source (@source)) att.lexicographic (@expand, @split, @value, @location, @mergedIn, @opt) (att.datcat (@datcat, @valueDatcat, @targetDatcat)) (att.lexicographic.normalized (@norm, @orig)) att.typed (type, @subtype)
type⚓︎ classifies form as simple, compound, etc.
Derived from att.typed
Status Optional
Datatype teidata.enumerated
Suggested values include:
simple
single free lexical item
lemma
the headword itself
variant
a variant form
compound
word formed from simple lexical items
derivative
word derived from headword
inflected
word in other than usual dictionary form
phrase
multiple-word lexical item
Member of
Contained by
core: cit
namesdates: nym
May contain
gaiji: g
header: biblFull idno
iso-fs: fLib fs fvLib
textstructure: floatingText
verse: caesura rhyme
character data
Example
<form>
 <orth>zaptié</orth>
 <orth>zaptyé</orth>
</form>

(from TLFi)

Content model
<content>
 <alternate minOccurs="0"
  maxOccurs="unbounded">

  <textNode/>
  <classRef key="model.gLike"/>
  <classRef key="model.phrase"/>
  <classRef key="model.inter"/>
  <classRef key="model.formPart"/>
  <classRef key="model.global"/>
 </alternate>
</content>
Schema Declaration
<rng:element name="form">
 <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:ref name="att.lexicographic.attributes"/>
 <rng:ref name="att.datcat.attributes"/>
 <rng:ref name="att.lexicographic.normalized.attributes"/>
 <rng:ref name="att.typed.attribute.subtype"/>
 <rng:optional>
  <rng:attribute name="type">
   <rng:choice>
    <rng:value>simple</rng:value>
    <rng:value>lemma</rng:value>
    <rng:value>variant</rng:value>
    <rng:value>compound</rng:value>
    <rng:value>derivative</rng:value>
    <rng:value>inflected</rng:value>
    <rng:value>phrase</rng:value>
    <rng:ref name="teidata.enumerated"/>
   </rng:choice>
  </rng:attribute>
 </rng:optional>
 <rng:zeroOrMore>
  <rng:choice>
   <rng:text/>
   <rng:ref name="model.gLike"/>
   <rng:ref name="model.phrase"/>
   <rng:ref name="model.inter"/>
   <rng:ref name="model.formPart"/>
   <rng:ref name="model.global"/>
  </rng:choice>
 </rng:zeroOrMore>
</rng:element>
element form
{
   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,
   att.lexicographic.attributes,
   att.datcat.attributes,
   att.lexicographic.normalized.attributes,
   att.typed.attribute.subtype,
   attribute type
   {
      "simple"
    | "lemma"
    | "variant"
    | "compound"
    | "derivative"
    | "inflected"
    | "phrase"
    | teidata.enumerated
   }?,
   (
      text
    | model.gLikemodel.phrasemodel.intermodel.formPartmodel.global
   )*
}