<castGroup>

<castGroup> (liste de personnages ) dans une distribution, catégorie qui rassemble un ou plusieurs personnages. [7.1.4 Cast Lists]
Moduledrama — Performance Texts
Attributsatt.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))
Contenu dans
Peut contenir
Note

L'attribut rend peut être utilisé comme ici pour indiquer si le regroupement est indiqué par une parenthèse, un espace, un changement de police de caractère, etc.

À noter que dans cet exemple il est entendu que la description du rôle ‘friends of Mathias’ (amis de Mathias) s'applique de la même façon aux deux rôles.

Exemple
<castGroup>
 <head>Messagers</head>
 <castItem>
  <actor>Jean-Claude Islert</actor>, <actor>Michel Sausin</actor>.</castItem>
</castGroup>
<castGroup>
 <head>Servantes troyennes</head>
 <castItem>
  <actor>Dominique Jayr</actor>, <actor>Annie Seurat</actor>,<actor> Hélène
     Augier</actor>
 </castItem>
</castGroup>
Modèle de contenu
<content>
 <sequence>
  <alternate minOccurs="0"
   maxOccurs="unbounded">

   <classRef key="model.global"/>
   <classRef key="model.headLike"/>
  </alternate>
  <sequence minOccurs="1"
   maxOccurs="unbounded">

   <alternate>
    <elementRef key="castItem"/>
    <elementRef key="castGroup"/>
    <elementRef key="roleDesc"/>
   </alternate>
   <classRef key="model.global"
    minOccurs="0maxOccurs="unbounded"/>

  </sequence>
  <sequence minOccurs="0">
   <elementRef key="trailer"/>
   <classRef key="model.global"
    minOccurs="0maxOccurs="unbounded"/>

  </sequence>
 </sequence>
</content>
Schéma Declaration
<rng:element name="castGroup">
 <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:zeroOrMore>
   <rng:choice>
    <rng:ref name="model.global"/>
    <rng:ref name="model.headLike"/>
   </rng:choice>
  </rng:zeroOrMore>
  <rng:oneOrMore>
   <rng:group>
    <rng:choice>
     <rng:ref name="castItem"/>
     <rng:ref name="castGroup"/>
     <rng:ref name="roleDesc"/>
    </rng:choice>
    <rng:zeroOrMore>
     <rng:ref name="model.global"/>
    </rng:zeroOrMore>
   </rng:group>
  </rng:oneOrMore>
  <rng:optional>
   <rng:group>
    <rng:ref name="trailer"/>
    <rng:zeroOrMore>
     <rng:ref name="model.global"/>
    </rng:zeroOrMore>
   </rng:group>
  </rng:optional>
 </rng:group>
</rng:element>
element castGroup
{
   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,
   (
      ( model.global | model.headLike )*,
      ( ( castItem | castGroup | roleDesc ), model.global* )+,
      ( trailer, model.global* )?
   )
}