# HG changeset patch # User Patrick PIERRE # Date 1307817318 -7200 # Node ID ca367d4d080b363c1ab69322cd85da480aeec5d8 # Parent 341a2845bc0beb335c5a442a13f2a6baad652dde Première version de CALS diff -r 341a2845bc0b -r ca367d4d080b RelaxNG/publidoc.rnc --- a/RelaxNG/publidoc.rnc sam. juin 11 18:01:26 2011 +0200 +++ b/RelaxNG/publidoc.rnc sam. juin 11 20:35:18 2011 +0200 @@ -216,9 +216,9 @@ # Block level # ============================================================================= -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ blocks ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ block ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -block = (parag | \list | speech | media) +block = (parag | \list | table | speech | media) # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ parag ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -228,7 +228,7 @@ inlines & link* -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ list ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ list ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # ~~~~~~ list \list = element list { \list.content } @@ -255,6 +255,68 @@ label.content = inlines +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ table ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +table = element table { table.content } + +table.content = + title?, + tgroup+, + caption? + +# ~~~~~~ tgroup +tgroup = element tgroup { tgroup.attributes, tgroup.content } + +tgroup.content = + thead?, + tfoot?, + tbody + +tgroup.attributes = + cols.attribute + & align.attribute? + & colsep.attribute? + & rowsep.attribute? +cols.attribute = attribute cols { xsd:positiveInteger } +align.attribute = attribute align { "left" | "right" | "center" | "justify" } +colsep.attribute = attribute colsep { "0" | "1" } +rowsep.attribute = attribute rowsep { "0" | "1" } + +# ~~~~~~ thead, tfoot, tbody +thead = element thead { thead.content } +tfoot = element tfoot { tfoot.content } +tbody = element tbody { tbody.content } + +thead.content = + row+ +tfoot.content = + row+ +tbody.content = + row+ + +# ~~~~~~ row +row = element row { row.attribute, row.content } + +row.attribute = + valign.attribute? +valign.attribute = attribute valign { "top" | "middle" | "bottom" } + +row.content = + entry+ + +# ~~~~~~ entry +entry = element entry { entry.content } + +entry.content = + inlines + | parag+ + +# ~~~~~~ caption +caption = element caption { caption.content } + +caption.content = + parag+ + # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ speech ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # ~~~~~~ speech @@ -282,25 +344,18 @@ media.content = image+, - media.caption? - -media.id.attribute = attribute id { xsd:NMTOKEN } + caption? # ~~~~~~ image image = element image { image.attributes, image.content } image.attributes = media.id.attribute +media.id.attribute = attribute id { xsd:NMTOKEN } image.content = copyright? -# ~~~~~~ caption -media.caption = element caption { media.caption.content } - -media.caption.content = - parag+ - # ~~~~~~ copyright copyright = element copyright { copyright.content } @@ -381,7 +436,8 @@ note.label.attribute = attribute label { text } note.content = - parag+ + inlines + | parag+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ foreign ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff -r 341a2845bc0b -r ca367d4d080b RelaxNG/publidoc.rng --- a/RelaxNG/publidoc.rng sam. juin 11 18:01:26 2011 +0200 +++ b/RelaxNG/publidoc.rng sam. juin 11 20:35:18 2011 +0200 @@ -400,11 +400,12 @@ Block level ============================================================================= --> - + + @@ -423,7 +424,7 @@ - + @@ -488,6 +489,166 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + left + right + center + justify + + + + + + + 0 + 1 + + + + + + + 0 + 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + top + middle + bottom + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -536,14 +697,9 @@ - + - - - - - @@ -554,22 +710,16 @@ + + + + + - - - - - - - - - - - @@ -768,9 +918,12 @@ - - - + + + + + +