<modelSequence>

<modelSequence> any sequence of model or modelSequence elements which is to be processed as a single set of actions [23.5.4.7 Model sequence]
Module tagdocs — Documentation Elements
Attributes
predicate⚓︎ the condition under which this model applies given as an XPath Predicate Expression
Status Optional
Datatype teidata.xpath
useSourceRendition⚓︎ whether to obey any rendition attribute that is present
Status Optional
Datatype teidata.truthValue
output⚓︎ the intended output method
Status Optional
Datatype teidata.enumerated
Suggested values include:
web
the output is intended for presentation in a web format
print
the output is intended for presentation in a print format
plaintext
the output is intended for presentation in a plain text format
Contained by
May contain
core: desc gloss
tagdocs: equiv model
Note

All of the model elements inside a modelSequence element must be processed. The operations indicated by each model child cannot be dependent on any other operation in the sequence. The results must be rendered in the order given by the list of models in the modelSequence.

Example
<modelGrp output="print">
 <modelSequence>
  <model behaviour="inline">
   <param name="contentvalue="@n"/>
  </model>
  <model behaviour="footnote">
   <param name="placevalue="'foot'"/>
  </model>
 </modelSequence>
</modelGrp>
Schematron

<sch:rule context="tei:modelSequence">
<sch:report test="tei:model[@output]"
 role="warning">
The 'model' children
of a 'modelSequence' element inherit the @output attribute of the
parent 'modelSequence', and thus should not have their own</sch:report>
</sch:rule>
Content model
<content>
 <sequence>
  <alternate minOccurs="0"
   maxOccurs="unbounded">

   <classRef key="model.identEquiv"/>
   <classRef key="model.descLike"/>
  </alternate>
  <elementRef key="modelminOccurs="2"
   maxOccurs="unbounded"/>

 </sequence>
</content>
Schema Declaration
<rng:element name="modelSequence">
 <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:optional>
  <rng:attribute name="predicate">
   <rng:ref name="teidata.xpath"/>
  </rng:attribute>
 </rng:optional>
 <rng:optional>
  <rng:attribute name="useSourceRendition">
   <rng:ref name="teidata.truthValue"/>
  </rng:attribute>
 </rng:optional>
 <rng:optional>
  <rng:attribute name="output">
   <rng:choice>
    <rng:value>web</rng:value>
    <rng:value>print</rng:value>
    <rng:value>plaintext</rng:value>
    <rng:ref name="teidata.enumerated"/>
   </rng:choice>
  </rng:attribute>
 </rng:optional>
 <rng:group>
  <rng:zeroOrMore>
   <rng:choice>
    <rng:ref name="model.identEquiv"/>
    <rng:ref name="model.descLike"/>
   </rng:choice>
  </rng:zeroOrMore>
  <rng:group>
   <rng:ref name="model"/>
   <rng:ref name="model"/>
   <rng:zeroOrMore>
    <rng:ref name="model"/>
   </rng:zeroOrMore>
  </rng:group>
 </rng:group>
</rng:element>
element modelSequence
{
   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 predicate { teidata.xpath }?,
   attribute useSourceRendition { teidata.truthValue }?,
   attribute output { "web" | "print" | "plaintext" | teidata.enumerated }?,
   ( ( model.identEquiv | model.descLike )*, ( model, model, model* ) )
}