<spGrp>

<spGrp> (speech group) contains a group of speeches or songs in a performance text presented in a source as constituting a single unit or ‘number’. [7.2.3 Grouped Speeches]
Moduledrama — Performance Texts
Attributesatt.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.typed (@type, @subtype) att.ascribed (@who)
Member of
Contained by
May contain
Example
<sp>
 <speaker>FRAULEIN SCHNEIDER:</speaker>
 <p> Herr Schultz! Can I believe what I see? <stage>(HERR SCHULTZ nods
       proudly)</stage> But this is — too much to accept. So rare — so costly —
     so luxurious. </p>
</sp>
<stage>(She sings)</stage>
<spGrp n="4">
 <sp>
  <l>If you bought me diamonds, If you bought me pearls,</l>
  <l>If you bought me roses like some other gents</l>
  <l>Might bring to other girls,</l>
  <l>It couldn't please me more</l>
  <l>Than the gift I see -</l>
  <stage>(She takes a large pineapple out of the bag)</stage>
  <l>A pineapple for me!</l>
 </sp>
 <sp>
  <speaker>SCHULTZ:</speaker>
  <stage>(Singing) </stage>
  <l>If, in your emotion, </l>
  <l>You began to sway, </l>
  <l>Went to get some air, </l>
  <l>Or grabbed a chair </l>
  <l>To keep from fainting dead away, </l>
  <l>It couldn't please me more </l>
  <l>Than to see you cling </l>
  <l>To the pineapple I bring.</l>
 </sp>
 <sp>
  <speaker>BOTH:</speaker>
  <l>Ah, ah, ah, ah, ah, ah, ah, ah</l>
 </sp>
<!-- ... -->
 <stage>(They dance)</stage>
</spGrp>
<sp>
 <speaker>FRAULEIN SCHNEIDER: </speaker>
 <p>But you must not bring me
     any more pineapples! Do you hear? It is not proper. It is a gift a
     young man would present to his lady love. It makes me blush!
  </p>
</sp>
Content model
<content>
 <sequence>
  <classRef key="model.headLike"
   minOccurs="0maxOccurs="unbounded"/>

  <alternate minOccurs="1"
   maxOccurs="unbounded">

   <classRef key="model.global"/>
   <elementRef key="sp"/>
   <classRef key="model.stageLike"/>
  </alternate>
 </sequence>
</content>
Schema Declaration
<rng:element name="spGrp">
 <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.typed.attributes"/>
 <rng:ref name="att.ascribed.attributes"/>
 <rng:group>
  <rng:zeroOrMore>
   <rng:ref name="model.headLike"/>
  </rng:zeroOrMore>
  <rng:oneOrMore>
   <rng:choice>
    <rng:ref name="model.global"/>
    <rng:ref name="sp"/>
    <rng:ref name="model.stageLike"/>
   </rng:choice>
  </rng:oneOrMore>
 </rng:group>
</rng:element>
element spGrp
{
   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.typed.attributes,
   att.ascribed.attributes,
   ( model.headLike*, ( model.global | sp | model.stageLike )+ )
}