RelaxNG/publidoc.rnc
changeset 313 e4f154ea2837
parent 312 7f6b762880b4
child 350 58bbf6bb79e2
equal deleted inserted replaced
312:7f6b762880b4 313:e4f154ea2837
   379    (title, shorttitle?, subtitle*)?
   379    (title, shorttitle?, subtitle*)?
   380  & head.index*
   380  & head.index*
   381 
   381 
   382 # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ block ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   382 # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ block ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   383 
   383 
   384 block = (p | speech | \list | blockquote | table | table.cals | media)
   384 block = (p | \list | blockquote | speech | table | table.cals | media)
   385 
   385 
   386 # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ p ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   386 # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ p ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   387 
   387 
   388 p = element p { p.content }
   388 p = element p { p.content }
   389 
   389 
   390 p.content =
   390 p.content =
   391    inlines
   391    inlines
   392 
       
   393 # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ speech ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       
   394 
       
   395 # ~~~~~~ speech
       
   396 speech = element speech { speech.content }
       
   397 
       
   398 speech.content =
       
   399    speaker?,
       
   400    stage?,
       
   401    (p | blockquote)+
       
   402 
       
   403 # ~~~~~~ speaker
       
   404 speaker = element speaker { speaker.content }
       
   405 
       
   406 speaker.content = inlines
       
   407 
   392 
   408 # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ list ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   393 # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ list ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   409 
   394 
   410 # ~~~~~~ list
   395 # ~~~~~~ list
   411 \list = element list {
   396 \list = element list {
   446 attribution = element attribution { attribution.content }
   431 attribution = element attribution { attribution.content }
   447 
   432 
   448 attribution.content = mixed {
   433 attribution.content = mixed {
   449    sup* & number* & date* & name* & foreign* & acronym* & term* & literal*
   434    sup* & number* & date* & name* & foreign* & acronym* & term* & literal*
   450  & highlight* & emphasis* & mentioned* & note* & warning* }
   435  & highlight* & emphasis* & mentioned* & note* & warning* }
       
   436 
       
   437 # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ speech ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       
   438 
       
   439 # ~~~~~~ speech
       
   440 speech = element speech { speech.content }
       
   441 
       
   442 speech.content =
       
   443    speaker?,
       
   444    stage?,
       
   445    (p | blockquote)+
       
   446 
       
   447 # ~~~~~~ speaker
       
   448 speaker = element speaker { speaker.content }
       
   449 
       
   450 speaker.content = inlines
   451 
   451 
   452 # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ table ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   452 # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ table ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   453 
   453 
   454 # ~~~~~~ table
   454 # ~~~~~~ table
   455 table = element table { table.attributes, table.content }
   455 table = element table { table.attributes, table.content }