<?xml version="1.0" encoding="utf-8"?>
<grammar xmlns="http://relaxng.org/ns/structure/1.0"
         datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"><!--Schema generated 2015-10-15T19:35:41Z
Edition: Version 2.9.1. Last updated on
	15th October 2015, revision 46ac023
This material is dual-licensed.
[http://creativecommons.org/licenses/by/3.0/] Distributed under a Creative Commons Attribution 3.0 Unported License.  [http://www.opensource.org/licenses/BSD-2-Clause] Copyright 2015 TEI Consortium. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. This software is provided by the copyright holders and contributors "as is" and any express or implied warranties, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose are disclaimed. In no event shall the copyright holder or contributors be liable for any direct, indirect, incidental, special, exemplary, or consequential damages (including, but not limited to, procurement of substitute goods or services; loss of use, data, or profits; or business interruption) however caused and on any theory of liability, whether in contract, strict liability, or tort (including negligence or otherwise) arising in any way out of the use of this software, even if advised of the possibility of such damage. TEI material can be licensed differently depending on the use you intend to make of it. Hence it is made available under both the CC+BY and BSD-2 licences. The CC+BY licence is generally appropriate for usages which treat TEI content as data or documentation. The BSD-2 licence is generally appropriate for usage of TEI content in a software environment. For further information or clarification, please contact the TEI Consortium. Performance texts--><!--Definitions from module drama--><!--Set global predeclared macros--><!--Set predeclared macros--><!--0. predeclared macros--><!--1. classes--><!--2. elements-->
   <define name="actor">
      <element name="actor">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains the name of an actor appearing within a cast list. []</a:documentation>
         <ref name="actor.content"/>
         <ref name="actor.localattributes"/>
      </element>
   </define>
   <define name="actor.content">
      <ref name="macro.phraseSeq"/>
   </define>
   <define name="actor.localattributes">
      <ref name="att.global.attributes"/>
      <empty/>
   </define>
   <define name="camera">
      <element name="camera">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes a particular camera angle or viewpoint in a screen play. [ ]</a:documentation>
         <ref name="camera.content"/>
         <ref name="camera.localattributes"/>
      </element>
   </define>
   <define name="camera.content">
      <ref name="macro.paraContent"/>
   </define>
   <define name="camera.localattributes">
      <ref name="att.global.attributes"/>
      <ref name="att.typed.attributes"/>
      <empty/>
   </define>
   <define name="caption">
      <element name="caption">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains the text of a caption or other text displayed as part of a film script or screenplay. [ ]</a:documentation>
         <ref name="caption.content"/>
         <ref name="caption.localattributes"/>
      </element>
   </define>
   <define name="caption.content">
      <ref name="macro.paraContent"/>
   </define>
   <define name="caption.localattributes">
      <ref name="att.global.attributes"/>
      <empty/>
   </define>
   <define name="castGroup">
      <element name="castGroup">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(cast list grouping) groups one or more individual castItem elements within a cast list. []</a:documentation>
         <ref name="castGroup.content"/>
         <ref name="castGroup.localattributes"/>
      </element>
   </define>
   <define name="castGroup.content">
      <group>
         <zeroOrMore>
            <choice>
               <ref name="model.global"/>
               <ref name="model.headLike"/>
            </choice>
         </zeroOrMore>
         <oneOrMore>
            <choice>
               <ref name="castItem"/>
               <ref name="castGroup"/>
               <ref name="roleDesc"/>
            </choice>
            <zeroOrMore>
               <ref name="model.global"/>
            </zeroOrMore>
         </oneOrMore>
         <optional>
            <ref name="trailer"/>
            <zeroOrMore>
               <ref name="model.global"/>
            </zeroOrMore>
         </optional>
      </group>
   </define>
   <define name="castGroup.localattributes">
      <ref name="att.global.attributes"/>
      <empty/>
   </define>
   <define name="castItem">
      <element name="castItem">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(cast list item) contains a single entry within a cast list, describing either a single role or a list of non-speaking roles. []</a:documentation>
         <ref name="castItem.content"/>
         <ref name="castItem.localattributes"/>
      </element>
   </define>
   <define name="castItem.content">
      <zeroOrMore>
         <choice>
            <text/>
            <ref name="model.gLike"/>
            <ref name="model.castItemPart"/>
            <ref name="model.phrase"/>
            <ref name="model.global"/>
         </choice>
      </zeroOrMore>
   </define>
   <define name="castItem.localattributes">
      <ref name="att.global.attributes"/>
      <optional>
         <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                    name="type"
                    a:defaultValue="role">
            <a:documentation>characterizes the cast item.</a:documentation>
            <choice>
               <value>role</value>
               <a:documentation>the item describes a single role.</a:documentation>
               <value>list</value>
               <a:documentation>the item describes a list of non-speaking roles.</a:documentation>
            </choice>
         </attribute>
      </optional>
      <empty/>
   </define>
   <define name="castList">
      <element name="castList">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(cast list) contains a single cast list or dramatis personae. [ ]</a:documentation>
         <ref name="castList.content"/>
         <ref name="castList.localattributes"/>
      </element>
   </define>
   <define name="castList.content">
      <group>
         <zeroOrMore>
            <choice>
               <ref name="model.divTop"/>
               <ref name="model.global"/>
            </choice>
         </zeroOrMore>
         <zeroOrMore>
            <group>
               <ref name="model.common"/>
            </group>
            <zeroOrMore>
               <ref name="model.global"/>
            </zeroOrMore>
         </zeroOrMore>
         <oneOrMore>
            <choice>
               <ref name="castItem"/>
               <ref name="castGroup"/>
            </choice>
            <zeroOrMore>
               <ref name="model.global"/>
            </zeroOrMore>
         </oneOrMore>
         <zeroOrMore>
            <group>
               <ref name="model.common"/>
            </group>
            <zeroOrMore>
               <ref name="model.global"/>
            </zeroOrMore>
         </zeroOrMore>
      </group>
   </define>
   <define name="castList.localattributes">
      <ref name="att.global.attributes"/>
      <empty/>
   </define>
   <define name="epilogue">
      <element name="epilogue">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains the epilogue to a drama, typically spoken by an actor out of character, possibly in association with a particular performance or venue. [ ]</a:documentation>
         <ref name="epilogue.content"/>
         <ref name="epilogue.localattributes"/>
      </element>
   </define>
   <define name="epilogue.content">
      <group>
         <zeroOrMore>
            <choice>
               <ref name="model.divTop"/>
               <ref name="model.global"/>
            </choice>
         </zeroOrMore>
         <oneOrMore>
            <group>
               <ref name="model.common"/>
            </group>
            <zeroOrMore>
               <ref name="model.global"/>
            </zeroOrMore>
         </oneOrMore>
         <zeroOrMore>
            <group>
               <ref name="model.divBottom"/>
            </group>
            <zeroOrMore>
               <ref name="model.global"/>
            </zeroOrMore>
         </zeroOrMore>
      </group>
   </define>
   <define name="epilogue.localattributes">
      <ref name="att.global.attributes"/>
      <empty/>
   </define>
   <define name="move">
      <element name="move">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(movement) marks the actual entrance or exit of one or more characters on stage. []</a:documentation>
         <ref name="move.content"/>
         <ref name="move.localattributes"/>
      </element>
   </define>
   <define name="move.content">
      <empty/>
   </define>
   <define name="move.localattributes">
      <ref name="att.global.attributes"/>
      <ref name="att.ascribed.attributes"/>
      <optional>
         <attribute name="type">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">characterizes the movement, for example as an entrance or exit.
Suggested values include: 1] entrance; 2] exit; 3] onStage</a:documentation>
            <choice>
               <value>entrance</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">character is entering the stage.</a:documentation>
               <value>exit</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">character is exiting the stage.</a:documentation>
               <value>onStage</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">character moves on stage</a:documentation>
               <data type="Name"/>
            </choice>
         </attribute>
      </optional>
      <optional>
         <attribute name="where">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">specifies the direction of a stage movement.
