314 point.inlines |
314 point.inlines |
315 | point.block+ |
315 | point.block+ |
316 |
316 |
317 # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ table ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
317 # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ table ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
318 |
318 |
319 blanks.table = element table { blanks.table.content } |
319 blanks.table = element table { table.attributes, blanks.table.content } |
320 point.table = element table { point.table.content } |
320 point.table = element table { table.attributes, point.table.content } |
321 |
321 |
322 blanks.table.content = |
322 blanks.table.content = |
323 block.head?, |
323 block.head?, |
324 blanks.tgroup+, |
324 thead?, |
|
325 (blanks.tbody+ | blanks.tr+), |
325 table.caption? |
326 table.caption? |
326 point.table.content = |
327 point.table.content = |
327 block.head?, |
328 block.head?, |
328 point.tgroup+, |
329 (point.tbody+ | point.tr+), |
329 table.caption? |
330 table.caption? |
330 |
331 |
331 # ~~~~~~ tgroup |
|
332 blanks.tgroup = element tgroup { tgroup.attributes, blanks.tgroup.content } |
|
333 point.tgroup = element tgroup { tgroup.attributes, point.tgroup.content } |
|
334 |
|
335 blanks.tgroup.content = |
|
336 thead?, |
|
337 blanks.tbody |
|
338 point.tgroup.content = |
|
339 thead?, |
|
340 point.tbody |
|
341 |
|
342 # ~~~~~~ tbody |
332 # ~~~~~~ tbody |
343 blanks.tbody = element tbody { tbody.attributes, blanks.tbody.content } |
333 blanks.tbody = element tbody { blanks.tbody.content } |
344 point.tbody = element tbody { tbody.attributes, point.tbody.content } |
334 point.tbody = element tbody { point.tbody.content } |
345 |
335 |
346 blanks.tbody.content = |
336 blanks.tbody.content = |
347 blanks.row+ |
337 blanks.tr+ |
348 point.tbody.content = |
338 point.tbody.content = |
349 point.row+ |
339 point.tr+ |
350 |
340 |
351 # ~~~~~~ row |
341 # ~~~~~~ tr |
352 blanks.row = element row { row.attributes, blanks.row.content } |
342 blanks.tr = element tr { tr.attributes, blanks.tr.content } |
353 point.row = element row { row.attributes, point.row.content } |
343 point.tr = element tr { tr.attributes, point.tr.content } |
354 |
344 |
355 blanks.row.content = |
345 blanks.tr.content = |
356 blanks.entry+ |
346 (blanks.td | blanks.th)+ |
357 point.row.content = |
347 point.tr.content = |
358 point.entry+ |
348 (point.td | point.th)+ |
359 |
349 |
360 # ~~~~~~ entry |
350 # ~~~~~~ td, th |
361 blanks.entry = element entry { blanks.entry.content } |
351 blanks.td = element td { td.attributes, blanks.td.content } |
362 point.entry = element entry { point.entry.content } |
352 blanks.th = element th { td.attributes, blanks.td.content } |
363 |
353 point.td = element td { td.attributes, point.td.content } |
364 blanks.entry.content = |
354 point.th = element th { td.attributes, point.td.content } |
|
355 |
|
356 blanks.td.content = |
365 blanks.inlines |
357 blanks.inlines |
366 | (p | media)+ |
358 | (p | media)+ |
367 |
359 |
368 point.entry.content = |
360 point.td.content = |
369 point.inlines |
361 point.inlines |
370 | (p | media)+ |
362 | (p | media)+ |
371 |
363 |
372 # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ media ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
364 # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ media ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
373 |
365 |
374 # ~~~~~~ blanks.media |
366 # ~~~~~~ blanks.media |
375 blanks.media = element media { blanksmedia.content } |
367 blanks.media = element media { media.attributes, blanksmedia.content } |
376 |
368 |
377 blanksmedia.content = |
369 blanksmedia.content = |
378 block.head?, |
370 block.head?, |
379 (blanks.image | audio | video)+, |
371 (blanks.image | audio | video)+, |
380 media.caption?, |
372 media.caption?, |