1# ********************************************************************* 2# *** THIS IS THE FLATTENED DTD. DO NOT EDIT THIS DTD BY HAND, EDIT *** 3# *** THE CUSTOMIZATION LAYER AND REGENERATE THE FLATTENED DTD! ******** 4# ********************************************************************* 5 6# ====================================================================== 7 8# Slides XML V3.4 DTD 9# Copyright (C) 1999, 2000, 2001, 2002, 2003 Norman Walsh 10# http://sourceforge.net/projects/docbook/ 11# 12# $Id: slides-custom.dtd,v 1.9 2005/04/27 15:44:52 xmldoc Exp $ 13# 14# Please direct all questions and comments about this DTD to 15# Norman Walsh, <ndw@nwalsh.com>. 16# 17# Common declaration: 18# 19# <?xml version='1.0'?> 20# <!DOCTYPE slides 21# PUBLIC "-//Norman Walsh//DTD Slides V3.4//EN" 22# "http://docbook.sourceforge.net/release/slides/3.4/schema/dtd/slides.dtd"> 23 24# ====================================================================== 25 26namespace a = "http://relaxng.org/ns/compatibility/annotations/1.0" 27 28local.linespecific.class = screen 29local.person.ident.mix = notAllowed 30person.ident.mix = 31 honorific 32 | firstname 33 | surname 34 | lineage 35 | othername 36 | affiliation 37 | authorblurb 38 | local.person.ident.mix 39local.bibliocomponent.mix = notAllowed 40bibliocomponent.mix = 41 abbrev 42 | abstract 43 | author 44 | authorgroup 45 | bibliomisc 46 | copyright 47 | corpauthor 48 | date 49 | edition 50 | editor 51 | issuenum 52 | othercredit 53 | pubdate 54 | publishername 55 | releaseinfo 56 | revhistory 57 | subtitle 58 | title 59 | titleabbrev 60 | volumenum 61 | citetitle 62 | confgroup 63 | person.ident.mix 64 | local.bibliocomponent.mix 65local.divcomponent.mix = speakernotes 66local.component.mix = speakernotes 67local.list.class = notAllowed 68list.class = 69 itemizedlist | orderedlist | variablelist | local.list.class 70local.admon.class = notAllowed 71admon.class = note | local.admon.class 72linespecific.class = 73 literallayout | programlisting | local.linespecific.class 74local.para.class = notAllowed 75para.class = para | local.para.class 76local.informal.class = notAllowed 77informal.class = 78 blockquote | mediaobject | informaltable | local.informal.class 79local.formal.class = notAllowed 80formal.class = example | figure | table | local.formal.class 81local.compound.class = notAllowed 82compound.class = sidebar | local.compound.class 83local.genobj.class = notAllowed 84genobj.class = anchor | local.genobj.class 85local.descobj.class = notAllowed 86descobj.class = abstract | authorblurb | epigraph | local.descobj.class 87local.xref.char.class = notAllowed 88xref.char.class = footnoteref | xref | local.xref.char.class 89local.gen.char.class = notAllowed 90gen.char.class = 91 abbrev 92 | acronym 93 | citetitle 94 | emphasis 95 | footnote 96 | phrase 97 | quote 98 | trademark 99 | local.gen.char.class 100local.link.char.class = notAllowed 101link.char.class = link | ulink | local.link.char.class 102local.tech.char.class = notAllowed 103tech.char.class = 104 command 105 | computeroutput 106 | email 107 | filename 108 | literal 109 | option 110 | replaceable 111 | systemitem 112 | userinput 113 | local.tech.char.class 114local.base.char.class = notAllowed 115base.char.class = anchor | local.base.char.class 116local.docinfo.char.class = notAllowed 117docinfo.char.class = 118 author 119 | corpauthor 120 | othercredit 121 | revhistory 122 | local.docinfo.char.class 123local.other.char.class = notAllowed 124other.char.class = subscript | superscript | local.other.char.class 125local.inlineobj.char.class = notAllowed 126inlineobj.char.class = inlinemediaobject | local.inlineobj.char.class 127local.effectivity.attrib = empty 128effectivity.attrib = local.effectivity.attrib 129local.common.attrib = empty 130common.attrib = 131 attribute id { xsd:ID }?, 132 attribute lang { text }?, 133 attribute remap { text }?, 134 attribute revisionflag { "changed" | "added" | "deleted" | "off" }?, 135 local.common.attrib 136component.mix = 137 list.class 138 | admon.class 139 | linespecific.class 140 | para.class 141 | informal.class 142 | formal.class 143 | compound.class 144 | genobj.class 145 | descobj.class 146 | local.component.mix 147local.sidebar.mix = notAllowed 148sidebar.mix = 149 list.class 150 | admon.class 151 | linespecific.class 152 | para.class 153 | informal.class 154 | formal.class 155 | genobj.class 156 | local.sidebar.mix 157local.revdescription.mix = notAllowed 158revdescription.mix = 159 list.class 160 | admon.class 161 | linespecific.class 162 | para.class 163 | informal.class 164 | formal.class 165 | genobj.class 166 | local.revdescription.mix 167local.footnote.mix = notAllowed 168footnote.mix = 169 list.class 170 | linespecific.class 171 | para.class 172 | informal.class 173 | local.footnote.mix 174local.example.mix = notAllowed 175example.mix = 176 list.class 177 | linespecific.class 178 | para.class 179 | informal.class 180 | local.example.mix 181local.admon.mix = notAllowed 182admon.mix = 183 list.class 184 | linespecific.class 185 | para.class 186 | informal.class 187 | formal.class 188 | local.admon.mix 189local.figure.mix = notAllowed 190figure.mix = linespecific.class | informal.class | local.figure.mix 191local.tabentry.mix = notAllowed 192tabentry.mix = 193 list.class 194 | admon.class 195 | linespecific.class 196 | para.class 197 | mediaobject 198 | local.tabentry.mix 199local.legalnotice.mix = notAllowed 200legalnotice.mix = 201 list.class 202 | admon.class 203 | linespecific.class 204 | para.class 205 | blockquote 206 | local.legalnotice.mix 207local.textobject.mix = notAllowed 208textobject.mix = 209 list.class 210 | admon.class 211 | linespecific.class 212 | para.class 213 | blockquote 214 | local.textobject.mix 215local.listpreamble.mix = notAllowed 216listpreamble.mix = 217 admon.class 218 | linespecific.class 219 | para.class 220 | informal.class 221 | genobj.class 222 | descobj.class 223 | local.listpreamble.mix 224local.para.char.mix = notAllowed 225para.char.mix = 226 text 227 | xref.char.class 228 | gen.char.class 229 | link.char.class 230 | tech.char.class 231 | base.char.class 232 | other.char.class 233 | inlineobj.char.class 234 | local.para.char.mix 235local.title.char.mix = notAllowed 236title.char.mix = 237 text 238 | xref.char.class 239 | gen.char.class 240 | link.char.class 241 | tech.char.class 242 | base.char.class 243 | docinfo.char.class 244 | other.char.class 245 | inlineobj.char.class 246 | local.title.char.mix 247local.cptr.char.mix = notAllowed 248cptr.char.mix = 249 text 250 | link.char.class 251 | tech.char.class 252 | base.char.class 253 | other.char.class 254 | inlinemediaobject 255 | local.cptr.char.mix 256local.word.char.mix = notAllowed 257word.char.mix = 258 text 259 | acronym 260 | emphasis 261 | trademark 262 | link.char.class 263 | base.char.class 264 | other.char.class 265 | inlinemediaobject 266 | local.word.char.mix 267local.docinfo.char.mix = notAllowed 268docinfo.char.mix = 269 text 270 | link.char.class 271 | emphasis 272 | trademark 273 | replaceable 274 | other.char.class 275 | inlinemediaobject 276 | local.docinfo.char.mix 277tbl.table.mdl = 278 (title, (mediaobject+ | tgroup+)) 279 | (caption, (col* | colgroup*), thead?, tfoot?, (tbody+ | tr+)) 280divcomponent.mix = 281 list.class 282 | admon.class 283 | linespecific.class 284 | para.class 285 | informal.class 286 | formal.class 287 | compound.class 288 | descobj.class 289 | local.divcomponent.mix 290local.notation.class = notAllowed 291notation.class = 292 "BMP" 293 | "CGM-CHAR" 294 | "CGM-BINARY" 295 | "CGM-CLEAR" 296 | "DITROFF" 297 | "DVI" 298 | "EPS" 299 | "EQN" 300 | "FAX" 301 | "GIF" 302 | "GIF87a" 303 | "GIF89a" 304 | "JPG" 305 | "JPEG" 306 | "IGES" 307 | "PCX" 308 | "PIC" 309 | "PNG" 310 | "PS" 311 | "SGML" 312 | "TBL" 313 | "TEX" 314 | "TIFF" 315 | "WMF" 316 | "WPG" 317 | "SVG" 318 | "PDF" 319 | "SWF" 320 | "linespecific" 321 | local.notation.class 322yesorno.attvals = string 323formalobject.title.content = title, titleabbrev? 324local.mediaobject.mix = notAllowed 325mediaobject.mix = 326 videoobject 327 | audioobject 328 | imageobject 329 | textobject 330 | local.mediaobject.mix 331idreq.attrib = attribute id { xsd:ID } 332lang.attrib = attribute lang { text }? 333remap.attrib = attribute remap { text }? 334role.attrib = attribute role { text }? 335xreflabel.attrib = attribute xreflabel { text }? 336revisionflag.attrib = 337 attribute revisionflag { "changed" | "added" | "deleted" | "off" }? 338dir.attrib = attribute dir { "ltr" | "rtl" | "lro" | "rlo" }? 339xml-base.attrib = attribute xml:base { text }? 340label.attrib = attribute label { text }? 341linespecific.attrib = 342 [ a:defaultValue = "linespecific" ] 343 attribute format { "linespecific" }?, 344 attribute linenumbering { "numbered" | "unnumbered" }?, 345 attribute continuation { "continues" | "restarts" }?, 346 attribute startinglinenumber { text }?, 347 attribute language { text }? 348linkendreq.attrib = attribute linkend { xsd:IDREF } 349local.mark.attrib = empty 350mark.attrib = 351 attribute mark { text }?, 352 local.mark.attrib 353moreinfo.attrib = 354 [ a:defaultValue = "none" ] 355 attribute moreinfo { "refentry" | "none" }? 356pagenum.attrib = attribute pagenum { text }? 357local.status.attrib = empty 358status.attrib = 359 attribute status { text }?, 360 local.status.attrib 361width.attrib = attribute width { text }? 362local.title.attrib = empty 363title.role.attrib = role.attrib 364title = element title { title.attlist, title.char.mix* } 365title.attlist &= 366 pagenum.attrib, common.attrib, title.role.attrib, local.title.attrib 367local.titleabbrev.attrib = empty 368titleabbrev.role.attrib = role.attrib 369titleabbrev = 370 element titleabbrev { titleabbrev.attlist, title.char.mix* } 371titleabbrev.attlist &= 372 common.attrib, titleabbrev.role.attrib, local.titleabbrev.attrib 373local.subtitle.attrib = empty 374subtitle.role.attrib = role.attrib 375subtitle = element subtitle { subtitle.attlist, title.char.mix* } 376subtitle.attlist &= 377 common.attrib, subtitle.role.attrib, local.subtitle.attrib 378local.bibliomisc.attrib = empty 379bibliomisc.role.attrib = role.attrib 380bibliomisc = element bibliomisc { bibliomisc.attlist, para.char.mix* } 381bibliomisc.attlist &= 382 common.attrib, bibliomisc.role.attrib, local.bibliomisc.attrib 383local.subjectset.attrib = empty 384subjectset.role.attrib = role.attrib 385subjectset = element subjectset { subjectset.attlist, subject+ } 386subjectset.attlist &= 387 attribute scheme { xsd:NMTOKEN }?, 388 common.attrib, 389 subjectset.role.attrib, 390 local.subjectset.attrib 391local.subject.attrib = empty 392subject.role.attrib = role.attrib 393subject = element subject { subject.attlist, subjectterm+ } 394subject.attlist &= 395 attribute weight { text }?, 396 common.attrib, 397 subject.role.attrib, 398 local.subject.attrib 399local.subjectterm.attrib = empty 400subjectterm.role.attrib = role.attrib 401subjectterm = element subjectterm { subjectterm.attlist, text } 402subjectterm.attlist &= 403 common.attrib, subjectterm.role.attrib, local.subjectterm.attrib 404local.keywordset.attrib = empty 405keywordset.role.attrib = role.attrib 406keywordset = element keywordset { keywordset.attlist, keyword+ } 407keywordset.attlist &= 408 common.attrib, keywordset.role.attrib, local.keywordset.attrib 409local.keyword.attrib = empty 410keyword.role.attrib = role.attrib 411keyword = element keyword { keyword.attlist, text } 412keyword.attlist &= 413 common.attrib, keyword.role.attrib, local.keyword.attrib 414local.sidebar.attrib = empty 415sidebar.role.attrib = role.attrib 416sidebar.attlist &= 417 common.attrib, sidebar.role.attrib, local.sidebar.attrib 418local.abstract.attrib = empty 419abstract.role.attrib = role.attrib 420abstract = element abstract { abstract.attlist, title?, para.class+ } 421abstract.attlist &= 422 common.attrib, abstract.role.attrib, local.abstract.attrib 423local.authorblurb.attrib = empty 424authorblurb.role.attrib = role.attrib 425authorblurb = 426 element authorblurb { authorblurb.attlist, title?, para.class+ } 427authorblurb.attlist &= 428 common.attrib, authorblurb.role.attrib, local.authorblurb.attrib 429local.blockquote.attrib = empty 430blockquote.role.attrib = role.attrib 431blockquote.attlist &= 432 common.attrib, blockquote.role.attrib, local.blockquote.attrib 433local.attribution.attrib = empty 434attribution.role.attrib = role.attrib 435attribution = 436 element attribution { attribution.attlist, para.char.mix* } 437attribution.attlist &= 438 common.attrib, attribution.role.attrib, local.attribution.attrib 439local.epigraph.attrib = empty 440epigraph.role.attrib = role.attrib 441epigraph = 442 element epigraph { 443 epigraph.attlist, attribution?, (para.class | literallayout)+ 444 } 445epigraph.attlist &= 446 common.attrib, epigraph.role.attrib, local.epigraph.attrib 447local.footnote.attrib = empty 448footnote.role.attrib = role.attrib 449footnote = element footnote { footnote.attlist, footnote.mix+ } 450footnote.attlist &= 451 label.attrib, 452 common.attrib, 453 footnote.role.attrib, 454 local.footnote.attrib 455local.para.attrib = empty 456para.role.attrib = role.attrib 457para.attlist &= common.attrib, para.role.attrib, local.para.attrib 458local.admon.attrib = empty 459admon.role.attrib = role.attrib 460note = element note { note.attlist, title?, admon.mix+ } 461note.attlist &= common.attrib, admon.role.attrib, local.admon.attrib 462local.itemizedlist.attrib = empty 463itemizedlist.role.attrib = role.attrib 464itemizedlist.attlist &= 465 attribute spacing { "normal" | "compact" }?, 466 mark.attrib, 467 common.attrib, 468 itemizedlist.role.attrib, 469 local.itemizedlist.attrib 470local.orderedlist.attrib = empty 471orderedlist.role.attrib = role.attrib 472orderedlist.attlist &= 473 attribute numeration { 474 "arabic" | "upperalpha" | "loweralpha" | "upperroman" | "lowerroman" 475 }?, 476 [ a:defaultValue = "ignore" ] 477 attribute inheritnum { "inherit" | "ignore" }?, 478 [ a:defaultValue = "restarts" ] 479 attribute continuation { "continues" | "restarts" }?, 480 attribute spacing { "normal" | "compact" }?, 481 common.attrib, 482 orderedlist.role.attrib, 483 local.orderedlist.attrib 484local.listitem.attrib = empty 485listitem.role.attrib = role.attrib 486listitem = element listitem { listitem.attlist, component.mix+ } 487listitem.attlist &= 488 attribute override { text }?, 489 common.attrib, 490 listitem.role.attrib, 491 local.listitem.attrib 492local.variablelist.attrib = empty 493variablelist.role.attrib = role.attrib 494variablelist.attlist &= 495 attribute termlength { text }?, 496 common.attrib, 497 variablelist.role.attrib, 498 local.variablelist.attrib 499local.varlistentry.attrib = empty 500varlistentry.role.attrib = role.attrib 501varlistentry = 502 element varlistentry { varlistentry.attlist, term+, listitem } 503varlistentry.attlist &= 504 common.attrib, varlistentry.role.attrib, local.varlistentry.attrib 505local.term.attrib = empty 506term.role.attrib = role.attrib 507term = element term { term.attlist, para.char.mix* } 508term.attlist &= common.attrib, term.role.attrib, local.term.attrib 509local.example.attrib = empty 510example.role.attrib = role.attrib 511example.attlist &= 512 attribute floatstyle { text }?, 513 label.attrib, 514 width.attrib, 515 common.attrib, 516 example.role.attrib, 517 local.example.attrib 518local.programlisting.attrib = empty 519programlisting.role.attrib = role.attrib 520programlisting.attlist &= 521 width.attrib, 522 linespecific.attrib, 523 common.attrib, 524 programlisting.role.attrib, 525 local.programlisting.attrib 526local.literallayout.attrib = empty 527literallayout.role.attrib = role.attrib 528literallayout.attlist &= 529 width.attrib, 530 linespecific.attrib, 531 [ a:defaultValue = "normal" ] 532 attribute class { "monospaced" | "normal" }?, 533 common.attrib, 534 literallayout.role.attrib, 535 local.literallayout.attrib 536local.figure.attrib = empty 537figure.role.attrib = role.attrib 538figure.attlist &= 539 [ a:defaultValue = "0" ] attribute float { yesorno.attvals }?, 540 attribute floatstyle { text }?, 541 attribute pgwide { yesorno.attvals }?, 542 label.attrib, 543 common.attrib, 544 figure.role.attrib, 545 local.figure.attrib 546local.mediaobject.attrib = empty 547mediaobject.role.attrib = role.attrib 548mediaobject = 549 element mediaobject { 550 mediaobject.attlist, objectinfo?, mediaobject.mix+, caption? 551 } 552mediaobject.attlist &= 553 common.attrib, mediaobject.role.attrib, local.mediaobject.attrib 554local.inlinemediaobject.attrib = empty 555inlinemediaobject.role.attrib = role.attrib 556inlinemediaobject = 557 element inlinemediaobject { 558 inlinemediaobject.attlist, objectinfo?, mediaobject.mix+ 559 } 560inlinemediaobject.attlist &= 561 common.attrib, 562 inlinemediaobject.role.attrib, 563 local.inlinemediaobject.attrib 564local.videoobject.attrib = empty 565videoobject.role.attrib = role.attrib 566videoobject = 567 element videoobject { videoobject.attlist, objectinfo?, videodata } 568videoobject.attlist &= 569 common.attrib, videoobject.role.attrib, local.videoobject.attrib 570local.audioobject.attrib = empty 571audioobject.role.attrib = role.attrib 572audioobject = 573 element audioobject { audioobject.attlist, objectinfo?, audiodata } 574audioobject.attlist &= 575 common.attrib, audioobject.role.attrib, local.audioobject.attrib 576local.imageobject.attrib = empty 577imageobject.role.attrib = role.attrib 578imageobject = 579 element imageobject { imageobject.attlist, objectinfo?, imagedata } 580imageobject.attlist &= 581 common.attrib, imageobject.role.attrib, local.imageobject.attrib 582local.textobject.attrib = empty 583textobject.role.attrib = role.attrib 584textobject = 585 element textobject { 586 textobject.attlist, 587 objectinfo?, 588 (phrase | textdata | textobject.mix+) 589 } 590textobject.attlist &= 591 common.attrib, textobject.role.attrib, local.textobject.attrib 592local.objectinfo.attrib = empty 593objectinfo.role.attrib = role.attrib 594objectinfo.attlist &= 595 common.attrib, objectinfo.role.attrib, local.objectinfo.attrib 596local.objectdata.attrib = empty 597objectdata.attrib = 598 attribute entityref { xsd:ENTITY }?, 599 attribute fileref { text }?, 600 attribute format { notation.class }?, 601 attribute srccredit { text }?, 602 local.objectdata.attrib 603local.videodata.attrib = empty 604videodata.role.attrib = role.attrib 605videodata = element videodata { videodata.attlist, empty } 606videodata.attlist &= 607 attribute width { text }?, 608 attribute contentwidth { text }?, 609 attribute depth { text }?, 610 attribute contentdepth { text }?, 611 attribute align { "left" | "right" | "center" }?, 612 attribute valign { "top" | "middle" | "bottom" }?, 613 attribute scale { text }?, 614 attribute scalefit { yesorno.attvals }?, 615 objectdata.attrib, 616 common.attrib, 617 videodata.role.attrib, 618 local.videodata.attrib 619local.audiodata.attrib = empty 620audiodata.role.attrib = role.attrib 621audiodata = element audiodata { audiodata.attlist, empty } 622audiodata.attlist &= 623 objectdata.attrib, 624 common.attrib, 625 audiodata.role.attrib, 626 local.audiodata.attrib 627local.imagedata.attrib = empty 628imagedata.role.attrib = role.attrib 629imagedata = element imagedata { imagedata.attlist, empty } 630imagedata.attlist &= 631 attribute width { text }?, 632 attribute contentwidth { text }?, 633 attribute depth { text }?, 634 attribute contentdepth { text }?, 635 attribute align { "left" | "right" | "center" }?, 636 attribute valign { "top" | "middle" | "bottom" }?, 637 attribute scale { text }?, 638 attribute scalefit { yesorno.attvals }?, 639 objectdata.attrib, 640 common.attrib, 641 imagedata.role.attrib, 642 local.imagedata.attrib 643local.textdata.attrib = empty 644textdata.role.attrib = role.attrib 645textdata = element textdata { textdata.attlist, empty } 646textdata.attlist &= 647 attribute encoding { text }?, 648 objectdata.attrib, 649 common.attrib, 650 textdata.role.attrib, 651 local.textdata.attrib 652html.coreattrs = 653 attribute id { xsd:ID }?, 654 attribute class { text }?, 655 attribute style { text }?, 656 attribute title { text }? 657i18n = attribute xml:lang { xsd:NMTOKEN }? 658events = 659 attribute onclick { text }?, 660 attribute ondblclick { text }?, 661 attribute onmousedown { text }?, 662 attribute onmouseup { text }?, 663 attribute onmouseover { text }?, 664 attribute onmousemove { text }?, 665 attribute onmouseout { text }?, 666 attribute onkeypress { text }?, 667 attribute onkeydown { text }?, 668 attribute onkeyup { text }? 669attrs = html.coreattrs, i18n, events 670cellhalign = 671 attribute align { "left" | "center" | "right" | "justify" | "char" }?, 672 attribute char { text }?, 673 attribute charoff { text }? 674cellvalign = 675 attribute valign { "top" | "middle" | "bottom" | "baseline" }? 676colgroup = element colgroup { colgroup.attlist, col* } 677col = element col { col.attlist, empty } 678tr = element tr { tr.attlist, (th | td)+ } 679th = element th { th.attlist, (para.char.mix | tabentry.mix)* } 680td = element td { td.attlist, (para.char.mix | tabentry.mix)* } 681colgroup.attlist &= 682 attrs, 683 [ a:defaultValue = "1" ] attribute span { text }?, 684 attribute width { text }?, 685 cellhalign, 686 cellvalign 687col.attlist &= 688 attrs, 689 [ a:defaultValue = "1" ] attribute span { text }?, 690 attribute width { text }?, 691 cellhalign, 692 cellvalign 693tr.attlist &= 694 attrs, 695 cellhalign, 696 cellvalign, 697 attribute bgcolor { text }? 698th.attlist &= 699 attrs, 700 attribute abbr { text }?, 701 attribute axis { text }?, 702 attribute headers { xsd:IDREFS }?, 703 attribute scope { "row" | "col" | "rowgroup" | "colgroup" }?, 704 [ a:defaultValue = "1" ] attribute rowspan { text }?, 705 [ a:defaultValue = "1" ] attribute colspan { text }?, 706 cellhalign, 707 cellvalign, 708 attribute nowrap { "nowrap" }?, 709 attribute bgcolor { text }?, 710 attribute width { text }?, 711 attribute height { text }? 712td.attlist &= 713 attrs, 714 attribute abbr { text }?, 715 attribute axis { text }?, 716 attribute headers { xsd:IDREFS }?, 717 attribute scope { "row" | "col" | "rowgroup" | "colgroup" }?, 718 [ a:defaultValue = "1" ] attribute rowspan { text }?, 719 [ a:defaultValue = "1" ] attribute colspan { text }?, 720 cellhalign, 721 cellvalign, 722 attribute nowrap { "nowrap" }?, 723 attribute bgcolor { text }?, 724 attribute width { text }?, 725 attribute height { text }? 726tables.role.attrib = role.attrib 727bodyatt = 728 attribute floatstyle { text }?, 729 label.attrib 730secur = 731 common.attrib, 732 attribute class { text }?, 733 attribute style { text }?, 734 attribute title { text }?, 735 i18n, 736 events, 737 tables.role.attrib 738common.table.attribs = bodyatt, secur 739tbl.table.att = 740 attribute tabstyle { text }?, 741 attribute tocentry { yesorno.attvals }?, 742 attribute shortentry { yesorno.attvals }?, 743 attribute orient { "port" | "land" }?, 744 attribute pgwide { yesorno.attvals }?, 745 attribute summary { text }?, 746 attribute width { text }?, 747 attribute border { text }?, 748 attribute rules { "none" | "groups" | "rows" | "cols" | "all" }?, 749 attribute cellspacing { text }?, 750 attribute cellpadding { text }?, 751 attribute align { "left" | "center" | "right" }?, 752 attribute bgcolor { text }? 753tbl.frame.attval = 754 "void" 755 | "above" 756 | "below" 757 | "hsides" 758 | "lhs" 759 | "rhs" 760 | "vsides" 761 | "box" 762 | "border" 763 | "top" 764 | "bottom" 765 | "topbot" 766 | "all" 767 | "sides" 768 | "none" 769tbl.entry.mdl = para.char.mix | tabentry.mix 770tbl.hdft.mdl = tr+ | (colspec*, row+) 771tbl.tbody.mdl = tr+ | row+ 772yesorno = string 773tbl.tgroup.mdl = colspec*, spanspec*, thead?, tfoot?, tbody 774tbl.tgroup.att = attribute tgroupstyle { text }? 775tbl.row.mdl = (entry | entrytbl)+ 776tbl.entrytbl.mdl = colspec*, spanspec*, thead?, tbody 777table = element table { table.attlist, tbl.table.mdl } 778table.attlist &= 779 attribute frame { tbl.frame.attval }?, 780 attribute colsep { yesorno }?, 781 attribute rowsep { yesorno }?, 782 tbl.table.att, 783 bodyatt, 784 secur 785tgroup = element tgroup { tgroup.attlist, tbl.tgroup.mdl } 786tgroup.attlist &= 787 attribute cols { text }, 788 tbl.tgroup.att, 789 attribute colsep { yesorno }?, 790 attribute rowsep { yesorno }?, 791 attribute align { "left" | "right" | "center" | "justify" | "char" }?, 792 attribute char { text }?, 793 attribute charoff { text }?, 794 secur 795colspec = element colspec { colspec.attlist, empty } 796colspec.attlist &= 797 attribute colnum { text }?, 798 attribute colname { text }?, 799 attribute colwidth { text }?, 800 attribute colsep { yesorno }?, 801 attribute rowsep { yesorno }?, 802 attribute align { "left" | "right" | "center" | "justify" | "char" }?, 803 attribute char { text }?, 804 attribute charoff { text }? 805spanspec = element spanspec { spanspec.attlist, empty } 806spanspec.attlist &= 807 attribute namest { text }, 808 attribute nameend { text }, 809 attribute spanname { text }, 810 attribute colsep { yesorno }?, 811 attribute rowsep { yesorno }?, 812 attribute align { "left" | "right" | "center" | "justify" | "char" }?, 813 attribute char { text }?, 814 attribute charoff { text }? 815thead = element thead { thead.attlist, tbl.hdft.mdl } 816thead.attlist &= 817 attribute valign { "top" | "middle" | "bottom" }?, 818 secur 819tfoot = element tfoot { tfoot.attlist, tbl.hdft.mdl } 820tfoot.attlist &= 821 attribute valign { "top" | "middle" | "bottom" }?, 822 secur 823tbody = element tbody { tbody.attlist, tbl.tbody.mdl } 824tbody.attlist &= 825 attribute valign { "top" | "middle" | "bottom" }?, 826 secur 827row = element row { row.attlist, tbl.row.mdl } 828row.attlist &= 829 attribute rowsep { yesorno }?, 830 attribute valign { "top" | "middle" | "bottom" }?, 831 secur 832entrytbl = element entrytbl { entrytbl.attlist, tbl.entrytbl.mdl } 833entrytbl.attlist &= 834 attribute cols { text }, 835 tbl.tgroup.att, 836 attribute colname { text }?, 837 attribute spanname { text }?, 838 attribute namest { text }?, 839 attribute nameend { text }?, 840 attribute colsep { yesorno }?, 841 attribute rowsep { yesorno }?, 842 attribute align { "left" | "right" | "center" | "justify" | "char" }?, 843 attribute char { text }?, 844 attribute charoff { text }?, 845 secur 846entry = element entry { entry.attlist, tbl.entry.mdl* } 847entry.attlist &= 848 attribute colname { text }?, 849 attribute namest { text }?, 850 attribute nameend { text }?, 851 attribute spanname { text }?, 852 attribute morerows { text }?, 853 attribute colsep { yesorno }?, 854 attribute rowsep { yesorno }?, 855 attribute align { "left" | "right" | "center" | "justify" | "char" }?, 856 attribute char { text }?, 857 attribute charoff { text }?, 858 attribute rotate { yesorno }?, 859 attribute valign { "top" | "middle" | "bottom" }?, 860 secur 861local.informaltable.attrib = empty 862informaltable.attlist &= 863 attribute frame { tbl.frame.attval }?, 864 attribute colsep { yesorno.attvals }?, 865 attribute rowsep { yesorno.attvals }?, 866 common.table.attribs, 867 tbl.table.att, 868 local.informaltable.attrib 869local.caption.attrib = empty 870caption.role.attrib = role.attrib 871caption = element caption { caption.attlist, (text | textobject.mix)* } 872caption.attlist.content = 873 lang.attrib, 874 remap.attrib, 875 xreflabel.attrib, 876 revisionflag.attrib, 877 effectivity.attrib, 878 dir.attrib, 879 xml-base.attrib, 880 local.common.attrib, 881 caption.role.attrib, 882 attrs, 883 attribute align { "top" | "bottom" | "left" | "right" }?, 884 local.caption.attrib 885caption.attlist &= caption.attlist.content 886local.affiliation.attrib = empty 887affiliation.role.attrib = role.attrib 888affiliation.attlist &= 889 common.attrib, affiliation.role.attrib, local.affiliation.attrib 890local.jobtitle.attrib = empty 891jobtitle.role.attrib = role.attrib 892jobtitle = element jobtitle { jobtitle.attlist, docinfo.char.mix* } 893jobtitle.attlist &= 894 common.attrib, jobtitle.role.attrib, local.jobtitle.attrib 895local.author.attrib = empty 896author.role.attrib = role.attrib 897author.attlist &= common.attrib, author.role.attrib, local.author.attrib 898local.authorgroup.attrib = empty 899authorgroup.role.attrib = role.attrib 900authorgroup.attlist &= 901 common.attrib, authorgroup.role.attrib, local.authorgroup.attrib 902local.authorinitials.attrib = empty 903authorinitials.role.attrib = role.attrib 904authorinitials = 905 element authorinitials { authorinitials.attlist, docinfo.char.mix* } 906authorinitials.attlist &= 907 common.attrib, authorinitials.role.attrib, local.authorinitials.attrib 908local.confgroup.attrib = empty 909confgroup.role.attrib = role.attrib 910confgroup = 911 element confgroup { 912 confgroup.attlist, 913 (confdates | conftitle | confnum | address | confsponsor)* 914 } 915confgroup.attlist &= 916 common.attrib, confgroup.role.attrib, local.confgroup.attrib 917local.confdates.attrib = empty 918confdates.role.attrib = role.attrib 919confdates = element confdates { confdates.attlist, docinfo.char.mix* } 920confdates.attlist &= 921 common.attrib, confdates.role.attrib, local.confdates.attrib 922local.conftitle.attrib = empty 923conftitle.role.attrib = role.attrib 924conftitle = element conftitle { conftitle.attlist, docinfo.char.mix* } 925conftitle.attlist &= 926 common.attrib, conftitle.role.attrib, local.conftitle.attrib 927local.confnum.attrib = empty 928confnum.role.attrib = role.attrib 929confnum = element confnum { confnum.attlist, docinfo.char.mix* } 930confnum.attlist &= 931 common.attrib, confnum.role.attrib, local.confnum.attrib 932local.confsponsor.attrib = empty 933confsponsor.role.attrib = role.attrib 934confsponsor = 935 element confsponsor { confsponsor.attlist, docinfo.char.mix* } 936confsponsor.attlist &= 937 common.attrib, confsponsor.role.attrib, local.confsponsor.attrib 938local.copyright.attrib = empty 939copyright.role.attrib = role.attrib 940copyright = element copyright { copyright.attlist, year+, holder* } 941copyright.attlist &= 942 common.attrib, copyright.role.attrib, local.copyright.attrib 943local.year.attrib = empty 944year.role.attrib = role.attrib 945year = element year { year.attlist, docinfo.char.mix* } 946year.attlist &= common.attrib, year.role.attrib, local.year.attrib 947local.holder.attrib = empty 948holder.role.attrib = role.attrib 949holder = element holder { holder.attlist, docinfo.char.mix* } 950holder.attlist &= common.attrib, holder.role.attrib, local.holder.attrib 951local.corpauthor.attrib = empty 952corpauthor.role.attrib = role.attrib 953corpauthor = 954 element corpauthor { corpauthor.attlist, docinfo.char.mix* } 955corpauthor.attlist &= 956 common.attrib, corpauthor.role.attrib, local.corpauthor.attrib 957local.date.attrib = empty 958date.role.attrib = role.attrib 959date = element date { date.attlist, docinfo.char.mix* } 960date.attlist &= common.attrib, date.role.attrib, local.date.attrib 961local.edition.attrib = empty 962edition.role.attrib = role.attrib 963edition = element edition { edition.attlist, docinfo.char.mix* } 964edition.attlist &= 965 common.attrib, edition.role.attrib, local.edition.attrib 966local.editor.attrib = empty 967editor.role.attrib = role.attrib 968editor.attlist &= common.attrib, editor.role.attrib, local.editor.attrib 969local.issuenum.attrib = empty 970issuenum.role.attrib = role.attrib 971issuenum = element issuenum { issuenum.attlist, docinfo.char.mix* } 972issuenum.attlist &= 973 common.attrib, issuenum.role.attrib, local.issuenum.attrib 974local.legalnotice.attrib = empty 975legalnotice.role.attrib = role.attrib 976legalnotice.attlist &= 977 common.attrib, legalnotice.role.attrib, local.legalnotice.attrib 978local.orgname.attrib = empty 979orgname.role.attrib = role.attrib 980orgname = element orgname { orgname.attlist, docinfo.char.mix* } 981orgname.attlist &= 982 common.attrib, 983 attribute class { 984 "corporation" | "nonprofit" | "consortium" | "informal" | "other" 985 }?, 986 attribute otherclass { text }?, 987 orgname.role.attrib, 988 local.orgname.attrib 989local.othercredit.attrib = empty 990othercredit.role.attrib = role.attrib 991othercredit.attlist &= 992 attribute class { 993 "graphicdesigner" 994 | "productioneditor" 995 | "copyeditor" 996 | "technicaleditor" 997 | "translator" 998 | "other" 999 }?, 1000 common.attrib, 1001 othercredit.role.attrib, 1002 local.othercredit.attrib 1003local.firstname.attrib = empty 1004firstname.role.attrib = role.attrib 1005firstname = element firstname { firstname.attlist, docinfo.char.mix* } 1006firstname.attlist &= 1007 common.attrib, firstname.role.attrib, local.firstname.attrib 1008local.honorific.attrib = empty 1009honorific.role.attrib = role.attrib 1010honorific = element honorific { honorific.attlist, docinfo.char.mix* } 1011honorific.attlist &= 1012 common.attrib, honorific.role.attrib, local.honorific.attrib 1013local.lineage.attrib = empty 1014lineage.role.attrib = role.attrib 1015lineage = element lineage { lineage.attlist, docinfo.char.mix* } 1016lineage.attlist &= 1017 common.attrib, lineage.role.attrib, local.lineage.attrib 1018local.othername.attrib = empty 1019othername.role.attrib = role.attrib 1020othername = element othername { othername.attlist, docinfo.char.mix* } 1021othername.attlist &= 1022 common.attrib, othername.role.attrib, local.othername.attrib 1023local.surname.attrib = empty 1024surname.role.attrib = role.attrib 1025surname = element surname { surname.attlist, docinfo.char.mix* } 1026surname.attlist &= 1027 common.attrib, surname.role.attrib, local.surname.attrib 1028local.pubdate.attrib = empty 1029pubdate.role.attrib = role.attrib 1030pubdate = element pubdate { pubdate.attlist, docinfo.char.mix* } 1031pubdate.attlist &= 1032 common.attrib, pubdate.role.attrib, local.pubdate.attrib 1033local.publishername.attrib = empty 1034publishername.role.attrib = role.attrib 1035publishername = 1036 element publishername { publishername.attlist, docinfo.char.mix* } 1037publishername.attlist &= 1038 common.attrib, publishername.role.attrib, local.publishername.attrib 1039local.releaseinfo.attrib = empty 1040releaseinfo.role.attrib = role.attrib 1041releaseinfo = 1042 element releaseinfo { releaseinfo.attlist, docinfo.char.mix* } 1043releaseinfo.attlist &= 1044 common.attrib, releaseinfo.role.attrib, local.releaseinfo.attrib 1045local.revhistory.attrib = empty 1046revhistory.role.attrib = role.attrib 1047revhistory = element revhistory { revhistory.attlist, revision+ } 1048revhistory.attlist &= 1049 common.attrib, revhistory.role.attrib, local.revhistory.attrib 1050local.revision.attrib = empty 1051revision.role.attrib = role.attrib 1052revision = 1053 element revision { 1054 revision.attlist, 1055 revnumber, 1056 date, 1057 (author | authorinitials)*, 1058 (revremark | revdescription)? 1059 } 1060revision.attlist &= 1061 common.attrib, revision.role.attrib, local.revision.attrib 1062local.revnumber.attrib = empty 1063revnumber.role.attrib = role.attrib 1064revnumber = element revnumber { revnumber.attlist, docinfo.char.mix* } 1065revnumber.attlist &= 1066 common.attrib, revnumber.role.attrib, local.revnumber.attrib 1067local.revremark.attrib = empty 1068revremark.role.attrib = role.attrib 1069revremark = element revremark { revremark.attlist, docinfo.char.mix* } 1070revremark.attlist &= 1071 common.attrib, revremark.role.attrib, local.revremark.attrib 1072local.revdescription.attrib = empty 1073revdescription.role.attrib = role.attrib 1074revdescription = 1075 element revdescription { revdescription.attlist, revdescription.mix+ } 1076revdescription.attlist &= 1077 common.attrib, revdescription.role.attrib, local.revdescription.attrib 1078local.volumenum.attrib = empty 1079volumenum.role.attrib = role.attrib 1080volumenum = element volumenum { volumenum.attlist, docinfo.char.mix* } 1081volumenum.attlist &= 1082 common.attrib, volumenum.role.attrib, local.volumenum.attrib 1083local.command.attrib = empty 1084command.role.attrib = role.attrib 1085command = element command { command.attlist, cptr.char.mix* } 1086command.attlist &= 1087 moreinfo.attrib, 1088 common.attrib, 1089 command.role.attrib, 1090 local.command.attrib 1091local.computeroutput.attrib = empty 1092computeroutput.role.attrib = role.attrib 1093computeroutput.attlist &= 1094 moreinfo.attrib, 1095 common.attrib, 1096 computeroutput.role.attrib, 1097 local.computeroutput.attrib 1098local.email.attrib = empty 1099email.role.attrib = role.attrib 1100email = element email { email.attlist, docinfo.char.mix* } 1101email.attlist &= common.attrib, email.role.attrib, local.email.attrib 1102local.filename.attrib = empty 1103filename.role.attrib = role.attrib 1104filename = element filename { filename.attlist, cptr.char.mix* } 1105filename.attlist &= 1106 attribute class { 1107 "headerfile" 1108 | "partition" 1109 | "devicefile" 1110 | "libraryfile" 1111 | "directory" 1112 | "extension" 1113 | "symlink" 1114 }?, 1115 attribute path { text }?, 1116 moreinfo.attrib, 1117 common.attrib, 1118 filename.role.attrib, 1119 local.filename.attrib 1120local.lineannotation.attrib = empty 1121lineannotation.role.attrib = role.attrib 1122lineannotation = 1123 element lineannotation { lineannotation.attlist, para.char.mix* } 1124lineannotation.attlist &= 1125 common.attrib, lineannotation.role.attrib, local.lineannotation.attrib 1126local.literal.attrib = empty 1127literal.role.attrib = role.attrib 1128literal = element literal { literal.attlist, cptr.char.mix* } 1129literal.attlist &= 1130 moreinfo.attrib, 1131 common.attrib, 1132 literal.role.attrib, 1133 local.literal.attrib 1134local.option.attrib = empty 1135option.role.attrib = role.attrib 1136option = element option { option.attlist, cptr.char.mix* } 1137option.attlist &= common.attrib, option.role.attrib, local.option.attrib 1138local.replaceable.attrib = empty 1139replaceable.role.attrib = role.attrib 1140replaceable.attlist &= 1141 attribute class { "command" | "function" | "option" | "parameter" }?, 1142 common.attrib, 1143 replaceable.role.attrib, 1144 local.replaceable.attrib 1145local.systemitem.attrib = empty 1146systemitem.role.attrib = role.attrib 1147systemitem.attlist &= 1148 attribute class { 1149 "constant" 1150 | "event" 1151 | "eventhandler" 1152 | "domainname" 1153 | "fqdomainname" 1154 | "ipaddress" 1155 | "netmask" 1156 | "etheraddress" 1157 | "groupname" 1158 | "library" 1159 | "macro" 1160 | "osname" 1161 | "filesystem" 1162 | "resource" 1163 | "systemname" 1164 | "username" 1165 | "newsgroup" 1166 | "process" 1167 | "service" 1168 | "server" 1169 | "daemon" 1170 }?, 1171 moreinfo.attrib, 1172 common.attrib, 1173 systemitem.role.attrib, 1174 local.systemitem.attrib 1175local.userinput.attrib = empty 1176userinput.role.attrib = role.attrib 1177userinput.attlist &= 1178 moreinfo.attrib, 1179 common.attrib, 1180 userinput.role.attrib, 1181 local.userinput.attrib 1182local.abbrev.attrib = empty 1183abbrev.role.attrib = role.attrib 1184abbrev = element abbrev { abbrev.attlist, word.char.mix* } 1185abbrev.attlist &= common.attrib, abbrev.role.attrib, local.abbrev.attrib 1186local.acronym.attrib = empty 1187acronym.role.attrib = role.attrib 1188acronym = element acronym { acronym.attlist, word.char.mix* } 1189acronym.attlist &= 1190 common.attrib, acronym.role.attrib, local.acronym.attrib 1191local.citetitle.attrib = empty 1192citetitle.role.attrib = role.attrib 1193citetitle = element citetitle { citetitle.attlist, para.char.mix* } 1194citetitle.attlist &= 1195 attribute pubwork { 1196 "article" 1197 | "book" 1198 | "chapter" 1199 | "part" 1200 | "refentry" 1201 | "section" 1202 | "journal" 1203 | "series" 1204 | "set" 1205 | "manuscript" 1206 | "cdrom" 1207 | "dvd" 1208 | "wiki" 1209 | "gopher" 1210 | "bbs" 1211 | "emailmessage" 1212 | "webpage" 1213 | "newsposting" 1214 }?, 1215 common.attrib, 1216 citetitle.role.attrib, 1217 local.citetitle.attrib 1218local.emphasis.attrib = empty 1219emphasis.role.attrib = role.attrib 1220emphasis = element emphasis { emphasis.attlist, para.char.mix* } 1221emphasis.attlist &= 1222 common.attrib, emphasis.role.attrib, local.emphasis.attrib 1223local.phrase.attrib = empty 1224phrase.role.attrib = role.attrib 1225phrase = element phrase { phrase.attlist, para.char.mix* } 1226phrase.attlist &= common.attrib, phrase.role.attrib, local.phrase.attrib 1227local.quote.attrib = empty 1228quote.role.attrib = role.attrib 1229quote = element quote { quote.attlist, para.char.mix* } 1230quote.attlist &= common.attrib, quote.role.attrib, local.quote.attrib 1231local.ssscript.attrib = empty 1232ssscript.role.attrib = role.attrib 1233subscript.attlist &= 1234 common.attrib, ssscript.role.attrib, local.ssscript.attrib 1235superscript.attlist &= 1236 common.attrib, ssscript.role.attrib, local.ssscript.attrib 1237local.trademark.attrib = empty 1238trademark.role.attrib = role.attrib 1239trademark.attlist &= 1240 [ a:defaultValue = "trade" ] 1241 attribute class { "service" | "trade" | "registered" | "copyright" }?, 1242 common.attrib, 1243 trademark.role.attrib, 1244 local.trademark.attrib 1245local.link.attrib = empty 1246link.role.attrib = role.attrib 1247link = element link { link.attlist, para.char.mix* } 1248link.attlist &= 1249 attribute endterm { xsd:IDREF }?, 1250 attribute xrefstyle { text }?, 1251 attribute type { text }?, 1252 linkendreq.attrib, 1253 common.attrib, 1254 link.role.attrib, 1255 local.link.attrib 1256local.ulink.attrib = empty 1257ulink.role.attrib = role.attrib 1258ulink = element ulink { ulink.attlist, para.char.mix* } 1259ulink.attlist &= 1260 attribute url { text }, 1261 attribute type { text }?, 1262 attribute xrefstyle { text }?, 1263 common.attrib, 1264 ulink.role.attrib, 1265 local.ulink.attrib 1266local.footnoteref.attrib = empty 1267footnoteref.role.attrib = role.attrib 1268footnoteref = element footnoteref { footnoteref.attlist, empty } 1269footnoteref.attlist &= 1270 linkendreq.attrib, 1271 label.attrib, 1272 common.attrib, 1273 footnoteref.role.attrib, 1274 local.footnoteref.attrib 1275local.xref.attrib = empty 1276xref.role.attrib = role.attrib 1277xref = element xref { xref.attlist, empty } 1278xref.attlist &= 1279 attribute endterm { xsd:IDREF }?, 1280 attribute xrefstyle { text }?, 1281 common.attrib, 1282 linkendreq.attrib, 1283 xref.role.attrib, 1284 local.xref.attrib 1285local.anchor.attrib = empty 1286anchor.role.attrib = role.attrib 1287anchor = element anchor { anchor.attlist, empty } 1288anchor.attlist &= 1289 idreq.attrib, 1290 pagenum.attrib, 1291 remap.attrib, 1292 xreflabel.attrib, 1293 revisionflag.attrib, 1294 effectivity.attrib, 1295 anchor.role.attrib, 1296 local.anchor.attrib 1297objectinfo = 1298 element objectinfo { 1299 objectinfo.attlist, 1300 (mediaobject 1301 | legalnotice 1302 | keywordset 1303 | subjectset 1304 | bibliocomponent.mix)+ 1305 } 1306authorgroup = 1307 element authorgroup { 1308 authorgroup.attlist, (author | editor | corpauthor | othercredit)+ 1309 } 1310author = element author { author.attlist, person.ident.mix+ } 1311editor = element editor { editor.attlist, person.ident.mix+ } 1312othercredit = 1313 element othercredit { othercredit.attlist, person.ident.mix+ } 1314para = element para { para.attlist, para.char.mix* } 1315informaltable.table.mdl = 1316 (mediaobject+ | tgroup+) 1317 | (caption, (col* | colgroup*), thead?, tfoot?, (tbody+ | tr+)) 1318informaltable = 1319 element informaltable { 1320 informaltable.attlist, informaltable.table.mdl 1321 } 1322replaceable = 1323 element replaceable { 1324 replaceable.attlist, 1325 (text | link.char.class | base.char.class | inlinemediaobject)* 1326 } 1327trademark = 1328 element trademark { 1329 trademark.attlist, 1330 (text 1331 | link.char.class 1332 | tech.char.class 1333 | inlinemediaobject 1334 | emphasis)* 1335 } 1336sidebar = 1337 element sidebar { 1338 sidebar.attlist, formalobject.title.content?, sidebar.mix+ 1339 } 1340programlisting = 1341 element programlisting { 1342 programlisting.attlist, (para.char.mix | lineannotation)* 1343 } 1344literallayout = 1345 element literallayout { 1346 literallayout.attlist, (para.char.mix | lineannotation)* 1347 } 1348itemizedlist = 1349 element itemizedlist { 1350 itemizedlist.attlist, 1351 formalobject.title.content?, 1352 listpreamble.mix*, 1353 listitem+ 1354 } 1355orderedlist = 1356 element orderedlist { 1357 orderedlist.attlist, 1358 formalobject.title.content?, 1359 listpreamble.mix*, 1360 listitem+ 1361 } 1362variablelist = 1363 element variablelist { 1364 variablelist.attlist, 1365 formalobject.title.content?, 1366 listpreamble.mix*, 1367 varlistentry+ 1368 } 1369example = 1370 element example { 1371 example.attlist, formalobject.title.content, example.mix+ 1372 } 1373figure = 1374 element figure { 1375 figure.attlist, 1376 formalobject.title.content, 1377 (figure.mix | link.char.class)+ 1378 } 1379legalnotice = 1380 element legalnotice { legalnotice.attlist, title?, legalnotice.mix+ } 1381systemitem = 1382 element systemitem { systemitem.attlist, (cptr.char.mix | acronym)* } 1383computeroutput = 1384 element computeroutput { computeroutput.attlist, cptr.char.mix* } 1385userinput = element userinput { userinput.attlist, cptr.char.mix* } 1386blockquote = 1387 element blockquote { 1388 blockquote.attlist, title?, attribution?, component.mix+ 1389 } 1390subscript = 1391 element subscript { 1392 subscript.attlist, 1393 (text 1394 | link.char.class 1395 | emphasis 1396 | replaceable 1397 | inlinemediaobject 1398 | base.char.class 1399 | other.char.class)* 1400 } 1401superscript = 1402 element superscript { 1403 superscript.attlist, 1404 (text 1405 | link.char.class 1406 | emphasis 1407 | replaceable 1408 | inlinemediaobject 1409 | base.char.class 1410 | other.char.class)* 1411 } 1412screen = 1413 element screen { screen.attlist, (para.char.mix | lineannotation)* } 1414screen.role.attrib = role.attrib 1415local.screen.attrib = empty 1416screen.attlist &= 1417 width.attrib, 1418 linespecific.attrib, 1419 common.attrib, 1420 screen.role.attrib, 1421 local.screen.attrib 1422affiliation = 1423 element affiliation { 1424 affiliation.attlist, jobtitle?, orgname?, address* 1425 } 1426address = element address { address.attlist, text } 1427address.role.attrib = role.attrib 1428address.attlist &= 1429 linespecific.attrib, common.attrib, address.role.attrib 1430slides = 1431 element slides { 1432 slides.attlist, slidesinfo, speakernotes?, foil*, foilgroup* 1433 } 1434slides.attlist &= 1435 label.attrib, status.attrib, common.attrib, role.attrib 1436slidesinfo = 1437 element slidesinfo { 1438 slidesinfo.attlist, 1439 (mediaobject 1440 | legalnotice 1441 | subjectset 1442 | keywordset 1443 | bibliocomponent.mix)+ 1444 } 1445slidesinfo.attlist &= common.attrib, role.attrib 1446foilgroup = 1447 element foilgroup { 1448 foilgroup.attlist, 1449 foilgroupinfo?, 1450 title, 1451 subtitle?, 1452 titleabbrev?, 1453 divcomponent.mix*, 1454 foil+ 1455 } 1456foilgroup.attlist &= 1457 label.attrib, status.attrib, common.attrib, role.attrib 1458foilgroupinfo = 1459 element foilgroupinfo { 1460 foilgroupinfo.attlist, 1461 (mediaobject 1462 | legalnotice 1463 | subjectset 1464 | keywordset 1465 | bibliocomponent.mix)+ 1466 } 1467foilgroupinfo.attlist &= common.attrib, role.attrib 1468foil = 1469 element foil { 1470 foil.attlist, 1471 foilinfo?, 1472 title, 1473 subtitle?, 1474 titleabbrev?, 1475 divcomponent.mix+ 1476 } 1477foil.attlist &= label.attrib, status.attrib, common.attrib, role.attrib 1478foilinfo = 1479 element foilinfo { 1480 foilinfo.attlist, 1481 (mediaobject 1482 | legalnotice 1483 | subjectset 1484 | keywordset 1485 | bibliocomponent.mix)+ 1486 } 1487foilinfo.attlist &= common.attrib, role.attrib 1488speakernotes = 1489 element speakernotes { speakernotes.attlist, divcomponent.mix* } 1490speakernotes.attlist &= common.attrib, role.attrib 1491start = slides 1492