Sample values include: 1] L(left) ; 2] R(right) ; 3] C(center) </a:documentation>
            <list>
               <oneOrMore>
                  <ref name="data.enumerated"/>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
      <optional>
         <attribute name="perf">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(performance) identifies the performance or performances in which this movement occurred as specified by pointing to one or more performance elements.</a:documentation>
            <list>
               <oneOrMore>
                  <ref name="data.pointer"/>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
      <empty/>
   </define>
   <define name="performance">
      <element name="performance">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains a section of front or back matter describing how a dramatic piece is to be performed in general or how it was performed on some specific occasion. [ ]</a:documentation>
         <ref name="performance.content"/>
         <ref name="performance.localattributes"/>
      </element>
   </define>
   <define name="performance.content">
      <group>
         <zeroOrMore>
            <choice>
               <ref name="model.divTop"/>
               <ref name="model.global"/>
            </choice>
         </zeroOrMore>
         <oneOrMore>
            <group>
               <ref name="model.common"/>
            </group>
            <zeroOrMore>
               <ref name="model.global"/>
            </zeroOrMore>
         </oneOrMore>
         <zeroOrMore>
            <group>
               <ref name="model.divBottom"/>
            </group>
            <zeroOrMore>
               <ref name="model.global"/>
            </zeroOrMore>
         </zeroOrMore>
      </group>
   </define>
   <define name="performance.localattributes">
      <ref name="att.global.attributes"/>
      <empty/>
   </define>
   <define name="prologue">
      <element name="prologue">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains the prologue to a drama, typically spoken by an actor out of character, possibly in association with a particular performance or venue. [ ]</a:documentation>
         <ref name="prologue.content"/>
         <ref name="prologue.localattributes"/>
      </element>
   </define>
   <define name="prologue.content">
      <group>
         <zeroOrMore>
            <choice>
               <ref name="model.divTop"/>
               <ref name="model.global"/>
            </choice>
         </zeroOrMore>
         <oneOrMore>
            <group>
               <ref name="model.common"/>
            </group>
            <zeroOrMore>
               <ref name="model.global"/>
            </zeroOrMore>
         </oneOrMore>
         <zeroOrMore>
            <group>
               <ref name="model.divBottom"/>
            </group>
            <zeroOrMore>
               <ref name="model.global"/>
            </zeroOrMore>
         </zeroOrMore>
      </group>
   </define>
   <define name="prologue.localattributes">
      <ref name="att.global.attributes"/>
      <empty/>
   </define>
   <define name="role">
      <element name="role">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">contains the name of a dramatic role, as given in a cast list. []</a:documentation>
         <ref name="role.content"/>
         <ref name="role.localattributes"/>
      </element>
   </define>
   <define name="role.content">
      <ref name="macro.phraseSeq"/>
   </define>
   <define name="role.localattributes">
      <ref name="att.global.attributes"/>
      <empty/>
   </define>
   <define name="roleDesc">
      <element name="roleDesc">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(role description) describes a character's role in a drama. []</a:documentation>
         <ref name="roleDesc.content"/>
         <ref name="roleDesc.localattributes"/>
      </element>
   </define>
   <define name="roleDesc.content">
      <ref name="macro.phraseSeq"/>
   </define>
   <define name="roleDesc.localattributes">
      <ref name="att.global.attributes"/>
      <empty/>
   </define>
   <define name="set">
      <element name="set">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(setting) contains a description of the setting, time, locale, appearance, etc., of the action of a play, typically found in the front matter of a printed performance text (not a stage direction). []</a:documentation>
         <ref name="set.content"/>
         <ref name="set.localattributes"/>
      </element>
   </define>
   <define name="set.content">
      <group>
         <zeroOrMore>
            <choice>
               <ref name="model.headLike"/>
               <ref name="model.global"/>
            </choice>
         </zeroOrMore>
         <zeroOrMore>
            <group>
               <group>
                  <ref name="model.common"/>
               </group>
               <zeroOrMore>
                  <ref name="model.global"/>
               </zeroOrMore>
            </group>
         </zeroOrMore>
      </group>
   </define>
   <define name="set.localattributes">
      <ref name="att.global.attributes"/>
      <empty/>
   </define>
   <define name="sound">
      <element name="sound">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes a sound effect or musical sequence specified within a screen play or radio script. [ ]</a:documentation>
         <ref name="sound.content"/>
         <ref name="sound.localattributes"/>
      </element>
   </define>
   <define name="sound.content">
      <ref name="macro.paraContent"/>
   </define>
   <define name="sound.localattributes">
      <ref name="att.global.attributes"/>
      <optional>
         <attribute name="type">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">categorizes the sound in some respect, e.g. as music, special effect, etc.</a:documentation>
            <ref name="data.enumerated"/>
         </attribute>
      </optional>
      <optional>
         <attribute xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0"
                    name="discrete"
                    a:defaultValue="unknown">
            <a:documentation>indicates whether the sound overlaps the surrounding speeches or interrupts them.</a:documentation>
            <ref name="data.xTruthValue"/>
         </attribute>
      </optional>
      <empty/>
   </define>
   <define name="spGrp">
      <element name="spGrp">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(speech group) contains a group of speeches or songs in a performance text presented in a source as constituting a single unit or number. []</a:documentation>
         <ref name="spGrp.content"/>
         <ref name="spGrp.localattributes"/>
      </element>
   </define>
   <define name="spGrp.content">
      <group>
         <zeroOrMore>
            <ref name="model.headLike"/>
         </zeroOrMore>
         <oneOrMore>
            <choice>
               <ref name="model.global"/>
               <ref name="sp"/>
               <ref name="model.stageLike"/>
            </choice>
         </oneOrMore>
      </group>
   </define>
   <define name="spGrp.localattributes">
      <ref name="att.global.attributes"/>
      <ref name="att.typed.attributes"/>
      <ref name="att.ascribed.attributes"/>
      <empty/>
   </define>
   <define name="tech">
      <element name="tech">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(technical stage direction) describes a special-purpose stage direction that is not meant for the actors. []</a:documentation>
         <ref name="tech.content"/>
         <ref name="tech.localattributes"/>
      </element>
   </define>
   <define name="tech.content">
      <ref name="macro.paraContent"/>
   </define>
   <define name="tech.localattributes">
      <ref name="att.global.attributes"/>
      <optional>
         <attribute name="type">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">categorizes the technical stage direction.</a:documentation>
            <choice>
               <value>light</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">a lighting cue</a:documentation>
               <value>sound</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">a sound cue</a:documentation>
               <value>prop</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">a prop cue</a:documentation>
               <value>block</value>
               <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">a blocking instruction</a:documentation>
            </choice>
         </attribute>
      </optional>
      <optional>
         <attribute name="perf">
            <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">(performance) points to one or more performance elements documenting the performance or performances to which this technical direction applies.</a:documentation>
            <list>
               <oneOrMore>
                  <ref name="data.pointer"/>
               </oneOrMore>
            </list>
         </attribute>
      </optional>
      <empty/>
   </define>
   <define name="view">
      <element name="view">
         <a:documentation xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0">describes the visual context of some part of a screen play in terms of what the spectator sees, generally independent of any dialogue. [ ]</a:documentation>
         <ref name="view.content"/>
         <ref name="view.localattributes"/>
      </element>
   </define>
   <define name="view.content">
      <ref name="macro.specialPara"/>
   </define>
   <define name="view.localattributes">
      <ref name="att.global.attributes"/>
      <empty/>
   </define>
   <!--3. macros-->
</grammar>
