RelaxNG/publidoc.rng
changeset 20 79713ffae179
parent 17 ca367d4d080b
child 22 94b8e4454c47
equal deleted inserted replaced
19:7141fd097b97 20:79713ffae179
    24       <ref name="top.topic"/>
    24       <ref name="top.topic"/>
    25     </choice>
    25     </choice>
    26   </define>
    26   </define>
    27   <!--
    27   <!--
    28     =============================================================================
    28     =============================================================================
    29                                      Top level
    29                                      TOP LEVEL
    30     =============================================================================
    30     =============================================================================
    31   -->
    31   -->
    32   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ document ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
    32   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ document ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
    33   <define name="document">
    33   <define name="document">
    34     <element name="document">
    34     <element name="document">
    44       <data type="ID"/>
    44       <data type="ID"/>
    45     </attribute>
    45     </attribute>
    46   </define>
    46   </define>
    47   <define name="document.content">
    47   <define name="document.content">
    48     <optional>
    48     <optional>
    49       <ref name="metadata"/>
    49       <ref name="top.head"/>
    50     </optional>
    50     </optional>
    51     <choice>
    51     <choice>
    52       <oneOrMore>
    52       <oneOrMore>
    53         <ref name="division"/>
    53         <ref name="division"/>
    54       </oneOrMore>
    54       </oneOrMore>
    59   </define>
    59   </define>
    60   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ topic ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
    60   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ topic ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
    61   <define name="top.topic">
    61   <define name="top.topic">
    62     <element name="topic">
    62     <element name="topic">
    63       <ref name="top.topic.attributes"/>
    63       <ref name="top.topic.attributes"/>
    64       <ref name="topic.content"/>
    64       <ref name="top.topic.content"/>
    65     </element>
    65     </element>
       
    66   </define>
       
    67   <define name="top.topic.attributes">
       
    68     <interleave>
       
    69       <ref name="topic.id.attribute"/>
       
    70       <optional>
       
    71         <ref name="topic.type.attribute"/>
       
    72       </optional>
       
    73     </interleave>
       
    74   </define>
       
    75   <define name="topic.id.attribute">
       
    76     <attribute name="xml:id">
       
    77       <data type="ID"/>
       
    78     </attribute>
       
    79   </define>
       
    80   <define name="topic.type.attribute">
       
    81     <attribute name="type">
       
    82       <data type="NCName"/>
       
    83     </attribute>
       
    84   </define>
       
    85   <define name="top.topic.content">
       
    86     <optional>
       
    87       <ref name="top.head"/>
       
    88     </optional>
       
    89     <oneOrMore>
       
    90       <ref name="section"/>
       
    91     </oneOrMore>
    66   </define>
    92   </define>
    67   <!--
    93   <!--
    68     =============================================================================
    94     =============================================================================
    69                                   Metadata level
    95                                     HEAD LEVEL
    70     =============================================================================
    96     =============================================================================
    71   -->
    97   -->
    72   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ metadata ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
    98   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ head ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
    73   <define name="metadata">
    99   <define name="top.head">
    74     <element name="metadata">
   100     <element name="head">
    75       <ref name="metadata.content"/>
   101       <ref name="top.head.content"/>
    76     </element>
   102     </element>
    77   </define>
   103   </define>
    78   <define name="metadata.content">
   104   <define name="division.head">
       
   105     <element name="head">
       
   106       <ref name="division.head.content"/>
       
   107     </element>
       
   108   </define>
       
   109   <define name="component.head">
       
   110     <element name="head">
       
   111       <ref name="component.head.content"/>
       
   112     </element>
       
   113   </define>
       
   114   <define name="section.head">
       
   115     <element name="head">
       
   116       <ref name="section.head.content"/>
       
   117     </element>
       
   118   </define>
       
   119   <define name="block.head">
       
   120     <element name="head">
       
   121       <ref name="block.head.content"/>
       
   122     </element>
       
   123   </define>
       
   124   <define name="top.head.content">
    79     <interleave>
   125     <interleave>
    80       <ref name="title"/>
   126       <optional>
    81       <optional>
   127         <ref name="title"/>
    82         <ref name="subtitle"/>
   128         <optional>
       
   129           <ref name="subtitle"/>
       
   130         </optional>
       
   131       </optional>
       
   132       <optional>
       
   133         <ref name="language"/>
    83       </optional>
   134       </optional>
    84       <zeroOrMore>
   135       <zeroOrMore>
    85         <ref name="author"/>
   136         <ref name="author"/>
    86       </zeroOrMore>
   137       </zeroOrMore>
    87       <optional>
   138       <optional>
    88         <ref name="publisher"/>
   139         <ref name="publisher"/>
    89       </optional>
       
    90       <optional>
       
    91         <ref name="language"/>
       
    92       </optional>
   140       </optional>
    93       <optional>
   141       <optional>
    94         <ref name="date"/>
   142         <ref name="date"/>
    95       </optional>
   143       </optional>
    96       <optional>
   144       <optional>
   108       <zeroOrMore>
   156       <zeroOrMore>
   109         <ref name="annotation"/>
   157         <ref name="annotation"/>
   110       </zeroOrMore>
   158       </zeroOrMore>
   111     </interleave>
   159     </interleave>
   112   </define>
   160   </define>
       
   161   <define name="division.head.content">
       
   162     <interleave>
       
   163       <optional>
       
   164         <ref name="title"/>
       
   165         <optional>
       
   166           <ref name="subtitle"/>
       
   167         </optional>
       
   168       </optional>
       
   169       <optional>
       
   170         <ref name="language"/>
       
   171       </optional>
       
   172       <zeroOrMore>
       
   173         <ref name="annotation"/>
       
   174       </zeroOrMore>
       
   175     </interleave>
       
   176   </define>
       
   177   <define name="component.head.content">
       
   178     <interleave>
       
   179       <optional>
       
   180         <ref name="title"/>
       
   181         <optional>
       
   182           <ref name="subtitle"/>
       
   183         </optional>
       
   184       </optional>
       
   185       <optional>
       
   186         <ref name="language"/>
       
   187       </optional>
       
   188       <zeroOrMore>
       
   189         <ref name="author"/>
       
   190       </zeroOrMore>
       
   191       <zeroOrMore>
       
   192         <ref name="annotation"/>
       
   193       </zeroOrMore>
       
   194     </interleave>
       
   195   </define>
       
   196   <define name="section.head.content">
       
   197     <interleave>
       
   198       <optional>
       
   199         <ref name="title"/>
       
   200         <optional>
       
   201           <ref name="subtitle"/>
       
   202         </optional>
       
   203       </optional>
       
   204       <optional>
       
   205         <ref name="language"/>
       
   206       </optional>
       
   207       <zeroOrMore>
       
   208         <ref name="annotation"/>
       
   209       </zeroOrMore>
       
   210     </interleave>
       
   211   </define>
       
   212   <define name="block.head.content">
       
   213     <optional>
       
   214       <ref name="title"/>
       
   215       <optional>
       
   216         <ref name="subtitle"/>
       
   217       </optional>
       
   218     </optional>
       
   219   </define>
   113   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ title, subtitle ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
   220   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ title, subtitle ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
   114   <define name="title">
   221   <define name="title">
   115     <element name="title">
   222     <element name="title">
   116       <ref name="title.content"/>
   223       <ref name="title.content"/>
   117     </element>
   224     </element>
   118   </define>
   225   </define>
   119   <define name="title.content">
       
   120     <ref name="inlines"/>
       
   121   </define>
       
   122   <define name="subtitle">
   226   <define name="subtitle">
   123     <element name="subtitle">
   227     <element name="subtitle">
   124       <ref name="title.content"/>
   228       <ref name="title.content"/>
   125     </element>
   229     </element>
       
   230   </define>
       
   231   <define name="title.content">
       
   232     <ref name="inlines"/>
       
   233   </define>
       
   234   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ language ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
       
   235   <define name="language">
       
   236     <element name="language">
       
   237       <ref name="language.attributes"/>
       
   238     </element>
       
   239   </define>
       
   240   <define name="language.attributes">
       
   241     <ref name="lang.attribute"/>
       
   242   </define>
       
   243   <define name="lang.attribute">
       
   244     <attribute name="xml:lang">
       
   245       <data type="language"/>
       
   246     </attribute>
   126   </define>
   247   </define>
   127   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ author, publisher ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
   248   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ author, publisher ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
   128   <!-- ~~~~~~ author -->
   249   <!-- ~~~~~~ author -->
   129   <define name="author">
   250   <define name="author">
   130     <element name="author">
   251     <element name="author">
   161       <ref name="lastname.content"/>
   282       <ref name="lastname.content"/>
   162     </element>
   283     </element>
   163   </define>
   284   </define>
   164   <define name="lastname.content">
   285   <define name="lastname.content">
   165     <ref name="inlines"/>
   286     <ref name="inlines"/>
   166   </define>
       
   167   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Language ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
       
   168   <define name="language">
       
   169     <element name="language">
       
   170       <ref name="language.attributes"/>
       
   171     </element>
       
   172   </define>
       
   173   <define name="language.attributes">
       
   174     <ref name="lang.attribute"/>
       
   175   </define>
       
   176   <define name="lang.attribute">
       
   177     <attribute name="xml:lang">
       
   178       <data type="language"/>
       
   179     </attribute>
       
   180   </define>
   287   </define>
   181   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ place ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
   288   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ place ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
   182   <define name="place">
   289   <define name="place">
   183     <element name="place">
   290     <element name="place">
   184       <ref name="place.content"/>
   291       <ref name="place.content"/>
   274       <ref name="abstract.content"/>
   381       <ref name="abstract.content"/>
   275     </element>
   382     </element>
   276   </define>
   383   </define>
   277   <define name="abstract.content">
   384   <define name="abstract.content">
   278     <oneOrMore>
   385     <oneOrMore>
   279       <ref name="parag"/>
   386       <ref name="p"/>
   280     </oneOrMore>
   387     </oneOrMore>
   281   </define>
   388   </define>
   282   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ annotation ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
   389   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ annotation ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
   283   <define name="annotation">
   390   <define name="annotation">
   284     <element name="annotation">
   391     <element name="annotation">
   288   <define name="annotation.content">
   395   <define name="annotation.content">
   289     <ref name="inlines"/>
   396     <ref name="inlines"/>
   290   </define>
   397   </define>
   291   <!--
   398   <!--
   292     =============================================================================
   399     =============================================================================
   293                                     Division level
   400                                     DIVISION LEVEL
   294     =============================================================================
   401     =============================================================================
   295   -->
   402   -->
   296   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ division ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
   403   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ division ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
   297   <define name="division">
   404   <define name="division">
   298     <element name="division">
   405     <element name="division">
   299       <ref name="division.content"/>
   406       <ref name="division.content"/>
   300     </element>
   407     </element>
   301   </define>
   408   </define>
   302   <define name="division.content">
   409   <define name="division.content">
   303     <optional>
   410     <optional>
   304       <ref name="metadata"/>
   411       <ref name="division.head"/>
   305     </optional>
   412     </optional>
   306     <choice>
   413     <choice>
   307       <oneOrMore>
   414       <oneOrMore>
   308         <ref name="division"/>
   415         <ref name="division"/>
   309       </oneOrMore>
   416       </oneOrMore>
   312       </oneOrMore>
   419       </oneOrMore>
   313     </choice>
   420     </choice>
   314   </define>
   421   </define>
   315   <!--
   422   <!--
   316     =============================================================================
   423     =============================================================================
   317                                   Component level
   424                                   COMPONENT LEVEL
   318     =============================================================================
   425     =============================================================================
   319   -->
   426   -->
   320   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ topic ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
   427   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ topic ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
   321   <define name="topic">
   428   <define name="topic">
   322     <element name="topic">
   429     <element name="topic">
   323       <ref name="topic.attributes"/>
   430       <ref name="topic.attributes"/>
   324       <ref name="topic.content"/>
   431       <ref name="topic.content"/>
   325     </element>
   432     </element>
   326   </define>
   433   </define>
   327   <define name="top.topic.attributes">
       
   328     <interleave>
       
   329       <ref name="topic.id.attribute"/>
       
   330       <optional>
       
   331         <ref name="topic.type.attribute"/>
       
   332       </optional>
       
   333     </interleave>
       
   334   </define>
       
   335   <define name="topic.attributes">
   434   <define name="topic.attributes">
   336     <interleave>
   435     <interleave>
   337       <optional>
   436       <optional>
   338         <ref name="topic.id.attribute"/>
   437         <ref name="topic.id.attribute"/>
   339       </optional>
   438       </optional>
   340       <optional>
   439       <optional>
   341         <ref name="topic.type.attribute"/>
   440         <ref name="topic.type.attribute"/>
   342       </optional>
   441       </optional>
   343     </interleave>
   442     </interleave>
   344   </define>
   443   </define>
   345   <define name="topic.id.attribute">
       
   346     <attribute name="xml:id">
       
   347       <data type="ID"/>
       
   348     </attribute>
       
   349   </define>
       
   350   <define name="topic.type.attribute">
       
   351     <attribute name="type">
       
   352       <data type="NCName"/>
       
   353     </attribute>
       
   354   </define>
       
   355   <define name="topic.content">
   444   <define name="topic.content">
   356     <optional>
   445     <optional>
   357       <ref name="metadata"/>
   446       <ref name="component.head"/>
   358     </optional>
   447     </optional>
   359     <oneOrMore>
   448     <oneOrMore>
   360       <ref name="section"/>
   449       <ref name="section"/>
   361     </oneOrMore>
   450     </oneOrMore>
   362   </define>
   451   </define>
   363   <!--
   452   <!--
   364     =============================================================================
   453     =============================================================================
   365                                     Section level
   454                                     SECTION LEVEL
   366     =============================================================================
   455     =============================================================================
   367   -->
   456   -->
   368   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ section ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
   457   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ section ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
   369   <define name="section">
   458   <define name="section">
   370     <element name="section">
   459     <element name="section">
   371       <ref name="section.content"/>
   460       <ref name="section.content"/>
   372       <ref name="section.attributes"/>
   461       <ref name="section.attributes"/>
   373     </element>
   462     </element>
   374   </define>
   463   </define>
   375   <define name="section.content">
   464   <define name="section.content">
   376     <optional>
   465     <optional>
   377       <ref name="metadata"/>
   466       <ref name="section.head"/>
   378     </optional>
   467     </optional>
   379     <choice>
   468     <choice>
   380       <oneOrMore>
   469       <oneOrMore>
   381         <ref name="section"/>
   470         <ref name="section"/>
   382       </oneOrMore>
   471       </oneOrMore>
   395       <data type="NCName"/>
   484       <data type="NCName"/>
   396     </attribute>
   485     </attribute>
   397   </define>
   486   </define>
   398   <!--
   487   <!--
   399     =============================================================================
   488     =============================================================================
   400                                     Block level
   489                                     BLOCK LEVEL
   401     =============================================================================
   490     =============================================================================
   402   -->
   491   -->
   403   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ block ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
   492   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ block ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
   404   <define name="block">
   493   <define name="block">
   405     <choice>
   494     <choice>
   406       <ref name="parag"/>
   495       <ref name="p"/>
       
   496       <ref name="speech"/>
   407       <ref name="list"/>
   497       <ref name="list"/>
   408       <ref name="table"/>
   498       <ref name="table"/>
   409       <ref name="speech"/>
       
   410       <ref name="media"/>
   499       <ref name="media"/>
   411     </choice>
   500     </choice>
   412   </define>
   501   </define>
   413   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ parag ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
   502   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ p ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
   414   <define name="parag">
   503   <define name="p">
   415     <element name="parag">
   504     <element name="p">
   416       <ref name="parag.content"/>
   505       <ref name="p.content"/>
   417     </element>
   506     </element>
   418   </define>
   507   </define>
   419   <define name="parag.content">
   508   <define name="p.content">
   420     <interleave>
   509     <interleave>
   421       <ref name="inlines"/>
   510       <ref name="inlines"/>
   422       <zeroOrMore>
   511       <zeroOrMore>
   423         <ref name="link"/>
   512         <ref name="link"/>
   424       </zeroOrMore>
   513       </zeroOrMore>
   425     </interleave>
   514     </interleave>
   426   </define>
   515   </define>
       
   516   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ speech ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
       
   517   <!-- ~~~~~~ speech -->
       
   518   <define name="speech">
       
   519     <element name="speech">
       
   520       <ref name="speech.content"/>
       
   521     </element>
       
   522   </define>
       
   523   <define name="speech.content">
       
   524     <optional>
       
   525       <ref name="speaker"/>
       
   526     </optional>
       
   527     <optional>
       
   528       <ref name="stage"/>
       
   529     </optional>
       
   530     <oneOrMore>
       
   531       <ref name="p"/>
       
   532     </oneOrMore>
       
   533   </define>
       
   534   <!-- ~~~~~~ speaker -->
       
   535   <define name="speaker">
       
   536     <element name="speaker">
       
   537       <ref name="speaker.content"/>
       
   538     </element>
       
   539   </define>
       
   540   <define name="speaker.content">
       
   541     <ref name="inlines"/>
       
   542   </define>
       
   543   <!-- ~~~~~~ stage -->
       
   544   <define name="stage">
       
   545     <element name="stage">
       
   546       <ref name="stage.content"/>
       
   547     </element>
       
   548   </define>
       
   549   <define name="stage.content">
       
   550     <ref name="inlines"/>
       
   551   </define>
   427   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ list ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
   552   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ list ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
   428   <!-- ~~~~~~ list -->
   553   <!-- ~~~~~~ list -->
   429   <define name="list">
   554   <define name="list">
   430     <element name="list">
   555     <element name="list">
   431       <ref name="list.content"/>
   556       <ref name="list.content"/>
   432     </element>
   557     </element>
   433   </define>
   558   </define>
   434   <define name="list.content">
   559   <define name="list.content">
   435     <optional>
   560     <optional>
   436       <ref name="title"/>
   561       <ref name="block.head"/>
   437     </optional>
   562     </optional>
   438     <choice>
   563     <choice>
   439       <group>
   564       <group>
   440         <optional>
   565         <optional>
   441           <attribute name="type">
   566           <attribute name="type">
   495       <ref name="table.content"/>
   620       <ref name="table.content"/>
   496     </element>
   621     </element>
   497   </define>
   622   </define>
   498   <define name="table.content">
   623   <define name="table.content">
   499     <optional>
   624     <optional>
   500       <ref name="title"/>
   625       <ref name="block.head"/>
   501     </optional>
   626     </optional>
   502     <oneOrMore>
   627     <oneOrMore>
   503       <ref name="tgroup"/>
   628       <ref name="tgroup"/>
   504     </oneOrMore>
   629     </oneOrMore>
   505     <optional>
   630     <optional>
   632   </define>
   757   </define>
   633   <define name="entry.content">
   758   <define name="entry.content">
   634     <choice>
   759     <choice>
   635       <ref name="inlines"/>
   760       <ref name="inlines"/>
   636       <oneOrMore>
   761       <oneOrMore>
   637         <ref name="parag"/>
   762         <ref name="p"/>
   638       </oneOrMore>
   763       </oneOrMore>
   639     </choice>
   764     </choice>
   640   </define>
   765   </define>
   641   <!-- ~~~~~~ caption -->
   766   <!-- ~~~~~~ caption -->
   642   <define name="caption">
   767   <define name="caption">
   643     <element name="caption">
   768     <element name="caption">
   644       <ref name="caption.content"/>
   769       <ref name="caption.content"/>
   645     </element>
   770     </element>
   646   </define>
   771   </define>
   647   <define name="caption.content">
   772   <define name="caption.content">
   648     <oneOrMore>
   773     <choice>
   649       <ref name="parag"/>
   774       <ref name="inlines"/>
   650     </oneOrMore>
   775       <oneOrMore>
   651   </define>
   776         <ref name="p"/>
   652   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ speech ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
   777       </oneOrMore>
   653   <!-- ~~~~~~ speech -->
   778     </choice>
   654   <define name="speech">
       
   655     <element name="speech">
       
   656       <ref name="speech.content"/>
       
   657     </element>
       
   658   </define>
       
   659   <define name="speech.content">
       
   660     <optional>
       
   661       <ref name="speaker"/>
       
   662     </optional>
       
   663     <optional>
       
   664       <ref name="stage"/>
       
   665     </optional>
       
   666     <oneOrMore>
       
   667       <ref name="parag"/>
       
   668     </oneOrMore>
       
   669   </define>
       
   670   <!-- ~~~~~~ speaker -->
       
   671   <define name="speaker">
       
   672     <element name="speaker">
       
   673       <ref name="speaker.content"/>
       
   674     </element>
       
   675   </define>
       
   676   <define name="speaker.content">
       
   677     <ref name="inlines"/>
       
   678   </define>
       
   679   <!-- ~~~~~~ stage -->
       
   680   <define name="stage">
       
   681     <element name="stage">
       
   682       <ref name="stage.content"/>
       
   683     </element>
       
   684   </define>
       
   685   <define name="stage.content">
       
   686     <ref name="inlines"/>
       
   687   </define>
   779   </define>
   688   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ media ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
   780   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ media ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
   689   <!-- ~~~~~~ media -->
   781   <!-- ~~~~~~ media -->
   690   <define name="media">
   782   <define name="media">
   691     <element name="media">
   783     <element name="media">
   729   <define name="copyright.content">
   821   <define name="copyright.content">
   730     <ref name="inlines"/>
   822     <ref name="inlines"/>
   731   </define>
   823   </define>
   732   <!--
   824   <!--
   733     =============================================================================
   825     =============================================================================
   734                                     Inline level
   826                                     INLINE LEVEL
   735     =============================================================================
   827     =============================================================================
   736   -->
   828   -->
   737   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ inlines ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
   829   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ inlines ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
   738   <define name="inlines">
   830   <define name="inlines">
   739     <mixed>
   831     <mixed>
   919   </define>
  1011   </define>
   920   <define name="note.content">
  1012   <define name="note.content">
   921     <choice>
  1013     <choice>
   922       <ref name="inlines"/>
  1014       <ref name="inlines"/>
   923       <oneOrMore>
  1015       <oneOrMore>
   924         <ref name="parag"/>
  1016         <ref name="p"/>
   925       </oneOrMore>
  1017       </oneOrMore>
   926     </choice>
  1018     </choice>
   927   </define>
  1019   </define>
   928   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ foreign ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
  1020   <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ foreign ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
   929   <define name="foreign">
  1021   <define name="foreign">