aboutsummaryrefslogtreecommitdiffstats
path: root/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides
diff options
context:
space:
mode:
Diffstat (limited to 'stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides')
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/README11
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/RELEASE-NOTES.xml135
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/common/common.xsl19
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/doc/slides.xml1371
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/doc/user.css6
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/fo/param.xml1155
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/fo/param.xsl222
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/fo/plain-titlepage.xml49
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/fo/plain-titlepage.xsl150
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/fo/plain.xsl563
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/1.pngbin0 -> 1154 bytes
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/1.svg6
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/10.pngbin0 -> 1756 bytes
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/10.svg6
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/11.pngbin0 -> 1280 bytes
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/11.svg6
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/12.pngbin0 -> 1662 bytes
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/12.svg6
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/13.pngbin0 -> 1720 bytes
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/13.svg6
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/14.pngbin0 -> 1544 bytes
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/14.svg6
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/15.pngbin0 -> 1758 bytes
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/15.svg6
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/16.pngbin0 -> 1797 bytes
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/16.svg6
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/17.pngbin0 -> 1472 bytes
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/17.svg6
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/18.pngbin0 -> 1815 bytes
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/18.svg6
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/19.pngbin0 -> 1827 bytes
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/19.svg6
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/2.pngbin0 -> 1561 bytes
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/2.svg6
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/20.pngbin0 -> 2033 bytes
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/20.svg6
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/21.pngbin0 -> 1638 bytes
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/21.svg6
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/22.pngbin0 -> 1923 bytes
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/22.svg6
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/23.pngbin0 -> 2006 bytes
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/23.svg6
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/24.pngbin0 -> 1785 bytes
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/24.svg6
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/25.pngbin0 -> 1991 bytes
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/25.svg6
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/26.pngbin0 -> 2058 bytes
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/26.svg6
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/27.pngbin0 -> 1815 bytes
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/27.svg6
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/28.pngbin0 -> 2082 bytes
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/28.svg6
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/29.pngbin0 -> 2087 bytes
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/29.svg6
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/3.pngbin0 -> 1655 bytes
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/3.svg6
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/30.pngbin0 -> 2108 bytes
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/30.svg6
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/4.pngbin0 -> 1363 bytes
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/4.svg6
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/5.pngbin0 -> 1560 bytes
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/5.svg6
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/6.pngbin0 -> 1655 bytes
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/6.svg6
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/7.pngbin0 -> 1333 bytes
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/7.svg6
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/8.pngbin0 -> 1741 bytes
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/8.svg6
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/9.pngbin0 -> 1718 bytes
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/9.svg6
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/gen.sh23
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/face1.gifbin0 -> 5279 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/face2.gifbin0 -> 2378 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/face3.gifbin0 -> 800 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/face4.gifbin0 -> 846 bytes
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/locatingrules.xml31
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/index-osf.html200
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/index-xoxo.html201
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/S501.jpgbin0 -> 10475 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/S502.jpgbin0 -> 10063 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/S503.jpgbin0 -> 9631 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/S504.jpgbin0 -> 10068 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/mememe01.pngbin0 -> 28065 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/mememe02.pngbin0 -> 8701 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/mememe03.pngbin0 -> 5223 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/mememe04.pngbin0 -> 4548 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/mememe05.pngbin0 -> 3423 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/s5filemap.pngbin0 -> 61264 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/bg-shade.pngbin0 -> 594 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/blank.gifbin0 -> 49 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/bodybg.gifbin0 -> 10119 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/framing.css22
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/iepngfix.htc42
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/notes.css122
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/opera.css7
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/outline.css15
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/pretty.css82
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/print.css24
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/s5-core.css9
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/slides.css3
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/slides.js764
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/s5-notes.html64
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/admonitions.rng174
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/annotations.rng97
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/bibliography.rng431
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/callouts.rng503
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/calstbl.rng918
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/core.rng46
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/docbook.rng34
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/docbook1.rng63
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/ebnf.rng267
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/error.rng136
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/glossary.rng513
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/gui.rng292
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/hier.rng730
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/htmltbl.rng678
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/index.rng773
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/keyboard.rng320
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/markup.rng304
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/math.rng208
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/mathml.rng122
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/msgset.rng427
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/os.rng513
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/pool.rng6084
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/product.rng250
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/programming.rng1116
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/qandaset.rng245
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/refentry.rng488
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/refsect1.rng192
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/sect1.rng360
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/slides.rnc206
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/slides.rng362
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/svg.rng112
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/tasks.rng170
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/technical.rng220
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/toc.rng161
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/topic.rng106
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/xlink.rng182
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/admonitions.xsd134
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/annotations.xsd65
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/bibliography.xsd289
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/callouts.xsd406
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/calstbl.xsd1425
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/core.xsd36
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/db.xsd37
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/docbook.xsd37
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/docbook1.xsd37
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/ebnf.xsd183
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/error.xsd97
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/glossary.xsd319
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/gui.xsd218
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/hier.xsd606
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/htmltbl.xsd536
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/index.xsd537
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/keyboard.xsd350
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/markup.xsd284
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/math.xsd156
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/mathml.xsd82
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/msgset.xsd309
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/os.xsd369
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/pool.xsd4834
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/product.xsd255
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/programming.xsd749
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/qandaset.xsd188
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/refentry.xsd361
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/refsect1.xsd142
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/sect1.xsd252
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/slides.xsd362
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/svg.xsd82
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/tasks.xsd132
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/technical.xsd250
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/toc.xsd116
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/topic.xsd70
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/xlink.xsd67
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/xlink1.xsd103
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/xml.xsd35
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/.htaccess28
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/Overview.html911
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/Overview.xhtml911
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/blank.html30
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-fold-dim.gifbin0 -> 161 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-fold-dim.pngbin0 -> 2905 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-fold.gifbin0 -> 163 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-fold.pngbin0 -> 2901 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-nofold-dim.gifbin0 -> 142 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-nofold-dim.pngbin0 -> 2892 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-nofold.gifbin0 -> 157 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-nofold.pngbin0 -> 2888 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-unfold-dim.gifbin0 -> 166 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-unfold-dim.pngbin0 -> 2913 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-unfold.gifbin0 -> 163 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-unfold.pngbin0 -> 2909 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet.pngbin0 -> 167 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/example.pngbin0 -> 6652 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/example.svg223
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/face1.gifbin0 -> 5279 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/face2.gifbin0 -> 2378 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/face3.gifbin0 -> 800 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/face4.gifbin0 -> 846 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/fold-bright.gifbin0 -> 145 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/fold-dim.bmpbin0 -> 306 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/fold-dim.gifbin0 -> 56 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/fold.bmpbin0 -> 306 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/fold.gifbin0 -> 56 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/icon-blue.pngbin0 -> 204 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/keys2.jpgbin0 -> 42807 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/nofold-dim.bmpbin0 -> 306 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/nofold-dim.gifbin0 -> 48 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/nofold.bmpbin0 -> 306 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/unfold-bright.gifbin0 -> 170 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/unfold-dim.bmpbin0 -> 306 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/unfold-dim.gifbin0 -> 59 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/unfold.bmpbin0 -> 306 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/unfold.gifbin0 -> 59 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/w3c-logo-blue.gifbin0 -> 1791 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/w3c-logo-blue.svg14
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/w3c-logo-slanted.jpgbin0 -> 26539 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/w3c-logo-white.gifbin0 -> 793 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/w3c-logo-white.svg14
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/.htaccess28
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html80
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.ca52
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.de96
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.en81
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.es52
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.fr118
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.hu98
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.nl82
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.pl76
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.pt-br95
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.pt_br95
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.sv75
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.pt-br.html95
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/scripts/.htaccess28
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/scripts/slidy.js2974
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/scripts/slidy.js.gzbin0 -> 12874 bytes
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/styles/.htaccess28
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/styles/slidy.css405
-rwxr-xr-xstylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/styles/w3c-blue.css497
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/tools/dbs3-upgrade.xsl180
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/xhtml/param.xml824
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/xhtml/param.xsl71
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/xhtml/plain-titlepage.xml26
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/xhtml/plain-titlepage.xsl140
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/xhtml/plain.xsl535
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/xhtml/s5.xsl95
-rw-r--r--stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/xhtml/slidy.xsl85
247 files changed, 46925 insertions, 0 deletions
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/README b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/README
new file mode 100644
index 000000000..da4a932cb
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/README
@@ -0,0 +1,11 @@
+$Id: README 9639 2012-10-22 18:41:00Z stefan $
+
+README for the DocBook Slides distribution
+
+For a more detailed manual on Slides, please see the doc
+directory.
+
+For information about open DocBook Slides bugs and
+pending feature requests, see the following:
+
+ http://sourceforge.net/search/?group_artifact_id=373747&type_of_search=artifact&group_id=21935&words=slides
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/RELEASE-NOTES.xml b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/RELEASE-NOTES.xml
new file mode 100644
index 000000000..5d7b02ee1
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/RELEASE-NOTES.xml
@@ -0,0 +1,135 @@
+<?xml version='1.0' encoding="utf-8"?>
+<!DOCTYPE article SYSTEM "http://docbook.org/xml/4.4/docbookx.dtd">
+<article>
+ <articleinfo>
+ <title>DocBook Slides Release Notes</title>
+ <pubdate><?dbtimestamp format="Y-m-d"?></pubdate>
+ <releaseinfo role="cvs">$Id: RELEASE-NOTES.xml 9639 2012-10-22 18:41:00Z stefan $</releaseinfo>
+ <corpauthor>DocBook Project Development Team</corpauthor>
+ </articleinfo>
+ <para>These are the release notes for the DocBook Slides
+ distribution. This file provides a high-level overview of features
+ and API changes in each release.</para>
+
+ <para>Bug fixes are (mostly) not documented here. For a complete
+ list of changes, including descriptions of bug fixes, see the <ulink
+ url="NEWS"/> file, which is auto-generated from the commit
+ descriptions for changes in the project CVS repository.</para>
+
+ <section>
+ <title>Release 3.4.0</title>
+ <para>This is a feature release that includes some significant
+ schema changes as well as fixes for a few bugs. The feature
+ changes include newly added support for generating presentations
+ in HTML Help format. There are also experimental versions of
+ stylesheets for generating presentations in Keynote and SVG
+ formats. It also includes a new (and still experimental)
+ <filename><ulink url="install.sh" >install.sh</ulink></filename>
+ script to facilitate XML catalog and locating-rules setup.</para>
+ <section id="V340_schema">
+ <title>Schemas</title>
+ <itemizedlist>
+ <listitem>
+ <para>Slides (non-full) is now based on <ulink
+ url="http://docbook.org/xml/simple/1.1/index.html" >Simplified
+ DocBook 1.1</ulink> and Slides "full" is now based on <ulink
+ url="http://docbook.org/xml/4.4/index.html" >DocBook
+ 4.4</ulink>. The main benefit this provides is the ability to
+ use HTML tables in your Slides XML source (instead of just CALS
+ tables).</para>
+ </listitem>
+ <listitem>
+ <para>RELAX NG schemas in RNC (compact-syntax) form as well as
+ in RNG (XML syntax) form are now included in the
+ distribution. You can use those to do context-sensitive
+ Slides editing in a RELAX NG-aware editor such as Emacs/nXML,
+ oXygen XML Editor, XMLBuddy, or Exchanger XML Editor. (Note
+ that the RELAX NG schemas are currently generated from the
+ DTDs).</para>
+ </listitem>
+ <listitem>
+ <para>A <filename><ulink url="locatingrules.xml"
+ >locatingrules.xml</ulink> </filename> file has been added
+ to the distribution. The
+ <filename><ulink url="locatingrules.xml"
+ >locatingrules.xml</ulink></filename> file tells a
+ "locating rules"-aware editor such as Emacs/nXML to
+ automatically associate the included RELAX NG Slides schema
+ with any document whose root element is
+ <sgmltag>slides</sgmltag>, <sgmltag>foil</sgmltag>,
+ <sgmltag>foilgroup</sgmltag>, or
+ <sgmltag>speakernotes</sgmltag>.</para>
+ </listitem>
+ </itemizedlist>
+ </section>
+ <section id="V340_fo">
+ <title>FO</title>
+ <itemizedlist>
+ <listitem>
+ <simpara>Added attribute-set to easily control appearance of
+ footer</simpara>
+ </listitem>
+ <listitem>
+ <simpara>Added support for
+ <sgmltag>foil</sgmltag>/<sgmltag>subtitle</sgmltag></simpara>
+ </listitem>
+ <listitem>
+ <simpara>Bookmarks in XEP can now contain i18n
+ characters</simpara>
+ </listitem>
+ <listitem>
+ <simpara>Changed attribute namespaces accordingly to new
+ schema used for titlepage templates</simpara>
+ </listitem>
+ </itemizedlist>
+ </section>
+ <section id="V340_html">
+ <title>HTML</title>
+ <itemizedlist>
+ <listitem>
+ <simpara><sgmltag>xref</sgmltag> to <sgmltag>foil</sgmltag>
+ and <sgmltag>foilgroup</sgmltag> is now supported. (You must
+ have the DocBook XSL stylesheets v1.67.0 or greater to use
+ xrefs.)</simpara>
+ </listitem>
+ <listitem>
+ <simpara>Added new parameter
+ <parameter>show.foil.number</parameter> which can enable
+ numbering of slides. Currently works only with
+ <filename>frames.xsl</filename> and
+ <literal>multiframe=0</literal></simpara>
+ </listitem>
+ <listitem>
+ <simpara>Added support for <literal><ulink
+ url="http://www.sagehill.net/docbookxsl/Chunking.html#dbhtmlDirPI"
+ >dbhtml dir</ulink></literal> processing instruction</simpara>
+ </listitem>
+ </itemizedlist>
+ </section>
+ <section id="V340_htmlhelp">
+ <title>HTML Help</title>
+ <itemizedlist>
+ <listitem>
+ <simpara>Slides can now be generated in HTML Help format</simpara>
+ </listitem>
+ </itemizedlist>
+ </section>
+ <section>
+ <title id="V340_install">Install</title>
+ <itemizedlist>
+ <listitem>
+ <para>A new (and still experimental) <filename><ulink
+ url="install.sh" >install.sh</ulink></filename> file has
+ been added to the Slides distribution. For information on
+ using it, see the <filename><ulink url="INSTALL"
+ >INSTALL</ulink></filename> file.</para>
+ </listitem>
+ </itemizedlist>
+ </section>
+ </section>
+ <section id="old">
+ <title>Older releases</title>
+ <para>Sorry, there are no release notes for releases prior to the
+ 3.4.0 release.</para>
+ </section>
+</article>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/common/common.xsl b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/common/common.xsl
new file mode 100644
index 000000000..2d4f9e9f4
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/common/common.xsl
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="ASCII"?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:db="http://docbook.org/ns/docbook"
+ xmlns:dbs="http://docbook.org/ns/docbook-slides"
+ exclude-result-prefixes="dbs db"
+ version="1.0">
+
+<xsl:template name="get.title">
+ <xsl:param name="ctx" select="."/>
+
+ <xsl:value-of select="($ctx/db:info/db:titleabbrev|$ctx/db:titleabbrev|$ctx/db:info/db:title|$ctx/db:title)[1]"/>
+</xsl:template>
+
+<xsl:template name="get.subtitle">
+ <xsl:param name="ctx" select="."/>
+
+ <xsl:value-of select="($ctx/db:info/db:subtitle|$ctx/db:subtitle)[1]"/>
+</xsl:template>
+</xsl:stylesheet>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/doc/slides.xml b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/doc/slides.xml
new file mode 100644
index 000000000..5e357f468
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/doc/slides.xml
@@ -0,0 +1,1371 @@
+<?xml version='1.0'?>
+
+<dbs:slides xmlns="http://docbook.org/ns/docbook"
+ xmlns:dbs="http://docbook.org/ns/docbook-slides"
+ xmlns:xlink="http://www.w3.org/1999/xlink">
+ <info>
+ <title>The DocBook Slides Extension</title>
+ <titleabbrev>DocBook Slides</titleabbrev>
+ <author>
+ <personname>
+ <firstname>Gábor</firstname>
+ <surname>Kövesdán</surname>
+ </personname>
+ <affiliation>
+ <orgname>The DocBook Project</orgname>
+ </affiliation>
+ <email>gabor@kovesdan.org</email>
+ </author>
+ <pubdate>3 Aug 2012</pubdate>
+ <releaseinfo role="version">5.0</releaseinfo>
+ <copyright>
+ <year>2012</year>
+ <holder>Gábor Kövesdán</holder>
+ </copyright>
+ </info>
+
+ <dbs:foil dbs:style="introduction">
+ <info>
+ <title>Introduction</title>
+ </info>
+
+ <para>DocBook Slides ...</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>is a multi-namespace schema extension
+ to the original <link xlink:href="http://www.docbook.org/">DocBook</link>
+ <xref linkend="docbook5"/> schema.</para>
+ </listitem>
+
+ <listitem>
+ <para>was originally created by
+ <personname><firstname>Norman</firstname><surname>Walsh</surname></personname>.</para>
+ </listitem>
+
+ <listitem>
+ <para>and was later redesigned for DocBook 5.0 by
+ <personname><firstname>Gábor</firstname><surname>Kövesdán</surname></personname>.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>This document serves for two purposes:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>To explain DocBook Slides.</para>
+ </listitem>
+
+ <listitem>
+ <para>To serve itself as a test document to demonstrate how
+ slides are marked up and how different output formats are
+ rendered.</para>
+ </listitem>
+ </itemizedlist>
+ </dbs:foil>
+
+ <dbs:foil>
+ <info>
+ <title>Basic Concepts</title>
+ </info>
+
+ <itemizedlist>
+ <listitem>
+ <para>DocBook is an XML <xref linkend="w3c-xml"/> grammar to mark up
+ papers and books and then process them with XML-related standards.
+ It concentrates on structure and semantics, not layout.</para>
+ </listitem>
+
+ <listitem>
+ <para>DocBook Slides is an extension for DocBook to create
+ presentation slides.</para>
+ </listitem>
+
+ <listitem>
+ <para>By nature, layout is part of a presentation but DocBook Slides
+ still focuses on structure and semantics.</para>
+ </listitem>
+
+ <listitem>
+ <para>DocBook Slides uses almost the entire DocBook grammar and
+ provides only a minimal set of layout-controlling elements.
+ This keeps is simple and easy to use.</para>
+ </listitem>
+
+ <listitem>
+ <para>And still, you can copy-paste, use XInclude, etc.</para>
+ </listitem>
+ </itemizedlist>
+ </dbs:foil>
+
+ <dbs:foilgroup>
+ <info>
+ <title>Features of DocBook Slides</title>
+ </info>
+
+ <para>Let's see some features of DocBook
+ Slides.</para>
+
+ <dbs:foil>
+ <info>
+ <title>Using Namespaces</title>
+ </info>
+
+ <para>DocBook Slides uses a separate namespace for its elements.
+ This has various advantages:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>It isolates the extension elements and the original
+ DocBook schema does not have to know anything about them.</para>
+ </listitem>
+
+ <listitem>
+ <para>It also avoids name clashes and XML processors can easily
+ distinguish between the two set of elements.</para>
+ </listitem>
+
+ <listitem>
+ <para>This modular concept makes it easy to extend the official
+ stylesheets with specific processing.</para></listitem>
+ </itemizedlist>
+ </dbs:foil>
+
+ <dbs:foil>
+ <info>
+ <title>Easy to Learn</title>
+ </info>
+
+ <para>If you already know and use DocBook, DocBook Slides is for you:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>You can use the usual inline and block elements when marking up
+ your text, you only have to learn a few new markup elements.</para>
+ </listitem>
+
+ <listitem>
+ <para>Also, you may include DocBook fragments with XInclude.
+ Imagine an important table that is part of your scientific
+ paper and you also want to show it on a conference.
+ You do not have to copy-paste it but you can just have it in
+ one single file that you later include in both documents.</para>
+ </listitem>
+ </itemizedlist>
+ </dbs:foil>
+
+ <dbs:foil>
+ <info>
+ <title>Development Status</title>
+ </info>
+
+ <itemizedlist>
+ <listitem>
+ <para>DocBook Slides - just like DocBook - is an open source product
+ and it is under constant development and improvement.</para>
+ </listitem>
+
+ <listitem>
+ <para>The curently supported output formats are
+ plain XHTML, S5 XHTML <xref linkend="s5"/>,
+ W3C HTML Slidy <xref linkend="slidy"/> and XSL FO <xref linkend="w3c-xslfo"/>.
+ In the future, support for other important
+ output formats (e.g. HTML5, EPUB) may be added.</para>
+ </listitem>
+ </itemizedlist>
+ </dbs:foil>
+ </dbs:foilgroup>
+
+ <dbs:foilgroup xml:id="introductionary-examples">
+ <info>
+ <title>Tutorial Examples</title>
+ </info>
+
+ <para>Let's see some basic examples.</para>
+
+ <dbs:foil>
+ <info>
+ <title>A Minimal Markup 1</title>
+ </info>
+
+ <informalexample>
+<programlisting>&lt;?xml version='1.0'?&gt;
+&lt;dbs:slides xmlns="http://docbook.org/ns/docbook"
+ xmlns:dbs="http://docbook.org/ns/docbook-slides"&gt; <co xml:id="co.slides"/>
+ &lt;title&gt;Presentation Title&lt;/title&gt; <co xml:id="co.slides.title"/>
+</programlisting>
+
+ <calloutlist>
+ <callout arearefs="co.slides">
+ <para>The root element with proper namespace declarations.</para>
+ </callout>
+
+ <callout arearefs="co.slides.title">
+ <para>It contains the title but can have more.</para>
+ </callout>
+ </calloutlist>
+ </informalexample>
+ </dbs:foil>
+
+ <dbs:foil>
+ <info>
+ <title>A Minimal Markup 2</title>
+ </info>
+
+ <informalexample>
+<programlisting>
+ &lt;dbs:foil&gt; <co xml:id="co.foil"/>
+ &lt;title&gt;Foil Title&lt;/title&gt;
+ &lt;para&gt;Foil content&lt;/para&gt; <co xml:id="co.foil.para"/>
+ &lt;/dbs:foil&gt;
+&lt;/dbs:slides&gt;</programlisting>
+ <calloutlist>
+ <callout arearefs="co.foil">
+ <para>At least one foil obligatory.</para>
+ </callout>
+
+ <callout arearefs="co.foil.para">
+ <para>A foil can contain any block element from DocBook.</para>
+ </callout>
+ </calloutlist>
+ </informalexample>
+ </dbs:foil>
+
+ <dbs:foil>
+ <info>
+ <title>The Whole Example</title>
+ </info>
+
+ <para>Let's see the whole markup together:</para>
+
+ <informalexample>
+<programlisting>&lt;?xml version='1.0'?&gt;
+&lt;dbs:slides xmlns="http://docbook.org/ns/docbook"
+ xmlns:dbs="http://docbook.org/ns/docbook-slides"&gt;
+ &lt;title&gt;Presentation Title&lt;/title&gt;
+ &lt;dbs:foil&gt;
+ &lt;title&gt;Foil Title&lt;/title&gt;
+ &lt;para&gt;Foil content&lt;/para&gt;
+ &lt;/dbs:foil&gt;
+&lt;/dbs:slides&gt;</programlisting>
+ </informalexample>
+ </dbs:foil>
+
+ <dbs:foil>
+ <info>
+ <title>Grouping Foils</title>
+ </info>
+
+ <para>We can form groups of logical sets of foils and also add some
+ introductionary text for them. In the rendered forms, these groups
+ can have a table of contents of the included slides. You can also
+ see such groups in this presentation.</para>
+
+ <informalexample>
+<programlisting><![CDATA[<dbs:foilgroup>
+ <title>Group 1</title>
+
+ <para>This is an introduction.</para>
+
+ <dbs:foil>
+ ...
+ </dbs:foil>
+</dbs:foilgroup>]]></programlisting>
+ </informalexample>
+ </dbs:foil>
+ </dbs:foilgroup>
+
+ <dbs:foilgroup>
+ <info>
+ <title>Markup Examples</title>
+ </info>
+
+ <para>Let's see how to create the particular foils with
+ DocBook Slides.</para>
+
+ <dbs:foil>
+ <info>
+ <title>Info Content</title>
+ </info>
+
+ <para>You can wrap the title into the <tag>&lt;info&gt;</tag> element that
+ comes from the DocBook schema. It also means you can
+ add the usual authoring information here:</para>
+
+ <informalexample>
+<programlisting><![CDATA[
+ <info>
+ <title>Group 1</title>
+
+ <author>
+ <personname>
+ <firstname>John</firstname>
+ <surname>Doe</surname>
+ </personname>
+ <affiliation>FooBar Inc.</affiliation>
+ </author>
+
+ <copyright><year>2012</year></copyright>
+ </info>]]></programlisting>
+ </informalexample>
+ </dbs:foil>
+
+ <dbs:foil>
+ <info>
+ <title>Block Content</title>
+ </info>
+
+ <itemizedlist>
+ <listitem>
+ <para>You have access to all of the block content elements in DocBook,
+ e.g. you can create a simple paragraph with
+ <code>&lt;para&gt;</code>, just like in DocBook.</para>
+ </listitem>
+
+ <listitem>
+ <para>Or you can use lists, like <code>&lt;itemizedlist&gt;</code>.</para>
+ </listitem>
+ </itemizedlist>
+
+ <programlisting>Or &lt;programlisting&gt; with some code or markup inside.</programlisting>
+ </dbs:foil>
+
+ <dbs:foil>
+ <info>
+ <title>Inline Content</title>
+ </info>
+
+ <itemizedlist>
+ <listitem>
+ <para>Just like block elements, you can also use inline DocBook
+ elements to mark up your content on your foils.</para>
+ </listitem>
+
+ <listitem>
+ <para>For example, you can <emphasis>emphasize</emphasis>
+ something with <tag>&lt;emphasis&gt;</tag> or you
+ can mark <literal>literal</literal> text as such with
+ <tag>&lt;literal&gt;</tag>.</para>
+ </listitem>
+
+ <listitem>
+ <para>By the way, the inline markup citation above is marked up
+ with <tag>&lt;tag&gt;</tag>.</para>
+ </listitem>
+
+ <listitem>
+ <para>Apart from these, feel free to use the rest of
+ the markup elements.</para>
+ </listitem>
+ </itemizedlist>
+ </dbs:foil>
+
+ <dbs:foil>
+ <info>
+ <title>FAQ Listings</title>
+ </info>
+
+ <qandaset>
+ <qandaentry>
+ <question>
+ <para>What else can I use to make my slides useful
+ and practical?</para>
+ </question>
+
+ <answer>
+ <para>You can include some questions and answers with
+ <tag>&lt;qandaset&gt;</tag> and related elements to answer some
+ frequently asked questions.</para>
+ </answer>
+ </qandaentry>
+ </qandaset>
+ </dbs:foil>
+
+ <dbs:foil>
+ <info>
+ <title>References</title>
+ </info>
+
+ <itemizedlist>
+ <listitem>
+ <para>Sometimes you need to add some remarks and some
+ references to your slide content.</para>
+ </listitem>
+
+ <listitem>
+ <para>For small remarks, you can use the
+ <code>&lt;footnote&gt;</code> element to insert a footnote
+ that will appear on the same foil where it is inserted.</para>
+ </listitem>
+
+ <listitem>
+ <para>Or for references to external content
+ - books and websites - you can include one or more
+ bibliography foils in the end.</para>
+ </listitem>
+
+ <listitem>
+ <para>On these foils, instead of the usual bulleted points, use the
+ <code>&lt;bibliography&gt;</code> element and you
+ will get a nicely formatted reference list.</para>
+ </listitem>
+
+ <listitem>
+ <para>Use <code>&lt;xref&gt;</code> in the content
+ to generate a link to the reference entry.</para>
+ </listitem>
+ </itemizedlist>
+ </dbs:foil>
+
+ <dbs:foil dbs:incremental="1">
+ <info>
+ <title>Incremental Slides</title>
+ </info>
+
+ <itemizedlist>
+ <listitem>
+ <para>If you set the <code>dbs:incremental</code> attribute ...</para>
+ </listitem>
+
+ <listitem>
+ <para>... to <literal>1</literal> on a foil, ...</para>
+ </listitem>
+
+ <listitem>
+ <para>... then you will get incremental lists, ...</para>
+ </listitem>
+
+ <listitem>
+ <para>... like this if they are supported in the output format. (XHTML-based)</para>
+ </listitem>
+ </itemizedlist>
+ </dbs:foil>
+
+ <dbs:foil dbs:collapsible="1">
+ <info>
+ <title>Collapsible Lists</title>
+ </info>
+
+ <para>You can see a collapsible list below (depending on the output
+ format). Click on the node to expand it.</para>
+
+ <orderedlist>
+ <listitem>
+ <orderedlist>
+ <listitem>
+ <para>If you set the <code>dbs:collapsible</code> attribute ...</para>
+ </listitem>
+
+ <listitem>
+ <para>... to <literal>1</literal> on a foil, ...</para>
+ </listitem>
+
+ <listitem>
+ <para>... then you will get collapsible lists, ...</para>
+ </listitem>
+
+ <listitem>
+ <para>... like this if they are supported in the output format. (Slidy)</para>
+ </listitem>
+ </orderedlist>
+ </listitem>
+ </orderedlist>
+ </dbs:foil>
+
+ <dbs:foil>
+ <info>
+ <title>Building Blocks</title>
+ </info>
+
+ <itemizedlist>
+ <listitem>
+ <para>Slides are layout-oriented documents; formatting
+ is a crucial part of them.</para>
+ </listitem>
+
+ <listitem>
+ <para>DocBook aims to separate structure and layout but for
+ Slides sometimes it is not entirely possible, yet the
+ layout-related markup is tried to be kept minimal.</para>
+ </listitem>
+
+ <listitem>
+ <para>You can use the <tag>&lt;dbs:block&gt;</tag> element
+ that will be transformed to a container type in the
+ generated document (e.g. <tag>&lt;div&gt;</tag> in HTML).</para>
+ </listitem>
+
+ <listitem>
+ <para>You can also apply the <literal>dbs:style</literal> attribute
+ to blocks and you can even embed them into each other.</para>
+ </listitem>
+
+ <listitem>
+ <para>Use CSS or extend the XSLT stylesheets to control
+ renering of your custom blocks.</para>
+ </listitem>
+ </itemizedlist>
+ </dbs:foil>
+
+ <dbs:foil>
+ <info>
+ <title>Block Example</title>
+ </info>
+
+ <dbs:block dbs:style="left">
+ <para>This is the left block.</para>
+ </dbs:block>
+
+ <dbs:block dbs:style="right" dbs:incremental="1">
+ <para>This is the right block. And it is marked incremental.</para>
+ </dbs:block>
+ </dbs:foil>
+ </dbs:foilgroup>
+
+ <dbs:foilgroup>
+ <title>Images and Formulas</title>
+
+ <dbs:foil>
+ <info>
+ <title>Incremental Images</title>
+ </info>
+
+ <para>This is only supported in XHTML-based output.</para>
+
+ <dbs:block dbs:incremental="1" dbs:style="face_container">
+ <mediaobject>
+ <imageobject>
+ <imagedata dbs:style="face_first" fileref="images/face1.gif"/>
+ </imageobject>
+ </mediaobject>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata dbs:style="face_other" fileref="images/face2.gif"/>
+ </imageobject>
+ </mediaobject>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata dbs:style="face_other" fileref="images/face3.gif"/>
+ </imageobject>
+ </mediaobject>
+
+ <mediaobject>
+ <imageobject>
+ <imagedata dbs:style="face_other" fileref="images/face4.gif"/>
+ </imageobject>
+ </mediaobject>
+ </dbs:block>
+ </dbs:foil>
+
+ <dbs:foil>
+ <info>
+ <title>Embedded SVG</title>
+ </info>
+
+ <para>You can embed SVG
+ <footnote><para>See <uri xlink:href="http://www.w3.org/TR/SVG11/">http://www.w3.org/TR/SVG11/</uri>.</para></footnote>
+ code, like this:</para>
+
+ <programlisting><![CDATA[<svg xml:id="circle"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1">
+ <circle cx="100" cy="50" r="40" stroke="black"
+ stroke-width="2" fill="yellow" />
+</svg>]]></programlisting>
+
+ <svg xml:id="circle" xmlns="http://www.w3.org/2000/svg" version="1.1">
+ <circle cx="100" cy="50" r="40" stroke="black" stroke-width="2" fill="yellow" />
+ </svg>
+ </dbs:foil>
+
+ <dbs:foil>
+ <info>
+ <title>Embedded MathML</title>
+ </info>
+
+ <para>You can embed MathML
+ <footnote><para>See <uri xlink:href="http://www.w3.org/TR/MathML3/">http://www.w3.org/TR/MathML3/</uri>.</para></footnote>
+ code, like this:</para>
+
+ <programlisting><![CDATA[<math xml:id="identity-matrix-2dim"
+ xmlns="http://www.w3.org/1998/Math/MathML">
+ <matrix>
+ <matrixrow><cn>1</cn><cn>0</cn></matrixrow>
+ <matrixrow><cn>0</cn><cn>1</cn></matrixrow>
+ </matrix>
+</math>]]></programlisting>
+
+ <math xml:id="identity-matrix-2dim" xmlns="http://www.w3.org/1998/Math/MathML">
+ <matrix>
+ <matrixrow><cn>1</cn><cn>0</cn></matrixrow>
+ <matrixrow><cn>0</cn><cn>1</cn></matrixrow>
+ </matrix>
+ </math>
+ </dbs:foil>
+ </dbs:foilgroup>
+
+ <dbs:foilgroup>
+ <info>
+ <title>Presentation</title>
+ </info>
+
+ <dbs:foil>
+ <info>
+ <title>Available Formats</title>
+ </info>
+
+ <informaltable>
+ <tgroup cols="2">
+ <thead>
+ <row><entry>Stylesheet</entry><entry>Description.</entry></row>
+ </thead>
+
+ <tbody>
+ <row>
+ <entry>xhtml/plain.xsl</entry>
+ <entry>Single plain XHTML file.</entry>
+ </row>
+
+ <row>
+ <entry>xhtml/slidy.xsl</entry>
+ <entry>Single XHTL file in W3C HTML Slidy format.</entry>
+ </row>
+
+ <row>
+ <entry>xhtml/s5.xsl</entry>
+ <entry>Single XHTML file in S5 format.</entry>
+ </row>
+
+ <row>
+ <entry>fo/plain.xsl</entry>
+ <entry>XSL Formatting Objects for printed output.</entry>
+ </row>
+
+ </tbody>
+ </tgroup>
+ </informaltable>
+ </dbs:foil>
+
+ <dbs:foil>
+ <info>
+ <title>Plain XHTML</title>
+ </info>
+
+ <itemizedlist>
+ <listitem>
+ <para>It is a simple plain <acronym>XHTML</acronym> output with
+ some classes given on the elements. These let you create your
+ own CSS stylesheet for the rendering.</para>
+ </listitem>
+
+ <listitem>
+ <para>It is actually quite similar to the
+ <acronym>S<superscript>5</superscript></acronym> format with
+ <acronym>S<superscript>5</superscript></acronym>-specific
+ parts removed. The objective with this format was simplicity
+ and <acronym>S<superscript>5</superscript></acronym>
+ already achieves that quite well but in case you do not want
+ to use that framework, you can create your own one.</para>
+ </listitem>
+
+ <listitem>
+ <para>The stylesheet to choose for this format is
+ <filename>xhtml/plain.xsl</filename>.</para>
+ </listitem>
+ </itemizedlist>
+ </dbs:foil>
+
+ <dbs:foil>
+ <info>
+ <title>W3C HTML Slidy</title>
+ </info>
+
+ <itemizedlist>
+ <listitem>
+ <para>W3C <uri xlink:href="http://www.w3.org/Talks/Tools/Slidy2/">HTML Slidy</uri>
+ is an XHTML framework for presentations.</para>
+ </listitem>
+
+ <listitem>
+ <para>It seems mature and well maintained.</para>
+ </listitem>
+
+ <listitem>
+ <para>HTML Slidy handles well long content. Its formatting
+ allows more text on a single foil and even if your text
+ overflows, you can scroll inside the single foil. It also
+ supports collapsible lists and a JavaScript clock so that you
+ do not run out of time.</para>
+ </listitem>
+
+ <listitem>
+ <para>For HTML Slidy, use
+ <filename>xhtml/slidy.xsl</filename>.</para>
+ </listitem>
+ </itemizedlist>
+ </dbs:foil>
+
+ <dbs:foil>
+ <info>
+ <title>S5 Format</title>
+ </info>
+
+ <itemizedlist>
+ <listitem>
+ <para><acronym xlink:href="http://meyerweb.com/eric/tools/s5/">S<superscript>5</superscript></acronym>
+ stands for <emphasis>Simple Standards-Based Slide Show System</emphasis>.</para>
+ </listitem>
+
+ <listitem>
+ <para>It is yet another XHTML-based framework for slideshows, like
+ HTML Slidy.</para>
+ </listitem>
+
+ <listitem>
+ <para>Its JavaScript code behaves somewhat differently and it is less
+ mature.</para>
+ </listitem>
+
+ <listitem>
+ <para>It supports incremental lists but in general, it is not so
+ feature-rich as HTML Slidy.</para>
+ </listitem>
+
+ <listitem>
+ <para>To create your <acronym>S<superscript>5</superscript></acronym>
+ presentation, pick the
+ <filename>xhtml/s5.xsl</filename> stylesheet.</para>
+ </listitem>
+ </itemizedlist>
+ </dbs:foil>
+
+ <dbs:foil>
+ <info>
+ <title>XSL FO Format</title>
+ </info>
+
+ <itemizedlist>
+ <listitem>
+ <para>XSL FO is an XML vocabulary to describe how formatted
+ output is presented.</para>
+ </listitem>
+
+ <listitem>
+ <para>It is used here as an intermediate format between DocBook Slides
+ and printable output.</para>
+ </listitem>
+
+ <listitem>
+ <para>First, generate the XSL FO document.</para>
+ </listitem>
+
+ <listitem>
+ <para>Then use your XSL FO processor to render your printable
+ document in PDF, PostScript, etc. depending on the capabilities of
+ the software you use.</para>
+ </listitem>
+
+ <listitem>
+ <para>If you need a free processor, take a look at
+ Apache FOP <xref linkend="fop"/>.</para>
+ </listitem>
+ </itemizedlist>
+ </dbs:foil>
+
+ <dbs:foil>
+ <info>
+ <title>XSLT Parameters</title>
+ </info>
+
+ <itemizedlist>
+ <listitem>
+ <para>The provided stylesheets offer XSLT <xref linkend="w3c-xslt"/> parameters
+ to adjust some tunables of the output generation.</para>
+ </listitem>
+
+ <listitem>
+ <para>The parameters are documented in the documentation
+ that accompanies the DocBook XSL distribution.</para>
+ </listitem>
+
+ <listitem>
+ <para>All the DocBook Slides stylesheets are extensions of the
+ original DocBook stylesheets so adjusting their parameters may also
+ affect your rendered slides.</para>
+ </listitem>
+ </itemizedlist>
+ </dbs:foil>
+
+ <dbs:foil>
+ <info>
+ <title>Customizations</title>
+ </info>
+
+ <para>Sometimes parameters are not enough and you need to modify
+ the templates to achieve your goal. Customizations are easy
+ to create with XSLT.</para>
+
+ <orderedlist>
+ <listitem>
+ <para>Just pick up a stylesheet that you want to customize.</para>
+ </listitem>
+
+ <listitem>
+ <para>Create a new, empty stylesheet that imports the original
+ one.</para>
+ </listitem>
+
+ <listitem>
+ <para>Override the original templates that do not work
+ in the way you desire.</para>
+ </listitem>
+
+ <listitem>
+ <para>Of course, this requires some knowledge in XSLT and
+ you will need to read the code to see what to override.</para>
+ </listitem>
+ </orderedlist>
+ </dbs:foil>
+ </dbs:foilgroup>
+
+ <dbs:foilgroup>
+ <info>
+ <title>Authoring with DocBook Slides 5.0</title>
+ </info>
+
+ <dbs:foil>
+ <info>
+ <title>Choosing a Validator</title>
+ </info>
+
+ <itemizedlist>
+ <listitem>
+ <para>Once you have some slides marked up in DocBook Slides,
+ you probably want to make sure your markup is valid. Otherwise,
+ it is not guaranteed that the output will be generated properly.
+ For this, you need a validator.</para>
+ </listitem>
+
+ <listitem>
+ <para>The DocBook Slides schema is described in the RELAX-NG grammar language.</para>
+ </listitem>
+
+ <listitem>
+ <para>The recommended RELAX-NG validator is
+ <application>jing</application> <xref linkend="jing"/>.</para>
+ </listitem>
+
+ <listitem>
+ <para>Alternatively, you can use <application>Emacs/nXML</application>
+ with the supplied <filename>locatingrules.xml</filename> file.</para>
+ </listitem>
+ </itemizedlist>
+
+ <warning>
+ <para>The RELAX-NG validation in the xmllint program from libxml2 is known to have
+ bugs and does not work correctly with DocBook Slides.</para>
+ </warning>
+ </dbs:foil>
+
+ <dbs:foil>
+ <info>
+ <title>Validating Slides</title>
+ </info>
+
+ <itemizedlist>
+ <listitem>
+ <para>With <command>jing</command>, run:
+ <userinput>jing ~/docbook-slides/slides.rng foo.xml</userinput>.</para>
+ </listitem>
+
+ <listitem>
+ <para>For <application>Emacs/nXML</application>, you can put the following into
+ your <filename>emacs.conf</filename>:</para>
+
+ <programlisting>
+ (setq rng-schema-locating-files
+ (append
+ '("~/docbook-slides/locatingrules.xml")))</programlisting>
+
+ <para>Or you can do <userinput>M-x customize-variable rng-schema-locating-files</userinput>
+ and then add the absolute path to the file.</para>
+ </listitem>
+ </itemizedlist>
+ </dbs:foil>
+
+ <dbs:foil>
+ <info>
+ <title>Transforming DocBook Slides Documents</title>
+ </info>
+
+ <itemizedlist>
+ <listitem>
+ <para>You need an XSLT processor to transform the documents.
+ For example, you can use either <command>xsltproc</command> from
+ <application>libxslt</application> <xref linkend="libxslt"/>, <application>Xalan</application>
+ or <application>Saxon</application>.</para>
+ </listitem>
+
+ <listitem>
+ <para>It is recommended to use <command>xsltproc</command>, since
+ it is significantly faster than the other two and the DocBook Slides
+ stylesheets were also tested with it.</para>
+ </listitem>
+
+ <listitem>
+ <para>Pick the proper stylesheet for your chosen output format.
+ For example, it is <filename>xhtml/slidy.xsl</filename> for
+ HTML Slidy.</para>
+ </listitem>
+
+ <listitem>
+ <para>Type: <userinput>xsltproc xsl/slides/xhtml/slidy.xsl foo.xml &gt; foo.html</userinput></para>
+ </listitem>
+ </itemizedlist>
+ </dbs:foil>
+
+ <dbs:foil>
+ <info>
+ <title>Rendering Printable Output</title>
+ </info>
+
+ <itemizedlist>
+ <listitem>
+ <para>First create the XSL FO document with XSLT:
+ <userinput>xsltproc xsl/slides/fo/plain.xsl foo.xml &gt; foo.fo</userinput></para>
+ </listitem>
+
+ <listitem>
+ <para>Then use your XSL FO processor to render the final document.</para>
+ </listitem>
+
+ <listitem>
+ <para>For example, to render a PDF with Apache FOP, type:
+ <userinput>fop foo.fo foo.pdf</userinput></para>
+ </listitem>
+ </itemizedlist>
+ </dbs:foil>
+ </dbs:foilgroup>
+
+ <dbs:foilgroup>
+ <info>
+ <title>DocBook Slides Limitations</title>
+ </info>
+
+ <dbs:foil>
+ <info>
+ <title>Foil Content</title>
+ </info>
+
+ <para>Creating slides is quite different from creating
+ papers and books.</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Presentational slide are layout-oriented by nature as opposed to DocBook, which is
+ structure-oriented. The content of the foil must fit but there
+ is no easy way to detect this so this should be checked
+ and controlled manually.</para>
+ </listitem>
+
+ <listitem>
+ <para>Formatting of slide content is not necessarily consistent but part
+ of the design of each foil and illustration used in
+ the presentation, while an important principle of
+ DocBook is separating content and styling. To achieve
+ something very unique, you will probably need heavy
+ customization.</para>
+ </listitem>
+ </itemizedlist>
+ </dbs:foil>
+
+ <dbs:foil>
+ <info>
+ <title>Animations and Sound Effects</title>
+ </info>
+
+ <para>DocBook was invented for mostly printed or web
+ content, while slides are rarely presented in a
+ printed form.</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>Slides are usually shown on computer screen or
+ projector and may heavily use animated or audio content
+ to support the presentations.</para>
+ </listitem>
+
+ <listitem>
+ <para>Most of the possible output formats are usually
+ used in printed form or on the web. The first lacks
+ the possibility of animated and audio content and the
+ second one lacks good open standards for doing so.</para>
+ </listitem>
+
+ <listitem>
+ <para>Maybe a future HTML5 or OpenDocument support
+ can bring in some new features but for now, you cannot
+ really use animations and sound.</para>
+ </listitem>
+ </itemizedlist>
+ </dbs:foil>
+ </dbs:foilgroup>
+
+ <dbs:foilgroup>
+ <info>
+ <title>Frequently Asked Questions</title>
+ </info>
+
+ <dbs:foil>
+ <info>
+ <title>Compatibility</title>
+ </info>
+
+ <qandaset>
+ <qandaentry>
+ <question>
+ <para>Is DocBook Slides 5.0 stylesheets compatible with
+ older versions of DocBook Slides or vice versa?</para>
+ </question>
+
+ <answer>
+ <para>Not at all, since it is heavily redesigned. But
+ you can find an XSLT transformation in the
+ <filename class="directory">tools/</filename>
+ directory, which can convert your slides to the new
+ schema.</para>
+ </answer>
+ </qandaentry>
+ </qandaset>
+ </dbs:foil>
+
+ <dbs:foil>
+ <info>
+ <title>Contribution</title>
+ </info>
+
+ <qandaset>
+ <qandaentry>
+ <question>
+ <para>Can I contribute to the schema or to the stylesheets?</para>
+ </question>
+
+ <answer>
+ <para>Of course, any contribution that can be useful for
+ other users and fits the concept of DocBook Slides
+ is more than welcome.</para>
+ </answer>
+ </qandaentry>
+
+ <qandaentry>
+ <question>
+ <para>What to do with my contribution?</para>
+ </question>
+
+ <answer>
+ <para>Please first ask review on
+ the <link xlink:href="mailto:docbook-apps@lists.oasis-open.org">docbook-apps
+ mailing list</link> and users and other developers will tell you
+ what to improve and how to submit your work for inclusion.</para>
+ </answer>
+ </qandaentry>
+ </qandaset>
+ </dbs:foil>
+
+ <dbs:foil>
+ <info>
+ <title>Help</title>
+ </info>
+
+ <qandaset>
+ <qandaentry>
+ <question>
+ <para>How can I get help in using the schema and the
+ accompanying stylesheets?</para>
+ </question>
+
+ <answer>
+ <para>There is a
+ <link xlink:href="mailto:docbook-apps@lists.oasis-open.org">docbook-apps
+ mailing list</link> for general questions on DocBook and related
+ technologies. There are numerous users and developers subscribed to
+ this list, so probably you can get help there.</para>
+ </answer>
+ </qandaentry>
+ </qandaset>
+ </dbs:foil>
+ </dbs:foilgroup>
+
+ <dbs:foilgroup>
+ <info>
+ <title>Mini-Reference</title>
+ </info>
+
+ <para>Here you have the short and informal description of the DocBook
+ Slides elements. It is not meant to be a full and formalized
+ referenced but rather a cheatsheet to look at.</para>
+
+ <dbs:foil>
+ <info>
+ <title>dbs:slides</title>
+ </info>
+
+ <itemizedlist>
+ <listitem>
+ <para><emphasis>May contain:</emphasis> db:title, db:titleabbrev,
+ db:subtitle, db:info, dbs:foilgroup, dbs:foil</para>
+ </listitem>
+
+ <listitem>
+ <para><emphasis>Usage:</emphasis> It is the root element that encloses the authoring
+ info and the particular foils that may be grouped to foil
+ groups.</para>
+ </listitem>
+ </itemizedlist>
+ </dbs:foil>
+
+ <dbs:foil>
+ <info>
+ <title>dbs:foilgroup</title>
+ </info>
+
+ <itemizedlist>
+ <listitem>
+ <para><emphasis>May contain:</emphasis> db:title, db:titleabbev,
+ db:subtitle, db:info, [block content], dbs:foil, dbs:speakernotes,
+ dbs:handoutnotes</para>
+ </listitem>
+
+ <listitem>
+ <para><emphasis>Usage:</emphasis> It groups together various foils. It can have its own info
+ section and an optional introductionary text. Depending on your XSLT
+ parameters, it may generate a table of contents of enclosed foils.
+ Its usage is not obligatory but may be very useful for grouping together
+ logically related foils. It may have some speaker notes and handout notes, as well.</para>
+ </listitem>
+ </itemizedlist>
+ </dbs:foil>
+
+ <dbs:foil>
+ <info>
+ <title>dbs:foil</title>
+ </info>
+
+ <itemizedlist>
+ <listitem>
+ <para><emphasis>May contain:</emphasis> db:title, db:titleabbev,
+ db:subtitle, db:info, [block content], dbs:speakernotes,
+ dbs:handoutnotes</para>
+ </listitem>
+
+ <listitem>
+ <para><emphasis>Usage:</emphasis> It marks up a single foil. Use
+ DocBook block elements to mark up your content. It may have some speaker
+ notes and handout notes, as well.</para>
+ </listitem>
+ </itemizedlist>
+ </dbs:foil>
+
+ <dbs:foil>
+ <info>
+ <title>dbs:block</title>
+ </info>
+
+ <itemizedlist>
+ <listitem>
+ <para><emphasis>May contain:</emphasis> [block content]</para>
+ </listitem>
+
+ <listitem>
+ <para><emphasis>Usage:</emphasis> It divides the content into layout units
+ that can later processed in a specific way.</para>
+ </listitem>
+ </itemizedlist>
+ </dbs:foil>
+
+ <dbs:foil>
+ <info>
+ <title>dbs:speakernotes</title>
+ </info>
+
+ <itemizedlist>
+ <listitem>
+ <para><emphasis>May contain:</emphasis> [block content]</para>
+ </listitem>
+
+ <listitem>
+ <para><emphasis>Usage:</emphasis> Notes that are not meant to be presented to
+ the audience but to the speaker.</para>
+ </listitem>
+ </itemizedlist>
+ </dbs:foil>
+
+ <dbs:foil>
+ <info>
+ <title>dbs:handoutnotes</title>
+ </info>
+
+ <itemizedlist>
+ <listitem>
+ <para><emphasis>May contain:</emphasis> [block content]</para>
+ </listitem>
+
+ <listitem>
+ <para><emphasis>Usage:</emphasis> Notes that are not to accompany
+ printed slides.</para>
+ </listitem>
+ </itemizedlist>
+ </dbs:foil>
+
+ <dbs:foil>
+ <info>
+ <title>Attribute dbs:incremental</title>
+ </info>
+
+ <itemizedlist>
+ <listitem>
+ <para><emphasis>Usage:</emphasis> Makes the content incremental.
+ Allowed on any element and inherited to child elements
+ but not applicable everywhere and its effect depends on the output
+ format.</para>
+ </listitem>
+ </itemizedlist>
+ </dbs:foil>
+
+ <dbs:foil>
+ <info>
+ <title>Attribute dbs:collapsible</title>
+ </info>
+
+ <itemizedlist>
+ <listitem>
+ <para><emphasis>Usage:</emphasis> Makes the content collapsible.
+ Allowed on any element and inherited to child elements
+ but not applicable everywhere and its effect depends on the output
+ format.</para>
+ </listitem>
+ </itemizedlist>
+ </dbs:foil>
+
+ <dbs:foil>
+ <info>
+ <title>Attribute dbs:style</title>
+ </info>
+
+ <itemizedlist>
+ <listitem>
+ <para><emphasis>Usage:</emphasis> Classifies the given element
+ to a specific formatting class. Typically applicable to foils,
+ foilgroups and mediaobject. Allowed anywhere but not processed
+ everywhere. In HTML it naturally maps to the <literal>class</literal>
+ attribute.</para>
+ </listitem>
+ </itemizedlist>
+ </dbs:foil>
+ </dbs:foilgroup>
+
+ <dbs:foil>
+ <info>
+ <title>Related Standards</title>
+ </info>
+
+ <bibliography>
+ <title>Related Standards</title>
+
+ <biblioentry xml:id="w3c-xml">
+ <title>Extensible Markup Language (XML)</title>
+
+ <org>
+ <orgname>W3C</orgname>
+ </org>
+
+ <bibliosource class="uri" xlink:href="http://www.w3.org/TR/REC-xml/">http://www.w3.org/TR/REC-xml/</bibliosource>
+ </biblioentry>
+
+ <biblioentry xml:id="docbook5">
+ <title>The DocBook Schema Version 5.0</title>
+
+ <org>
+ <orgname>OASIS</orgname>
+ </org>
+
+ <bibliosource class="uri" xlink:href="http://docs.oasis-open.org/docbook/specs/docbook-5.0-spec-os.html">http://docs.oasis-open.org/docbook/specs/docbook-5.0-spec-os.html</bibliosource>
+ </biblioentry>
+
+ <biblioentry xml:id="w3c-xslt">
+ <title>XSL Transformations (XSLT) Version 1.0</title>
+
+ <org>
+ <orgname>W3C</orgname>
+ </org>
+
+ <bibliosource class="uri" xlink:href="http://www.w3.org/TR/xslt">http://www.w3.org/TR/xslt</bibliosource>
+ </biblioentry>
+
+ <biblioentry xml:id="w3c-xslfo">
+ <title>Extensible Stylesheet Language (XSL) Version 1.1</title>
+
+ <org>
+ <orgname>W3C</orgname>
+ </org>
+
+ <bibliosource class="uri" xlink:href="http://www.w3.org/TR/xsl/">http://www.w3.org/TR/xsl/</bibliosource>
+ </biblioentry>
+ </bibliography>
+ </dbs:foil>
+
+ <dbs:foil>
+ <info>
+ <title>Supported HTML Presentation Frameworks</title>
+ </info>
+
+ <bibliography>
+ <title>Supported HTML Presentation Frameworks</title>
+
+ <biblioentry xml:id="s5">
+ <title>S<superscript>5</superscript></title>
+ <subtitle>A Simple Standards-Based Slide Show System</subtitle>
+
+ <bibliosource class="uri" xlink:href="http://meyerweb.com/eric/tools/s5/">http://meyerweb.com/eric/tools/s5/</bibliosource>
+ </biblioentry>
+
+ <biblioentry xml:id="slidy">
+ <title>HTML Slidy</title>
+ <subtitle>Slide Shows in HTML and XHTML</subtitle>
+
+ <bibliosource class="uri" xlink:href="www.w3.org/Talks/Tools/Slidy2/">www.w3.org/Talks/Tools/Slidy2/</bibliosource>
+ </biblioentry>
+ </bibliography>
+ </dbs:foil>
+
+ <dbs:foil>
+ <info>
+ <title>Recommended Tools</title>
+ </info>
+
+ <bibliography>
+ <title>Recommended Tools</title>
+
+ <biblioentry xml:id="jing">
+ <title>Jing RELAX-NG validator</title>
+
+ <bibliosource class="uri" xlink:href="http://www.thaiopensource.com/relaxng/jing.html">http://www.thaiopensource.com/relaxng/jing.html</bibliosource>
+ </biblioentry>
+
+ <biblioentry xml:id="libxslt">
+ <title>libxslt</title>
+ <subtitle>The XSLT C library for GNOME</subtitle>
+
+ <bibliosource class="uri" xlink:href="http://xmlsoft.org/xslt/">http://xmlsoft.org/xslt/</bibliosource>
+ </biblioentry>
+
+ <biblioentry xml:id="fop">
+ <title>Apache FOP</title>
+
+ <bibliosource class="uri" xlink:href="http://xmlgraphics.apache.org/fop/">http://xmlgraphics.apache.org/fop/</bibliosource>
+ </biblioentry>
+ </bibliography>
+ </dbs:foil>
+</dbs:slides>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/doc/user.css b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/doc/user.css
new file mode 100644
index 000000000..a7ae50c04
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/doc/user.css
@@ -0,0 +1,6 @@
+.face_container {margin-left: 4em; position: relative;}
+.face_first {position: static; vertical-align: bottom;}
+.face_other {position: absolute; left: 0; top: 0;}
+
+.left {float: left;}
+.right {float: right;}
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/fo/param.xml b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/fo/param.xml
new file mode 100644
index 000000000..c2ab9442d
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/fo/param.xml
@@ -0,0 +1,1155 @@
+<?xml version="1.0" encoding="ASCII"?>
+<book version="5.0" xml:id="slides_fo_doc">
+<info>
+<title>Slides FO Parameter Reference</title>
+<releaseinfo role="meta">
+$Id: param.xweb 6633 2007-02-21 18:33:33Z xmldoc $
+</releaseinfo>
+<author>
+ <personname>
+ <surname>K&#246;vesd&#225;n</surname>
+ <firstname>G&#225;bor</firstname>
+ </personname>
+</author>
+<copyright>
+ <year>2012</year>
+ <holder>G&#225;bor K&#246;vesd&#225;n</holder>
+</copyright>
+<abstract>
+ <para>This is reference documentation for all user-configurable
+ parameters in the DocBook XSL Slides FO stylesheet (for
+ generating PDF slide presentations). Note that the Slides
+ stylesheet for FO output is a customization layer of the
+ DocBook XSL FO stylesheet. Therefore, in addition to the
+ slides-specific parameters listed in this section, you can
+ also use a number of <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="../fo/">FO stylesheet
+ parameters</link> to control Slides FO output.</para>
+</abstract>
+</info>
+<reference xml:id="fo">
+ <title>FO: General Params</title>
+
+<refentry version="5.0" xml:id="foil.title.master">
+<refmeta>
+<refentrytitle>foil.title.master</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">number</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>foil.title.master</refname>
+<refpurpose>Specifies unitless font size to use for foil titles</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+<programlisting xml:id="foil.title.master.frag">
+&lt;xsl:param name="foil.title.master"&gt;36&lt;/xsl:param&gt;
+&lt;!-- Inconsistant use of point size? --&gt;
+</programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>Specifies a unitless font size to use for foil titles; used in
+combination with the <parameter>foil.title.size</parameter>
+parameter.</para>
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="foil.title.size">
+<refmeta>
+<refentrytitle>foil.title.size</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">length</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>foil.title.size</refname>
+<refpurpose>Specifies font size to use for foil titles, including units</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="foil.title.size.frag">
+ &lt;xsl:param name="foil.title.size"&gt;
+ &lt;xsl:value-of select="$foil.title.master"&gt;&lt;/xsl:value-of&gt;&lt;xsl:text&gt;pt&lt;/xsl:text&gt;
+ &lt;/xsl:param&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter combines the value of the
+<parameter>foil.title.master</parameter> parameter with a unit
+specification. The default unit is <literal>pt</literal>
+(points).</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="generate.copyright">
+<refmeta>
+<refentrytitle>generate.copyright</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">boolean</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>generate.copyright</refname>
+<refpurpose>Specifies whether copyright is generated</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="generate.copyright.frag">
+ &lt;xsl:param name="generate.copyright"&gt;1&lt;/xsl:param&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies whether the copyright info is generated
+ in the footer area.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="generate.foilgroup.numbered.toc">
+<refmeta>
+<refentrytitle>generate.foilgroup.numbered.toc</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">boolean</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>generate.foilgroup.numbered.toc</refname>
+<refpurpose>Specifies whether foilgroups have a numbered TOC</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="generate.foilgroup.numbered.toc.frag">
+ &lt;xsl:param name="generate.foilgroup.numbered.toc"&gt;1&lt;/xsl:param&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>If TOC generation is turned on, this parameter specifies
+ whether foilgroups have a numbered TOC. If disabled, TOC items
+ will be bulleted, not numbered.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="generate.foilgroup.toc">
+<refmeta>
+<refentrytitle>generate.foilgroup.toc</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">boolean</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>generate.foilgroup.toc</refname>
+<refpurpose>Specifies whether foilgroups have a TOC</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="generate.foilgroup.toc.frag">
+ &lt;xsl:param name="generate.foilgroup.toc"&gt;1&lt;/xsl:param&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies whether foilgroups will
+ contain a table of contents of the included foils.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="generate.handoutnotes">
+<refmeta>
+<refentrytitle>generate.handoutnotes</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">boolean</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>generate.handoutnotes</refname>
+<refpurpose>Specifies whether handoutnotes are generated</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="generate.handoutnotes.frag">
+ &lt;xsl:param name="generate.handoutnotes"&gt;0&lt;/xsl:param&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies whether handoutnotes shall
+ be generated to the output.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="generate.page.number">
+<refmeta>
+<refentrytitle>generate.page.number</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">list</refmiscinfo>
+<refmiscinfo class="other" otherclass="value">full<alt>1/2</alt></refmiscinfo>
+<refmiscinfo class="other" otherclass="value">compact<alt>1</alt></refmiscinfo>
+<refmiscinfo class="other" otherclass="value">no</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>generate.page.number</refname>
+<refpurpose>Specifies whether page numbers are generated</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="generate.page.number.frag">
+ &lt;xsl:param name="generate.page.number"&gt;compact&lt;/xsl:param&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies how page numbers are generated in
+ the footer area.</para>
+
+<variablelist>
+ <varlistentry>
+ <term>no</term>
+ <listitem>
+ <para>No page numbers generated at all.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>full</term>
+ <listitem>
+ <para>Current page number, a slash and the total number of pages</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>compact</term>
+ <listitem>
+ <para>Current page number only</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>no</term>
+ <listitem>
+ <para>No page numbers generated at all.</para>
+ </listitem>
+ </varlistentry>
+</variablelist>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="generate.pubdate">
+<refmeta>
+<refentrytitle>generate.pubdate</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">boolean</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>generate.pubdate</refname>
+<refpurpose>Specifies whether the pubdate is generated</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="generate.pubdate.frag">
+ &lt;xsl:param name="generate.pubdate"&gt;1&lt;/xsl:param&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies whether the publication date is generated
+ in the footer area.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="generate.speakernotes">
+<refmeta>
+<refentrytitle>generate.speakernotes</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">boolean</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>generate.speakernotes</refname>
+<refpurpose>Specifies whether speakernotes are generated</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="generate.speakernotes.frag">
+ &lt;xsl:param name="generate.speakernotes"&gt;0&lt;/xsl:param&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies whether speakernotes shall
+ be generated to the output.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="generate.titlepage">
+<refmeta>
+<refentrytitle>generate.titlepage</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">boolean</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>generate.titlepage</refname>
+<refpurpose>Specifies whether titlepage is generated</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="generate.titlepage.frag">
+ &lt;xsl:param name="generate.titlepage"&gt;1&lt;/xsl:param&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies whether titlepage is generated
+ for the presentation.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="mml.embedding.mode">
+<refmeta>
+<refentrytitle>mml.embedding.mode</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">list</refmiscinfo>
+<refmiscinfo class="other" otherclass="value">inline</refmiscinfo>
+<refmiscinfo class="other" otherclass="value">external-graphic</refmiscinfo>
+<refmiscinfo class="other" otherclass="value">instream-foreign-object</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>mml.embedding.mode</refname>
+<refpurpose>Specifies how inline MathML is processed</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="mml.embedding.mode.fo.frag">
+ &lt;xsl:param name="mml.embedding.mode"&gt;external-graphic&lt;/xsl:param&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies how inline MathML formulas
+ are embedded into the output document.</para>
+
+<variablelist>
+ <varlistentry>
+ <term>inline</term>
+ <listitem>
+ <para>Content is copied over inline with its namespace.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>external-graphic</term>
+ <listitem>
+ <para>Content is extracted into an externel file and referenced
+ by an <markup>external-graphic</markup> element.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>instream-foreign-object</term>
+ <listitem>
+ <para>Content is copied over with its namespace inside an
+ <markup>instream-foreign-object</markup> element.</para>
+ </listitem>
+ </varlistentry>
+</variablelist>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="slide.font.family">
+<refmeta>
+<refentrytitle>slide.font.family</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">list</refmiscinfo>
+<refmiscinfo class="other" otherclass="list-type">open</refmiscinfo>
+<refmiscinfo class="other" otherclass="value">serif</refmiscinfo>
+<refmiscinfo class="other" otherclass="value">sans-serif</refmiscinfo>
+<refmiscinfo class="other" otherclass="value">monospace</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>slide.font.family</refname>
+<refpurpose>Specifies font family to use for slide bodies</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+<programlisting xml:id="slide.font.family.frag">
+&lt;xsl:param name="slide.font.family"&gt;Helvetica&lt;/xsl:param&gt;
+</programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>Specifies the font family to use for slides bodies.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="slide.title.font.family">
+<refmeta>
+<refentrytitle>slide.title.font.family</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">list</refmiscinfo>
+<refmiscinfo class="other" otherclass="list-type">open</refmiscinfo>
+<refmiscinfo class="other" otherclass="value">serif</refmiscinfo>
+<refmiscinfo class="other" otherclass="value">sans-serif</refmiscinfo>
+<refmiscinfo class="other" otherclass="value">monospace</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>slide.title.font.family</refname>
+<refpurpose>Specifies font family to use for slide titles</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+<programlisting xml:id="slide.title.font.family.frag">
+&lt;xsl:param name="slide.title.font.family"&gt;Helvetica&lt;/xsl:param&gt;
+</programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>Specifies the font family to use for slides titles.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="svg.embedding.mode">
+<refmeta>
+<refentrytitle>svg.embedding.mode</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">list</refmiscinfo>
+<refmiscinfo class="other" otherclass="value">external-graphic</refmiscinfo>
+<refmiscinfo class="other" otherclass="value">instream-foreign-object</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>svg.embedding.mode</refname>
+<refpurpose>Specifies how inline SVG is processed</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="svg.embedding.mode.fo.frag">
+ &lt;xsl:param name="svg.embedding.mode"&gt;instream-foreign-object&lt;/xsl:param&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies how inline SVG graphics
+ are embedded into the output document.</para>
+
+<variablelist>
+ <varlistentry>
+ <term>inline</term>
+ <listitem>
+ <para>Content is copied over inline with its namespace.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>external-graphic</term>
+ <listitem>
+ <para>Content is extracted into an externel file and referenced
+ by an <markup>external-graphic</markup> element.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>instream-foreign-object</term>
+ <listitem>
+ <para>Content is copied over with its namespace inside an
+ <markup>instream-foreign-object</markup> element.</para>
+ </listitem>
+ </varlistentry>
+</variablelist>
+
+</refsection>
+</refentry>
+
+</reference>
+<reference xml:id="propsets">
+ <title>FO: Property Sets</title>
+<refentry version="5.0" xml:id="foil.header.properties">
+<refmeta>
+<refentrytitle>foil.header.properties</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">attribute set</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>foil.header.properties</refname>
+<refpurpose>Specifies properties for foil header area</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="foil.header.properties.frag">
+ &lt;xsl:attribute-set name="foil.header.properties"&gt;
+ &lt;xsl:attribute name="background-color"&gt;white&lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="color"&gt;black&lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="font-weight"&gt;bold&lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="text-align"&gt;center&lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="font-family"&gt;
+ &lt;xsl:value-of select="$slide.title.font.family"&gt;&lt;/xsl:value-of&gt;
+ &lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="space-after"&gt;12pt&lt;/xsl:attribute&gt;
+ &lt;/xsl:attribute-set&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies properties for the foil header area.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="foil.master.properties">
+<refmeta>
+<refentrytitle>foil.master.properties</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">attribute set</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>foil.master.properties</refname>
+<refpurpose>Specifies properties for foil master</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="foil.master.properties.frag">
+ &lt;xsl:attribute-set name="foil.master.properties"&gt;
+ &lt;xsl:attribute name="page-width"&gt;
+ &lt;xsl:value-of select="$page.width"&gt;&lt;/xsl:value-of&gt;
+ &lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="page-height"&gt;
+ &lt;xsl:value-of select="$page.height"&gt;&lt;/xsl:value-of&gt;
+ &lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="margin-top"&gt;
+ &lt;xsl:value-of select="$page.margin.top"&gt;&lt;/xsl:value-of&gt;
+ &lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="margin-bottom"&gt;
+ &lt;xsl:value-of select="$page.margin.bottom"&gt;&lt;/xsl:value-of&gt;
+ &lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="margin-left"&gt;
+ &lt;xsl:value-of select="$page.margin.inner"&gt;&lt;/xsl:value-of&gt;
+ &lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="margin-right"&gt;
+ &lt;xsl:value-of select="$page.margin.outer"&gt;&lt;/xsl:value-of&gt;
+ &lt;/xsl:attribute&gt;
+ &lt;/xsl:attribute-set&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies properties for the foil master.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="foil.page-sequence.properties">
+<refmeta>
+<refentrytitle>foil.page-sequence.properties</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">attribute set</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>foil.page-sequence.properties</refname>
+<refpurpose>Specifies properties for foil page-sequence</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="foil.page-sequence.properties.frag">
+ &lt;xsl:attribute-set name="foil.page-sequence.properties"&gt;
+ &lt;xsl:attribute name="hyphenate"&gt;
+ &lt;xsl:value-of select="$hyphenate"&gt;&lt;/xsl:value-of&gt;
+ &lt;/xsl:attribute&gt;
+ &lt;/xsl:attribute-set&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies properties for foil page-sequence.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="foil.properties">
+<refmeta>
+<refentrytitle>foil.properties</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">attribute set</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>foil.properties</refname>
+<refpurpose>Specifies properties for all foils</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="foil.properties.frag">
+ &lt;xsl:attribute-set name="foil.properties"&gt;
+ &lt;xsl:attribute name="font-family"&gt;
+ &lt;xsl:value-of select="$slide.font.family"&gt;&lt;/xsl:value-of&gt;
+ &lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="margin-{$direction.align.start}"&gt;1in&lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="margin-{$direction.align.end}"&gt;1in&lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="font-size"&gt;
+ &lt;xsl:value-of select="$body.font.size"&gt;&lt;/xsl:value-of&gt;
+ &lt;/xsl:attribute&gt;
+ &lt;/xsl:attribute-set&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies properties that are applied to all foils.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="foil.region-after.properties">
+<refmeta>
+<refentrytitle>foil.region-after.properties</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">attribute set</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>foil.region-after.properties</refname>
+<refpurpose>Specifies properties for foil region-after</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="foil.region-after.properties.frag">
+ &lt;xsl:attribute-set name="foil.region-after.properties"&gt;
+ &lt;xsl:attribute name="extent"&gt;
+ &lt;xsl:value-of select="$region.after.extent"&gt;&lt;/xsl:value-of&gt;
+ &lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="display-align"&gt;after&lt;/xsl:attribute&gt;
+ &lt;/xsl:attribute-set&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies properties for the foil region-after.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="foil.region-before.properties">
+<refmeta>
+<refentrytitle>foil.region-before.properties</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">attribute set</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>foil.region-before.properties</refname>
+<refpurpose>Specifies properties for foil region-before</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="foil.region-before.properties.frag">
+ &lt;xsl:attribute-set name="foil.region-before.properties"&gt;
+ &lt;xsl:attribute name="extent"&gt;
+ &lt;xsl:value-of select="$region.before.extent"&gt;&lt;/xsl:value-of&gt;
+ &lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="display-align"&gt;
+ &lt;xsl:value-of select="'before'"&gt;&lt;/xsl:value-of&gt;
+ &lt;/xsl:attribute&gt;
+ &lt;/xsl:attribute-set&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies properties for the foil region-before.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="foil.region-body.properties">
+<refmeta>
+<refentrytitle>foil.region-body.properties</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">attribute set</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>foil.region-body.properties</refname>
+<refpurpose>Specifies properties for foil region-body</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="foil.region-body.properties.frag">
+ &lt;xsl:attribute-set name="foil.region-body.properties"&gt;
+ &lt;xsl:attribute name="margin-bottom"&gt;
+ &lt;xsl:value-of select="$body.margin.bottom"&gt;&lt;/xsl:value-of&gt;
+ &lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="margin-top"&gt;
+ &lt;xsl:value-of select="$body.margin.top"&gt;&lt;/xsl:value-of&gt;
+ &lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="column-count"&gt;
+ &lt;xsl:value-of select="$column.count.body"&gt;&lt;/xsl:value-of&gt;
+ &lt;/xsl:attribute&gt;
+ &lt;/xsl:attribute-set&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies properties for the foil region-body.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="foil.subtitle.properties">
+<refmeta>
+<refentrytitle>foil.subtitle.properties</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">attribute set</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>foil.subtitle.properties</refname>
+<refpurpose>Specifies properties for all foil subtitles</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="foil.subtitle.properties.frag">
+ &lt;xsl:attribute-set name="foil.subtitle.properties"&gt;
+ &lt;xsl:attribute name="font-family"&gt;
+ &lt;xsl:value-of select="$slide.title.font.family"&gt;&lt;/xsl:value-of&gt;
+ &lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="text-align"&gt;center&lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="font-size"&gt;
+ &lt;xsl:value-of select="$foil.title.master * 0.8"&gt;&lt;/xsl:value-of&gt;&lt;xsl:text&gt;pt&lt;/xsl:text&gt;
+ &lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="space-after"&gt;12pt&lt;/xsl:attribute&gt;
+ &lt;/xsl:attribute-set&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies properties that are applied to all foil subtitles.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="foil.title.properties">
+<refmeta>
+<refentrytitle>foil.title.properties</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">attribute set</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>foil.title.properties</refname>
+<refpurpose>Specifies properties for foil title</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="foil.title.properties.frag">
+ &lt;xsl:attribute-set name="foil.title.properties"&gt;
+ &lt;xsl:attribute name="font-size"&gt;
+ &lt;xsl:value-of select="$foil.title.size"&gt;&lt;/xsl:value-of&gt;
+ &lt;/xsl:attribute&gt;
+ &lt;/xsl:attribute-set&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies properties for the foil title.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="foil.footer.properties">
+<refmeta>
+<refentrytitle>foil.footer.properties</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">attribute set</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>foil.footer.properties</refname>
+<refpurpose>Specifies properties for slides footer</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="foil.footer.properties.frag">
+ &lt;xsl:attribute-set name="foil.footer.properties"&gt;&lt;/xsl:attribute-set&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies properties for the foil footer.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="handoutnotes.properties">
+<refmeta>
+<refentrytitle>handoutnotes.properties</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">attribute set</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>footnote.properties</refname>
+<refpurpose>Properties applied to handoutnotes
+</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+<programlisting xml:id="handoutnotes.properties.frag">
+&lt;xsl:attribute-set name="handoutnotes.properties"&gt;&lt;/xsl:attribute-set&gt;
+</programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This attribute set is applied to handoutnotes.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="slides.properties">
+<refmeta>
+<refentrytitle>slides.properties</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">attribute set</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>slides.properties</refname>
+<refpurpose>Specifies properties for all slides</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="slides.properties.frag">
+ &lt;xsl:attribute-set name="slides.properties"&gt;
+ &lt;xsl:attribute name="font-family"&gt;
+ &lt;xsl:value-of select="$slide.font.family"&gt;&lt;/xsl:value-of&gt;
+ &lt;/xsl:attribute&gt;
+ &lt;/xsl:attribute-set&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies properties that are applied to all slides.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="slides.titlepage.master.properties">
+<refmeta>
+<refentrytitle>slides.titlepage.master.properties</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">attribute set</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>slides.titlepage.master.properties</refname>
+<refpurpose>Specifies properties for slides titlepage master</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="slides.titlepage.master.properties.frag">
+ &lt;xsl:attribute-set name="slides.titlepage.master.properties"&gt;
+ &lt;xsl:attribute name="page-width"&gt;
+ &lt;xsl:value-of select="$page.width"&gt;&lt;/xsl:value-of&gt;
+ &lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="page-height"&gt;
+ &lt;xsl:value-of select="$page.height"&gt;&lt;/xsl:value-of&gt;
+ &lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="margin-top"&gt;
+ &lt;xsl:value-of select="$page.margin.top"&gt;&lt;/xsl:value-of&gt;
+ &lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="margin-bottom"&gt;
+ &lt;xsl:value-of select="$page.margin.bottom"&gt;&lt;/xsl:value-of&gt;
+ &lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="margin-left"&gt;
+ &lt;xsl:value-of select="$page.margin.inner"&gt;&lt;/xsl:value-of&gt;
+ &lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="margin-right"&gt;
+ &lt;xsl:value-of select="$page.margin.outer"&gt;&lt;/xsl:value-of&gt;
+ &lt;/xsl:attribute&gt;
+ &lt;/xsl:attribute-set&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies properties for the slides titlepage master.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="slides.titlepage.region-body.properties">
+<refmeta>
+<refentrytitle>slides.titlepage.region-body.properties</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">attribute set</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>slides.titlepage.region-body.properties</refname>
+<refpurpose>Specifies properties for slides titlepage region-body</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="slides.titlepage.region-body.properties.frag">
+ &lt;xsl:attribute-set name="slides.titlepage.region-body.properties"&gt;
+ &lt;xsl:attribute name="margin-bottom"&gt;0pt&lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="margin-top"&gt;0pt&lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="column-count"&gt;
+ &lt;xsl:value-of select="$column.count.body"&gt;&lt;/xsl:value-of&gt;
+ &lt;/xsl:attribute&gt;
+ &lt;/xsl:attribute-set&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies properties for the slides titlepage region-body.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="slides.titlepage.corpauthor.properties">
+<refmeta>
+<refentrytitle>slides.titlepage.corpauthor.properties</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">attribute set</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>slides.titlepage.corpauthor.properties</refname>
+<refpurpose>Specifies properties for slides titlepage title</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="slides.titlepage.corpauthor.properties.frag">
+ &lt;xsl:attribute-set name="slides.titlepage.corpauthor.properties"&gt;
+ &lt;xsl:attribute name="text-align"&gt;center&lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="space-after"&gt;1em&lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="font-size"&gt;20.736pt&lt;/xsl:attribute&gt;
+ &lt;/xsl:attribute-set&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies properties for the corpauthor on the default
+ titlepage.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="slides.titlepage.title.properties">
+<refmeta>
+<refentrytitle>slides.titlepage.title.properties</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">attribute set</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>slides.titlepage.title.properties</refname>
+<refpurpose>Specifies properties for slides titlepage title</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="slides.titlepage.title.properties.frag">
+ &lt;xsl:attribute-set name="slides.titlepage.title.properties"&gt;
+ &lt;xsl:attribute name="text-align"&gt;center&lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="space-after"&gt;1em&lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="padding-top"&gt;1.5in&lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="keep-with-next"&gt;always&lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="font-size"&gt;
+ &lt;xsl:value-of select="$foil.title.size"&gt;&lt;/xsl:value-of&gt;
+ &lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="font-weight"&gt;bold&lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="font-family"&gt;
+ &lt;xsl:value-of select="$slide.title.font.family"&gt;&lt;/xsl:value-of&gt;
+ &lt;/xsl:attribute&gt;
+ &lt;/xsl:attribute-set&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies properties for the title on the default
+ titlepage.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="slides.titlepage.subtitle.properties">
+<refmeta>
+<refentrytitle>slides.titlepage.subtitle.properties</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">attribute set</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>slides.titlepage.subtitle.properties</refname>
+<refpurpose>Specifies properties for slides titlepage title</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="slides.titlepage.subtitle.properties.frag">
+ &lt;xsl:attribute-set name="slides.titlepage.subtitle.properties"&gt;
+ &lt;xsl:attribute name="text-align"&gt;center&lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="space-after"&gt;1em&lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="font-family"&gt;
+ &lt;xsl:value-of select="$slide.title.font.family"&gt;&lt;/xsl:value-of&gt;
+ &lt;/xsl:attribute&gt;
+ &lt;/xsl:attribute-set&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies properties for the subtitle on the default
+ titlepage.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="slides.titlepage.author.properties">
+<refmeta>
+<refentrytitle>slides.titlepage.author.properties</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">attribute set</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>slides.titlepage.author.properties</refname>
+<refpurpose>Specifies properties for slides titlepage title</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="slides.titlepage.author.properties.frag">
+ &lt;xsl:attribute-set name="slides.titlepage.author.properties"&gt;
+ &lt;xsl:attribute name="text-align"&gt;center&lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="space-after"&gt;1em&lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="font-size"&gt;20.736pt&lt;/xsl:attribute&gt;
+ &lt;/xsl:attribute-set&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies properties for the author on the default
+ titlepage.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="slides.titlepage.pubdate.properties">
+<refmeta>
+<refentrytitle>slides.titlepage.pubdate.properties</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">attribute set</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>slides.titlepage.pubdate.properties</refname>
+<refpurpose>Specifies properties for slides titlepage title</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="slides.titlepage.pubdate.properties.frag">
+ &lt;xsl:attribute-set name="slides.titlepage.pubdate.properties"&gt;
+ &lt;xsl:attribute name="text-align"&gt;center&lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="space-after"&gt;1em&lt;/xsl:attribute&gt;
+ &lt;xsl:attribute name="font-size"&gt;17.28pt&lt;/xsl:attribute&gt;
+ &lt;/xsl:attribute-set&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies properties for the pubdate on the default
+ titlepage.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="slides.titlepage.authorgroup.properties">
+<refmeta>
+<refentrytitle>slides.titlepage.authorgroup.properties</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">attribute set</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>slides.titlepage.authorgroup.properties</refname>
+<refpurpose>Specifies properties for slides titlepage title</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="slides.titlepage.authorgroup.properties.frag">
+ &lt;xsl:attribute-set name="slides.titlepage.authorgroup.properties"&gt;&lt;/xsl:attribute-set&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies properties for the authorgroup on the default
+ titlepage.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="speakernotes.properties">
+<refmeta>
+<refentrytitle>speakernotes.properties</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">attribute set</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>footnote.properties</refname>
+<refpurpose>Properties applied to speakernotes
+</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+<programlisting xml:id="speakernotes.properties.frag">
+&lt;xsl:attribute-set name="speakernotes.properties"&gt;&lt;/xsl:attribute-set&gt;
+</programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This attribute set is applied to speakernotes.</para>
+
+</refsection>
+</refentry>
+
+</reference>
+
+<appendix xml:id="styleheet"><title>The Stylesheet</title>
+
+<para>The <filename>param.xsl</filename> stylesheet is just a wrapper
+around all these parameters.</para>
+
+<programlisting xml:id="top">
+
+&lt;!-- This file is generated from param.xweb --&gt;
+
+&lt;xsl:stylesheet exclude-result-prefixes="src" version="1.0"&gt;
+
+&lt;!-- ********************************************************************
+ $Id: param.xweb 6633 2007-02-21 18:33:33Z xmldoc $
+ ********************************************************************
+
+ This file is part of the DocBook Slides Stylesheet distribution.
+ See ../README or http://docbook.sf.net/release/xsl/current/ for
+ copyright and other information.
+
+ ******************************************************************** --&gt;
+
+&lt;src:fragref linkend="foil.title.master.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="foil.title.size.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="generate.copyright.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="generate.foilgroup.numbered.toc.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="generate.foilgroup.toc.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="generate.handoutnotes.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="generate.page.number.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="generate.pubdate.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="generate.speakernotes.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="generate.titlepage.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="mml.embedding.mode.fo.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="slide.font.family.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="slide.title.font.family.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="svg.embedding.mode.fo.frag"&gt;&lt;/src:fragref&gt;
+
+&lt;src:fragref linkend="foil.header.properties.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="foil.master.properties.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="foil.page-sequence.properties.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="foil.properties.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="foil.region-after.properties.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="foil.region-before.properties.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="foil.region-body.properties.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="foil.subtitle.properties.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="foil.title.properties.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="handoutnotes.properties.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="slides.properties.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="slides.titlepage.master.properties.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="slides.titlepage.region-body.properties.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="speakernotes.properties.frag"&gt;&lt;/src:fragref&gt;
+
+&lt;src:fragref linkend="slides.titlepage.corpauthor.properties.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="slides.titlepage.title.properties.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="slides.titlepage.subtitle.properties.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="foil.footer.properties.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="slides.titlepage.author.properties.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="slides.titlepage.pubdate.properties.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="slides.titlepage.authorgroup.properties.frag"&gt;&lt;/src:fragref&gt;
+
+&lt;/xsl:stylesheet&gt;
+</programlisting>
+
+</appendix>
+</book>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/fo/param.xsl b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/fo/param.xsl
new file mode 100644
index 000000000..d972fcd68
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/fo/param.xsl
@@ -0,0 +1,222 @@
+<?xml version="1.0"?>
+<!-- This file is generated from param.xweb -->
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
+
+<!-- ********************************************************************
+ $Id: param.xweb 6633 2007-02-21 18:33:33Z xmldoc $
+ ********************************************************************
+
+ This file is part of the DocBook Slides Stylesheet distribution.
+ See ../README or http://docbook.sf.net/release/xsl/current/ for
+ copyright and other information.
+
+ ******************************************************************** -->
+
+<xsl:param name="foil.title.master">36</xsl:param>
+<!-- Inconsistant use of point size? -->
+ <xsl:param name="foil.title.size">
+ <xsl:value-of select="$foil.title.master"/><xsl:text>pt</xsl:text>
+ </xsl:param>
+
+ <xsl:param name="generate.copyright">1</xsl:param>
+
+ <xsl:param name="generate.foilgroup.numbered.toc">1</xsl:param>
+
+ <xsl:param name="generate.foilgroup.toc">1</xsl:param>
+
+ <xsl:param name="generate.handoutnotes">0</xsl:param>
+
+ <xsl:param name="generate.page.number">compact</xsl:param>
+
+ <xsl:param name="generate.pubdate">1</xsl:param>
+
+ <xsl:param name="generate.speakernotes">0</xsl:param>
+
+ <xsl:param name="generate.titlepage">1</xsl:param>
+
+ <xsl:param name="mml.embedding.mode">external-graphic</xsl:param>
+
+<xsl:param name="slide.font.family">Helvetica</xsl:param>
+<xsl:param name="slide.title.font.family">Helvetica</xsl:param>
+ <xsl:param name="svg.embedding.mode">instream-foreign-object</xsl:param>
+
+
+ <xsl:attribute-set name="foil.header.properties">
+ <xsl:attribute name="background-color">white</xsl:attribute>
+ <xsl:attribute name="color">black</xsl:attribute>
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
+ <xsl:attribute name="text-align">center</xsl:attribute>
+ <xsl:attribute name="font-family">
+ <xsl:value-of select="$slide.title.font.family"/>
+ </xsl:attribute>
+ <xsl:attribute name="space-after">12pt</xsl:attribute>
+ </xsl:attribute-set>
+
+ <xsl:attribute-set name="foil.master.properties">
+ <xsl:attribute name="page-width">
+ <xsl:value-of select="$page.width"/>
+ </xsl:attribute>
+ <xsl:attribute name="page-height">
+ <xsl:value-of select="$page.height"/>
+ </xsl:attribute>
+ <xsl:attribute name="margin-top">
+ <xsl:value-of select="$page.margin.top"/>
+ </xsl:attribute>
+ <xsl:attribute name="margin-bottom">
+ <xsl:value-of select="$page.margin.bottom"/>
+ </xsl:attribute>
+ <xsl:attribute name="margin-left">
+ <xsl:value-of select="$page.margin.inner"/>
+ </xsl:attribute>
+ <xsl:attribute name="margin-right">
+ <xsl:value-of select="$page.margin.outer"/>
+ </xsl:attribute>
+ </xsl:attribute-set>
+
+ <xsl:attribute-set name="foil.page-sequence.properties">
+ <xsl:attribute name="hyphenate">
+ <xsl:value-of select="$hyphenate"/>
+ </xsl:attribute>
+ </xsl:attribute-set>
+
+ <xsl:attribute-set name="foil.properties">
+ <xsl:attribute name="font-family">
+ <xsl:value-of select="$slide.font.family"/>
+ </xsl:attribute>
+ <xsl:attribute name="margin-{$direction.align.start}">1in</xsl:attribute>
+ <xsl:attribute name="margin-{$direction.align.end}">1in</xsl:attribute>
+ <xsl:attribute name="font-size">
+ <xsl:value-of select="$body.font.size"/>
+ </xsl:attribute>
+ </xsl:attribute-set>
+
+ <xsl:attribute-set name="foil.region-after.properties">
+ <xsl:attribute name="extent">
+ <xsl:value-of select="$region.after.extent"/>
+ </xsl:attribute>
+ <xsl:attribute name="display-align">after</xsl:attribute>
+ </xsl:attribute-set>
+
+ <xsl:attribute-set name="foil.region-before.properties">
+ <xsl:attribute name="extent">
+ <xsl:value-of select="$region.before.extent"/>
+ </xsl:attribute>
+ <xsl:attribute name="display-align">
+ <xsl:value-of select="'before'"/>
+ </xsl:attribute>
+ </xsl:attribute-set>
+
+ <xsl:attribute-set name="foil.region-body.properties">
+ <xsl:attribute name="margin-bottom">
+ <xsl:value-of select="$body.margin.bottom"/>
+ </xsl:attribute>
+ <xsl:attribute name="margin-top">
+ <xsl:value-of select="$body.margin.top"/>
+ </xsl:attribute>
+ <xsl:attribute name="column-count">
+ <xsl:value-of select="$column.count.body"/>
+ </xsl:attribute>
+ </xsl:attribute-set>
+
+ <xsl:attribute-set name="foil.subtitle.properties">
+ <xsl:attribute name="font-family">
+ <xsl:value-of select="$slide.title.font.family"/>
+ </xsl:attribute>
+ <xsl:attribute name="text-align">center</xsl:attribute>
+ <xsl:attribute name="font-size">
+ <xsl:value-of select="$foil.title.master * 0.8"/><xsl:text>pt</xsl:text>
+ </xsl:attribute>
+ <xsl:attribute name="space-after">12pt</xsl:attribute>
+ </xsl:attribute-set>
+
+ <xsl:attribute-set name="foil.title.properties">
+ <xsl:attribute name="font-size">
+ <xsl:value-of select="$foil.title.size"/>
+ </xsl:attribute>
+ </xsl:attribute-set>
+
+<xsl:attribute-set name="handoutnotes.properties"/>
+ <xsl:attribute-set name="slides.properties">
+ <xsl:attribute name="font-family">
+ <xsl:value-of select="$slide.font.family"/>
+ </xsl:attribute>
+ </xsl:attribute-set>
+
+ <xsl:attribute-set name="slides.titlepage.master.properties">
+ <xsl:attribute name="page-width">
+ <xsl:value-of select="$page.width"/>
+ </xsl:attribute>
+ <xsl:attribute name="page-height">
+ <xsl:value-of select="$page.height"/>
+ </xsl:attribute>
+ <xsl:attribute name="margin-top">
+ <xsl:value-of select="$page.margin.top"/>
+ </xsl:attribute>
+ <xsl:attribute name="margin-bottom">
+ <xsl:value-of select="$page.margin.bottom"/>
+ </xsl:attribute>
+ <xsl:attribute name="margin-left">
+ <xsl:value-of select="$page.margin.inner"/>
+ </xsl:attribute>
+ <xsl:attribute name="margin-right">
+ <xsl:value-of select="$page.margin.outer"/>
+ </xsl:attribute>
+ </xsl:attribute-set>
+
+ <xsl:attribute-set name="slides.titlepage.region-body.properties">
+ <xsl:attribute name="margin-bottom">0pt</xsl:attribute>
+ <xsl:attribute name="margin-top">0pt</xsl:attribute>
+ <xsl:attribute name="column-count">
+ <xsl:value-of select="$column.count.body"/>
+ </xsl:attribute>
+ </xsl:attribute-set>
+
+<xsl:attribute-set name="speakernotes.properties"/>
+
+ <xsl:attribute-set name="slides.titlepage.corpauthor.properties">
+ <xsl:attribute name="text-align">center</xsl:attribute>
+ <xsl:attribute name="space-after">1em</xsl:attribute>
+ <xsl:attribute name="font-size">20.736pt</xsl:attribute>
+ </xsl:attribute-set>
+
+ <xsl:attribute-set name="slides.titlepage.title.properties">
+ <xsl:attribute name="text-align">center</xsl:attribute>
+ <xsl:attribute name="space-after">1em</xsl:attribute>
+ <xsl:attribute name="padding-top">1.5in</xsl:attribute>
+ <xsl:attribute name="keep-with-next">always</xsl:attribute>
+ <xsl:attribute name="font-size">
+ <xsl:value-of select="$foil.title.size"/>
+ </xsl:attribute>
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
+ <xsl:attribute name="font-family">
+ <xsl:value-of select="$slide.title.font.family"/>
+ </xsl:attribute>
+ </xsl:attribute-set>
+
+ <xsl:attribute-set name="slides.titlepage.subtitle.properties">
+ <xsl:attribute name="text-align">center</xsl:attribute>
+ <xsl:attribute name="space-after">1em</xsl:attribute>
+ <xsl:attribute name="font-family">
+ <xsl:value-of select="$slide.title.font.family"/>
+ </xsl:attribute>
+ </xsl:attribute-set>
+
+ <xsl:attribute-set name="foil.footer.properties"/>
+
+ <xsl:attribute-set name="slides.titlepage.author.properties">
+ <xsl:attribute name="text-align">center</xsl:attribute>
+ <xsl:attribute name="space-after">1em</xsl:attribute>
+ <xsl:attribute name="font-size">20.736pt</xsl:attribute>
+ </xsl:attribute-set>
+
+ <xsl:attribute-set name="slides.titlepage.pubdate.properties">
+ <xsl:attribute name="text-align">center</xsl:attribute>
+ <xsl:attribute name="space-after">1em</xsl:attribute>
+ <xsl:attribute name="font-size">17.28pt</xsl:attribute>
+ </xsl:attribute-set>
+
+ <xsl:attribute-set name="slides.titlepage.authorgroup.properties"/>
+
+
+</xsl:stylesheet>
+
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/fo/plain-titlepage.xml b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/fo/plain-titlepage.xml
new file mode 100644
index 000000000..d817f130c
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/fo/plain-titlepage.xml
@@ -0,0 +1,49 @@
+<!DOCTYPE t:templates [
+<!ENTITY hsize0 "10pt">
+<!ENTITY hsize1 "12pt">
+<!ENTITY hsize2 "14.4pt">
+<!ENTITY hsize3 "17.28pt">
+<!ENTITY hsize4 "20.736pt">
+<!ENTITY hsize5 "24.8832pt">
+<!ENTITY hsize0space "7.5pt"> <!-- 0.75 * hsize0 -->
+<!ENTITY hsize1space "9pt"> <!-- 0.75 * hsize1 -->
+<!ENTITY hsize2space "10.8pt"> <!-- 0.75 * hsize2 -->
+<!ENTITY hsize3space "12.96pt"> <!-- 0.75 * hsize3 -->
+<!ENTITY hsize4space "15.552pt"> <!-- 0.75 * hsize4 -->
+<!ENTITY hsize5space "18.6624pt"> <!-- 0.75 * hsize5 -->
+]>
+<t:templates xmlns:t="http://nwalsh.com/docbook/xsl/template/1.0"
+ xmlns:param="http://nwalsh.com/docbook/xsl/template/1.0/param"
+ xmlns:fo="http://www.w3.org/1999/XSL/Format"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
+
+<!-- ==================================================================== -->
+
+<t:titlepage t:element="slides" t:wrapper="fo:block">
+ <t:titlepage-content t:side="recto">
+ <title t:named-template="presentation.title"
+ xsl:use-attribute-sets="slides.titlepage.title.properties"/>
+
+ <subtitle xsl:use-attribute-sets="slides.titlepage.subtitle.properties"/>
+
+ <corpauthor xsl:use-attribute-sets="slides.titlepage.corpauthor.properties"/>
+ <authorgroup xsl:use-attribute-sets="slides.titlepage.authorgroup.properties"/>
+ <author xsl:use-attribute-sets="slides.titlepage.author.properties"/>
+
+ <pubdate xsl:use-attribute-sets="slides.titlepage.pubdate.properties"/>
+ </t:titlepage-content>
+
+ <t:titlepage-content t:side="verso">
+ </t:titlepage-content>
+
+ <t:titlepage-separator>
+ </t:titlepage-separator>
+
+ <t:titlepage-before t:side="recto">
+ </t:titlepage-before>
+
+ <t:titlepage-before t:side="verso">
+ </t:titlepage-before>
+</t:titlepage>
+
+</t:templates>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/fo/plain-titlepage.xsl b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/fo/plain-titlepage.xsl
new file mode 100644
index 000000000..f79cf8119
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/fo/plain-titlepage.xsl
@@ -0,0 +1,150 @@
+<?xml version="1.0"?>
+
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:exsl="http://exslt.org/common" version="1.0" exclude-result-prefixes="exsl">
+
+<!-- This stylesheet was created by template/titlepage.xsl-->
+
+<xsl:template name="slides.titlepage.recto">
+ <xsl:choose>
+ <xsl:when test="slidesinfo/title">
+ <xsl:apply-templates mode="slides.titlepage.recto.auto.mode" select="slidesinfo/title"/>
+ </xsl:when>
+ <xsl:when test="docinfo/title">
+ <xsl:apply-templates mode="slides.titlepage.recto.auto.mode" select="docinfo/title"/>
+ </xsl:when>
+ <xsl:when test="info/title">
+ <xsl:apply-templates mode="slides.titlepage.recto.auto.mode" select="info/title"/>
+ </xsl:when>
+ <xsl:when test="title">
+ <xsl:apply-templates mode="slides.titlepage.recto.auto.mode" select="title"/>
+ </xsl:when>
+ </xsl:choose>
+
+ <xsl:choose>
+ <xsl:when test="slidesinfo/subtitle">
+ <xsl:apply-templates mode="slides.titlepage.recto.auto.mode" select="slidesinfo/subtitle"/>
+ </xsl:when>
+ <xsl:when test="docinfo/subtitle">
+ <xsl:apply-templates mode="slides.titlepage.recto.auto.mode" select="docinfo/subtitle"/>
+ </xsl:when>
+ <xsl:when test="info/subtitle">
+ <xsl:apply-templates mode="slides.titlepage.recto.auto.mode" select="info/subtitle"/>
+ </xsl:when>
+ <xsl:when test="subtitle">
+ <xsl:apply-templates mode="slides.titlepage.recto.auto.mode" select="subtitle"/>
+ </xsl:when>
+ </xsl:choose>
+
+ <xsl:apply-templates mode="slides.titlepage.recto.auto.mode" select="slidesinfo/corpauthor"/>
+ <xsl:apply-templates mode="slides.titlepage.recto.auto.mode" select="docinfo/corpauthor"/>
+ <xsl:apply-templates mode="slides.titlepage.recto.auto.mode" select="info/corpauthor"/>
+ <xsl:apply-templates mode="slides.titlepage.recto.auto.mode" select="slidesinfo/authorgroup"/>
+ <xsl:apply-templates mode="slides.titlepage.recto.auto.mode" select="docinfo/authorgroup"/>
+ <xsl:apply-templates mode="slides.titlepage.recto.auto.mode" select="info/authorgroup"/>
+ <xsl:apply-templates mode="slides.titlepage.recto.auto.mode" select="slidesinfo/author"/>
+ <xsl:apply-templates mode="slides.titlepage.recto.auto.mode" select="docinfo/author"/>
+ <xsl:apply-templates mode="slides.titlepage.recto.auto.mode" select="info/author"/>
+ <xsl:apply-templates mode="slides.titlepage.recto.auto.mode" select="slidesinfo/pubdate"/>
+ <xsl:apply-templates mode="slides.titlepage.recto.auto.mode" select="docinfo/pubdate"/>
+ <xsl:apply-templates mode="slides.titlepage.recto.auto.mode" select="info/pubdate"/>
+</xsl:template>
+
+<xsl:template name="slides.titlepage.verso">
+</xsl:template>
+
+<xsl:template name="slides.titlepage.separator">
+</xsl:template>
+
+<xsl:template name="slides.titlepage.before.recto">
+</xsl:template>
+
+<xsl:template name="slides.titlepage.before.verso">
+</xsl:template>
+
+<xsl:template name="slides.titlepage">
+ <block>
+ <xsl:variable name="recto.content">
+ <xsl:call-template name="slides.titlepage.before.recto"/>
+ <xsl:call-template name="slides.titlepage.recto"/>
+ </xsl:variable>
+ <xsl:variable name="recto.elements.count">
+ <xsl:choose>
+ <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
+ <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
+ <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
+ <xsl:otherwise>1</xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+ <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
+ <block><xsl:copy-of select="$recto.content"/></block>
+ </xsl:if>
+ <xsl:variable name="verso.content">
+ <xsl:call-template name="slides.titlepage.before.verso"/>
+ <xsl:call-template name="slides.titlepage.verso"/>
+ </xsl:variable>
+ <xsl:variable name="verso.elements.count">
+ <xsl:choose>
+ <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
+ <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
+ <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
+ <xsl:otherwise>1</xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+ <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
+ <block><xsl:copy-of select="$verso.content"/></block>
+ </xsl:if>
+ <xsl:call-template name="slides.titlepage.separator"/>
+ </block>
+</xsl:template>
+
+<xsl:template match="*" mode="slides.titlepage.recto.mode">
+ <!-- if an element isn't found in this mode, -->
+ <!-- try the generic titlepage.mode -->
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+</xsl:template>
+
+<xsl:template match="*" mode="slides.titlepage.verso.mode">
+ <!-- if an element isn't found in this mode, -->
+ <!-- try the generic titlepage.mode -->
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+</xsl:template>
+
+<xsl:template match="title" mode="slides.titlepage.recto.auto.mode">
+<block xsl:use-attribute-sets="slides.titlepage.title.properties">
+<xsl:call-template name="presentation.title">
+</xsl:call-template>
+</block>
+</xsl:template>
+
+<xsl:template match="subtitle" mode="slides.titlepage.recto.auto.mode">
+<block xsl:use-attribute-sets="slides.titlepage.subtitle.properties">
+<xsl:apply-templates select="." mode="slides.titlepage.recto.mode"/>
+</block>
+</xsl:template>
+
+<xsl:template match="corpauthor" mode="slides.titlepage.recto.auto.mode">
+<block xsl:use-attribute-sets="slides.titlepage.corpauthor.properties">
+<xsl:apply-templates select="." mode="slides.titlepage.recto.mode"/>
+</block>
+</xsl:template>
+
+<xsl:template match="authorgroup" mode="slides.titlepage.recto.auto.mode">
+<block xsl:use-attribute-sets="slides.titlepage.authorgroup.properties">
+<xsl:apply-templates select="." mode="slides.titlepage.recto.mode"/>
+</block>
+</xsl:template>
+
+<xsl:template match="author" mode="slides.titlepage.recto.auto.mode">
+<block xsl:use-attribute-sets="slides.titlepage.author.properties">
+<xsl:apply-templates select="." mode="slides.titlepage.recto.mode"/>
+</block>
+</xsl:template>
+
+<xsl:template match="pubdate" mode="slides.titlepage.recto.auto.mode">
+<block xsl:use-attribute-sets="slides.titlepage.pubdate.properties">
+<xsl:apply-templates select="." mode="slides.titlepage.recto.mode"/>
+</block>
+</xsl:template>
+
+</xsl:stylesheet>
+
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/fo/plain.xsl b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/fo/plain.xsl
new file mode 100644
index 000000000..40217ea99
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/fo/plain.xsl
@@ -0,0 +1,563 @@
+<?xml version="1.0"?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:fo="http://www.w3.org/1999/XSL/Format"
+ xmlns:db="http://docbook.org/ns/docbook"
+ xmlns:dbs="http://docbook.org/ns/docbook-slides"
+ xmlns:exsl="http://exslt.org/common"
+ exclude-result-prefixes="dbs db"
+ extension-element-prefixes="exsl"
+ version="1.0">
+
+<xsl:import href="../../fo/docbook.xsl"/>
+<xsl:import href="../common/common.xsl"/>
+<xsl:include href="plain-titlepage.xsl"/>
+<xsl:include href="param.xsl"/>
+
+<xsl:output indent="yes"/>
+
+<xsl:param name="local.l10n.xml" select="document('')"/>
+<i18n xmlns="http://docbook.sourceforge.net/xmlns/l10n/1.0">
+ <l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="en">
+ <l:gentext key="Continued" text="(Continued)"/>
+ <l:gentext key="Speakernotes" text="Speaker Notes"/>
+ <l:gentext key="Handoutnotes" text="Handout Notes"/>
+ <l:context name="title">
+ <l:template name="slides" text="%t"/>
+ <l:template name="foilgroup" text="%t"/>
+ <l:template name="foil" text="%t"/>
+ </l:context>
+ </l:l10n>
+</i18n>
+
+<!-- Start of overrides -->
+
+<xsl:param name="page.margin.top" select="'0.25in'"/>
+<xsl:param name="page.margin.bottom" select="'0.25in'"/>
+<xsl:param name="page.margin.inner" select="'0.25in'"/>
+<xsl:param name="page.margin.outer" select="'0.25in'"/>
+<xsl:param name="body.margin.top" select="'1in'"/>
+<xsl:param name="body.margin.bottom" select="'0.5in'"/>
+<xsl:param name="region.before.extent" select="'0.75in'"/>
+<xsl:param name="region.after.extent" select="'0.5in'"/>
+<xsl:param name="column.count.body" select="1"/>
+<xsl:param name="body.font.size">20</xsl:param>
+
+<xsl:param name="callout.icon.size" select="'40pt'"/>
+<xsl:param name="alignment" select="'start'"/>
+<xsl:param name="preferred.mediaobject.role" select="'print'"/>
+<xsl:param name="page.orientation" select="'landscape'"/>
+
+<xsl:variable name="root.elements" select="' slides '"/>
+
+<xsl:attribute-set name="formal.title.properties"
+ use-attribute-sets="normal.para.spacing">
+ <xsl:attribute name="font-weight">bold</xsl:attribute>
+ <xsl:attribute name="font-size">
+ <xsl:value-of select="$body.font.master * 1.2"/>
+ <xsl:text>pt</xsl:text>
+ </xsl:attribute>
+ <xsl:attribute name="hyphenate">false</xsl:attribute>
+ <xsl:attribute name="space-after.minimum">8pt</xsl:attribute>
+ <xsl:attribute name="space-after.optimum">6pt</xsl:attribute>
+ <xsl:attribute name="space-after.maximum">10pt</xsl:attribute>
+</xsl:attribute-set>
+
+<xsl:attribute-set name="list.block.spacing">
+ <xsl:attribute name="space-before.optimum">12pt</xsl:attribute>
+ <xsl:attribute name="space-before.minimum">8pt</xsl:attribute>
+ <xsl:attribute name="space-before.maximum">14pt</xsl:attribute>
+ <xsl:attribute name="space-after.optimum">0pt</xsl:attribute>
+ <xsl:attribute name="space-after.minimum">0pt</xsl:attribute>
+ <xsl:attribute name="space-after.maximum">0pt</xsl:attribute>
+</xsl:attribute-set>
+
+<xsl:attribute-set name="list.item.spacing">
+ <xsl:attribute name="space-before.optimum">6pt</xsl:attribute>
+ <xsl:attribute name="space-before.minimum">4pt</xsl:attribute>
+ <xsl:attribute name="space-before.maximum">8pt</xsl:attribute>
+</xsl:attribute-set>
+
+<xsl:attribute-set name="normal.para.spacing">
+ <xsl:attribute name="space-before.optimum">8pt</xsl:attribute>
+ <xsl:attribute name="space-before.minimum">6pt</xsl:attribute>
+ <xsl:attribute name="space-before.maximum">10pt</xsl:attribute>
+</xsl:attribute-set>
+
+<xsl:attribute-set name="orderedlist.properties">
+ <xsl:attribute name="font-size">
+ <xsl:value-of select="$body.font.size"/>
+ </xsl:attribute>
+</xsl:attribute-set>
+
+<xsl:attribute-set name="footnote.properties">
+ <xsl:attribute name="font-size">
+ <xsl:value-of select="$body.font.size * 0.8"/>
+ </xsl:attribute>
+</xsl:attribute-set>
+
+<xsl:attribute-set name="slides.titlepage.recto.style">
+ <xsl:attribute name="font-family">
+ <xsl:value-of select="$slide.font.family"/>
+ </xsl:attribute>
+</xsl:attribute-set>
+
+<xsl:attribute-set name="slides.titlepage.verso.style">
+ <xsl:attribute name="font-family">
+ <xsl:value-of select="$slide.font.family"/>
+ </xsl:attribute>
+</xsl:attribute-set>
+
+<xsl:template name="bibliography.titlepage"/>
+
+<!-- Do not add db namespace to dbs elements -->
+<xsl:template match="*[namespace-uri() = 'http://docbook.org/ns/docbook-slides']" mode="addNS">
+ <xsl:copy-of select="."/>
+</xsl:template>
+
+<!-- End of overrides -->
+
+<xsl:template name="user.pagemasters">
+ <fo:simple-page-master master-name="slides-titlepage-master"
+ xsl:use-attribute-sets="slides.titlepage.master.properties">
+ <fo:region-body xsl:use-attribute-sets="slides.titlepage.region-body.properties"/>
+ </fo:simple-page-master>
+
+ <fo:simple-page-master master-name="slides-foil-master"
+ xsl:use-attribute-sets="foil.master.properties">
+ <fo:region-body xsl:use-attribute-sets="foil.region-body.properties"/>
+ <fo:region-before region-name="xsl-region-before-foil" xsl:use-attribute-sets="foil.region-before.properties"/>
+ <fo:region-after region-name="xsl-region-after-foil" xsl:use-attribute-sets="foil.region-after.properties"/>
+ </fo:simple-page-master>
+
+ <fo:simple-page-master master-name="slides-foil-continued-master"
+ xsl:use-attribute-sets="foil.master.properties">
+ <fo:region-body xsl:use-attribute-sets="foil.region-body.properties"/>
+ <fo:region-before region-name="xsl-region-before-foil-continued" xsl:use-attribute-sets="foil.region-before.properties"/>
+ <fo:region-after region-name="xsl-region-after-foil-continued" xsl:use-attribute-sets="foil.region-after.properties"/>
+ </fo:simple-page-master>
+
+ <fo:page-sequence-master master-name="slides-titlepage">
+ <fo:repeatable-page-master-alternatives>
+ <fo:conditional-page-master-reference master-reference="slides-titlepage-master"/>
+ </fo:repeatable-page-master-alternatives>
+ </fo:page-sequence-master>
+
+ <fo:page-sequence-master master-name="slides-foil">
+ <fo:repeatable-page-master-alternatives>
+ <fo:conditional-page-master-reference master-reference="slides-foil-master"
+ page-position="first"/>
+ <fo:conditional-page-master-reference master-reference="slides-foil-continued-master"/>
+ </fo:repeatable-page-master-alternatives>
+ </fo:page-sequence-master>
+</xsl:template>
+
+<xsl:template name="presentation.title">
+ <xsl:call-template name="get.title">
+ <xsl:with-param name="ctx" select="/dbs:slides"/>
+ </xsl:call-template>
+</xsl:template>
+
+<xsl:template name="slides.bookmarks">
+ <fo:bookmark-tree>
+ <xsl:apply-templates select="/dbs:slides/dbs:foil|/dbs:slides/dbs:foilgroup" mode="bookmark.mode"/>
+ </fo:bookmark-tree>
+</xsl:template>
+
+<xsl:template match="dbs:foil|dbs:foilgroup" mode="bookmark.mode">
+ <fo:bookmark>
+ <xsl:attribute name="internal-destination">
+ <xsl:call-template name="object.id"/>
+ </xsl:attribute>
+
+ <fo:bookmark-title>
+ <xsl:call-template name="get.title"/>
+ </fo:bookmark-title>
+
+ <xsl:if test="self::dbs:foilgroup">
+ <xsl:apply-templates select="dbs:foil" mode="bookmark.mode"/>
+ </xsl:if>
+ </fo:bookmark>
+</xsl:template>
+
+<xsl:template match="db:author" mode="titlepage.mode">
+ <fo:block>
+ <xsl:apply-templates select="db:personname" mode="titlepage.mode"/>
+ </fo:block>
+
+ <fo:block>
+ <xsl:apply-templates select="db:affiliation" mode="titlepage.mode"/>
+ </fo:block>
+
+ <fo:block>
+ <xsl:apply-templates select="db:email" mode="titlepage.mode"/>
+ </fo:block>
+</xsl:template>
+
+<xsl:template match="/">
+ <fo:root xsl:use-attribute-sets="slides.properties">
+ <fo:layout-master-set>
+ <xsl:call-template name="user.pagemasters"/>
+ </fo:layout-master-set>
+
+ <xsl:call-template name="slides.bookmarks"/>
+
+ <xsl:if test="$generate.titlepage != 0">
+ <fo:page-sequence hyphenate="{$hyphenate}"
+ master-reference="slides-titlepage">
+ <xsl:attribute name="language">
+ <xsl:call-template name="l10n.language"/>
+ </xsl:attribute>
+
+ <fo:flow flow-name="xsl-region-body">
+ <fo:block>
+ <xsl:apply-templates select="/dbs:slides" mode="titlepage"/>
+ </fo:block>
+ </fo:flow>
+ </fo:page-sequence>
+ </xsl:if>
+
+ <xsl:apply-templates select="/dbs:slides/dbs:foil|/dbs:slides/dbs:foilgroup"/>
+ </fo:root>
+</xsl:template>
+
+<xsl:template match="dbs:slides" mode="titlepage">
+ <xsl:call-template name="slides.titlepage"/>
+</xsl:template>
+
+<xsl:template name="page.template">
+ <xsl:param name="mode" select="'normal'"/>
+
+ <xsl:param name="title">
+ <xsl:call-template name="get.title"/>
+ </xsl:param>
+
+ <xsl:param name="subtitle">
+ <xsl:call-template name="get.subtitle"/>
+ </xsl:param>
+
+ <fo:page-sequence master-reference="slides-foil" xsl:use-attribute-sets="foil.page-sequence.properties">
+ <xsl:attribute name="language">
+ <xsl:call-template name="l10n.language"/>
+ </xsl:attribute>
+
+ <xsl:attribute name="id">
+ <xsl:call-template name="object.id"/>
+ </xsl:attribute>
+
+ <fo:static-content flow-name="xsl-region-before-foil">
+ <fo:block xsl:use-attribute-sets="foil.header.properties">
+ <fo:block xsl:use-attribute-sets="foil.title.properties">
+ <xsl:value-of select="$title"/>
+ </fo:block>
+
+ <fo:block xsl:use-attribute-sets="foil.subtitle.properties">
+ <xsl:value-of select="$subtitle"/>
+ </fo:block>
+ </fo:block>
+ </fo:static-content>
+
+ <fo:static-content flow-name="xsl-region-before-foil-continued">
+ <fo:block xsl:use-attribute-sets="foil.header.properties">
+ <fo:block xsl:use-attribute-sets="foil.title.properties">
+ <xsl:value-of select="$title"/>
+ <xsl:text> </xsl:text>
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'Continued'"/>
+ </xsl:call-template>
+ </fo:block>
+ </fo:block>
+ </fo:static-content>
+
+ <fo:static-content flow-name="xsl-region-after-foil">
+ <xsl:call-template name="generate.footer"/>
+ </fo:static-content>
+
+ <fo:static-content flow-name="xsl-region-after-foil-continued">
+ <xsl:call-template name="generate.footer"/>
+ </fo:static-content>
+
+ <fo:flow flow-name="xsl-region-body">
+ <fo:block xsl:use-attribute-sets="foil.properties">
+ <xsl:choose>
+ <xsl:when test="$mode = 'normal'">
+ <xsl:apply-templates select="*[not(self::dbs:foil)][not(self::db:info)][not(self::db:title)][not(self::db:titleabbrev)][not(self::db:subtitle)][not(self::dbs:speakernotes)][not(self::dbs:handoutnotes)]"/>
+
+ <xsl:if test="self::dbs:foilgroup and ($generate.foilgroup.toc != 0)">
+ <xsl:call-template name="foilgroup.generate.toc"/>
+ </xsl:if>
+ </xsl:when>
+
+ <xsl:when test="$mode = 'speakernotes'">
+ <xsl:apply-templates select="dbs:speakernotes"/>
+ </xsl:when>
+
+ <xsl:when test="$mode = 'handoutnotes'">
+ <xsl:apply-templates select="dbs:handoutnotes"/>
+ </xsl:when>
+ </xsl:choose>
+ </fo:block>
+ </fo:flow>
+ </fo:page-sequence>
+</xsl:template>
+
+<xsl:template match="dbs:foil|dbs:foilgroup">
+ <xsl:call-template name="page.template"/>
+
+ <xsl:call-template name="generate.slide.notes"/>
+
+ <xsl:if test="self::dbs:foilgroup">
+ <xsl:apply-templates select="dbs:foil"/>
+ </xsl:if>
+</xsl:template>
+
+<xsl:template name="generate.slide.notes">
+ <xsl:variable name="subtitle.handoutnotes">
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'Handoutnotes'"/>
+ </xsl:call-template>
+ </xsl:variable>
+
+ <xsl:variable name="subtitle.speakernotes">
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'Speakernotes'"/>
+ </xsl:call-template>
+ </xsl:variable>
+
+ <xsl:if test="($generate.handoutnotes != 0) and ./dbs:handoutnotes">
+ <xsl:call-template name="page.template">
+ <xsl:with-param name="mode" select="'handoutnotes'"/>
+ <xsl:with-param name="subtitle" select="$subtitle.handoutnotes"/>
+ </xsl:call-template>
+ </xsl:if>
+
+ <xsl:if test="($generate.speakernotes != 0) and ./dbs:speakernotes">
+ <xsl:call-template name="page.template">
+ <xsl:with-param name="mode" select="'speakernotes'"/>
+ <xsl:with-param name="subtitle" select="$subtitle.speakernotes"/>
+ </xsl:call-template>
+ </xsl:if>
+</xsl:template>
+
+<xsl:template match="dbs:handoutnotes">
+ <fo:block xsl:use-attribute-sets="handoutnotes.properties">
+ <xsl:apply-templates/>
+ </fo:block>
+</xsl:template>
+
+<xsl:template match="dbs:speakernotes">
+ <fo:block xsl:use-attribute-sets="speakernotes.properties">
+ <xsl:apply-templates/>
+ </fo:block>
+</xsl:template>
+
+<xsl:template match="dbs:block">
+ <xsl:apply-templates/>
+</xsl:template>
+
+<xsl:template name="generate.footer">
+<fo:block xsl:use-attribute-sets="foil.footer.properties">
+ <fo:table>
+ <fo:table-column column-number="1" column-width="33%"/>
+ <fo:table-column column-number="2" column-width="34%"/>
+ <fo:table-column column-number="3" column-width="33%"/>
+
+ <fo:table-body>
+ <fo:table-row height="14pt">
+ <fo:table-cell text-align="left">
+ <xsl:call-template name="footer.left"/>
+ </fo:table-cell>
+
+ <fo:table-cell text-align="center">
+ <xsl:call-template name="footer.center"/>
+ </fo:table-cell>
+
+ <fo:table-cell text-align="right">
+ <xsl:call-template name="footer.right"/>
+ </fo:table-cell>
+ </fo:table-row>
+ </fo:table-body>
+ </fo:table>
+</fo:block>
+</xsl:template>
+
+<xsl:template name="footer.left">
+ <fo:block/>
+</xsl:template>
+
+<xsl:template name="footer.center">
+ <xsl:if test="($generate.copyright != 0) and /dbs:slides/db:info/db:copyright">
+ <fo:block>
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'Copyright'"/>
+ </xsl:call-template>
+ <xsl:call-template name="gentext.space"/>
+ <xsl:text>&#xa9;</xsl:text>
+ <xsl:call-template name="gentext.space"/>
+ <xsl:value-of select="/dbs:slides/db:info/db:copyright/db:year"/>
+ <xsl:call-template name="gentext.space"/>
+ <xsl:value-of select="/dbs:slides/db:info/db:copyright/db:holder"/>
+ </fo:block>
+ </xsl:if>
+
+ <xsl:if test="($generate.pubdate != 0) and /dbs:slides/db:info/db:pubdate">
+ <xsl:call-template name="slide.pubdate"/>
+ </xsl:if>
+</xsl:template>
+
+<xsl:template name="footer.right">
+ <fo:block>
+ <xsl:if test="$generate.page.number != 'no'">
+ <fo:page-number/>
+ </xsl:if>
+
+ <xsl:if test="$generate.page.number = 'full'">
+ <xsl:text>&#160;/&#160;</xsl:text>
+ <fo:page-number-citation>
+ <xsl:attribute name="ref-id">
+ <xsl:call-template name="object.id">
+ <xsl:with-param name="object" select="(//dbs:foilgroup|//dbs:foil)[last()]"/>
+ </xsl:call-template>
+ </xsl:attribute>
+ </fo:page-number-citation>
+ </xsl:if>
+ </fo:block>
+</xsl:template>
+
+<xsl:template name="slide.pubdate">
+ <fo:block>
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'Published'"/>
+ </xsl:call-template>
+ <xsl:text>: </xsl:text>
+ <xsl:value-of select="/dbs:slides/db:info/db:pubdate"/>
+ </fo:block>
+</xsl:template>
+
+<xsl:template name="foilgroup.generate.toc">
+ <xsl:choose>
+ <xsl:when test="$generate.foilgroup.numbered.toc != 0">
+ <fo:list-block xsl:use-attribute-sets="list.block.spacing orderedlist.properties">
+ <xsl:for-each select="./dbs:foil">
+ <fo:list-item xsl:use-attribute-sets="list.item.spacing">
+ <fo:list-item-label end-indent="label-end()" xsl:use-attribute-sets="orderedlist.label.properties">
+ <fo:block>
+ <xsl:value-of select="position()"/>
+ </fo:block>
+ </fo:list-item-label>
+
+ <fo:list-item-body start-indent="body-start()">
+ <fo:block>
+ <xsl:call-template name="get.title"/>
+ </fo:block>
+ </fo:list-item-body>
+ </fo:list-item>
+ </xsl:for-each>
+ </fo:list-block>
+ </xsl:when>
+
+ <xsl:otherwise>
+ <fo:list-block xsl:use-attribute-sets="list.block.spacing itemizedlist.properties">
+ <xsl:for-each select="./dbs:foil">
+ <fo:list-item xsl:use-attribute-sets="list.item.spacing">
+ <fo:list-item-label end-indent="label-end()" xsl:use-attribute-sets="itemizedlist.label.properties">
+ <fo:block>
+ <xsl:call-template name="itemizedlist.label.markup">
+ <xsl:with-param name="itemsymbol">
+ <xsl:call-template name="list.itemsymbol"/>
+ </xsl:with-param>
+ </xsl:call-template>
+ </fo:block>
+ </fo:list-item-label>
+
+ <fo:list-item-body start-indent="body-start()">
+ <fo:block>
+ <xsl:call-template name="get.title"/>
+ </fo:block>
+ </fo:list-item-body>
+ </fo:list-item>
+ </xsl:for-each>
+ </fo:list-block>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<xsl:template match="*[namespace-uri() = 'http://www.w3.org/2000/svg']">
+ <xsl:call-template name="handle.embedded">
+ <xsl:with-param name="modeParam" select="$svg.embedding.mode"/>
+ <xsl:with-param name="fileExt" select="'.svg'"/>
+ </xsl:call-template>
+</xsl:template>
+
+<xsl:template match="*[namespace-uri() = 'http://www.w3.org/1998/Math/MathML']">
+ <xsl:call-template name="handle.embedded">
+ <xsl:with-param name="modeParam" select="$mml.embedding.mode"/>
+ <xsl:with-param name="fileExt" select="'.mml'"/>
+ </xsl:call-template>
+</xsl:template>
+
+<xsl:template name="handle.embedded">
+ <xsl:param name="modeParam">inline</xsl:param>
+ <xsl:param name="fileExt"/>
+
+ <xsl:choose>
+ <xsl:when test="$modeParam = 'inline'">
+ <xsl:copy-of select="."/>
+ </xsl:when>
+
+ <xsl:when test="$modeParam = 'instream-foreign-object'">
+ <fo:instream-foreign-object>
+ <xsl:copy-of select="."/>
+ </fo:instream-foreign-object>
+ </xsl:when>
+
+ <xsl:otherwise>
+ <xsl:variable name="id">
+ <xsl:call-template name="object.id"/>
+ </xsl:variable>
+ <xsl:variable name="fname">
+ <xsl:value-of select="concat($id, $fileExt)"/>
+ </xsl:variable>
+ <xsl:variable name="prefix">url('</xsl:variable>
+ <xsl:variable name="suffix">')</xsl:variable>
+ <xsl:variable name="file.uri">
+ <xsl:value-of select="concat($prefix, $fname, $suffix)"/>
+ </xsl:variable>
+
+ <exsl:document href="{$fname}">
+ <xsl:copy-of select="."/>
+
+ <xsl:fallback>
+ <xsl:message terminate="yes">
+ Your XSLT processor does not support exsl:document.
+ You can only use inline SVG images.
+ </xsl:message>
+ </xsl:fallback>
+ </exsl:document>
+
+ <xsl:choose>
+ <xsl:when test="$modeParam = 'external-graphic'">
+ <fo:external-graphic src="{$file.uri}"/>
+ </xsl:when>
+
+ <xsl:otherwise>
+ <xsl:message terminate="yes">
+ Unknown processing mode <xsl:value-of select="$modeParam"/>.
+ </xsl:message>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<xsl:template match="dbs:foil|dbs:foilgroup" mode="xref-to">
+ <xsl:param name="referrer"/>
+ <xsl:param name="xrefstyle"/>
+
+ <xsl:apply-templates select="." mode="object.xref.markup">
+ <xsl:with-param name="purpose" select="'xref'"/>
+ <xsl:with-param name="xrefstyle" select="$xrefstyle"/>
+ <xsl:with-param name="referrer" select="$referrer"/>
+ </xsl:apply-templates>
+</xsl:template>
+
+</xsl:stylesheet>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/1.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/1.png
new file mode 100644
index 000000000..3d02a32d7
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/1.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/1.svg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/1.svg
new file mode 100644
index 000000000..bb71eb03f
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/1.svg
@@ -0,0 +1,6 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
+ "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
+<svg width="24" height="24">
+ <text x="0" y="5">1</text>
+</svg>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/10.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/10.png
new file mode 100644
index 000000000..a0bd8b6a1
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/10.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/10.svg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/10.svg
new file mode 100644
index 000000000..03268e130
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/10.svg
@@ -0,0 +1,6 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
+ "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
+<svg width="24" height="24">
+ <text x="0" y="5">10</text>
+</svg>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/11.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/11.png
new file mode 100644
index 000000000..c08a9ee08
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/11.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/11.svg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/11.svg
new file mode 100644
index 000000000..523d26516
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/11.svg
@@ -0,0 +1,6 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
+ "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
+<svg width="24" height="24">
+ <text x="0" y="5">11</text>
+</svg>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/12.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/12.png
new file mode 100644
index 000000000..660344736
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/12.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/12.svg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/12.svg
new file mode 100644
index 000000000..4419da363
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/12.svg
@@ -0,0 +1,6 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
+ "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
+<svg width="24" height="24">
+ <text x="0" y="5">12</text>
+</svg>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/13.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/13.png
new file mode 100644
index 000000000..d6db3b006
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/13.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/13.svg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/13.svg
new file mode 100644
index 000000000..01dded502
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/13.svg
@@ -0,0 +1,6 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
+ "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
+<svg width="24" height="24">
+ <text x="0" y="5">13</text>
+</svg>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/14.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/14.png
new file mode 100644
index 000000000..5d6c89971
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/14.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/14.svg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/14.svg
new file mode 100644
index 000000000..de2b624e7
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/14.svg
@@ -0,0 +1,6 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
+ "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
+<svg width="24" height="24">
+ <text x="0" y="5">14</text>
+</svg>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/15.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/15.png
new file mode 100644
index 000000000..ef8b5f50c
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/15.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/15.svg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/15.svg
new file mode 100644
index 000000000..4df779f34
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/15.svg
@@ -0,0 +1,6 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
+ "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
+<svg width="24" height="24">
+ <text x="0" y="5">15</text>
+</svg>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/16.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/16.png
new file mode 100644
index 000000000..6a63d66ee
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/16.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/16.svg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/16.svg
new file mode 100644
index 000000000..c3557199f
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/16.svg
@@ -0,0 +1,6 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
+ "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
+<svg width="24" height="24">
+ <text x="0" y="5">16</text>
+</svg>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/17.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/17.png
new file mode 100644
index 000000000..1efe6395b
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/17.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/17.svg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/17.svg
new file mode 100644
index 000000000..62a3b5cda
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/17.svg
@@ -0,0 +1,6 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
+ "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
+<svg width="24" height="24">
+ <text x="0" y="5">17</text>
+</svg>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/18.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/18.png
new file mode 100644
index 000000000..486ccbf4f
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/18.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/18.svg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/18.svg
new file mode 100644
index 000000000..535bc8f46
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/18.svg
@@ -0,0 +1,6 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
+ "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
+<svg width="24" height="24">
+ <text x="0" y="5">18</text>
+</svg>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/19.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/19.png
new file mode 100644
index 000000000..d8bca8258
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/19.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/19.svg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/19.svg
new file mode 100644
index 000000000..688b325e8
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/19.svg
@@ -0,0 +1,6 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
+ "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
+<svg width="24" height="24">
+ <text x="0" y="5">19</text>
+</svg>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/2.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/2.png
new file mode 100644
index 000000000..1a77a868c
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/2.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/2.svg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/2.svg
new file mode 100644
index 000000000..23c8558fa
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/2.svg
@@ -0,0 +1,6 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
+ "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
+<svg width="24" height="24">
+ <text x="0" y="5">2</text>
+</svg>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/20.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/20.png
new file mode 100644
index 000000000..6d5376886
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/20.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/20.svg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/20.svg
new file mode 100644
index 000000000..aacc3b38d
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/20.svg
@@ -0,0 +1,6 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
+ "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
+<svg width="24" height="24">
+ <text x="0" y="5">20</text>
+</svg>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/21.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/21.png
new file mode 100644
index 000000000..2384215d5
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/21.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/21.svg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/21.svg
new file mode 100644
index 000000000..d928558a3
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/21.svg
@@ -0,0 +1,6 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
+ "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
+<svg width="24" height="24">
+ <text x="0" y="5">21</text>
+</svg>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/22.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/22.png
new file mode 100644
index 000000000..717ae94a1
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/22.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/22.svg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/22.svg
new file mode 100644
index 000000000..8eec99e98
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/22.svg
@@ -0,0 +1,6 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
+ "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
+<svg width="24" height="24">
+ <text x="0" y="5">22</text>
+</svg>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/23.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/23.png
new file mode 100644
index 000000000..8edfe8a0d
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/23.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/23.svg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/23.svg
new file mode 100644
index 000000000..4e6d1a178
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/23.svg
@@ -0,0 +1,6 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
+ "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
+<svg width="24" height="24">
+ <text x="0" y="5">23</text>
+</svg>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/24.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/24.png
new file mode 100644
index 000000000..93f7d8ad7
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/24.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/24.svg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/24.svg
new file mode 100644
index 000000000..82a817dd9
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/24.svg
@@ -0,0 +1,6 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
+ "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
+<svg width="24" height="24">
+ <text x="0" y="5">24</text>
+</svg>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/25.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/25.png
new file mode 100644
index 000000000..724ccfe55
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/25.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/25.svg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/25.svg
new file mode 100644
index 000000000..0cba41c47
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/25.svg
@@ -0,0 +1,6 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
+ "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
+<svg width="24" height="24">
+ <text x="0" y="5">25</text>
+</svg>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/26.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/26.png
new file mode 100644
index 000000000..9190642cd
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/26.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/26.svg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/26.svg
new file mode 100644
index 000000000..5dcaf77e5
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/26.svg
@@ -0,0 +1,6 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
+ "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
+<svg width="24" height="24">
+ <text x="0" y="5">26</text>
+</svg>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/27.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/27.png
new file mode 100644
index 000000000..4103d5527
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/27.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/27.svg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/27.svg
new file mode 100644
index 000000000..fe86e865a
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/27.svg
@@ -0,0 +1,6 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
+ "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
+<svg width="24" height="24">
+ <text x="0" y="5">27</text>
+</svg>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/28.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/28.png
new file mode 100644
index 000000000..7f092006b
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/28.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/28.svg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/28.svg
new file mode 100644
index 000000000..e9e3fb791
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/28.svg
@@ -0,0 +1,6 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
+ "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
+<svg width="24" height="24">
+ <text x="0" y="5">28</text>
+</svg>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/29.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/29.png
new file mode 100644
index 000000000..8e6646f2b
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/29.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/29.svg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/29.svg
new file mode 100644
index 000000000..d1ae0a09c
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/29.svg
@@ -0,0 +1,6 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
+ "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
+<svg width="24" height="24">
+ <text x="0" y="5">29</text>
+</svg>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/3.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/3.png
new file mode 100644
index 000000000..7728b4d5c
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/3.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/3.svg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/3.svg
new file mode 100644
index 000000000..78d8b29b8
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/3.svg
@@ -0,0 +1,6 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
+ "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
+<svg width="24" height="24">
+ <text x="0" y="5">3</text>
+</svg>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/30.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/30.png
new file mode 100644
index 000000000..460c1c33f
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/30.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/30.svg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/30.svg
new file mode 100644
index 000000000..20a6e0af2
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/30.svg
@@ -0,0 +1,6 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
+ "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
+<svg width="24" height="24">
+ <text x="0" y="5">30</text>
+</svg>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/4.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/4.png
new file mode 100644
index 000000000..d4702fd7e
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/4.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/4.svg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/4.svg
new file mode 100644
index 000000000..fa625a7b8
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/4.svg
@@ -0,0 +1,6 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
+ "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
+<svg width="24" height="24">
+ <text x="0" y="5">4</text>
+</svg>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/5.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/5.png
new file mode 100644
index 000000000..f44526ca5
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/5.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/5.svg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/5.svg
new file mode 100644
index 000000000..2a2f97616
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/5.svg
@@ -0,0 +1,6 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
+ "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
+<svg width="24" height="24">
+ <text x="0" y="5">5</text>
+</svg>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/6.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/6.png
new file mode 100644
index 000000000..4105338ab
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/6.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/6.svg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/6.svg
new file mode 100644
index 000000000..3fced48e2
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/6.svg
@@ -0,0 +1,6 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
+ "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
+<svg width="24" height="24">
+ <text x="0" y="5">6</text>
+</svg>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/7.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/7.png
new file mode 100644
index 000000000..d56a240e0
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/7.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/7.svg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/7.svg
new file mode 100644
index 000000000..0cc4191d8
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/7.svg
@@ -0,0 +1,6 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
+ "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
+<svg width="24" height="24">
+ <text x="0" y="5">7</text>
+</svg>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/8.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/8.png
new file mode 100644
index 000000000..6715b4a06
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/8.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/8.svg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/8.svg
new file mode 100644
index 000000000..c80281c62
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/8.svg
@@ -0,0 +1,6 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
+ "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
+<svg width="24" height="24">
+ <text x="0" y="5">8</text>
+</svg>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/9.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/9.png
new file mode 100644
index 000000000..59c7fa62f
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/9.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/9.svg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/9.svg
new file mode 100644
index 000000000..6a71f9d6f
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/9.svg
@@ -0,0 +1,6 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
+ "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
+<svg width="24" height="24">
+ <text x="0" y="5">9</text>
+</svg>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/gen.sh b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/gen.sh
new file mode 100755
index 000000000..954a805c9
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/callouts/gen.sh
@@ -0,0 +1,23 @@
+#!/bin/sh
+
+# $FreeBSD$
+
+#
+# This script was taken from FreeBSD.
+#
+# It uses ImageMagick to generate callout icons.
+#
+
+for i in `jot 9 1`
+do
+ convert -size 202x202 xc:green -transparent green -fill black -draw 'circle 100,100 100' -fill white -stroke none -pointsize 160 -gravity center -kerning -5 -font Helvetica-bold -draw "text 0,5 \"$i\"" -scale '24x24' $i.png
+ convert -size 202x202 xc:green -transparent green -fill black -draw 'circle 100,100 100' -fill white -stroke none -pointsize 160 -gravity center -kerning -5 -font Helvetica-bold -draw "text 0,5 \"$i\"" -scale '24x24' $i.svg
+done
+
+for i in `jot 21 10`
+do
+ convert -size 202x202 xc:green -transparent green -fill black -draw 'circle 100,100 100' -fill white -stroke none -pointsize 140 -gravity center -kerning -5 -font Helvetica-bold -draw "text 0,5 \"$i\"" -scale '24x24' $i.png
+ convert -size 202x202 xc:green -transparent green -fill black -draw 'circle 100,100 100' -fill white -stroke none -pointsize 140 -gravity center -kerning -5 -font Helvetica-bold -draw "text 0,5 \"$i\"" -scale '24x24' $i.svg
+done
+
+exit 0
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/face1.gif b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/face1.gif
new file mode 100755
index 000000000..04e50cd79
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/face1.gif
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/face2.gif b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/face2.gif
new file mode 100755
index 000000000..12d824003
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/face2.gif
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/face3.gif b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/face3.gif
new file mode 100755
index 000000000..ac6e5e440
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/face3.gif
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/face4.gif b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/face4.gif
new file mode 100755
index 000000000..3f687402a
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/images/face4.gif
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/locatingrules.xml b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/locatingrules.xml
new file mode 100644
index 000000000..cbfc9d4d9
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/locatingrules.xml
@@ -0,0 +1,31 @@
+<?xml version="1.0"?>
+<!-- $Id: locatingrules.xml 9639 2012-10-22 18:41:00Z stefan $ -->
+
+
+<!-- This is a schema-locating file for use with a RELAX NG-aware editor -->
+<!-- such as Emacs/nXML mode. It tells your editor to automatically -->
+<!-- associate a document with an RNC schema file, based on the name of -->
+<!-- the root element of the document -->
+
+<locatingRules xmlns="http://thaiopensource.com/ns/locating-rules/1.0">
+ <namespace ns="http://docbook.org/ns/docbook-slides" uri="schema/relaxng/slides.rnc"/>
+ <documentElement localName="slides" uri="schema/relaxng/slides.rnc"/>
+
+ <namespace ns="http://docbook.org/ns/docbook" uri="schema/relaxng/docbook.rnc"/>
+</locatingRules>
+
+<!-- To use this file with Emacs/nXML mode, either: -->
+
+<!-- - do M-x customize-variable rng-schema-locating-files -->
+<!-- and then add the absolute path to this file there -->
+
+<!-- OR -->
+
+<!-- - put the following into your .emacs file: -->
+
+<!-- (setq rng-schema-locating-files -->
+<!-- (append -->
+<!-- '("~/docbook-slides/locatingrules.xml"))) -->
+
+<!-- Of course, replace the ~/docbook-slides/locatingrules.xml -->
+<!-- pathname with the appropriate location for your system. -->
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/index-osf.html b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/index-osf.html
new file mode 100755
index 000000000..abe5e8516
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/index-osf.html
@@ -0,0 +1,200 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+
+<head>
+<title>S5: An Introduction</title>
+<!-- metadata -->
+<meta name="generator" content="S5" />
+<meta name="version" content="S5 1.2a2" />
+<meta name="author" content="Eric A. Meyer" />
+<meta name="company" content="Complex Spiral Consulting" />
+<!-- configuration parameters -->
+<meta name="defaultView" content="slideshow" />
+<meta name="controlVis" content="hidden" />
+<!-- style sheet links -->
+<link rel="stylesheet" href="ui/default/slides.css" type="text/css" media="projection" id="slideProj" />
+<link rel="stylesheet" href="ui/default/outline.css" type="text/css" media="screen" id="outlineStyle" />
+<link rel="stylesheet" href="ui/default/print.css" type="text/css" media="print" id="slidePrint" />
+<link rel="stylesheet" href="ui/default/opera.css" type="text/css" media="projection" id="operaFix" />
+<!-- embedded styles -->
+<style type="text/css" media="all">
+.imgcon {width: 525px; margin: 0 auto; padding: 0; text-align: center;}
+#anim {width: 270px; height: 320px; position: relative; margin-top: 0.5em;}
+#anim img {position: absolute; top: 42px; left: 24px;}
+img#me01 {top: 0; left: 0;}
+img#me02 {left: 23px;}
+img#me04 {top: 44px;}
+img#me05 {top: 43px;left: 36px;}
+</style>
+<!-- S5 JS -->
+<script src="ui/default/slides.js" type="text/javascript"></script>
+</head>
+<body>
+
+<div class="layout">
+<div id="controls"><!-- DO NOT EDIT --></div>
+<div id="currentSlide"><!-- DO NOT EDIT --></div>
+<div id="header"></div>
+<div id="footer">
+<h1>S5 Testbed</h1>
+<h2>Your computer &#8226; Today's date</h2>
+</div>
+</div>
+
+<div class="presentation">
+
+<div class="slide">
+<h1>S5 Testbed</h1>
+<h3>Eric A. Meyer</h3>
+<h4><a href="http://www.complexspiral.com/" rel="external">Complex Spiral Consulting</a></h4>
+<div class="handout"></div>
+</div>
+
+
+<div class="slide">
+<h1>What Is S5?</h1>
+<ul>
+<li>It's a <strong>S</strong>imple <strong>S</strong>tandards-based <strong>S</strong>lide <strong>S</strong>how <strong>S</strong>ystem</li>
+<li>One XHTML document provides all of the slide show's content</li>
+<li>CSS handles the layout and look of the slides</li>
+<li>JavaScript handles the dynamic aspects of the show</li>
+<li>That's all there is to it! (<a href="#slide10">skip to summary</a>; demonstrates links internal to the slide show)</li>
+</ul>
+
+<div class="notes">
+<ul>
+<li>I have notes here!</li>
+<li>Keen.</li>
+<li>Remember to tell people that notes are a new feature in 1.2</li>
+</ul>
+</div>
+
+</div>
+
+
+<div class="slide">
+<h1>Operatic Origins</h1>
+<ul>
+<li>Opera 4 introduced <a href="http://www.opera.com/support/tutorials/operashow/" rel="external">Opera Show</a>, a projection-mode style sheet technology (link demonstrates external link styling and window spawning)</li>
+<li>Allows a single XHTML document to be turned into a PowerPoint-like slide show</li>
+<li>Adding screen and print style sheets allows for multi-medium views of a single document</li>
+<li>Highly efficient, but highly browser centric...</li>
+</ul>
+
+<div class="notes">
+<ul>
+<li>S5 and OperaShow diverged greatly in S5 1.1</li>
+<li>S5 1.2 should (we hope) bring them into harmony once more</li>
+</ul>
+</div>
+
+</div>
+
+
+<div class="slide">
+<h1>Incremental Display</h1>
+<ul class="incremental show-first">
+<li>Keep hitting/clicking "next" as long as it isn't the control link (&raquo;)</li>
+<li>Bullet points are revealed one by one
+<ul class="incremental">
+<li>All based on class name of <code>inc</code></li>
+<li>Lists can be classed to make items appear individually</li>
+<li>Individual items can be classed as well to create "animations"; see <a href="http://boxofchocolates.ca/projects/s5-incremental-graphics/" rel="external">Derek Featherstone's example</a></li>
+</ul>
+</li>
+<li>Let's try it again, but without the first bullet point being pre-highlighted...</li>
+</ul>
+</div>
+
+
+<div class="slide">
+<h1>Incremental Display II</h1>
+<ul class="incremental">
+<li>Keep hitting/clicking "next" as long as it isn't the control link (&raquo;)</li>
+<li>Bullet points are revealed one by one
+<ul>
+<li>All based on class name of <code>incremental</code></li>
+<li>Lists can be classed to make items appear individually</li>
+<li>Individual items can be classed as well to create "animations"; see <a href="http://boxofchocolates.ca/projects/s5-incremental-graphics/" rel="external">Derek Featherstone's example</a></li>
+</ul>
+</li>
+<li>Notice how the sub-list was part of the parent bullet point; that was done on purpose</li>
+<li>Now to move on to other test slides!</li>
+</ul>
+</div>
+
+
+<div class="slide">
+<h1>PNG Alpha Tests</h1>
+<div style="width: 400px; height: 150px; text-align: center; background: url(ui/bg-shade.png)">
+<p>DIV with PNG background followed by foreground PNG</p>
+<img src="ui/bg-shade.png" alt="" title="A translucent image" />
+</div>
+<div style="width: 100%; height: 150px; text-align: center; background: url(ui/bg-shade.png)">
+<p>DIV with PNG background followed by foreground PNG</p>
+<img src="ui/bg-shade.png" alt="" title="A translucent image" />
+</div>
+</div>
+
+<div class="slide">
+<h1>S5 Default File Structure</h1>
+<p style="text-align: center;">
+<img src="pix/s5filemap.png" alt="" title="At a Glance" />
+</p>
+</div>
+
+
+<div class="slide">
+<h1>S5 Themes</h1>
+<p class="imgcon">
+<img src="pix/S501.jpg" alt="" title="Default" />
+<img src="pix/S502.jpg" alt="" title="I18N" />
+<img src="pix/S503.jpg" alt="" title="Blue" />
+<img src="pix/S504.jpg" alt="" title="Flower" />
+(one way of presenting multiple graphics)
+</p>
+</div>
+
+
+<div class="slide">
+<h1>Incremental S5 Themes</h1>
+<p class="imgcon">
+<img src="pix/S501.jpg" alt="" title="Default" class="incremental" />
+<img src="pix/S502.jpg" alt="" title="I18N" class="incremental" />
+<img src="pix/S503.jpg" alt="" title="Blue" class="incremental" />
+<img src="pix/S504.jpg" alt="" title="Flower" class="incremental" />
+(one by one!)
+</p>
+</div>
+
+
+<div class="slide">
+<h1>Incremental Animation</h1>
+<ul>
+<li>A demonstration of just one of the many ways to accomplish simple animation-like effects <small>(using a diagram from <a href="http://gmpg.org/xfn/and/" rel="external">"XFN and..."</a>)</small></li>
+</ul>
+<p class="imgcon" id="anim">
+<img src="pix/mememe01.png" id="me01" alt="" />
+<img src="pix/mememe02.png" alt="" id="me02" class="incremental" />
+<img src="pix/mememe03.png" alt="" id="me03" class="incremental" />
+<img src="pix/mememe04.png" alt="" id="me04" class="incremental" />
+<img src="pix/mememe05.png" alt="" id="me05" class="incremental" />
+</p>
+</div>
+
+
+<div class="slide">
+<h1>In Summary</h1>
+<ul>
+<li>With minimal scripting, we have recreated and improved upon a (currently) browser-specific technology, making it cross-browser in the process</li>
+<li>The S5 format is OSF 1.0 compatible</li>
+<li>S5 is a very flexible and lightweight slide show system available for anyone to use</li>
+</ul>
+</div>
+
+</div>
+
+</body>
+</html>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/index-xoxo.html b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/index-xoxo.html
new file mode 100755
index 000000000..4ca9fbcd7
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/index-xoxo.html
@@ -0,0 +1,201 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+
+<head>
+<title>S5: An Introduction</title>
+<!-- metadata -->
+<meta name="generator" content="S5" />
+<meta name="version" content="S5 1.2a2" />
+<meta name="author" content="Eric A. Meyer" />
+<meta name="company" content="Complex Spiral Consulting" />
+<!-- configuration parameters -->
+<meta name="defaultView" content="slideshow" />
+<meta name="controlVis" content="hidden" />
+<!-- style sheet links -->
+<link rel="stylesheet" href="ui/default/slides.css" type="text/css" media="projection" id="slideProj" />
+<link rel="stylesheet" href="ui/default/outline.css" type="text/css" media="screen" id="outlineStyle" />
+<link rel="stylesheet" href="ui/default/print.css" type="text/css" media="print" id="slidePrint" />
+<link rel="stylesheet" href="ui/default/opera.css" type="text/css" media="projection" id="operaFix" />
+<!-- embedded styles -->
+<style type="text/css" media="all">
+.imgcon {width: 525px; margin: 0 auto; padding: 0; text-align: center;}
+#anim {width: 270px; height: 320px; position: relative; margin-top: 0.5em;}
+#anim img {position: absolute; top: 42px; left: 24px;}
+img#me01 {top: 0; left: 0;}
+img#me02 {left: 23px;}
+img#me04 {top: 44px;}
+img#me05 {top: 43px;left: 36px;}
+</style>
+<!-- S5 JS -->
+<script src="ui/default/slides.js" type="text/javascript"></script>
+</head>
+<body>
+
+<div class="layout">
+<div id="controls"><!-- DO NOT EDIT --></div>
+<div id="currentSlide"><!-- DO NOT EDIT --></div>
+<div id="header"></div>
+<div id="footer">
+<h1>S5 Testbed</h1>
+<h2>Your computer &#8226; Today's date</h2>
+</div>
+</div>
+
+<ol class="xoxo presentation">
+
+<li class="slide">
+<h1>S5 Testbed</h1>
+<h3>Eric A. Meyer</h3>
+<h4><a href="http://www.complexspiral.com/" rel="external">Complex Spiral Consulting</a></h4>
+<div class="handout"></div>
+</li>
+
+
+<li class="slide">
+<h1>What Is S5?</h1>
+<ul>
+<li>It's a <strong>S</strong>imple <strong>S</strong>tandards-based <strong>S</strong>lide <strong>S</strong>how <strong>S</strong>ystem</li>
+<li>One XHTML document provides all of the slide show's content</li>
+<li>CSS handles the layout and look of the slides</li>
+<li>JavaScript handles the dynamic aspects of the show</li>
+<li>That's all there is to it! (<a href="#slide10">skip to summary</a>; demonstrates links internal to the slide show)</li>
+</ul>
+
+<div class="notes">
+<ul>
+<li>I have notes here!</li>
+<li>Keen.</li>
+<li>Remember to tell people that notes are a new feature in 1.2</li>
+</ul>
+</div>
+
+</li>
+
+
+<li class="slide">
+<h1>Operatic Origins</h1>
+<ul>
+<li>Opera 4 introduced <a href="http://www.opera.com/support/tutorials/operashow/" rel="external">Opera Show</a>, a projection-mode style sheet technology (link demonstrates external link styling and window spawning)</li>
+<li>Allows a single XHTML document to be turned into a PowerPoint-like slide show</li>
+<li>Adding screen and print style sheets allows for multi-medium views of a single document</li>
+<li>Highly efficient, but highly browser centric...</li>
+</ul>
+
+<div class="notes">
+<ul>
+<li>S5 and OperaShow diverged greatly in S5 1.1</li>
+<li>S5 1.2 should (we hope) bring them into harmony once more</li>
+</ul>
+</div>
+
+</li>
+
+
+<li class="slide">
+<h1>Incremental Display</h1>
+<ul class="incremental show-first">
+<li>Keep hitting/clicking "next" as long as it isn't the control link (&raquo;)</li>
+<li>Bullet points are revealed one by one
+<ul class="incremental">
+<li>All based on class name of <code>inc</code></li>
+<li>Lists can be classed to make items appear individually</li>
+<li>Individual items can be classed as well to create "animations"; see <a href="http://boxofchocolates.ca/projects/s5-incremental-graphics/" rel="external">Derek Featherstone's example</a></li>
+</ul>
+</li>
+<li>Let's try it again, but without the first bullet point being pre-highlighted...</li>
+</ul>
+</li>
+
+
+<li class="slide">
+<h1>Incremental Display II</h1>
+<ul class="incremental">
+<li>Keep hitting/clicking "next" as long as it isn't the control link (&raquo;)</li>
+<li>Bullet points are revealed one by one
+<ul>
+<li>All based on class name of <code>incremental</code></li>
+<li>Lists can be classed to make items appear individually</li>
+<li>Individual items can be classed as well to create "animations"; see <a href="http://boxofchocolates.ca/projects/s5-incremental-graphics/" rel="external">Derek Featherstone's example</a></li>
+</ul>
+</li>
+<li>Notice how the sub-list was part of the parent bullet point; that was done on purpose</li>
+<li>Now to move on to other test slides!</li>
+</ul>
+</li>
+
+
+<li class="slide">
+<h1>PNG Alpha Tests</h1>
+<div style="width: 400px; height: 150px; text-align: center; background: url(ui/bg-shade.png)">
+<p>DIV with PNG background followed by foreground PNG</p>
+<img src="ui/bg-shade.png" alt="" title="A translucent image" />
+</div>
+<div style="width: 100%; height: 150px; text-align: center; background: url(ui/bg-shade.png)">
+<p>DIV with PNG background followed by foreground PNG</p>
+<img src="ui/bg-shade.png" alt="" title="A translucent image" />
+</div>
+</li>
+
+
+<li class="slide">
+<h1>S5 Default File Structure</h1>
+<p style="text-align: center;">
+<img src="pix/s5filemap.png" alt="" title="At a Glance" />
+</p>
+</li>
+
+
+<li class="slide">
+<h1>S5 Themes</h1>
+<p class="imgcon">
+<img src="pix/S501.jpg" alt="" title="Default" />
+<img src="pix/S502.jpg" alt="" title="I18N" />
+<img src="pix/S503.jpg" alt="" title="Blue" />
+<img src="pix/S504.jpg" alt="" title="Flower" />
+(one way of presenting multiple graphics)
+</p>
+</li>
+
+
+<li class="slide">
+<h1>Incremental S5 Themes</h1>
+<p class="imgcon">
+<img src="pix/S501.jpg" alt="" title="Default" class="incremental" />
+<img src="pix/S502.jpg" alt="" title="I18N" class="incremental" />
+<img src="pix/S503.jpg" alt="" title="Blue" class="incremental" />
+<img src="pix/S504.jpg" alt="" title="Flower" class="incremental" />
+(one by one!)
+</p>
+</li>
+
+
+<li class="slide">
+<h1>Incremental Animation</h1>
+<ul>
+<li>A demonstration of just one of the many ways to accomplish simple animation-like effects <small>(using a diagram from <a href="http://gmpg.org/xfn/and/" rel="external">"XFN and..."</a>)</small></li>
+</ul>
+<p class="imgcon" id="anim">
+<img src="pix/mememe01.png" id="me01" alt="" />
+<img src="pix/mememe02.png" alt="" id="me02" class="incremental" />
+<img src="pix/mememe03.png" alt="" id="me03" class="incremental" />
+<img src="pix/mememe04.png" alt="" id="me04" class="incremental" />
+<img src="pix/mememe05.png" alt="" id="me05" class="incremental" />
+</p>
+</li>
+
+
+<li class="slide">
+<h1>In Summary</h1>
+<ul>
+<li>With minimal scripting, we have recreated and improved upon a (currently) browser-specific technology, making it cross-browser in the process</li>
+<li>The S5 format is OSF 1.0 compatible</li>
+<li>S5 is a very flexible and lightweight slide show system available for anyone to use</li>
+</ul>
+</li>
+
+</ol>
+
+</body>
+</html>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/S501.jpg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/S501.jpg
new file mode 100755
index 000000000..102f95527
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/S501.jpg
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/S502.jpg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/S502.jpg
new file mode 100755
index 000000000..1ae9f5ddc
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/S502.jpg
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/S503.jpg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/S503.jpg
new file mode 100755
index 000000000..6daddb394
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/S503.jpg
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/S504.jpg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/S504.jpg
new file mode 100755
index 000000000..782f62028
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/S504.jpg
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/mememe01.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/mememe01.png
new file mode 100755
index 000000000..8c0730fc6
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/mememe01.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/mememe02.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/mememe02.png
new file mode 100755
index 000000000..90ff451d4
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/mememe02.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/mememe03.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/mememe03.png
new file mode 100755
index 000000000..2256b062c
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/mememe03.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/mememe04.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/mememe04.png
new file mode 100755
index 000000000..5b079ccc9
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/mememe04.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/mememe05.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/mememe05.png
new file mode 100755
index 000000000..f32b69930
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/mememe05.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/s5filemap.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/s5filemap.png
new file mode 100755
index 000000000..5d9201fbe
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/pix/s5filemap.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/bg-shade.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/bg-shade.png
new file mode 100755
index 000000000..172c914f6
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/bg-shade.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/blank.gif b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/blank.gif
new file mode 100755
index 000000000..75b945d25
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/blank.gif
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/bodybg.gif b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/bodybg.gif
new file mode 100755
index 000000000..5f448a16f
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/bodybg.gif
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/framing.css b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/framing.css
new file mode 100755
index 000000000..2a27dafbc
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/framing.css
@@ -0,0 +1,22 @@
+/* The following styles size, place, and layer the slide components.
+ Edit these if you want to change the overall slide layout.
+ The commented lines can be uncommented (and modified, if necessary)
+ to help you with the rearrangement process. */
+
+/* target = 1024x768 */
+
+div#header, div#footer, .slide {width: 100%; top: 0; left: 0;}
+div#header {top: 0; height: 3em; z-index: 1;}
+div#footer {top: auto; bottom: 0; height: 2.5em; z-index: 5;}
+.slide {top: 0; width: 92%; padding: 3.5em 4% 4%; z-index: 2; list-style: none;}
+div#controls {left: 50%; bottom: 0; width: 50%; z-index: 100;}
+div#controls form {text-align: right; width: 100%; margin: 0;}
+#currentSlide {position: absolute; width: 10%; left: 45%; bottom: 1em; z-index: 10;}
+html>body #currentSlide {position: fixed;}
+
+/*
+div#header {background: #FCC;}
+div#footer {background: #CCF;}
+div#controls {background: #BBD;}
+div#currentSlide {background: #FFC;}
+*/
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/iepngfix.htc b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/iepngfix.htc
new file mode 100755
index 000000000..bba2db756
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/iepngfix.htc
@@ -0,0 +1,42 @@
+<public:component>
+<public:attach event="onpropertychange" onevent="doFix()" />
+
+<script>
+
+// IE5.5+ PNG Alpha Fix v1.0 by Angus Turnbull http://www.twinhelix.com
+// Free usage permitted as long as this notice remains intact.
+
+// This must be a path to a blank image. That's all the configuration you need here.
+var blankImg = 'ui/default/blank.gif';
+
+var f = 'DXImageTransform.Microsoft.AlphaImageLoader';
+
+function filt(s, m) {
+ if (filters[f]) {
+ filters[f].enabled = s ? true : false;
+ if (s) with (filters[f]) { src = s; sizingMethod = m }
+ } else if (s) style.filter = 'progid:'+f+'(src="'+s+'",sizingMethod="'+m+'")';
+}
+
+function doFix() {
+ if ((parseFloat(navigator.userAgent.match(/MSIE (\S+)/)[1]) < 5.5) ||
+ (event && !/(background|src)/.test(event.propertyName))) return;
+
+ if (tagName == 'IMG') {
+ if ((/\.png$/i).test(src)) {
+ filt(src, 'image'); // was 'scale'
+ src = blankImg;
+ } else if (src.indexOf(blankImg) < 0) filt();
+ } else if (style.backgroundImage) {
+ if (style.backgroundImage.match(/^url[("']+(.*\.png)[)"']+$/i)) {
+ var s = RegExp.$1;
+ style.backgroundImage = '';
+ filt(s, 'crop');
+ } else filt();
+ }
+}
+
+doFix();
+
+</script>
+</public:component> \ No newline at end of file
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/notes.css b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/notes.css
new file mode 100755
index 000000000..5858cf2bc
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/notes.css
@@ -0,0 +1,122 @@
+/* Following are the note styles -- edit away! */
+
+body {
+ margin: 0;
+ padding: 1.0em;
+ background: #333;
+ color: #FFF;
+ font: 2em/1.4em 'Lucida Grande', Verdana, sans-serif;
+}
+
+div.timers {
+ background: #FFF;
+ color: #333;
+ border: 0.08em solid #222;
+ border-top-width: 1px;
+ border-left-width: 1px;
+ float: left;
+ padding: 0.2em;
+ margin: 0 0 0.5em;
+ position: relative;
+}
+
+div.timers h1 {
+ text-align: left;
+ font-size: 0.6em;
+ line-height: 1.4em;
+ background-color: #FF9;
+ padding: 0 0.75em;
+ margin: 0.25em 0 0;
+ border: 1px solid #EE8;
+}
+
+div.timers div.controls {
+ position: absolute;
+ right: 0.25em;
+ top: 0.1em;
+ line-height: 1em;
+}
+
+div.timers h1 a {
+ text-decoration: none;
+ color: #000;
+}
+
+div.timers div.controls a {
+ font-size: 0.5em;
+ padding: 0;
+ color: #330;
+}
+
+div.timers a.control {
+ position: absolute;
+ text-decoration: none;
+ padding: 0 0.25em;
+ color: #AAA;
+ outline: 0;
+}
+
+#minus {
+ left: 0.25em;
+}
+
+#plus {
+ right: 0.25em;
+}
+
+.overtime {
+ background: yellow;
+ color: red;
+ border: 3px solid;
+ padding: 0.1em 0.25em;
+ font-weight: bold;
+}
+
+div.timers h2 {
+ font-size: 0.6em;
+ line-height: 1.0em;
+ font-weight: normal;
+ margin: 0 0 -0.25em;
+ padding-top: 0.5em;
+ color: #666;
+}
+
+div.timers p {margin: 0; padding: 0 0.5em;}
+div.timers form {margin: 0;}
+
+div.timers span.clock {
+ font-family: monospace;
+}
+
+div.timers ul {margin: 0; padding: 0; list-style: none;}
+div.timers li {float: left; width: 5em; margin: 0; padding: 0 0.5em;
+ text-align: center;}
+
+div#elapsed {width: 12.1em;}
+div#remaining {clear: left; width: 12.1em;}
+div#remaining p {text-align: center;}
+
+#slide,
+#next,
+#notes,
+#nextnotes {
+ font-size: 0.75em;
+ line-height: 1.4em;
+ clear: left;
+/* max-width: 30.0em; */
+ text-shadow: 0.1em 0.1em 0.1em #111;
+}
+
+#next {margin-top: 2.5em;}
+#next, #nextnotes {
+ color: #999;
+ font-size: 0.66em;
+}
+
+em.disclaimer {
+ color: #666;
+}
+
+div.collapsed h1 {display: block; font-size: 0.33em;}
+div.collapsed h1 a {display: inline;}
+div.collapsed * {display: none;}
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/opera.css b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/opera.css
new file mode 100755
index 000000000..9e9d2a3c5
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/opera.css
@@ -0,0 +1,7 @@
+/* DO NOT CHANGE THESE unless you really want to break Opera Show */
+.slide {
+ visibility: visible !important;
+ position: static !important;
+ page-break-before: always;
+}
+#slide0 {page-break-before: avoid;}
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/outline.css b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/outline.css
new file mode 100755
index 000000000..62db519ed
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/outline.css
@@ -0,0 +1,15 @@
+/* don't change this unless you want the layout stuff to show up in the outline view! */
+
+.layout div, #footer *, #controlForm * {display: none;}
+#footer, #controls, #controlForm, #navLinks, #toggle {
+ display: block; visibility: visible; margin: 0; padding: 0;}
+#toggle {float: right; padding: 0.5em;}
+html>body #toggle {position: fixed; top: 0; right: 0;}
+
+/* making the outline look pretty-ish */
+
+#slide0 h1, #slide0 h2, #slide0 h3, #slide0 h4 {border: none; margin: 0;}
+#slide0 h1 {padding-top: 1.5em;}
+.slide h1 {margin: 1.5em 0 0; padding-top: 0.25em;
+ border-top: 1px solid #888; border-bottom: 1px solid #AAA;}
+#toggle {border: 1px solid; border-width: 0 0 1px 1px; background: #FFF;}
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/pretty.css b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/pretty.css
new file mode 100755
index 000000000..838a7cf8d
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/pretty.css
@@ -0,0 +1,82 @@
+/* Following are the presentation styles -- edit away! */
+
+body {background: #FFF url(bodybg.gif) -16px 0 no-repeat; color: #000; font-size: 2.25em;}
+:link, :visited {text-decoration: none; color: #00C;}
+#controls :active {color: #88A !important;}
+#controls :focus {outline: 1px dotted #227;}
+h1, h2, h3, h4 {font-size: 100%; margin: 0; padding: 0; font-weight: inherit;}
+ul, pre {margin: 0; line-height: 1em;}
+html, body {margin: 0; padding: 0;}
+
+blockquote, q {font-style: italic;}
+blockquote {padding: 0 2em 0.5em; margin: 0 1.5em 0.5em; text-align: center; font-size: 1em;}
+blockquote p {margin: 0;}
+blockquote i {font-style: normal;}
+blockquote b {display: block; margin-top: 0.5em; font-weight: normal; font-size: smaller; font-style: normal;}
+blockquote b i {font-style: italic;}
+
+kbd {font-weight: bold; font-size: 1em;}
+sup {font-size: smaller; line-height: 1px;}
+
+.slide code {padding: 2px 0.25em; font-weight: bold; color: #533;}
+.slide code.bad, code del {color: red;}
+.slide code.old {color: silver;}
+.slide pre {padding: 0; margin: 0.25em 0 0.5em 0.5em; color: #533; font-size: 90%;}
+.slide pre code {display: block;}
+.slide ul {margin-left: 5%; margin-right: 7%; list-style: disc;}
+.slide li {margin-top: 0.75em; margin-right: 0;}
+.slide ul ul {line-height: 1;}
+.slide ul ul li {margin: .2em; font-size: 85%; list-style: square;}
+.slide img.leader {display: block; margin: 0 auto;}
+
+div#header, div#footer {background: #005; color: #AAB;
+ font-family: Verdana, Helvetica, sans-serif;}
+div#header {background: #005 url(bodybg.gif) -16px 0 no-repeat;
+ line-height: 1px;}
+div#footer {font-size: 0.5em; font-weight: bold; padding: 1em 0;}
+#footer h1, #footer h2 {display: block; padding: 0 1em;}
+#footer h2 {font-style: italic;}
+
+div.long {font-size: 0.75em;}
+.slide h1 {position: absolute; top: 0.7em; left: 87px; z-index: 1;
+ margin: 0; padding: 0.3em 0 0 50px; white-space: nowrap;
+ font: bold 150%/1em Helvetica, sans-serif; text-transform: capitalize;
+ color: #DDE; background: #005;}
+.slide h3 {font-size: 130%;}
+h1 abbr {font-variant: small-caps;}
+
+div#controls {position: absolute; left: 60%; bottom: 0;
+ width: 40%;
+ text-align: right; font: bold 0.9em Verdana, Helvetica, sans-serif;}
+html>body div#controls {position: fixed; padding: 0; top: auto;}
+#controls #navLinks a {padding: 0; margin: 0 0.5em;
+ background: #005; border: none; color: #779;
+ cursor: pointer;}
+#controls #navList #jumplist {background: #DDD; color: #227;}
+
+#currentSlide {text-align: center; font-size: 0.5em; color: #449;}
+
+#slide0 {padding-top: 3.5em; font-size: 90%;}
+#slide0 h1 {position: static; margin: 1em 0 0; padding: 0;
+ font: bold 2em Helvetica, sans-serif; white-space: normal;
+ color: #000; background: transparent;}
+#slide0 h2 {font: bold italic 1em Helvetica, sans-serif; margin: 0.25em;}
+#slide0 h3 {margin-top: 1.5em; font-size: 1.5em;}
+#slide0 h4 {margin-top: 0; font-size: 1em;}
+
+ul.urls {list-style: none; display: inline; margin: 0;}
+.urls li {display: inline; margin: 0;}
+.note {display: none;}
+.external {border-bottom: 1px dotted gray;}
+html>body .external {border-bottom: none;}
+.external:after {content: " \274F"; font-size: smaller; color: #77B;}
+
+.incremental, .incremental *, .incremental *:after {color: #DDE; visibility: visible;}
+img.incremental {visibility: hidden;}
+.slide .current {color: #B02;}
+
+
+/* diagnostics
+
+li:after {content: " [" attr(class) "]"; color: #F88;}
+ */ \ No newline at end of file
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/print.css b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/print.css
new file mode 100755
index 000000000..4a3554ddd
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/print.css
@@ -0,0 +1,24 @@
+/* The following rule is necessary to have all slides appear in print! DO NOT REMOVE IT! */
+.slide, ul {page-break-inside: avoid; visibility: visible !important;}
+h1 {page-break-after: avoid;}
+
+body {font-size: 12pt; background: white;}
+* {color: black;}
+
+#slide0 h1 {font-size: 200%; border: none; margin: 0.5em 0 0.25em;}
+#slide0 h3 {margin: 0; padding: 0;}
+#slide0 h4 {margin: 0 0 0.5em; padding: 0;}
+#slide0 {margin-bottom: 3em;}
+
+h1 {border-top: 2pt solid gray; border-bottom: 1px dotted silver;}
+.extra {background: transparent !important;}
+div.extra, pre.extra, .example {font-size: 10pt; color: #333;}
+ul.extra a {font-weight: bold;}
+p.example {display: none;}
+
+#header {display: none;}
+#footer h1 {margin: 0; border-bottom: 1px solid; color: gray; font-style: italic;}
+#footer h2, #controls {display: none;}
+
+/* The following rule keeps the layout stuff out of print. Remove at your own risk! */
+.layout, .layout * {display: none !important;}
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/s5-core.css b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/s5-core.css
new file mode 100755
index 000000000..ad1530b9c
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/s5-core.css
@@ -0,0 +1,9 @@
+/* Do not edit or override these styles! The system will likely break if you do. */
+
+div#header, div#footer, div#controls, .slide {position: absolute;}
+html>body div#header, html>body div#footer,
+ html>body div#controls, html>body .slide {position: fixed;}
+.handout, .notes {display: none;}
+.layout {display: block;}
+.slide, .hideme, .incremental {visibility: hidden;}
+#slide0 {visibility: visible;}
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/slides.css b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/slides.css
new file mode 100755
index 000000000..0786d7dbd
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/slides.css
@@ -0,0 +1,3 @@
+@import url(s5-core.css); /* required to make the slide show run at all */
+@import url(framing.css); /* sets basic placement and size of slide components */
+@import url(pretty.css); /* stuff that makes the slides look better than blah */ \ No newline at end of file
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/slides.js b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/slides.js
new file mode 100755
index 000000000..ab2a4b200
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/default/slides.js
@@ -0,0 +1,764 @@
+// S5 v1.2a1 slides.js -- released into the Public Domain
+//
+// Please see http://www.meyerweb.com/eric/tools/s5/credits.html for information
+// about all the wonderful and talented contributors to this code!
+
+var undef;
+var slideCSS = '';
+var snum = 0;
+var smax = 1;
+var incpos = 0;
+var number = undef;
+var s5mode = true;
+var defaultView = 'slideshow';
+var controlVis = 'visible';
+
+var s5NotesWindow;
+var s5NotesWindowLoaded = false;
+var previousSlide = 0;
+var presentationStart = new Date();
+var slideStart = new Date();
+
+var countdown = {
+ timer: 0,
+ state: 'pause',
+ start: new Date(),
+ end: 0,
+ remaining: 0
+};
+
+
+var isIE = navigator.appName == 'Microsoft Internet Explorer' && navigator.userAgent.indexOf('Opera') < 1 ? 1 : 0;
+var isOp = navigator.userAgent.indexOf('Opera') > -1 ? 1 : 0;
+var isGe = navigator.userAgent.indexOf('Gecko') > -1 && navigator.userAgent.indexOf('Safari') < 1 ? 1 : 0;
+
+function hasClass(object, className) {
+ if (!object.className) return false;
+ return (object.className.search('(^|\\s)' + className + '(\\s|$)') != -1);
+}
+
+function hasValue(object, value) {
+ if (!object) return false;
+ return (object.search('(^|\\s)' + value + '(\\s|$)') != -1);
+}
+
+function removeClass(object,className) {
+ if (!object || !hasClass(object,className)) return;
+ object.className = object.className.replace(new RegExp('(^|\\s)'+className+'(\\s|$)'), RegExp.$1+RegExp.$2);
+}
+
+function addClass(object,className) {
+ if (!object || hasClass(object, className)) return;
+ if (object.className) {
+ object.className += ' '+className;
+ } else {
+ object.className = className;
+ }
+}
+
+function GetElementsWithClassName(elementName,className) {
+ var allElements = document.getElementsByTagName(elementName);
+ var elemColl = new Array();
+ for (var i = 0; i< allElements.length; i++) {
+ if (hasClass(allElements[i], className)) {
+ elemColl[elemColl.length] = allElements[i];
+ }
+ }
+ return elemColl;
+}
+
+function isParentOrSelf(element, id) {
+ if (element == null || element.nodeName=='BODY') return false;
+ else if (element.id == id) return true;
+ else return isParentOrSelf(element.parentNode, id);
+}
+
+function nodeValue(node) {
+ var result = "";
+ if (node.nodeType == 1) {
+ var children = node.childNodes;
+ for (var i = 0; i < children.length; ++i) {
+ result += nodeValue(children[i]);
+ }
+ }
+ else if (node.nodeType == 3) {
+ result = node.nodeValue;
+ }
+ return(result);
+}
+
+function slideLabel() {
+ var slideColl = GetElementsWithClassName('*','slide');
+ var list = document.getElementById('jumplist');
+ smax = slideColl.length;
+ for (var n = 0; n < smax; n++) {
+ var obj = slideColl[n];
+
+ var did = 'slide' + n.toString();
+ obj.setAttribute('id',did);
+
+// if (isOp) continue; // Opera fix (hallvord)
+
+ var otext = '';
+ var menu = obj.firstChild;
+ if (!menu) continue; // to cope with empty slides
+ while (menu && menu.nodeType == 3) {
+ menu = menu.nextSibling;
+ }
+ if (!menu) continue; // to cope with slides with only text nodes
+
+ var menunodes = menu.childNodes;
+ for (var o = 0; o < menunodes.length; o++) {
+ otext += nodeValue(menunodes[o]);
+ }
+ list.options[list.length] = new Option(n + ' : ' + otext, n);
+ }
+}
+
+function currentSlide() {
+ var cs;
+ if (document.getElementById) {
+ cs = document.getElementById('currentSlide');
+ } else {
+ cs = document.currentSlide;
+ }
+ cs.innerHTML = '<a id="plink" href="">' +
+ '<span id="csHere">' + snum + '<\/span> ' +
+ '<span id="csSep">\/<\/span> ' +
+ '<span id="csTotal">' + (smax-1) + '<\/span>' +
+ '<\/a>'
+ ;
+ if (snum == 0) {
+ cs.style.visibility = 'hidden';
+ } else {
+ cs.style.visibility = 'visible';
+ }
+}
+
+function go(step) {
+ if (document.getElementById('slideProj').disabled || step == 0) return;
+ var jl = document.getElementById('jumplist');
+ var cid = 'slide' + snum;
+ var ce = document.getElementById(cid);
+ if (incrementals[snum].length > 0) {
+ for (var i = 0; i < incrementals[snum].length; i++) {
+ removeClass(incrementals[snum][i], 'current');
+ removeClass(incrementals[snum][i], 'incremental');
+ }
+ }
+ if (step != 'j') {
+ snum += step;
+ lmax = smax - 1;
+ if (snum > lmax) snum = lmax;
+ if (snum < 0) snum = 0;
+ } else
+ snum = parseInt(jl.value);
+ var nid = 'slide' + snum;
+ var ne = document.getElementById(nid);
+ if (!ne) {
+ ne = document.getElementById('slide0');
+ snum = 0;
+ }
+ if (step < 0) {incpos = incrementals[snum].length} else {incpos = 0;}
+ if (incrementals[snum].length > 0 && incpos == 0) {
+ for (var i = 0; i < incrementals[snum].length; i++) {
+ if (hasClass(incrementals[snum][i], 'current'))
+ incpos = i + 1;
+ else
+ addClass(incrementals[snum][i], 'incremental');
+ }
+ }
+ if (incrementals[snum].length > 0 && incpos > 0)
+ addClass(incrementals[snum][incpos - 1], 'current');
+ if (isOp) { //hallvord
+ location.hash = nid;
+ } else {
+ ce.style.visibility = 'hidden';
+ ne.style.visibility = 'visible';
+ } // /hallvord
+ jl.selectedIndex = snum;
+ currentSlide();
+ loadNote();
+ permaLink();
+ number = undef;
+}
+
+function goTo(target) {
+ if (target >= smax || target == snum) return;
+ go(target - snum);
+}
+
+function subgo(step) {
+ if (step > 0) {
+ removeClass(incrementals[snum][incpos - 1],'current');
+ removeClass(incrementals[snum][incpos], 'incremental');
+ addClass(incrementals[snum][incpos],'current');
+ incpos++;
+ } else {
+ incpos--;
+ removeClass(incrementals[snum][incpos],'current');
+ addClass(incrementals[snum][incpos], 'incremental');
+ addClass(incrementals[snum][incpos - 1],'current');
+ }
+ loadNote();
+}
+
+function toggle() {
+ var slideColl = GetElementsWithClassName('*','slide');
+ var slides = document.getElementById('slideProj');
+ var outline = document.getElementById('outlineStyle');
+ if (!slides.disabled) {
+ slides.disabled = true;
+ outline.disabled = false;
+ s5mode = false;
+ fontSize('1em');
+ for (var n = 0; n < smax; n++) {
+ var slide = slideColl[n];
+ slide.style.visibility = 'visible';
+ }
+ } else {
+ slides.disabled = false;
+ outline.disabled = true;
+ s5mode = true;
+ fontScale();
+ for (var n = 0; n < smax; n++) {
+ var slide = slideColl[n];
+ slide.style.visibility = 'hidden';
+ }
+ slideColl[snum].style.visibility = 'visible';
+ }
+}
+
+function showHide(action) {
+ var obj = GetElementsWithClassName('*','hideme')[0];
+ switch (action) {
+ case 's': obj.style.visibility = 'visible'; break;
+ case 'h': obj.style.visibility = 'hidden'; break;
+ case 'k':
+ if (obj.style.visibility != 'visible') {
+ obj.style.visibility = 'visible';
+ } else {
+ obj.style.visibility = 'hidden';
+ }
+ break;
+ }
+}
+
+// 'keys' code adapted from MozPoint (http://mozpoint.mozdev.org/)
+function keys(key) {
+ if (!key) {
+ key = event;
+ key.which = key.keyCode;
+ }
+ if (key.which == 84) {
+ toggle();
+ return;
+ }
+ if (s5mode) {
+ switch (key.which) {
+ case 10: // return
+ case 13: // enter
+ if (window.event && isParentOrSelf(window.event.srcElement, 'controls')) return;
+ if (key.target && isParentOrSelf(key.target, 'controls')) return;
+ if(number != undef) {
+ goTo(number);
+ break;
+ }
+ case 32: // spacebar
+ case 34: // page down
+ case 39: // rightkey
+ case 40: // downkey
+ if(number != undef) {
+ go(number);
+ } else if (!incrementals[snum] || incpos >= incrementals[snum].length) {
+ go(1);
+ } else {
+ subgo(1);
+ }
+ break;
+ case 33: // page up
+ case 37: // leftkey
+ case 38: // upkey
+ if(number != undef) {
+ go(-1 * number);
+ } else if (!incrementals[snum] || incpos <= 0) {
+ go(-1);
+ } else {
+ subgo(-1);
+ }
+ break;
+ case 36: // home
+ goTo(0);
+ break;
+ case 35: // end
+ goTo(smax-1);
+ break;
+ case 67: // c
+ showHide('k');
+ break;
+ case 78: // n
+ createNotesWindow();
+ break;
+ }
+ if (key.which < 48 || key.which > 57) {
+ number = undef;
+ } else {
+ if (window.event && isParentOrSelf(window.event.srcElement, 'controls')) return;
+ if (key.target && isParentOrSelf(key.target, 'controls')) return;
+ number = (((number != undef) ? number : 0) * 10) + (key.which - 48);
+ }
+ }
+ return false;
+}
+
+function clicker(e) {
+ number = undef;
+ var target;
+ if (window.event) {
+ target = window.event.srcElement;
+ e = window.event;
+ } else target = e.target;
+ if (target.href != null || hasValue(target.rel, 'external') || isParentOrSelf(target, 'controls') || isParentOrSelf(target,'embed') || isParentOrSelf(target,'object')) return true;
+ if (!e.which || e.which == 1) {
+ if (!incrementals[snum] || incpos >= incrementals[snum].length) {
+ go(1);
+ } else {
+ subgo(1);
+ }
+ }
+}
+
+function findSlide(hash) {
+ var target = null;
+ var slides = GetElementsWithClassName('*','slide');
+ for (var i = 0; i < slides.length; i++) {
+ var targetSlide = slides[i];
+ if ( (targetSlide.name && targetSlide.name == hash)
+ || (targetSlide.id && targetSlide.id == hash) ) {
+ target = targetSlide;
+ break;
+ }
+ }
+ while(target != null && target.nodeName != 'BODY') {
+ if (hasClass(target, 'slide')) {
+ return parseInt(target.id.slice(5));
+ }
+ target = target.parentNode;
+ }
+ return null;
+}
+
+function slideJump() {
+ if (window.location.hash == null) return;
+ var sregex = /^#slide(\d+)$/;
+ var matches = sregex.exec(window.location.hash);
+ var dest = null;
+ if (matches != null) {
+ dest = parseInt(matches[1]);
+ } else {
+ dest = findSlide(window.location.hash.slice(1));
+ }
+ if (dest != null)
+ go(dest - snum);
+}
+
+function fixLinks() {
+ var thisUri = window.location.href;
+ thisUri = thisUri.slice(0, thisUri.length - window.location.hash.length);
+ var aelements = document.getElementsByTagName('A');
+ for (var i = 0; i < aelements.length; i++) {
+ var a = aelements[i].href;
+ var slideID = a.match('\#slide[0-9]{1,2}');
+ if ((slideID) && (slideID[0].slice(0,1) == '#')) {
+ var dest = findSlide(slideID[0].slice(1));
+ if (dest != null) {
+ if (aelements[i].addEventListener) {
+ aelements[i].addEventListener("click", new Function("e",
+ "if (document.getElementById('slideProj').disabled) return;" +
+ "go("+dest+" - snum); " +
+ "if (e.preventDefault) e.preventDefault();"), true);
+ } else if (aelements[i].attachEvent) {
+ aelements[i].attachEvent("onclick", new Function("",
+ "if (document.getElementById('slideProj').disabled) return;" +
+ "go("+dest+" - snum); " +
+ "event.returnValue = false;"));
+ }
+ }
+ }
+ }
+}
+
+function externalLinks() {
+ if (!document.getElementsByTagName) return;
+ var anchors = document.getElementsByTagName('a');
+ for (var i=0; i<anchors.length; i++) {
+ var anchor = anchors[i];
+ if (anchor.getAttribute('href') && hasValue(anchor.rel, 'external')) {
+ anchor.target = '_blank';
+ addClass(anchor,'external');
+ }
+ }
+}
+
+function permaLink() {
+ document.getElementById('plink').href = window.location.pathname + '#slide' + snum;
+}
+
+function createControls() {
+ var controlsDiv = document.getElementById("controls");
+ if (!controlsDiv) return;
+ var hider = ' onmouseover="showHide(\'s\');" onmouseout="showHide(\'h\');"';
+ var hideDiv, hideList = '';
+ if (controlVis == 'hidden') {
+ hideDiv = hider;
+ } else {
+ hideList = hider;
+ }
+ controlsDiv.innerHTML = '<form action="#" id="controlForm"' + hideDiv + '>' +
+ '<div id="navLinks">' +
+ '<a accesskey="n" id="show-notes" href="javascript:createNotesWindow();" title="Show Notes">&equiv;<\/a>' +
+ '<a accesskey="t" id="toggle" href="javascript:toggle();">&#216;<\/a>' +
+ '<a accesskey="z" id="prev" href="javascript:go(-1);">&laquo;<\/a>' +
+ '<a accesskey="x" id="next" href="javascript:go(1);">&raquo;<\/a>' +
+ '<div id="navList"' + hideList + '><select id="jumplist" onchange="go(\'j\');"><\/select><\/div>' +
+ '<\/div><\/form>';
+ if (controlVis == 'hidden') {
+ var hidden = document.getElementById('navLinks');
+ } else {
+ var hidden = document.getElementById('jumplist');
+ }
+ addClass(hidden,'hideme');
+}
+
+function fontScale() { // causes layout problems in FireFox that get fixed if browser's Reload is used; same may be true of other Gecko-based browsers
+ if (!s5mode) return false;
+ var vScale = 48; // both yield 16 (the usual browser default) at 1024x768
+ var hScale = 64; // perhaps should auto-calculate based on theme's declared value?
+ if (window.innerHeight) {
+ var vSize = window.innerHeight;
+ var hSize = window.innerWidth;
+ } else if (document.documentElement.clientHeight) {
+ var vSize = document.documentElement.clientHeight;
+ var hSize = document.documentElement.clientWidth;
+ } else if (document.body.clientHeight) {
+ var vSize = document.body.clientHeight;
+ var hSize = document.body.clientWidth;
+ } else {
+ var vSize = 700; // assuming 1024x768, minus chrome and such
+ var hSize = 1024; // these do not account for kiosk mode or Opera Show
+ }
+ var newSize = Math.min(Math.round(vSize/vScale),Math.round(hSize/hScale));
+ fontSize(newSize + 'px');
+ if (isGe) { // hack to counter incremental reflow bugs
+ var obj = document.getElementsByTagName('body')[0];
+ obj.style.display = 'none';
+ obj.style.display = 'block';
+ }
+}
+
+function fontSize(value) {
+ if (!(s5ss = document.getElementById('s5ss'))) {
+ if (!document.createStyleSheet) {
+ document.getElementsByTagName('head')[0].appendChild(s5ss = document.createElement('style'));
+ s5ss.setAttribute('media','screen, projection');
+ s5ss.setAttribute('id','s5ss');
+ } else {
+ document.createStyleSheet();
+ document.s5ss = document.styleSheets[document.styleSheets.length - 1];
+ }
+ }
+ if (!(document.s5ss && document.s5ss.addRule)) {
+ while (s5ss.lastChild) s5ss.removeChild(s5ss.lastChild);
+ s5ss.appendChild(document.createTextNode('html {font-size: ' + value + ' !important;}'));
+ } else {
+ document.s5ss.addRule('html','font-size: ' + value + ' !important;');
+ }
+}
+
+function notOperaFix() {
+ slideCSS = document.getElementById('slideProj').href;
+ var slides = document.getElementById('slideProj');
+ var outline = document.getElementById('outlineStyle');
+ slides.setAttribute('media','screen');
+ outline.disabled = true;
+ if (isGe) {
+ slides.setAttribute('href','null'); // Gecko fix
+ slides.setAttribute('href',slideCSS); // Gecko fix
+ }
+ if (isIE && document.styleSheets && document.styleSheets[0]) {
+ document.styleSheets[0].addRule('img', 'behavior: url(ui/default/iepngfix.htc)');
+ document.styleSheets[0].addRule('div', 'behavior: url(ui/default/iepngfix.htc)');
+ document.styleSheets[0].addRule('.slide', 'behavior: url(ui/default/iepngfix.htc)');
+ }
+}
+
+function getIncrementals(obj) {
+ var incrementals = new Array();
+ if (!obj)
+ return incrementals;
+ var children = obj.childNodes;
+ for (var i = 0; i < children.length; i++) {
+ var child = children[i];
+ if (hasClass(child, 'incremental')) {
+ if (child.nodeName == 'OL' || child.nodeName == 'UL') {
+ removeClass(child, 'incremental');
+ for (var j = 0; j < child.childNodes.length; j++) {
+ if (child.childNodes[j].nodeType == 1) {
+ addClass(child.childNodes[j], 'incremental');
+ }
+ }
+ } else {
+ incrementals[incrementals.length] = child;
+ removeClass(child,'incremental');
+ }
+ }
+ if (hasClass(child, 'show-first')) {
+ if (child.nodeName == 'OL' || child.nodeName == 'UL') {
+ removeClass(child, 'show-first');
+ if (child.childNodes[isGe].nodeType == 1) {
+ removeClass(child.childNodes[isGe], 'incremental');
+ }
+ } else {
+ incrementals[incrementals.length] = child;
+ }
+ }
+ incrementals = incrementals.concat(getIncrementals(child));
+ }
+ return incrementals;
+}
+
+function createIncrementals() {
+ var incrementals = new Array();
+ for (var i = 0; i < smax; i++) {
+ incrementals[i] = getIncrementals(document.getElementById('slide'+i));
+ }
+ return incrementals;
+}
+
+function defaultCheck() {
+ var allMetas = document.getElementsByTagName('meta');
+ for (var i = 0; i< allMetas.length; i++) {
+ if (allMetas[i].name == 'defaultView') {
+ defaultView = allMetas[i].content;
+ }
+ if (allMetas[i].name == 'controlVis') {
+ controlVis = allMetas[i].content;
+ }
+ }
+}
+
+// Key trap fix, new function body for trap()
+function trap(e) {
+ if (!e) {
+ e = event;
+ e.which = e.keyCode;
+ }
+ try {
+ modifierKey = e.ctrlKey || e.altKey || e.metaKey;
+ }
+ catch(e) {
+ modifierKey = false;
+ }
+ return modifierKey || e.which == 0;
+}
+
+function noteLabel() { // Gives notes id's to match parent slides
+ var notes = GetElementsWithClassName('div','notes');
+ for (var i = 0; i < notes.length; i++) {
+ var note = notes[i];
+ var id = 'note' + note.parentNode.id.substring(5);
+ note.setAttribute('id',id);
+ }
+ resetElapsedSlide();
+ resetRemainingTime();
+ window.setInterval('updateElaspedTime()', 1000);
+}
+
+function createNotesWindow() { // creates a window for our notes
+ if (!s5NotesWindow || s5NotesWindow.closed) { // Create the window if it doesn't exist
+ s5NotesWindowLoaded = false;
+ // Note: Safari has a tendency to ignore window options preferring to default to the settings of the parent window, grr.
+ s5NotesWindow = window.open('ui/s5-notes.html', 's5NotesWindow', 'top=0,left=0');
+ }
+ if (s5NotesWindowLoaded) { // Load the current note if the Note HTML has loaded
+ loadNote();
+ } else { // Keep trying...
+ window.setTimeout('createNotesWindow()', 50);
+ }
+}
+
+function loadNote() {
+// Loads a note into the note window
+ var notes = nextNotes = '<em class="disclaimer">There are no notes for this slide.</em>';
+ if (document.getElementById('note' + snum)) {
+ notes = document.getElementById('note' + snum).innerHTML;
+ }
+ if (document.getElementById('note' + (snum + 1))) {
+ nextNotes = document.getElementById('note' + (snum + 1)).innerHTML;
+ }
+
+ var jl = document.getElementById('jumplist');
+ var slideTitle = jl.options[jl.selectedIndex].text.replace(/^\d+\s+:\s+/, '') + ((jl.selectedIndex) ? ' (' + jl.selectedIndex + '/' + (smax - 1) + ')' : '');
+ if (incrementals[snum].length > 0) {
+// alert('howdy');
+ slideTitle += ' <small>[' + incpos + '/' + incrementals[snum].length + ']</small>';
+ }
+ if (jl.selectedIndex < smax - 1) {
+ var nextTitle = jl.options[jl.selectedIndex + 1].text.replace(/^\d+\s+:\s+/, '') + ((jl.selectedIndex + 1) ? ' (' + (jl.selectedIndex + 1) + '/' + (smax - 1) + ')' : '');
+ } else {
+ var nextTitle = '[end of slide show]';
+ }
+
+ if (s5NotesWindow && !s5NotesWindow.closed && s5NotesWindow.document) {
+ s5NotesWindow.document.getElementById('slide').innerHTML = slideTitle;
+ s5NotesWindow.document.getElementById('notes').innerHTML = notes;
+ s5NotesWindow.document.getElementById('next').innerHTML = nextTitle;
+ s5NotesWindow.document.getElementById('nextnotes').innerHTML = nextNotes;
+ }
+ resetElapsedSlide();
+}
+
+function minimizeTimer(id) {
+ var obj = s5NotesWindow.document.getElementById(id);
+ if (hasClass(obj,'collapsed')) {
+ removeClass(obj,'collapsed');
+ } else {
+ addClass(obj,'collapsed');
+ }
+}
+
+function resetElapsedTime() {
+ presentationStart = new Date();
+ slideStart = new Date();
+ updateElaspedTime();
+}
+
+function resetElapsedSlide() {
+ if (snum != previousSlide) {
+ slideStart = new Date();
+ previousSlide = snum;
+ updateElaspedTime();
+ }
+}
+
+function updateElaspedTime() {
+ if (!s5NotesWindowLoaded || !s5NotesWindow || s5NotesWindow.closed) return;
+ var now = new Date();
+ var ep = s5NotesWindow.document.getElementById('elapsed-presentation');
+ var es = s5NotesWindow.document.getElementById('elapsed-slide');
+ ep.innerHTML = formatTime(now.valueOf() - presentationStart.valueOf());
+ es.innerHTML = formatTime(now.valueOf() - slideStart.valueOf());
+}
+
+function resetRemainingTime() {
+ if (!s5NotesWindowLoaded || !s5NotesWindow || s5NotesWindow.closed) return;
+ var startField = s5NotesWindow.document.getElementById('startFrom');
+ startFrom = readTime(startField.value);
+ countdown.remaining = startFrom * 60000; // convert to msecs
+ countdown.start = new Date().valueOf();
+ countdown.end = countdown.start + countdown.remaining;
+ var tl = s5NotesWindow.document.getElementById('timeLeft');
+ var timeLeft = formatTime(countdown.remaining);
+ tl.innerHTML = timeLeft;
+}
+
+function updateRemainingTime() {
+ if (!s5NotesWindowLoaded || !s5NotesWindow || s5NotesWindow.closed) return;
+ var tl = s5NotesWindow.document.getElementById('timeLeft');
+ var now = new Date();
+ if (countdown.state == 'run') {
+ countdown.remaining = countdown.end - now;
+ }
+ tl.style.color = '';
+ tl.style.backgroundColor = '';
+ if (countdown.remaining >= 0) {
+ var timeLeft = formatTime(countdown.remaining);
+ removeClass(tl,'overtime');
+ if (countdown.remaining < 300000) {
+ tl.style.color = 'rgb(' + (255-Math.round(countdown.remaining/2000)) + ',0,0)';
+ tl.style.backgroundColor = 'rgb(255,255,' + (Math.round(countdown.remaining/2000)) + ')';
+ }
+ } else {
+ var timeLeft = '-' + formatTime(-countdown.remaining);
+ addClass(tl,'overtime');
+ }
+ tl.innerHTML = timeLeft;
+}
+
+function toggleRemainingTime() {
+ if (countdown.state == 'pause') countdown.state = 'run'; else countdown.state = 'pause';
+ if (countdown.state == 'pause') {
+ window.clearInterval(countdown.timer);
+ }
+ if (countdown.state == 'run') {
+ countdown.start = new Date().valueOf();
+ countdown.end = countdown.start + countdown.remaining;
+ countdown.timer = window.setInterval('updateRemainingTime()', 1000);
+ }
+}
+
+function alterRemainingTime(amt) {
+ var change = amt * 60000; // convert to msecs
+ countdown.end += change;
+ countdown.remaining += change;
+ updateRemainingTime();
+}
+
+function formatTime(msecs) {
+ var time = new Date(msecs);
+
+ var hrs = time.getUTCHours() + ((time.getUTCDate() -1) * 24); // I doubt anyone will spend more than 24 hours on a presentation or single slide but just in case...
+ hrs = (hrs < 10) ? '0'+hrs : hrs;
+ if (hrs == 'NaN' || isNaN(hrs)) hrs = '--';
+
+ var min = time.getUTCMinutes();
+ min = (min < 10) ? '0'+min : min;
+ if (min == 'NaN' || isNaN(min)) min = '--';
+
+ var sec = time.getUTCSeconds();
+ sec = (sec < 10) ? '0'+sec : sec;
+ if (sec == 'NaN' || isNaN(sec)) sec = '--';
+
+ return hrs + ':' + min + ':' + sec;
+}
+
+function readTime(val) {
+ var sregex = /:/;
+ var matches = sregex.exec(val);
+ if (matches == null) {
+ return val;
+ } else {
+ var times = val.split(':');
+ var hours = parseInt(times[0]);
+ var mins = parseInt(times[1]);
+ var total = (hours * 60) + mins;
+ return total;
+ }
+}
+
+function windowChange() {
+ fontScale();
+}
+
+function startup() {
+ defaultCheck();
+ createControls(); // hallvord
+ slideLabel();
+ incrementals = createIncrementals();
+ noteLabel(); // [SI:060104] must follow slideLabel()
+ loadNote();
+ fixLinks();
+ externalLinks();
+ fontScale();
+ if (!isOp) notOperaFix();
+ slideJump();
+ if (defaultView == 'outline') {
+ toggle();
+ }
+ document.onkeyup = keys;
+ document.onkeypress = trap;
+ document.onclick = clicker;
+}
+
+window.onload = startup;
+window.onresize = function(){setTimeout('windowChange()',5);} \ No newline at end of file
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/s5-notes.html b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/s5-notes.html
new file mode 100755
index 000000000..875f95a63
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/s5/ui/s5-notes.html
@@ -0,0 +1,64 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<!-- Do not edit this document! The system will likely break if you do. -->
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<title>Notes</title>
+<link rel="stylesheet" href="default/notes.css" type="text/css" />
+<script type="text/javascript">
+// <![CDATA[
+ document.onkeyup = opener.keys;
+ document.onkeypress = opener.trap;
+ document.onclick = opener.clicker;
+// ]]>
+</script>
+</head>
+
+<body onload="opener.s5NotesWindowLoaded=true;" onunload="opener.s5NotesWindowLoaded=false;">
+
+
+<div class="timers" id="elapsed">
+<h1>
+<a href="#" onclick="opener.minimizeTimer('elapsed'); return false;">Elapsed Time</a>
+</h1>
+<ul>
+<li>
+<h2>Presentation</h2>
+<span class="clock" id="elapsed-presentation">00:00:00</span>
+</li>
+<li>
+<h2>Current Slide</h2>
+<span class="clock" id="elapsed-slide">00:00:00</span>
+</li>
+</ul>
+<div class="controls">
+<a href="#reset-elapsed" onclick="opener.resetElapsedTime(); return false;" title="Reset Elapsed Time">|&larr;</a>
+</div>
+</div>
+
+<div class="timers" id="remaining">
+<h1>
+<a href="#" onclick="opener.minimizeTimer('remaining'); return false;">Remaining Time</a>
+</h1>
+<p>
+<a href="#subtract-remaining" class="control" id="minus" onclick="opener.alterRemainingTime('-5'); return false;" title="Subtract 5 Minutes">-</a>
+<span class="clock" id="timeLeft">00:00:00</span>
+<a href="#add-remaining" class="control" id="plus" onclick="opener.alterRemainingTime('5'); return false;" title="Add 5 Minutes">+</a>
+</p>
+<div class="controls">
+<form action="#" onsubmit="opener.resetRemainingTime(); return false;">
+<input type="text" class="text" id="startFrom" value="0" size="4" maxlength="4" />
+<a href="#toggle-remaining" onclick="opener.toggleRemainingTime(); return false;" title="Pause/Run Remaining Time">||</a>
+<a href="#reset-remaining" onclick="opener.resetRemainingTime(); return false;" title="Reset Remaining Time">|&larr;</a>
+</form>
+</div>
+</div>
+
+<h2 id="slide">...</h2>
+<div id="notes"></div>
+
+<h2 id="next">...</h2>
+<div id="nextnotes"></div>
+
+</body>
+</html>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/admonitions.rng b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/admonitions.rng
new file mode 100644
index 000000000..8666065f5
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/admonitions.rng
@@ -0,0 +1,174 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: pool.rnc 7466 2007-09-27 14:03:55Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<grammar ns="http://docbook.org/ns/docbook" xmlns:db="http://docbook.org/ns/docbook" xmlns:s="http://purl.oclc.org/dsdl/schematron" xmlns:rng="http://relaxng.org/ns/structure/1.0" xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/" xmlns="http://relaxng.org/ns/structure/1.0">
+ <start combine="choice">
+ <ref name="db.admonition.blocks"/>
+ </start>
+ <define name="db.nopara.blocks" combine="choice">
+ <ref name="db.admonition.blocks"/>
+ </define>
+ <!-- ====================================================================== -->
+ <ctrl:exclude from="db.formal.blocks" exclude="db.admonition.blocks"/>
+ <ctrl:exclude from="db.admonition.blocks" exclude="db.admonition.blocks"/>
+ <ctrl:exclude from="db.footnote" exclude="db.admonition.blocks"/>
+ <ctrl:exclude from="db.caption" exclude="db.admonition.blocks"/>
+ <define name="db.admonition.blocks">
+ <choice>
+ <ref name="db.caution"/>
+ <ref name="db.important"/>
+ <ref name="db.note"/>
+ <ref name="db.tip"/>
+ <ref name="db.warning"/>
+ </choice>
+ </define>
+ <define name="db.admonition.contentmodel">
+ <ref name="db._info.title.only"/>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>caution</db:refname>
+ <db:refpurpose>A note of caution</db:refpurpose>
+ <define name="db.caution.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.caution.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.caution.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.caution">
+ <element name="caution">
+ <ref name="db.caution.attlist"/>
+ <ref name="db.admonition.contentmodel"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>important</db:refname>
+ <db:refpurpose>An admonition set off from the text</db:refpurpose>
+ <define name="db.important.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.important.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.important.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.important">
+ <element name="important">
+ <ref name="db.important.attlist"/>
+ <ref name="db.admonition.contentmodel"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>note</db:refname>
+ <db:refpurpose>A message set off from the text</db:refpurpose>
+ <define name="db.note.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.note.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.note.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.note">
+ <element name="note">
+ <ref name="db.note.attlist"/>
+ <ref name="db.admonition.contentmodel"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>tip</db:refname>
+ <db:refpurpose>A suggestion to the user, set off from the text</db:refpurpose>
+ <define name="db.tip.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.tip.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.tip.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.tip">
+ <element name="tip">
+ <ref name="db.tip.attlist"/>
+ <ref name="db.admonition.contentmodel"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>warning</db:refname>
+ <db:refpurpose>An admonition set off from the text</db:refpurpose>
+ <define name="db.warning.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.warning.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.warning.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.warning">
+ <element name="warning">
+ <ref name="db.warning.attlist"/>
+ <ref name="db.admonition.contentmodel"/>
+ </element>
+ </define>
+ </div>
+</grammar>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/annotations.rng b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/annotations.rng
new file mode 100644
index 000000000..13479be13
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/annotations.rng
@@ -0,0 +1,97 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: annotations.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<grammar ns="http://docbook.org/ns/docbook" xmlns:db="http://docbook.org/ns/docbook" xmlns:s="http://purl.oclc.org/dsdl/schematron" xmlns:rng="http://relaxng.org/ns/structure/1.0" xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/" xmlns="http://relaxng.org/ns/structure/1.0">
+ <start combine="choice">
+ <ref name="db.annotation"/>
+ </start>
+ <define name="db.ubiq.inlines" combine="choice">
+ <ref name="db.annotation"/>
+ </define>
+ <define name="db.all.blocks" combine="choice">
+ <ref name="db.annotation"/>
+ </define>
+ <define name="db.info.elements" combine="choice">
+ <ref name="db.annotation"/>
+ </define>
+ <define name="db.annotations.attribute">
+ <attribute name="annotations">
+ <db:refpurpose>Identifies one or more annotations that apply to this element</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.common.attributes" combine="interleave">
+ <optional>
+ <ref name="db.annotations.attribute"/>
+ </optional>
+ </define>
+ <define name="db.common.idreq.attributes" combine="interleave">
+ <optional>
+ <ref name="db.annotations.attribute"/>
+ </optional>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>annotation</db:refname>
+ <db:refpurpose>An annotation</db:refpurpose>
+ <ctrl:exclude from="db.annotation" exclude="db.annotation"/>
+ <define name="db.annotation.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.annotation.annotates.attribute">
+ <attribute name="annotates">
+ <db:refpurpose>Identifies one ore more elements to which this annotation applies</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.annotation.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.annotation.role.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.annotation.annotates.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.annotation.info">
+ <ref name="db._info.title.only"/>
+ </define>
+ <define name="db.annotation">
+ <element name="annotation">
+ <ref name="db.annotation.attlist"/>
+ <ref name="db.annotation.info"/>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+</grammar>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/bibliography.rng b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/bibliography.rng
new file mode 100644
index 000000000..29e4f283a
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/bibliography.rng
@@ -0,0 +1,431 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: bibliography.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<grammar ns="http://docbook.org/ns/docbook" xmlns:db="http://docbook.org/ns/docbook" xmlns:s="http://purl.oclc.org/dsdl/schematron" xmlns:rng="http://relaxng.org/ns/structure/1.0" xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
+ <start combine="choice">
+ <choice>
+ <ref name="db.bibliodiv"/>
+ <ref name="db.bibliolist"/>
+ </choice>
+ </start>
+ <define name="db.navigation.components" combine="choice">
+ <ref name="db.bibliography"/>
+ </define>
+ <define name="db.list.blocks" combine="choice">
+ <ref name="db.bibliolist"/>
+ </define>
+ <define name="db.info.elements" combine="choice">
+ <choice>
+ <ref name="db.bibliomisc"/>
+ <ref name="db.bibliomset"/>
+ <ref name="db.bibliorelation"/>
+ <ref name="db.biblioset"/>
+ </choice>
+ </define>
+ <define name="db.link.inlines" combine="choice">
+ <ref name="db.biblioref"/>
+ </define>
+ <!-- ====================================================================== -->
+ <define name="db.relation.attribute">
+ <attribute name="relation">
+ <db:refpurpose>Identifies the relationship between the bibliographic elemnts</db:refpurpose>
+ </attribute>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>biblioentry</db:refname>
+ <db:refpurpose>A raw entry in a bibliography</db:refpurpose>
+ <define name="db.biblioentry.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.biblioentry.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.biblioentry.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.biblioentry">
+ <element name="biblioentry">
+ <ref name="db.biblioentry.attlist"/>
+ <oneOrMore>
+ <ref name="db.bibliographic.elements"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>bibliomixed</db:refname>
+ <db:refpurpose>A cooked entry in a bibliography</db:refpurpose>
+ <define name="db.bibliomixed.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.bibliomixed.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.bibliomixed.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.bibliomixed">
+ <element name="bibliomixed">
+ <ref name="db.bibliomixed.attlist"/>
+ <choice>
+ <zeroOrMore>
+ <choice>
+ <ref name="db._text"/>
+ <ref name="db.honorific"/>
+ <ref name="db.firstname"/>
+ <ref name="db.surname"/>
+ <ref name="db.lineage"/>
+ <ref name="db.othername"/>
+ <ref name="db.bibliographic.elements"/>
+ </choice>
+ </zeroOrMore>
+ <zeroOrMore>
+ <choice>
+ <ref name="db._text"/>
+ <ref name="db.honorific"/>
+ <ref name="db.givenname"/>
+ <ref name="db.surname"/>
+ <ref name="db.lineage"/>
+ <ref name="db.othername"/>
+ <ref name="db.bibliographic.elements"/>
+ </choice>
+ </zeroOrMore>
+ </choice>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>biblioset</db:refname>
+ <db:refpurpose>A raw container for related bibliographic information</db:refpurpose>
+ <define name="db.biblioset.relation.attribute">
+ <ref name="db.relation.attribute"/>
+ </define>
+ <define name="db.biblioset.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.biblioset.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.biblioset.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.biblioset.relation.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.biblioset">
+ <element name="biblioset">
+ <ref name="db.biblioset.attlist"/>
+ <oneOrMore>
+ <ref name="db.bibliographic.elements"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>bibliomset</db:refname>
+ <db:refpurpose>A cooked container for related bibliographic information</db:refpurpose>
+ <define name="db.bibliomset.relation.attribute">
+ <ref name="db.relation.attribute"/>
+ </define>
+ <define name="db.bibliomset.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.bibliomset.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.bibliomset.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.bibliomset.relation.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.bibliomset">
+ <element name="bibliomset">
+ <ref name="db.bibliomset.attlist"/>
+ <choice>
+ <zeroOrMore>
+ <choice>
+ <ref name="db._text"/>
+ <ref name="db.honorific"/>
+ <ref name="db.firstname"/>
+ <ref name="db.surname"/>
+ <ref name="db.lineage"/>
+ <ref name="db.othername"/>
+ <ref name="db.bibliographic.elements"/>
+ </choice>
+ </zeroOrMore>
+ <zeroOrMore>
+ <choice>
+ <ref name="db._text"/>
+ <ref name="db.honorific"/>
+ <ref name="db.givenname"/>
+ <ref name="db.surname"/>
+ <ref name="db.lineage"/>
+ <ref name="db.othername"/>
+ <ref name="db.bibliographic.elements"/>
+ </choice>
+ </zeroOrMore>
+ </choice>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>bibliomisc</db:refname>
+ <db:refpurpose>Untyped bibliographic information</db:refpurpose>
+ <define name="db.bibliomisc.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.bibliomisc.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.bibliomisc.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.bibliomisc">
+ <element name="bibliomisc">
+ <ref name="db.bibliomisc.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>bibliography</db:refname>
+ <db:refpurpose>A bibliography</db:refpurpose>
+ <define name="db.bibliography.status.attrib">
+ <ref name="db.status.attribute"/>
+ </define>
+ <define name="db.bibliography.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.bibliography.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.bibliography.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.label.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.bibliography.status.attrib"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.bibliography.info">
+ <ref name="db._info"/>
+ </define>
+ <define name="db.bibliography">
+ <element name="bibliography">
+ <ref name="db.bibliography.attlist"/>
+ <ref name="db.bibliography.info"/>
+ <zeroOrMore>
+ <ref name="db.all.blocks"/>
+ </zeroOrMore>
+ <choice>
+ <oneOrMore>
+ <ref name="db.bibliodiv"/>
+ </oneOrMore>
+ <oneOrMore>
+ <choice>
+ <ref name="db.biblioentry"/>
+ <ref name="db.bibliomixed"/>
+ </choice>
+ </oneOrMore>
+ </choice>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>bibliodiv</db:refname>
+ <db:refpurpose>A section of a bibliography</db:refpurpose>
+ <define name="db.bibliodiv.status.attrib">
+ <ref name="db.status.attribute"/>
+ </define>
+ <define name="db.bibliodiv.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.bibliodiv.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.bibliodiv.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.label.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.bibliodiv.status.attrib"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.bibliodiv.info">
+ <ref name="db._info.title.req"/>
+ </define>
+ <define name="db.bibliodiv">
+ <element name="bibliodiv">
+ <ref name="db.bibliodiv.attlist"/>
+ <ref name="db.bibliodiv.info"/>
+ <zeroOrMore>
+ <ref name="db.all.blocks"/>
+ </zeroOrMore>
+ <oneOrMore>
+ <choice>
+ <ref name="db.biblioentry"/>
+ <ref name="db.bibliomixed"/>
+ </choice>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>bibliolist</db:refname>
+ <db:refpurpose>A wrapper for a list of bibliography entries</db:refpurpose>
+ <define name="db.bibliolist.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.bibliolist.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.bibliolist.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.bibliolist.info">
+ <ref name="db._info.title.only"/>
+ </define>
+ <define name="db.bibliolist">
+ <element name="bibliolist">
+ <ref name="db.bibliolist.attlist"/>
+ <optional>
+ <ref name="db.bibliolist.info"/>
+ </optional>
+ <zeroOrMore>
+ <ref name="db.all.blocks"/>
+ </zeroOrMore>
+ <oneOrMore>
+ <choice>
+ <ref name="db.biblioentry"/>
+ <ref name="db.bibliomixed"/>
+ </choice>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>biblioref</db:refname>
+ <db:refpurpose>A cross-reference to a bibliographic entry</db:refpurpose>
+ <define name="db.biblioref.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.biblioref.xrefstyle.attribute">
+ <ref name="db.xrefstyle.attribute"/>
+ </define>
+ <define name="db.biblioref.endterm.attribute">
+ <ref name="db.endterm.attribute"/>
+ </define>
+ <define name="db.biblioref.units.attribute">
+ <attribute name="units">
+ <db:refpurpose>The units (for example, pages) used to identify the beginning and ending of a reference.</db:refpurpose>
+ <data type="token"/>
+ </attribute>
+ </define>
+ <define name="db.biblioref.begin.attribute">
+ <attribute name="begin">
+ <db:refpurpose>Identifies the beginning of a reference; the location within the work that is being referenced.</db:refpurpose>
+ <data type="token"/>
+ </attribute>
+ </define>
+ <define name="db.biblioref.end.attribute">
+ <attribute name="end">
+ <db:refpurpose>Identifies the end of a reference.</db:refpurpose>
+ <data type="token"/>
+ </attribute>
+ </define>
+ <define name="db.biblioref.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.biblioref.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.req.linking.attributes"/>
+ <optional>
+ <ref name="db.biblioref.xrefstyle.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.biblioref.endterm.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.biblioref.units.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.biblioref.begin.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.biblioref.end.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.biblioref">
+ <element name="biblioref">
+ <ref name="db.biblioref.attlist"/>
+ <empty/>
+ </element>
+ </define>
+ </div>
+</grammar>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/callouts.rng b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/callouts.rng
new file mode 100644
index 000000000..12c231c26
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/callouts.rng
@@ -0,0 +1,503 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: callouts.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<grammar ns="http://docbook.org/ns/docbook" xmlns:db="http://docbook.org/ns/docbook" xmlns:s="http://purl.oclc.org/dsdl/schematron" xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0" xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
+ <start combine="choice">
+ <choice>
+ <ref name="db.calloutlist"/>
+ <ref name="db.programlistingco"/>
+ <ref name="db.screenco"/>
+ <ref name="db.imageobjectco"/>
+ </choice>
+ </start>
+ <define name="db.publishing.inlines" combine="choice">
+ <ref name="db.coref"/>
+ </define>
+ <define name="db.list.blocks" combine="choice">
+ <ref name="db.calloutlist"/>
+ </define>
+ <define name="db.verbatim.blocks" combine="choice">
+ <choice>
+ <ref name="db.programlistingco"/>
+ <ref name="db.screenco"/>
+ </choice>
+ </define>
+ <define name="db.computeroutput.inlines" combine="choice">
+ <ref name="db.co"/>
+ </define>
+ <define name="db.verbatim.inlines" combine="choice">
+ <ref name="db.co"/>
+ </define>
+ <define name="db.prompt.inlines" combine="choice">
+ <ref name="db.co"/>
+ </define>
+ <define name="db.systemitem.inlines" combine="choice">
+ <ref name="db.co"/>
+ </define>
+ <define name="db.userinput.inlines" combine="choice">
+ <ref name="db.co"/>
+ </define>
+ <define name="db.replaceable.inlines" combine="choice">
+ <ref name="db.co"/>
+ </define>
+ <define name="db.ubiq.inlines" combine="choice">
+ <ref name="db.coref"/>
+ </define>
+ <define name="db.mediaobject.content" combine="choice">
+ <ref name="db.imageobjectco"/>
+ </define>
+ <!-- ====================================================================== -->
+ <ctrl:other-attribute name="area.units.attrib" enum-name="area.units-enum.attribute" other-name="area.units-other.attributes"/>
+ <define name="db.area.units.enumeration">
+ <choice>
+ <value>calspair</value>
+ <a:documentation>Coordinates expressed as a pair of CALS graphic coordinates.</a:documentation>
+ <value>linecolumn</value>
+ <a:documentation>Coordinates expressed as a line and column.</a:documentation>
+ <value>linecolumnpair</value>
+ <a:documentation>Coordinates expressed as a pair of lines and columns.</a:documentation>
+ <value>linerange</value>
+ <a:documentation>Coordinates expressed as a line range.</a:documentation>
+ </choice>
+ </define>
+ <define name="db.area.units-enum.attribute">
+ <optional>
+ <attribute name="units">
+ <db:refpurpose>Identifies the units used in the coords attribute. The default units vary according to the type of callout specified: <db:tag class="attvalue">calspair</db:tag>
+ for graphics and <db:tag class="attvalue">linecolumn</db:tag>
+ for line-oriented elements.</db:refpurpose>
+ <ref name="db.area.units.enumeration"/>
+ </attribute>
+ </optional>
+ </define>
+ <define name="db.area.units-other.attributes">
+ <optional>
+ <attribute name="units">
+ <db:refpurpose>Indicates that non-standard units are used for this <db:tag>area</db:tag>
+. In this case <db:tag class="attribute">otherunits</db:tag>
+ must be specified.</db:refpurpose>
+ <value>other</value>
+ <a:documentation>Coordinates expressed in some non-standard units.</a:documentation>
+ </attribute>
+ </optional>
+ <attribute name="otherunits">
+ <db:refpurpose>Identifies the units used in the <db:tag class="attribute">coords</db:tag>
+ attribute when the <db:tag class="attribute">units</db:tag>
+ attribute is <db:quote>other</db:quote>
+. This attribute is forbidden otherwise.</db:refpurpose>
+ <data type="NMTOKEN"/>
+ </attribute>
+ </define>
+ <define name="db.area.units.attribute">
+ <choice>
+ <ref name="db.area.units-enum.attribute"/>
+ <ref name="db.area.units-other.attributes"/>
+ </choice>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>calloutlist</db:refname>
+ <db:refpurpose>A list of <db:tag>callout</db:tag>
+s</db:refpurpose>
+ <define name="db.calloutlist.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.calloutlist.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.calloutlist.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.calloutlist.info">
+ <ref name="db._info.title.only"/>
+ </define>
+ <define name="db.calloutlist">
+ <element name="calloutlist">
+ <ref name="db.calloutlist.attlist"/>
+ <ref name="db.calloutlist.info"/>
+ <zeroOrMore>
+ <ref name="db.all.blocks"/>
+ </zeroOrMore>
+ <oneOrMore>
+ <ref name="db.callout"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>callout</db:refname>
+ <db:refpurpose>A <db:quote>called out</db:quote>
+ description of a marked area</db:refpurpose>
+ <define name="db.callout.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.callout.arearefs.attribute">
+ <attribute name="arearefs">
+ <db:refpurpose>Identifies the areas described by this callout.</db:refpurpose>
+ <data type="IDREFS"/>
+ </attribute>
+ </define>
+ <define name="db.callout.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.callout.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.callout.arearefs.attribute"/>
+ </interleave>
+ </define>
+ <define name="db.callout">
+ <element name="callout">
+ <ref name="db.callout.attlist"/>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>programlistingco</db:refname>
+ <db:refpurpose>A program listing with associated areas used in callouts</db:refpurpose>
+ <define name="db.programlistingco.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.programlistingco.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.programlistingco.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.programlistingco.info">
+ <ref name="db._info.title.forbidden"/>
+ </define>
+ <define name="db.programlistingco">
+ <element name="programlistingco">
+ <ref name="db.programlistingco.attlist"/>
+ <ref name="db.programlistingco.info"/>
+ <ref name="db.areaspec"/>
+ <ref name="db.programlisting"/>
+ <zeroOrMore>
+ <ref name="db.calloutlist"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>areaspec</db:refname>
+ <db:refpurpose>A collection of regions in a graphic or code example</db:refpurpose>
+ <define name="db.areaspec.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.areaspec.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.areaspec.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <ref name="db.area.units.attribute"/>
+ </interleave>
+ </define>
+ <define name="db.areaspec">
+ <element name="areaspec">
+ <ref name="db.areaspec.attlist"/>
+ <oneOrMore>
+ <choice>
+ <ref name="db.area"/>
+ <ref name="db.areaset"/>
+ </choice>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>area</db:refname>
+ <db:refpurpose>A region defined for a callout in a graphic or code example</db:refpurpose>
+ <define name="db.area.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.area.linkends.attribute">
+ <attribute name="linkends">
+ <db:refpurpose>Point to the <db:tag>callout</db:tag>
+s which refer to this area. (This provides bidirectional linking which may be useful in online presentation.)</db:refpurpose>
+ <data type="IDREFS"/>
+ </attribute>
+ </define>
+ <define name="db.area.label.attribute">
+ <attribute name="label">
+ <db:refpurpose>Specifies an identifying number or string that may be used in presentation. The area label might be drawn on top of the figure, for example, at the position indicated by the coords attribute.</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.area.coords.attribute">
+ <attribute name="coords">
+ <db:refpurpose>Provides the coordinates of the area. The coordinates must be interpreted using the <db:tag class="attribute">units</db:tag>
+ specified.</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.area.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.area.role.attribute"/>
+ </optional>
+ <ref name="db.common.idreq.attributes"/>
+ <ref name="db.area.units.attribute"/>
+ <optional>
+ <choice>
+ <ref name="db.area.linkends.attribute"/>
+ <ref name="db.href.attributes"/>
+ </choice>
+ </optional>
+ <optional>
+ <ref name="db.area.label.attribute"/>
+ </optional>
+ <ref name="db.area.coords.attribute"/>
+ </interleave>
+ </define>
+ <define name="db.area">
+ <element name="area">
+ <ref name="db.area.attlist"/>
+ <optional>
+ <ref name="db.alt"/>
+ </optional>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>area</db:refname>
+ <db:refpurpose>A region defined for a callout in a graphic or code example</db:refpurpose>
+ <!-- The only difference is that xml:id is optional -->
+ <define name="db.area.inareaset.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.area.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.area.units.attribute"/>
+ <optional>
+ <choice>
+ <ref name="db.area.linkends.attribute"/>
+ <ref name="db.href.attributes"/>
+ </choice>
+ </optional>
+ <optional>
+ <ref name="db.area.label.attribute"/>
+ </optional>
+ <ref name="db.area.coords.attribute"/>
+ </interleave>
+ </define>
+ <define name="db.area.inareaset">
+ <element name="area">
+ <ref name="db.area.inareaset.attlist"/>
+ <optional>
+ <ref name="db.alt"/>
+ </optional>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>areaset</db:refname>
+ <db:refpurpose>A set of related areas in a graphic or code example</db:refpurpose>
+ <define name="db.areaset.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.areaset.linkends.attribute">
+ <ref name="db.linkends.attribute"/>
+ </define>
+ <define name="db.areaset.label.attribute">
+ <ref name="db.label.attribute"/>
+ </define>
+ <define name="db.areaset.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.areaset.role.attribute"/>
+ </optional>
+ <ref name="db.common.idreq.attributes"/>
+ <ref name="db.area.units.attribute"/>
+ <optional>
+ <choice>
+ <ref name="db.areaset.linkends.attribute"/>
+ <ref name="db.href.attributes"/>
+ </choice>
+ </optional>
+ <optional>
+ <ref name="db.areaset.label.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.areaset">
+ <element name="areaset">
+ <ref name="db.areaset.attlist"/>
+ <oneOrMore>
+ <ref name="db.area.inareaset"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>screenco</db:refname>
+ <db:refpurpose>A screen with associated areas used in callouts</db:refpurpose>
+ <define name="db.screenco.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.screenco.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.screenco.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.screenco.info">
+ <ref name="db._info.title.forbidden"/>
+ </define>
+ <define name="db.screenco">
+ <element name="screenco">
+ <ref name="db.screenco.attlist"/>
+ <ref name="db.screenco.info"/>
+ <ref name="db.areaspec"/>
+ <ref name="db.screen"/>
+ <zeroOrMore>
+ <ref name="db.calloutlist"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>imageobjectco</db:refname>
+ <db:refpurpose>A wrapper for an image object with callouts</db:refpurpose>
+ <define name="db.imageobjectco.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.imageobjectco.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.imageobjectco.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.imageobjectco.info">
+ <ref name="db._info.title.forbidden"/>
+ </define>
+ <define name="db.imageobjectco">
+ <element name="imageobjectco">
+ <ref name="db.imageobjectco.attlist"/>
+ <ref name="db.imageobjectco.info"/>
+ <ref name="db.areaspec"/>
+ <oneOrMore>
+ <ref name="db.imageobject"/>
+ </oneOrMore>
+ <zeroOrMore>
+ <ref name="db.calloutlist"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>co</db:refname>
+ <db:refpurpose>The location of a callout embedded in text</db:refpurpose>
+ <define name="db.co.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.co.linkends.attribute">
+ <ref name="db.linkends.attribute"/>
+ </define>
+ <define name="db.co.label.attribute">
+ <ref name="db.label.attribute"/>
+ </define>
+ <define name="db.co.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.co.role.attribute"/>
+ </optional>
+ <ref name="db.common.idreq.attributes"/>
+ <optional>
+ <ref name="db.co.linkends.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.co.label.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.co">
+ <element name="co">
+ <ref name="db.co.attlist"/>
+ <empty/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>coref</db:refname>
+ <db:refpurpose>A cross reference to a co</db:refpurpose>
+ <define name="db.coref.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.coref.label.attribute">
+ <ref name="db.label.attribute"/>
+ </define>
+ <define name="db.coref.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.coref.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.linkend.attribute"/>
+ <optional>
+ <ref name="db.coref.label.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.coref">
+ <element name="coref">
+ <ref name="db.coref.attlist"/>
+ <empty/>
+ </element>
+ </define>
+ </div>
+</grammar>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/calstbl.rng b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/calstbl.rng
new file mode 100644
index 000000000..08259c5c9
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/calstbl.rng
@@ -0,0 +1,918 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: calstbl.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<grammar ns="http://docbook.org/ns/docbook" xmlns:db="http://docbook.org/ns/docbook" xmlns:s="http://purl.oclc.org/dsdl/schematron" xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0" xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/" xmlns:dbx="http://sourceforge.net/projects/docbook/defguide/schema/extra-markup" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
+ <define name="db.table.choice" combine="choice">
+ <ref name="db.cals.table"/>
+ </define>
+ <define name="db.informaltable.choice" combine="choice">
+ <ref name="db.cals.informaltable"/>
+ </define>
+ <define name="db.char.attribute">
+ <attribute name="char">
+ <db:refpurpose>Specifies the alignment character when <db:tag class="attribute">align</db:tag>
+ is set to <db:quote>char</db:quote>
+.</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.charoff.attribute">
+ <attribute name="charoff">
+ <db:refpurpose>Specifies the percentage of the column's total width that should appear to the left of the first occurance of the character identified in <db:tag class="attribute">char</db:tag>
+ when <db:tag class="attribute">align</db:tag>
+ is set to <db:quote>char</db:quote>
+.</db:refpurpose>
+ <data type="decimal">
+ <param name="minExclusive">0</param>
+ <param name="maxExclusive">100</param>
+ </data>
+ </attribute>
+ </define>
+ <define name="db.frame.attribute">
+ <attribute name="frame">
+ <db:refpurpose>Specifies how the table is to be framed. Note that there is no way to obtain a border on only the starting edge (left, in left-to-right writing systems) of the table.</db:refpurpose>
+ <choice>
+ <value>all</value>
+ <a:documentation>Frame all four sides of the table. In some environments with limited control over table border formatting, such as HTML, this may imply additional borders.</a:documentation>
+ <value>bottom</value>
+ <a:documentation>Frame only the bottom of the table.</a:documentation>
+ <value>none</value>
+ <a:documentation>Place no border on the table. In some environments with limited control over table border formatting, such as HTML, this may disable other borders as well.</a:documentation>
+ <value>sides</value>
+ <a:documentation>Frame the left and right sides of the table.</a:documentation>
+ <value>top</value>
+ <a:documentation>Frame the top of the table.</a:documentation>
+ <value>topbot</value>
+ <a:documentation>Frame the top and bottom of the table.</a:documentation>
+ </choice>
+ </attribute>
+ </define>
+ <define name="db.colsep.attribute">
+ <attribute name="colsep">
+ <db:refpurpose>Specifies the presence or absence of the column separator</db:refpurpose>
+ <dbx:description>
+ <db:para>A rule will be drawn to the right of all cells for which<db:tag class="attribute">colsep</db:tag>
+ has the value 1 (true). Note, however, that the rule to the right of the last column in the table is controlled by the <db:tag class="attribute">frame</db:tag>
+ attribute, not <db:tag class="attribute">colsep</db:tag>
+.</db:para>
+ </dbx:description>
+ <choice>
+ <value>0</value>
+ <a:documentation>No column separator rule.</a:documentation>
+ <value>1</value>
+ <a:documentation>Provide a column separator rule on the right</a:documentation>
+ </choice>
+ </attribute>
+ </define>
+ <define name="db.rowsep.attribute">
+ <attribute name="rowsep">
+ <db:refpurpose>Specifies the presence or absence of the row separator</db:refpurpose>
+ <dbx:description>
+ <db:para>A rule will be drawn below all cells for which<db:tag class="attribute">rowsep</db:tag>
+ has the value 1 (true). Note, however, that the rule below the last row in the table is controlled by the <db:tag class="attribute">frame</db:tag>
+ attribute, not <db:tag class="attribute">rowsep</db:tag>
+.</db:para>
+ </dbx:description>
+ <choice>
+ <value>0</value>
+ <a:documentation>No row separator rule.</a:documentation>
+ <value>1</value>
+ <a:documentation>Provide a row separator rule below</a:documentation>
+ </choice>
+ </attribute>
+ </define>
+ <define name="db.orient.attribute">
+ <attribute name="orient">
+ <db:refpurpose>Specifies the orientation of the table</db:refpurpose>
+ <choice>
+ <value>land</value>
+ <a:documentation>90 degrees counter-clockwise from the rest of the text flow.</a:documentation>
+ <value>port</value>
+ <a:documentation>The same orientation as the rest of the text flow.</a:documentation>
+ </choice>
+ </attribute>
+ </define>
+ <define name="db.tabstyle.attribute">
+ <attribute name="tabstyle">
+ <db:refpurpose>Specifies the table style</db:refpurpose>
+ <dbx:description>
+ <db:para>The <db:tag class="attribute">tabstyle</db:tag>
+ attribute holds the name of a table style defined in a stylesheet that will be used to process this document.</db:para>
+ </dbx:description>
+ </attribute>
+ </define>
+ <define name="db.rowheader.attribute">
+ <attribute name="rowheader">
+ <db:refpurpose>Indicates whether or not the entries in the first column should be considered row headers</db:refpurpose>
+ <choice>
+ <value>firstcol</value>
+ <a:documentation>Indicates that entries in the first column of the table are functionally row headers (analogous to the way that a thead provides column headers).</a:documentation>
+ <value>norowheader</value>
+ <a:documentation>Indicates that entries in the first column have no special significance with respect to column headers.</a:documentation>
+ </choice>
+ </attribute>
+ </define>
+ <define name="db.align.attribute">
+ <attribute name="align">
+ <db:refpurpose>Specifies the horizontal alignment of text in an entry.</db:refpurpose>
+ <choice>
+ <value>center</value>
+ <a:documentation>Centered.</a:documentation>
+ <value>char</value>
+ <a:documentation>Aligned on a particular character.</a:documentation>
+ <value>justify</value>
+ <a:documentation>Left and right justified.</a:documentation>
+ <value>left</value>
+ <a:documentation>Left justified.</a:documentation>
+ <value>right</value>
+ <a:documentation>Right justified.</a:documentation>
+ </choice>
+ </attribute>
+ </define>
+ <define name="db.valign.attribute">
+ <attribute name="valign">
+ <db:refpurpose>Specifies the vertical alignment of text in an entry.</db:refpurpose>
+ <choice>
+ <value>bottom</value>
+ <a:documentation>Aligned on the bottom of the entry.</a:documentation>
+ <value>middle</value>
+ <a:documentation>Aligned in the middle.</a:documentation>
+ <value>top</value>
+ <a:documentation>Aligned at the top of the entry.</a:documentation>
+ </choice>
+ </attribute>
+ </define>
+ <define name="db.specify-col-by-colname.attributes">
+ <attribute name="colname">
+ <db:refpurpose>Specifies a column specification by name.</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.specify-col-by-namest.attributes">
+ <attribute name="namest">
+ <db:refpurpose>Specifies a starting column by name.</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.specify-span-by-spanspec.attributes">
+ <attribute name="spanname">
+ <db:refpurpose>Specifies a span by name.</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.specify-span-directly.attributes">
+ <interleave>
+ <attribute name="namest">
+ <db:refpurpose>Specifies a starting column by name.</db:refpurpose>
+ </attribute>
+ <attribute name="nameend">
+ <db:refpurpose>Specifies an ending column by name.</db:refpurpose>
+ </attribute>
+ </interleave>
+ </define>
+ <define name="db.column-spec.attributes">
+ <choice>
+ <ref name="db.specify-col-by-colname.attributes"/>
+ <ref name="db.specify-col-by-namest.attributes"/>
+ <ref name="db.specify-span-by-spanspec.attributes"/>
+ <ref name="db.specify-span-directly.attributes"/>
+ </choice>
+ </define>
+ <define name="db.colname.attribute">
+ <attribute name="colname">
+ <db:refpurpose>Provides a name for a column specification.</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.spanname.attribute">
+ <attribute name="spanname">
+ <db:refpurpose>Provides a name for a span specification.</db:refpurpose>
+ </attribute>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>tgroup</db:refname>
+ <db:refpurpose>A wrapper for the main content of a table, or part of a table</db:refpurpose>
+ <define name="db.tgroup.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.tgroup.tgroupstyle.attribute">
+ <attribute name="tgroupstyle">
+ <db:refpurpose>Additional style information for downstream processing; typically the name of a style.</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.tgroup.cols.attribute">
+ <attribute name="cols">
+ <db:refpurpose>The number of columns in the table. Must be an integer greater than zero.</db:refpurpose>
+ <data type="positiveInteger"/>
+ </attribute>
+ </define>
+ <define name="db.tgroup.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.tgroup.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.char.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.charoff.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.tgroup.tgroupstyle.attribute"/>
+ </optional>
+ <ref name="db.tgroup.cols.attribute"/>
+ <optional>
+ <ref name="db.colsep.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.rowsep.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.align.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.tgroup">
+ <element name="tgroup">
+ <ref name="db.tgroup.attlist"/>
+ <zeroOrMore>
+ <ref name="db.colspec"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="db.spanspec"/>
+ </zeroOrMore>
+ <optional>
+ <ref name="db.cals.thead"/>
+ </optional>
+ <optional>
+ <ref name="db.cals.tfoot"/>
+ </optional>
+ <ref name="db.cals.tbody"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>colspec</db:refname>
+ <db:refpurpose>Specifications for a column in a table</db:refpurpose>
+ <define name="db.colspec.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.colspec.colnum.attribute">
+ <attribute name="colnum">
+ <db:refpurpose>The number of the column to which this specification applies. Must be greater than any preceding column number. Defaults to one more than the number of the preceding column, if there is one, or one.</db:refpurpose>
+ <data type="positiveInteger"/>
+ </attribute>
+ </define>
+ <define name="db.colspec.colwidth.attribute">
+ <attribute name="colwidth">
+ <db:refpurpose>Specifies the width of the column.</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.colspec.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.colspec.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.colspec.colnum.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.char.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.colsep.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.colspec.colwidth.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.charoff.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.colname.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.rowsep.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.align.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.colspec">
+ <element name="colspec">
+ <ref name="db.colspec.attlist"/>
+ <empty/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>spanspec</db:refname>
+ <db:refpurpose>Formatting information for a spanned column in a table</db:refpurpose>
+ <define name="db.spanspec.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.spanspec.namest.attribute">
+ <attribute name="namest">
+ <db:refpurpose>Specifies a starting column by name.</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.spanspec.nameend.attribute">
+ <attribute name="nameend">
+ <db:refpurpose>Specifies an ending column by name.</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.spanspec.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.spanspec.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <ref name="db.spanname.attribute"/>
+ <ref name="db.spanspec.namest.attribute"/>
+ <ref name="db.spanspec.nameend.attribute"/>
+ <optional>
+ <ref name="db.char.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.colsep.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.charoff.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.rowsep.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.align.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.spanspec">
+ <element name="spanspec">
+ <ref name="db.spanspec.attlist"/>
+ <empty/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>thead</db:refname>
+ <db:refpurpose>A table header consisting of one or more rows</db:refpurpose>
+ <define name="db.cals.thead.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.cals.thead.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.cals.thead.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.valign.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.cals.thead">
+ <element name="thead">
+ <ref name="db.cals.thead.attlist"/>
+ <zeroOrMore>
+ <ref name="db.colspec"/>
+ </zeroOrMore>
+ <oneOrMore>
+ <ref name="db.row"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>tfoot</db:refname>
+ <db:refpurpose>A table footer consisting of one or more rows</db:refpurpose>
+ <define name="db.cals.tfoot.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.cals.tfoot.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.cals.tfoot.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.valign.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.cals.tfoot">
+ <element name="tfoot">
+ <ref name="db.cals.tfoot.attlist"/>
+ <zeroOrMore>
+ <ref name="db.colspec"/>
+ </zeroOrMore>
+ <oneOrMore>
+ <ref name="db.row"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>tbody</db:refname>
+ <db:refpurpose>A wrapper for the rows of a table or informal table</db:refpurpose>
+ <define name="db.cals.tbody.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.cals.tbody.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.cals.tbody.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.valign.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.cals.tbody">
+ <element name="tbody">
+ <ref name="db.cals.tbody.attlist"/>
+ <oneOrMore>
+ <ref name="db.row"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>row</db:refname>
+ <db:refpurpose>A row in a table</db:refpurpose>
+ <define name="db.row.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.row.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.row.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.rowsep.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.valign.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.row">
+ <element name="row">
+ <ref name="db.row.attlist"/>
+ <oneOrMore>
+ <choice>
+ <ref name="db.entry"/>
+ <ref name="db.entrytbl"/>
+ </choice>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>entry</db:refname>
+ <db:refpurpose>A cell in a table</db:refpurpose>
+ <ctrl:exclude from="db.entry" exclude="db.cals.table"/>
+ <ctrl:exclude from="db.entry" exclude="db.cals.informaltable"/>
+ <define name="db.entry.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.entry.morerows.attribute">
+ <attribute name="morerows">
+ <db:refpurpose>Specifies the number of additional rows which this entry occupies. Defaults to zero.</db:refpurpose>
+ <data type="integer"/>
+ </attribute>
+ </define>
+ <define name="db.entry.rotate.attribute">
+ <attribute name="rotate">
+ <db:refpurpose>Specifies the rotation of this entry. A value of 1 (true) rotates the cell 90 degrees counter-clockwise. A value of 0 (false) leaves the cell unrotated.</db:refpurpose>
+ <choice>
+ <value>0</value>
+ <a:documentation>Do not rotate the cell.</a:documentation>
+ <value>1</value>
+ <a:documentation>Rotate the cell 90 degrees counter-clockwise.</a:documentation>
+ </choice>
+ </attribute>
+ </define>
+ <define name="db.entry.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.entry.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.valign.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.char.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.colsep.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.charoff.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.entry.morerows.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.column-spec.attributes"/>
+ </optional>
+ <optional>
+ <ref name="db.rowsep.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.entry.rotate.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.align.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.entry">
+ <element name="entry">
+ <ref name="db.entry.attlist"/>
+ <choice>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="db.all.blocks"/>
+ </zeroOrMore>
+ </choice>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>entrytbl</db:refname>
+ <db:refpurpose>A subtable appearing in place of an entry in a table</db:refpurpose>
+ <define name="db.entrytbl.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.entrytbl.tgroupstyle.attribute">
+ <attribute name="tgroupstyle">
+ <db:refpurpose>Additional style information for downstream processing; typically the name of a style.</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.entrytbl.cols.attribute">
+ <attribute name="cols">
+ <db:refpurpose>The number of columns in the entry table. Must be an integer greater than zero.</db:refpurpose>
+ <data type="positiveInteger"/>
+ </attribute>
+ </define>
+ <define name="db.entrytbl.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.entrytbl.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.char.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.charoff.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.column-spec.attributes"/>
+ </optional>
+ <optional>
+ <ref name="db.entrytbl.tgroupstyle.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.entrytbl.cols.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.colsep.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.rowsep.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.align.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.entrytbl">
+ <element name="entrytbl">
+ <ref name="db.entrytbl.attlist"/>
+ <zeroOrMore>
+ <ref name="db.colspec"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="db.spanspec"/>
+ </zeroOrMore>
+ <optional>
+ <ref name="db.cals.entrytbl.thead"/>
+ </optional>
+ <ref name="db.cals.entrytbl.tbody"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>thead</db:refname>
+ <db:refpurpose>A table header consisting of one or more rows</db:refpurpose>
+ <define name="db.cals.entrytbl.thead.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.cals.entrytbl.thead.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.cals.entrytbl.thead.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.valign.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.cals.entrytbl.thead">
+ <element name="thead">
+ <ref name="db.cals.entrytbl.thead.attlist"/>
+ <zeroOrMore>
+ <ref name="db.colspec"/>
+ </zeroOrMore>
+ <oneOrMore>
+ <ref name="db.entrytbl.row"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>tbody</db:refname>
+ <db:refpurpose>A wrapper for the rows of a table or informal table</db:refpurpose>
+ <define name="db.cals.entrytbl.tbody.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.cals.entrytbl.tbody.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.cals.entrytbl.tbody.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.valign.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.cals.entrytbl.tbody">
+ <element name="tbody">
+ <ref name="db.cals.entrytbl.tbody.attlist"/>
+ <oneOrMore>
+ <ref name="db.entrytbl.row"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>row</db:refname>
+ <db:refpurpose>A row in a table</db:refpurpose>
+ <define name="db.entrytbl.row.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.entrytbl.row.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.entrytbl.row.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.rowsep.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.valign.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.entrytbl.row">
+ <element name="row">
+ <ref name="db.entrytbl.row.attlist"/>
+ <oneOrMore>
+ <ref name="db.entry"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>table</db:refname>
+ <db:refpurpose>A formal table in a document</db:refpurpose>
+ <define name="db.cals.table.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.cals.table.label.attribute">
+ <ref name="db.label.attribute"/>
+ </define>
+ <define name="db.cals.table.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.cals.table.role.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.cals.table.label.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.tabstyle.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.floatstyle.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.orient.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.colsep.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.rowsep.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.frame.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.pgwide.attribute"/>
+ </optional>
+ <optional>
+ <attribute name="shortentry">
+ <db:refpurpose>Indicates if the short or long title should be used in a List of Tables</db:refpurpose>
+ <choice>
+ <value>0</value>
+ <a:documentation>Indicates that the full title should be used.</a:documentation>
+ <value>1</value>
+ <a:documentation>Indicates that the short short title (titleabbrev) should be used.</a:documentation>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="tocentry">
+ <db:refpurpose>Indicates if the table should appear in a List of Tables</db:refpurpose>
+ <choice>
+ <value>0</value>
+ <a:documentation>Indicates that the table should not occur in the List of Tables.</a:documentation>
+ <value>1</value>
+ <a:documentation>Indicates that the table should appear in the List of Tables.</a:documentation>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <ref name="db.rowheader.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.cals.table.info">
+ <ref name="db._info.title.onlyreq"/>
+ </define>
+ <define name="db.cals.table">
+ <element name="table">
+ <ref name="db.cals.table.attlist"/>
+ <ref name="db.cals.table.info"/>
+ <interleave>
+ <optional>
+ <ref name="db.alt"/>
+ </optional>
+ <zeroOrMore>
+ <ref name="db.indexing.inlines"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="db.textobject"/>
+ </zeroOrMore>
+ </interleave>
+ <choice>
+ <oneOrMore>
+ <ref name="db.mediaobject"/>
+ </oneOrMore>
+ <oneOrMore>
+ <ref name="db.tgroup"/>
+ </oneOrMore>
+ </choice>
+ <optional>
+ <ref name="db.caption"/>
+ </optional>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>informaltable</db:refname>
+ <db:refpurpose>A table without a title</db:refpurpose>
+ <define name="db.cals.informaltable.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.cals.informaltable.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.cals.informaltable.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.tabstyle.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.floatstyle.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.orient.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.colsep.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.rowsep.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.frame.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.pgwide.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.rowheader.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.cals.informaltable.info">
+ <ref name="db._info.title.forbidden"/>
+ </define>
+ <define name="db.cals.informaltable">
+ <element name="informaltable">
+ <ref name="db.cals.informaltable.attlist"/>
+ <ref name="db.cals.informaltable.info"/>
+ <interleave>
+ <optional>
+ <ref name="db.alt"/>
+ </optional>
+ <zeroOrMore>
+ <ref name="db.indexing.inlines"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="db.textobject"/>
+ </zeroOrMore>
+ </interleave>
+ <choice>
+ <oneOrMore>
+ <ref name="db.mediaobject"/>
+ </oneOrMore>
+ <oneOrMore>
+ <ref name="db.tgroup"/>
+ </oneOrMore>
+ </choice>
+ <optional>
+ <ref name="db.caption"/>
+ </optional>
+ </element>
+ </define>
+ </div>
+</grammar>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/core.rng b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/core.rng
new file mode 100644
index 000000000..8ecf45d97
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/core.rng
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: docbook.rnc 7466 2007-09-27 14:03:55Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<grammar ns="http://docbook.org/ns/docbook" xmlns="http://relaxng.org/ns/structure/1.0">
+ <start>
+ <choice>
+ <ref name="db.set"/>
+ <ref name="db.book"/>
+ <ref name="db.divisions"/>
+ <ref name="db.components"/>
+ <ref name="db.navigation.components"/>
+ <ref name="db.section"/>
+ <ref name="db.para"/>
+ </choice>
+ </start>
+ <include href="pool.rng"/>
+ <include href="hier.rng"/>
+</grammar>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/docbook.rng b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/docbook.rng
new file mode 100644
index 000000000..4e156f283
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/docbook.rng
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<grammar xmlns="http://relaxng.org/ns/structure/1.0">
+ <!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: docbook.rnc 7661 2008-02-06 13:52:59Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+ -->
+ <include href="docbook1.rng"/>
+</grammar>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/docbook1.rng b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/docbook1.rng
new file mode 100644
index 000000000..b5a897619
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/docbook1.rng
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: docbook.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<grammar ns="http://docbook.org/ns/docbook" xmlns="http://relaxng.org/ns/structure/1.0">
+ <include href="core.rng"/>
+ <include href="annotations.rng"/>
+ <include href="xlink.rng"/>
+ <include href="sect1.rng"/>
+ <include href="refentry.rng"/>
+ <include href="refsect1.rng"/>
+ <include href="glossary.rng"/>
+ <include href="bibliography.rng"/>
+ <include href="index.rng"/>
+ <include href="toc.rng"/>
+ <include href="tasks.rng"/>
+ <include href="callouts.rng"/>
+ <include href="ebnf.rng"/>
+ <include href="calstbl.rng"/>
+ <include href="htmltbl.rng"/>
+ <include href="msgset.rng"/>
+ <include href="qandaset.rng"/>
+ <include href="math.rng"/>
+ <include href="mathml.rng"/>
+ <include href="svg.rng"/>
+ <include href="markup.rng"/>
+ <include href="product.rng"/>
+ <include href="gui.rng"/>
+ <include href="keyboard.rng"/>
+ <include href="os.rng"/>
+ <include href="programming.rng"/>
+ <include href="admonitions.rng"/>
+ <include href="error.rng"/>
+ <include href="technical.rng"/>
+ <include href="topic.rng"/>
+</grammar>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/ebnf.rng b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/ebnf.rng
new file mode 100644
index 000000000..97a21aa3f
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/ebnf.rng
@@ -0,0 +1,267 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: ebnf.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<grammar ns="http://docbook.org/ns/docbook" xmlns:db="http://docbook.org/ns/docbook" xmlns:s="http://purl.oclc.org/dsdl/schematron" xmlns:rng="http://relaxng.org/ns/structure/1.0" xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
+ <start combine="choice">
+ <choice>
+ <ref name="db.productionset"/>
+ <ref name="db.constraintdef"/>
+ </choice>
+ </start>
+ <define name="db.technical.inlines" combine="choice">
+ <ref name="db.nonterminal"/>
+ </define>
+ <define name="db.technical.blocks" combine="choice">
+ <choice>
+ <ref name="db.productionset"/>
+ <ref name="db.constraintdef"/>
+ </choice>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>productionset</db:refname>
+ <db:refpurpose>A set of EBNF productions</db:refpurpose>
+ <define name="db.productionset.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.productionset.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.productionset.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.productionset.info">
+ <ref name="db._info.title.only"/>
+ </define>
+ <define name="db.productionset">
+ <element name="productionset">
+ <ref name="db.productionset.attlist"/>
+ <ref name="db.productionset.info"/>
+ <oneOrMore>
+ <choice>
+ <ref name="db.production"/>
+ <ref name="db.productionrecap"/>
+ </choice>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>production</db:refname>
+ <db:refpurpose>A production in a set of EBNF productions</db:refpurpose>
+ <define name="db.production.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.production.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.production.role.attribute"/>
+ </optional>
+ <ref name="db.common.idreq.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.production">
+ <element name="production">
+ <ref name="db.production.attlist"/>
+ <ref name="db.lhs"/>
+ <ref name="db.rhs"/>
+ <zeroOrMore>
+ <ref name="db.constraint"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>lhs</db:refname>
+ <db:refpurpose>The left-hand side of an EBNF production</db:refpurpose>
+ <define name="db.lhs.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.lhs.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.lhs.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.lhs">
+ <element name="lhs">
+ <ref name="db.lhs.attlist"/>
+ <text/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>rhs</db:refname>
+ <db:refpurpose>The right-hand side of an EBNF production</db:refpurpose>
+ <define name="db.rhs.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.rhs.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.rhs.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.rhs">
+ <element name="rhs">
+ <ref name="db.rhs.attlist"/>
+ <zeroOrMore>
+ <choice>
+ <text/>
+ <ref name="db.nonterminal"/>
+ <ref name="db.lineannotation"/>
+ <ref name="db.sbr"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>nonterminal</db:refname>
+ <db:refpurpose>A non-terminal in an EBNF production</db:refpurpose>
+ <define name="db.nonterminal.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.nonterminal.def.attribute">
+ <attribute name="def">
+ <db:refpurpose>Specifies a URI that points to a <db:tag>production</db:tag>
+where the <db:tag>nonterminal</db:tag>
+ is defined</db:refpurpose>
+ <data type="anyURI"/>
+ </attribute>
+ </define>
+ <define name="db.nonterminal.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.nonterminal.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <ref name="db.nonterminal.def.attribute"/>
+ </interleave>
+ </define>
+ <define name="db.nonterminal">
+ <element name="nonterminal">
+ <ref name="db.nonterminal.attlist"/>
+ <text/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>constraint</db:refname>
+ <db:refpurpose>A constraint in an EBNF production</db:refpurpose>
+ <define name="db.constraint.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.constraint.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.constraint.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.req.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.constraint">
+ <element name="constraint">
+ <ref name="db.constraint.attlist"/>
+ <empty/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>productionrecap</db:refname>
+ <db:refpurpose>A cross-reference to an EBNF production</db:refpurpose>
+ <define name="db.productionrecap.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.productionrecap.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.productionrecap.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.req.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.productionrecap">
+ <element name="productionrecap">
+ <ref name="db.productionrecap.attlist"/>
+ <empty/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>constraintdef</db:refname>
+ <db:refpurpose>The definition of a constraint in an EBNF production</db:refpurpose>
+ <define name="db.constraintdef.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.constraintdef.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.constraintdef.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.constraintdef.info">
+ <ref name="db._info.title.only"/>
+ </define>
+ <define name="db.constraintdef">
+ <element name="constraintdef">
+ <ref name="db.constraintdef.attlist"/>
+ <ref name="db.constraintdef.info"/>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+</grammar>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/error.rng b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/error.rng
new file mode 100644
index 000000000..7a157903d
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/error.rng
@@ -0,0 +1,136 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: pool.rnc 7466 2007-09-27 14:03:55Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<grammar ns="http://docbook.org/ns/docbook" xmlns:db="http://docbook.org/ns/docbook" xmlns:s="http://purl.oclc.org/dsdl/schematron" xmlns:rng="http://relaxng.org/ns/structure/1.0" xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/" xmlns="http://relaxng.org/ns/structure/1.0">
+ <define name="db.domain.inlines" combine="choice">
+ <ref name="db.error.inlines"/>
+ </define>
+ <define name="db.error.inlines">
+ <choice>
+ <ref name="db.errorcode"/>
+ <ref name="db.errortext"/>
+ <ref name="db.errorname"/>
+ <ref name="db.errortype"/>
+ </choice>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>errorcode</db:refname>
+ <db:refpurpose>An error code</db:refpurpose>
+ <define name="db.errorcode.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.errorcode.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.errorcode.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.errorcode">
+ <element name="errorcode">
+ <ref name="db.errorcode.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>errorname</db:refname>
+ <db:refpurpose>An error name</db:refpurpose>
+ <define name="db.errorname.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.errorname.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.errorname.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.errorname">
+ <element name="errorname">
+ <ref name="db.errorname.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>errortext</db:refname>
+ <db:refpurpose>An error message.</db:refpurpose>
+ <define name="db.errortext.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.errortext.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.errortext.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.errortext">
+ <element name="errortext">
+ <ref name="db.errortext.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>errortype</db:refname>
+ <db:refpurpose>The classification of an error message</db:refpurpose>
+ <define name="db.errortype.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.errortype.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.errortype.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.errortype">
+ <element name="errortype">
+ <ref name="db.errortype.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+</grammar>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/glossary.rng b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/glossary.rng
new file mode 100644
index 000000000..524176bd4
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/glossary.rng
@@ -0,0 +1,513 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: glossary.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<grammar ns="http://docbook.org/ns/docbook" xmlns:db="http://docbook.org/ns/docbook" xmlns:s="http://purl.oclc.org/dsdl/schematron" xmlns:rng="http://relaxng.org/ns/structure/1.0" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
+ <start combine="choice">
+ <choice>
+ <ref name="db.glossary"/>
+ <ref name="db.glossdiv"/>
+ <ref name="db.glosslist"/>
+ </choice>
+ </start>
+ <define name="db.publishing.inlines" combine="choice">
+ <ref name="db.glossary.inlines"/>
+ </define>
+ <define name="db.list.blocks" combine="choice">
+ <ref name="db.glosslist"/>
+ </define>
+ <define name="db.navigation.components" combine="choice">
+ <ref name="db.glossary"/>
+ </define>
+ <define name="db.glossary.inlines">
+ <choice>
+ <ref name="db.firstterm"/>
+ <ref name="db.glossterm"/>
+ <ref name="db._firstterm"/>
+ <ref name="db._glossterm"/>
+ </choice>
+ </define>
+ <define name="db.ubiq.inlines" combine="choice">
+ <choice>
+ <ref name="db._firstterm"/>
+ <ref name="db._glossterm"/>
+ </choice>
+ </define>
+ <!-- ====================================================================== -->
+ <define name="db.baseform.attribute">
+ <optional>
+ <attribute name="baseform">
+ <db:refpurpose>Specifies the base form of the term, the one that appears in the glossary. This allows adjectival, plural, and other variations of the term to appear in the element. The element content is the default base form.</db:refpurpose>
+ </attribute>
+ </optional>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>glosslist</db:refname>
+ <db:refpurpose>A wrapper for a list of glossary entries</db:refpurpose>
+ <define name="db.glosslist.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.glosslist.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.glosslist.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.glosslist.info">
+ <ref name="db._info.title.only"/>
+ </define>
+ <define name="db.glosslist">
+ <element name="glosslist">
+ <ref name="db.glosslist.attlist"/>
+ <optional>
+ <ref name="db.glosslist.info"/>
+ </optional>
+ <zeroOrMore>
+ <ref name="db.all.blocks"/>
+ </zeroOrMore>
+ <oneOrMore>
+ <ref name="db.glossentry"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>glossentry</db:refname>
+ <db:refpurpose>An entry in a glossary or glosslist</db:refpurpose>
+ <define name="db.glossentry.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.glossentry.sortas.attribute">
+ <attribute name="sortas">
+ <db:refpurpose>Specifies the string by which the element's content is to be sorted; if unspecified, the content is used</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.glossentry.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.glossentry.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.glossentry.sortas.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.glossentry">
+ <element name="glossentry">
+ <ref name="db.glossentry.attlist"/>
+ <ref name="db.glossterm"/>
+ <optional>
+ <ref name="db.acronym"/>
+ </optional>
+ <optional>
+ <ref name="db.abbrev"/>
+ </optional>
+ <zeroOrMore>
+ <ref name="db.indexterm"/>
+ </zeroOrMore>
+ <choice>
+ <ref name="db.glosssee"/>
+ <oneOrMore>
+ <ref name="db.glossdef"/>
+ </oneOrMore>
+ </choice>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>glossdef</db:refname>
+ <db:refpurpose>A definition in a glossentry</db:refpurpose>
+ <define name="db.glossdef.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.glossdef.subject.attribute">
+ <attribute name="subject">
+ <db:refpurpose>Specifies a list of keywords for the definition</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.glossdef.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.glossdef.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.glossdef.subject.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.glossdef">
+ <element name="glossdef">
+ <ref name="db.glossdef.attlist"/>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ <zeroOrMore>
+ <ref name="db.glossseealso"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>glosssee</db:refname>
+ <db:refpurpose>A cross-reference from one <db:tag>glossentry</db:tag>
+ to another</db:refpurpose>
+ <define name="db.glosssee.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.glosssee.otherterm.attribute">
+ <attribute name="otherterm">
+ <db:refpurpose>Identifies the other term</db:refpurpose>
+ <data type="IDREF"/>
+ </attribute>
+ </define>
+ <define name="db.glosssee.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.glosssee.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.glosssee.otherterm.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.glosssee">
+ <element name="glosssee">
+ <s:pattern name="Glosssary 'see' type constraint">
+ <s:rule context="db:glosssee[@otherterm]">
+ <s:assert test="local-name(//*[@xml:id=current()/@otherterm]) = 'glossentry' and namespace-uri(//*[@xml:id=current()/@otherterm]) = 'http://docbook.org/ns/docbook'">@otherterm on glosssee must point to a glossentry.</s:assert>
+ </s:rule>
+ </s:pattern>
+ <ref name="db.glosssee.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>glossseealso</db:refname>
+ <db:refpurpose>A cross-reference from one glossentry to another</db:refpurpose>
+ <define name="db.glossseealso.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.glossseealso.otherterm.attribute">
+ <attribute name="otherterm">
+ <db:refpurpose>Identifies the other term</db:refpurpose>
+ <data type="IDREF"/>
+ </attribute>
+ </define>
+ <define name="db.glossseealso.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.glossseealso.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.glossseealso.otherterm.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.glossseealso">
+ <element name="glossseealso">
+ <s:pattern name="Glossary 'seealso' type constraint">
+ <s:rule context="db:glossseealso[@otherterm]">
+ <s:assert test="local-name(//*[@xml:id=current()/@otherterm]) = 'glossentry' and namespace-uri(//*[@xml:id=current()/@otherterm]) = 'http://docbook.org/ns/docbook'">@otherterm on glossseealso must point to a glossentry.</s:assert>
+ </s:rule>
+ </s:pattern>
+ <ref name="db.glossseealso.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>firstterm</db:refname>
+ <db:refpurpose>The first occurrence of a term</db:refpurpose>
+ <define name="db.firstterm.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.firstterm.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.firstterm.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <ref name="db.baseform.attribute"/>
+ </interleave>
+ </define>
+ <define name="db.firstterm">
+ <element name="firstterm">
+ <s:pattern name="Glossary 'firstterm' type constraint">
+ <s:rule context="db:firstterm[@linkend]">
+ <s:assert test="local-name(//*[@xml:id=current()/@linkend]) = 'glossentry' and namespace-uri(//*[@xml:id=current()/@linkend]) = 'http://docbook.org/ns/docbook'">@linkend on firstterm must point to a glossentry.</s:assert>
+ </s:rule>
+ </s:pattern>
+ <ref name="db.firstterm.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>firstterm</db:refname>
+ <db:refpurpose>The first occurrence of a term, with limited content</db:refpurpose>
+ <define name="db._firstterm.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db._firstterm.attlist">
+ <interleave>
+ <optional>
+ <ref name="db._firstterm.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <ref name="db.baseform.attribute"/>
+ </interleave>
+ </define>
+ <define name="db._firstterm">
+ <element name="firstterm">
+ <s:pattern name="Glossary 'firstterm' type constraint">
+ <s:rule context="db:firstterm[@linkend]">
+ <s:assert test="local-name(//*[@xml:id=current()/@linkend]) = 'glossentry' and namespace-uri(//*[@xml:id=current()/@linkend]) = 'http://docbook.org/ns/docbook'">@linkend on firstterm must point to a glossentry.</s:assert>
+ </s:rule>
+ </s:pattern>
+ <ref name="db._firstterm.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>glossterm</db:refname>
+ <db:refpurpose>A glossary term</db:refpurpose>
+ <define name="db.glossterm.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.glossterm.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.glossterm.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <ref name="db.baseform.attribute"/>
+ </interleave>
+ </define>
+ <define name="db.glossterm">
+ <element name="glossterm">
+ <s:pattern name="Glossary 'glossterm' type constraint">
+ <s:rule context="db:glossterm[@linkend]">
+ <s:assert test="local-name(//*[@xml:id=current()/@linkend]) = 'glossentry' and namespace-uri(//*[@xml:id=current()/@linkend]) = 'http://docbook.org/ns/docbook'">@linkend on glossterm must point to a glossentry.</s:assert>
+ </s:rule>
+ </s:pattern>
+ <ref name="db.glossterm.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>glossterm</db:refname>
+ <db:refpurpose>A glossary term</db:refpurpose>
+ <define name="db._glossterm.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db._glossterm.attlist">
+ <interleave>
+ <optional>
+ <ref name="db._glossterm.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <ref name="db.baseform.attribute"/>
+ </interleave>
+ </define>
+ <define name="db._glossterm">
+ <element name="glossterm">
+ <s:pattern name="Glossary 'glossterm' type constraint">
+ <s:rule context="db:glossterm[@linkend]">
+ <s:assert test="local-name(//*[@xml:id=current()/@linkend]) = 'glossentry' and namespace-uri(//*[@xml:id=current()/@linkend]) = 'http://docbook.org/ns/docbook'">@linkend on glossterm must point to a glossentry.</s:assert>
+ </s:rule>
+ </s:pattern>
+ <ref name="db._glossterm.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>glossary</db:refname>
+ <db:refpurpose>A glossary</db:refpurpose>
+ <define name="db.glossary.status.attribute">
+ <ref name="db.status.attribute"/>
+ </define>
+ <define name="db.glossary.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.glossary.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.glossary.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.label.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.glossary.status.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.glossary.info">
+ <ref name="db._info"/>
+ </define>
+ <define name="db.glossary">
+ <element name="glossary">
+ <ref name="db.glossary.attlist"/>
+ <ref name="db.glossary.info"/>
+ <zeroOrMore>
+ <ref name="db.all.blocks"/>
+ </zeroOrMore>
+ <choice>
+ <zeroOrMore>
+ <ref name="db.glossdiv"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="db.glossentry"/>
+ </zeroOrMore>
+ </choice>
+ <optional>
+ <ref name="db.bibliography"/>
+ </optional>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>glossdiv</db:refname>
+ <db:refpurpose>A division in a glossary</db:refpurpose>
+ <define name="db.glossdiv.status.attribute">
+ <ref name="db.status.attribute"/>
+ </define>
+ <define name="db.glossdiv.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.glossdiv.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.glossdiv.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.label.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.glossdiv.status.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.glossdiv.info">
+ <ref name="db._info.title.req"/>
+ </define>
+ <define name="db.glossdiv">
+ <element name="glossdiv">
+ <ref name="db.glossdiv.attlist"/>
+ <ref name="db.glossdiv.info"/>
+ <zeroOrMore>
+ <ref name="db.all.blocks"/>
+ </zeroOrMore>
+ <oneOrMore>
+ <ref name="db.glossentry"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <define name="db.technical.inlines" combine="choice">
+ <ref name="db.termdef"/>
+ </define>
+ <div>
+ <db:refname>termdef</db:refname>
+ <db:refpurpose>An inline definition of a term</db:refpurpose>
+ <define name="db.termdef.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.termdef.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.termdef.role.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.glossentry.sortas.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <ref name="db.baseform.attribute"/>
+ </interleave>
+ </define>
+ <define name="db.termdef">
+ <element name="termdef">
+ <s:pattern name="Glossary term definition constraint">
+ <s:rule context="db:termdef">
+ <s:assert test="count(db:firstterm) = 1">A termdef must contain exactly one firstterm</s:assert>
+ </s:rule>
+ </s:pattern>
+ <ref name="db.termdef.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+</grammar>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/gui.rng b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/gui.rng
new file mode 100644
index 000000000..e1ce3d694
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/gui.rng
@@ -0,0 +1,292 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: pool.rnc 7466 2007-09-27 14:03:55Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<grammar ns="http://docbook.org/ns/docbook" xmlns:db="http://docbook.org/ns/docbook" xmlns:s="http://purl.oclc.org/dsdl/schematron" xmlns:rng="http://relaxng.org/ns/structure/1.0" xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/" xmlns="http://relaxng.org/ns/structure/1.0">
+ <define name="db.domain.inlines" combine="choice">
+ <ref name="db.gui.inlines"/>
+ </define>
+ <define name="db.userinput.inlines" combine="choice">
+ <ref name="db.gui.inlines"/>
+ </define>
+ <define name="db.keycombination.contentmodel" combine="choice">
+ <ref name="db.mousebutton"/>
+ </define>
+ <define name="db.gui.inlines">
+ <choice>
+ <ref name="db.guiicon"/>
+ <ref name="db.guibutton"/>
+ <ref name="db.guimenuitem"/>
+ <ref name="db.guimenu"/>
+ <ref name="db.guisubmenu"/>
+ <ref name="db.guilabel"/>
+ <ref name="db.menuchoice"/>
+ <ref name="db.mousebutton"/>
+ </choice>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>guibutton</db:refname>
+ <db:refpurpose>The text on a button in a GUI</db:refpurpose>
+ <define name="db.guibutton.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.guibutton.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.guibutton.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.guibutton">
+ <element name="guibutton">
+ <ref name="db.guibutton.attlist"/>
+ <zeroOrMore>
+ <choice>
+ <ref name="db._text"/>
+ <ref name="db.accel"/>
+ <ref name="db.superscript"/>
+ <ref name="db.subscript"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>guiicon</db:refname>
+ <db:refpurpose>Graphic and/or text appearing as a icon in a GUI</db:refpurpose>
+ <define name="db.guiicon.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.guiicon.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.guiicon.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.guiicon">
+ <element name="guiicon">
+ <ref name="db.guiicon.attlist"/>
+ <zeroOrMore>
+ <choice>
+ <ref name="db._text"/>
+ <ref name="db.accel"/>
+ <ref name="db.superscript"/>
+ <ref name="db.subscript"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>guilabel</db:refname>
+ <db:refpurpose>The text of a label in a GUI</db:refpurpose>
+ <define name="db.guilabel.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.guilabel.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.guilabel.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.guilabel">
+ <element name="guilabel">
+ <ref name="db.guilabel.attlist"/>
+ <zeroOrMore>
+ <choice>
+ <ref name="db._text"/>
+ <ref name="db.accel"/>
+ <ref name="db.superscript"/>
+ <ref name="db.subscript"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>guimenu</db:refname>
+ <db:refpurpose>The name of a menu in a GUI</db:refpurpose>
+ <define name="db.guimenu.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.guimenu.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.guimenu.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.guimenu">
+ <element name="guimenu">
+ <ref name="db.guimenu.attlist"/>
+ <zeroOrMore>
+ <choice>
+ <ref name="db._text"/>
+ <ref name="db.accel"/>
+ <ref name="db.superscript"/>
+ <ref name="db.subscript"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>guimenuitem</db:refname>
+ <db:refpurpose>The name of a terminal menu item in a GUI</db:refpurpose>
+ <define name="db.guimenuitem.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.guimenuitem.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.guimenuitem.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.guimenuitem">
+ <element name="guimenuitem">
+ <ref name="db.guimenuitem.attlist"/>
+ <zeroOrMore>
+ <choice>
+ <ref name="db._text"/>
+ <ref name="db.accel"/>
+ <ref name="db.superscript"/>
+ <ref name="db.subscript"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>guisubmenu</db:refname>
+ <db:refpurpose>The name of a submenu in a GUI</db:refpurpose>
+ <define name="db.guisubmenu.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.guisubmenu.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.guisubmenu.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.guisubmenu">
+ <element name="guisubmenu">
+ <ref name="db.guisubmenu.attlist"/>
+ <zeroOrMore>
+ <choice>
+ <ref name="db._text"/>
+ <ref name="db.accel"/>
+ <ref name="db.superscript"/>
+ <ref name="db.subscript"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>menuchoice</db:refname>
+ <db:refpurpose>A selection or series of selections from a menu</db:refpurpose>
+ <define name="db.menuchoice.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.menuchoice.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.menuchoice.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.menuchoice">
+ <element name="menuchoice">
+ <ref name="db.menuchoice.attlist"/>
+ <optional>
+ <ref name="db.shortcut"/>
+ </optional>
+ <oneOrMore>
+ <choice>
+ <ref name="db.guibutton"/>
+ <ref name="db.guiicon"/>
+ <ref name="db.guilabel"/>
+ <ref name="db.guimenu"/>
+ <ref name="db.guimenuitem"/>
+ <ref name="db.guisubmenu"/>
+ </choice>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>mousebutton</db:refname>
+ <db:refpurpose>The conventional name of a mouse button</db:refpurpose>
+ <define name="db.mousebutton.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.mousebutton.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.mousebutton.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.mousebutton">
+ <element name="mousebutton">
+ <ref name="db.mousebutton.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+</grammar>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/hier.rng b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/hier.rng
new file mode 100644
index 000000000..9ac114974
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/hier.rng
@@ -0,0 +1,730 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: hier.rnc 8994 2011-04-19 20:07:33Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<grammar ns="http://docbook.org/ns/docbook" xmlns:db="http://docbook.org/ns/docbook" xmlns:s="http://purl.oclc.org/dsdl/schematron" xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0" xmlns:dbx="http://sourceforge.net/projects/docbook/defguide/schema/extra-markup" xmlns="http://relaxng.org/ns/structure/1.0">
+ <start combine="choice">
+ <choice>
+ <ref name="db.partintro"/>
+ <ref name="db.simplesect"/>
+ </choice>
+ </start>
+ <define name="db.status.attribute">
+ <attribute name="status">
+ <db:refpurpose>Identifies the editorial or publication status of the element on which it occurs</db:refpurpose>
+ </attribute>
+ </define>
+ <!-- ====================================================================== -->
+ <define name="db.toplevel.sections">
+ <choice>
+ <group>
+ <oneOrMore>
+ <ref name="db.section"/>
+ </oneOrMore>
+ <zeroOrMore>
+ <ref name="db.simplesect"/>
+ </zeroOrMore>
+ </group>
+ <oneOrMore>
+ <ref name="db.simplesect"/>
+ </oneOrMore>
+ </choice>
+ </define>
+ <define name="db.toplevel.blocks.or.sections">
+ <choice>
+ <group>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ <optional>
+ <ref name="db.toplevel.sections"/>
+ </optional>
+ </group>
+ <ref name="db.toplevel.sections"/>
+ </choice>
+ </define>
+ <define name="db.recursive.sections">
+ <choice>
+ <group>
+ <oneOrMore>
+ <ref name="db.section"/>
+ </oneOrMore>
+ <zeroOrMore>
+ <ref name="db.simplesect"/>
+ </zeroOrMore>
+ </group>
+ <oneOrMore>
+ <ref name="db.simplesect"/>
+ </oneOrMore>
+ </choice>
+ </define>
+ <define name="db.recursive.blocks.or.sections">
+ <choice>
+ <group>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ <optional>
+ <ref name="db.recursive.sections"/>
+ </optional>
+ </group>
+ <ref name="db.recursive.sections"/>
+ </choice>
+ </define>
+ <!-- ====================================================================== -->
+ <define name="db.divisions">
+ <ref name="db.part"/>
+ </define>
+ <define name="db.components">
+ <choice>
+ <ref name="db.dedication"/>
+ <ref name="db.acknowledgements"/>
+ <ref name="db.preface"/>
+ <ref name="db.chapter"/>
+ <ref name="db.appendix"/>
+ <ref name="db.article"/>
+ <ref name="db.colophon"/>
+ </choice>
+ </define>
+ <define name="db.navigation.components">
+ <notAllowed/>
+ </define>
+ <define name="db.component.contentmodel">
+ <zeroOrMore>
+ <ref name="db.navigation.components"/>
+ </zeroOrMore>
+ <ref name="db.toplevel.blocks.or.sections"/>
+ <zeroOrMore>
+ <ref name="db.navigation.components"/>
+ </zeroOrMore>
+ </define>
+ <!-- ====================================================================== -->
+ <define name="db.setindex.components">
+ <notAllowed/>
+ </define>
+ <define name="db.toc.components">
+ <notAllowed/>
+ </define>
+ <define name="db.set.components">
+ <choice>
+ <ref name="db.set"/>
+ <ref name="db.book"/>
+ </choice>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>set</db:refname>
+ <db:refpurpose>A collection of books</db:refpurpose>
+ <define name="db.set.status.attribute">
+ <ref name="db.status.attribute"/>
+ </define>
+ <define name="db.set.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.set.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.set.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.label.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.set.status.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.set.info">
+ <ref name="db._info.title.req"/>
+ </define>
+ <define name="db.set">
+ <element name="set">
+ <ref name="db.set.attlist"/>
+ <ref name="db.set.info"/>
+ <optional>
+ <ref name="db.toc.components"/>
+ </optional>
+ <oneOrMore>
+ <ref name="db.set.components"/>
+ </oneOrMore>
+ <optional>
+ <ref name="db.setindex.components"/>
+ </optional>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <define name="db.book.components">
+ <zeroOrMore>
+ <choice>
+ <ref name="db.navigation.components"/>
+ <ref name="db.components"/>
+ <ref name="db.divisions"/>
+ </choice>
+ </zeroOrMore>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>book</db:refname>
+ <db:refpurpose>A book</db:refpurpose>
+ <define name="db.book.status.attribute">
+ <ref name="db.status.attribute"/>
+ </define>
+ <define name="db.book.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.book.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.book.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.label.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.book.status.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.book.info">
+ <ref name="db._info"/>
+ </define>
+ <define name="db.book">
+ <element name="book">
+ <ref name="db.book.attlist"/>
+ <ref name="db.book.info"/>
+ <ref name="db.book.components"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>dedication</db:refname>
+ <db:refpurpose>The dedication of a book or other component</db:refpurpose>
+ <define name="db.dedication.status.attribute">
+ <ref name="db.status.attribute"/>
+ </define>
+ <define name="db.dedication.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.dedication.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.dedication.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.label.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.dedication.status.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.dedication.info">
+ <ref name="db._info"/>
+ </define>
+ <define name="db.dedication">
+ <element name="dedication">
+ <ref name="db.dedication.attlist"/>
+ <ref name="db.dedication.info"/>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>acknowledgements</db:refname>
+ <db:refpurpose>Acknowledgements of a book or other component</db:refpurpose>
+ <define name="db.acknowledgements.status.attribute">
+ <ref name="db.status.attribute"/>
+ </define>
+ <define name="db.acknowledgements.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.acknowledgements.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.acknowledgements.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.label.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.acknowledgements.status.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.acknowledgements.info">
+ <ref name="db._info"/>
+ </define>
+ <define name="db.acknowledgements">
+ <element name="acknowledgements">
+ <ref name="db.acknowledgements.attlist"/>
+ <ref name="db.acknowledgements.info"/>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>colophon</db:refname>
+ <db:refpurpose>Text at the back of a book describing facts about its production</db:refpurpose>
+ <define name="db.colophon.status.attribute">
+ <ref name="db.status.attribute"/>
+ </define>
+ <define name="db.colophon.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.colophon.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.colophon.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.label.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.colophon.status.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.colophon.info">
+ <ref name="db._info"/>
+ </define>
+ <define name="db.colophon">
+ <element name="colophon">
+ <ref name="db.colophon.attlist"/>
+ <ref name="db.colophon.info"/>
+ <choice>
+ <group>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ <zeroOrMore>
+ <ref name="db.simplesect"/>
+ </zeroOrMore>
+ </group>
+ <group>
+ <zeroOrMore>
+ <ref name="db.all.blocks"/>
+ </zeroOrMore>
+ <oneOrMore>
+ <ref name="db.simplesect"/>
+ </oneOrMore>
+ </group>
+ </choice>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <define name="db.appendix.contentmodel">
+ <ref name="db.component.contentmodel"/>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>appendix</db:refname>
+ <db:refpurpose>An appendix in a book or article</db:refpurpose>
+ <define name="db.appendix.status.attribute">
+ <ref name="db.status.attribute"/>
+ </define>
+ <define name="db.appendix.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.appendix.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.appendix.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.label.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.appendix.status.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.appendix.info">
+ <ref name="db._info.title.req"/>
+ </define>
+ <define name="db.appendix">
+ <element name="appendix">
+ <ref name="db.appendix.attlist"/>
+ <ref name="db.appendix.info"/>
+ <ref name="db.appendix.contentmodel"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <define name="db.chapter.contentmodel">
+ <ref name="db.component.contentmodel"/>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>chapter</db:refname>
+ <db:refpurpose>A chapter, as of a book</db:refpurpose>
+ <define name="db.chapter.status.attribute">
+ <ref name="db.status.attribute"/>
+ </define>
+ <define name="db.chapter.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.chapter.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.chapter.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.label.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.chapter.status.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.chapter.info">
+ <ref name="db._info.title.req"/>
+ </define>
+ <define name="db.chapter">
+ <element name="chapter">
+ <ref name="db.chapter.attlist"/>
+ <ref name="db.chapter.info"/>
+ <ref name="db.chapter.contentmodel"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <define name="db.part.components">
+ <choice>
+ <ref name="db.navigation.components"/>
+ <ref name="db.components"/>
+ </choice>
+ </define>
+ <define name="db.part.contentmodel">
+ <oneOrMore>
+ <ref name="db.part.components"/>
+ </oneOrMore>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>part</db:refname>
+ <db:refpurpose>A division in a book</db:refpurpose>
+ <define name="db.part.status.attribute">
+ <ref name="db.status.attribute"/>
+ </define>
+ <define name="db.part.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.part.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.part.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.label.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.part.status.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.part.info">
+ <ref name="db._info.title.req"/>
+ </define>
+ <define name="db.part">
+ <element name="part">
+ <ref name="db.part.attlist"/>
+ <ref name="db.part.info"/>
+ <optional>
+ <ref name="db.partintro"/>
+ </optional>
+ <ref name="db.part.contentmodel"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>preface</db:refname>
+ <db:refpurpose>Introductory matter preceding the first chapter of a book</db:refpurpose>
+ <define name="db.preface.status.attribute">
+ <ref name="db.status.attribute"/>
+ </define>
+ <define name="db.preface.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.preface.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.preface.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.label.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.preface.status.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.preface.info">
+ <ref name="db._info.title.req"/>
+ </define>
+ <define name="db.preface">
+ <element name="preface">
+ <ref name="db.preface.attlist"/>
+ <ref name="db.preface.info"/>
+ <ref name="db.component.contentmodel"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>partintro</db:refname>
+ <db:refpurpose>An introduction to the contents of a part</db:refpurpose>
+ <define name="db.partintro.status.attribute">
+ <ref name="db.status.attribute"/>
+ </define>
+ <define name="db.partintro.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.partintro.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.partintro.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.label.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.partintro.status.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.partintro.info">
+ <ref name="db._info"/>
+ </define>
+ <define name="db.partintro">
+ <element name="partintro">
+ <ref name="db.partintro.attlist"/>
+ <ref name="db.partintro.info"/>
+ <ref name="db.toplevel.blocks.or.sections"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>section</db:refname>
+ <db:refpurpose>A recursive section</db:refpurpose>
+ <define name="db.section.status.attribute">
+ <ref name="db.status.attribute"/>
+ </define>
+ <define name="db.section.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.section.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.section.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.label.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.section.status.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.section.info">
+ <ref name="db._info.title.req"/>
+ </define>
+ <define name="db.section">
+ <element name="section">
+ <ref name="db.section.attlist"/>
+ <ref name="db.section.info"/>
+ <ref name="db.recursive.blocks.or.sections"/>
+ <zeroOrMore>
+ <ref name="db.navigation.components"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>simplesect</db:refname>
+ <db:refpurpose>A section of a document with no subdivisions</db:refpurpose>
+ <define name="db.simplesect.status.attribute">
+ <ref name="db.status.attribute"/>
+ </define>
+ <define name="db.simplesect.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.simplesect.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.simplesect.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.label.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.simplesect.status.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.simplesect.info">
+ <ref name="db._info.title.req"/>
+ </define>
+ <define name="db.simplesect">
+ <element name="simplesect">
+ <ref name="db.simplesect.attlist"/>
+ <ref name="db.simplesect.info"/>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <define name="db.article.components">
+ <ref name="db.toplevel.sections"/>
+ </define>
+ <define name="db.article.navcomponents">
+ <choice>
+ <ref name="db.navigation.components"/>
+ <ref name="db.acknowledgements"/>
+ <ref name="db.dedication"/>
+ <ref name="db.appendix"/>
+ <ref name="db.colophon"/>
+ </choice>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>article</db:refname>
+ <db:refpurpose>An article</db:refpurpose>
+ <define name="db.article.status.attribute">
+ <ref name="db.status.attribute"/>
+ </define>
+ <define name="db.article.class.enumeration">
+ <choice>
+ <value>faq</value>
+ <a:documentation>A collection of frequently asked questions.</a:documentation>
+ <value>journalarticle</value>
+ <a:documentation>An article in a journal or other periodical.</a:documentation>
+ <value>productsheet</value>
+ <a:documentation>A description of a product.</a:documentation>
+ <value>specification</value>
+ <a:documentation>A specification.</a:documentation>
+ <value>techreport</value>
+ <a:documentation>A technical report.</a:documentation>
+ <value>whitepaper</value>
+ <a:documentation>A white paper.</a:documentation>
+ </choice>
+ </define>
+ <define name="db.article.class.attribute">
+ <attribute name="class">
+ <db:refpurpose>Identifies the nature of the article</db:refpurpose>
+ <ref name="db.article.class.enumeration"/>
+ </attribute>
+ </define>
+ <define name="db.article.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.article.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.article.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.label.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.article.status.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.article.class.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.article.info">
+ <ref name="db._info.title.req"/>
+ </define>
+ <define name="db.article">
+ <element name="article">
+ <ref name="db.article.attlist"/>
+ <ref name="db.article.info"/>
+ <zeroOrMore>
+ <ref name="db.article.navcomponents"/>
+ </zeroOrMore>
+ <choice>
+ <group>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ <optional>
+ <ref name="db.article.components"/>
+ </optional>
+ </group>
+ <ref name="db.article.components"/>
+ </choice>
+ <zeroOrMore>
+ <ref name="db.article.navcomponents"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+</grammar>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/htmltbl.rng b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/htmltbl.rng
new file mode 100644
index 000000000..c2fc3b181
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/htmltbl.rng
@@ -0,0 +1,678 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: htmltbl.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<grammar ns="http://docbook.org/ns/docbook" xmlns:db="http://docbook.org/ns/docbook" xmlns:s="http://purl.oclc.org/dsdl/schematron" xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0" xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
+ <define name="db.table.choice" combine="choice">
+ <ref name="db.html.table"/>
+ </define>
+ <define name="db.informaltable.choice" combine="choice">
+ <ref name="db.html.informaltable"/>
+ </define>
+ <define name="db.html.coreattrs">
+ <interleave>
+ <optional>
+ <attribute name="class">
+ <db:refpurpose>This attribute assigns a class name or set of class names to an element. Any number of elements may be assigned the same class name or names. Multiple class names must be separated by white space characters.</db:refpurpose>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="style">
+ <db:refpurpose>This attribute specifies style information for the current element.</db:refpurpose>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="title">
+ <db:refpurpose>This attribute offers advisory information about the element for which it is set.</db:refpurpose>
+ </attribute>
+ </optional>
+ </interleave>
+ </define>
+ <!-- dir isn't listed here because it's already a common attribute -->
+ <define name="db.html.i18n">
+ <optional>
+ <attribute name="lang">
+ <db:refpurpose>This attribute specifies the base language of an element's attribute values and text content. The default value of this attribute is unknown.</db:refpurpose>
+ </attribute>
+ </optional>
+ </define>
+ <define name="db.html.events">
+ <interleave>
+ <optional>
+ <attribute name="onclick">
+ <db:refpurpose>Occurs when the pointing device button is clicked over an element.</db:refpurpose>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="ondblclick">
+ <db:refpurpose>Occurs when the pointing device button is double clicked over an element.</db:refpurpose>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="onmousedown">
+ <db:refpurpose>Occurs when the pointing device button is pressed over an element.</db:refpurpose>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="onmouseup">
+ <db:refpurpose>Occurs when the pointing device button is released over an element.</db:refpurpose>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="onmouseover">
+ <db:refpurpose>Occurs when the pointing device is moved onto an element.</db:refpurpose>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="onmousemove">
+ <db:refpurpose>Occurs when the pointing device is moved while it is over an element.</db:refpurpose>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="onmouseout">
+ <db:refpurpose>Occurs when the pointing device is moved away from an element.</db:refpurpose>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="onkeypress">
+ <db:refpurpose>Occurs when a key is pressed and released over an element.</db:refpurpose>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="onkeydown">
+ <db:refpurpose>Occurs when a key is pressed down over an element.</db:refpurpose>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="onkeyup">
+ <db:refpurpose>Occurs when a key is released over an element.</db:refpurpose>
+ </attribute>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.html.attrs">
+ <interleave>
+ <ref name="db.common.attributes"/>
+ <ref name="db.html.coreattrs"/>
+ <ref name="db.html.i18n"/>
+ <ref name="db.html.events"/>
+ </interleave>
+ </define>
+ <define name="db.html.cellhalign">
+ <interleave>
+ <optional>
+ <attribute name="align">
+ <db:refpurpose>Specifies the alignment of data and the justification of text in a cell.</db:refpurpose>
+ <choice>
+ <value>left</value>
+ <a:documentation>Left-flush data/Left-justify text. This is the default value for table data.</a:documentation>
+ <value>center</value>
+ <a:documentation>Center data/Center-justify text. This is the default value for table headers.</a:documentation>
+ <value>right</value>
+ <a:documentation>Right-flush data/Right-justify text.</a:documentation>
+ <value>justify</value>
+ <a:documentation>Double-justify text.</a:documentation>
+ <value>char</value>
+ <a:documentation>Align text around a specific character. If a user agent doesn't support character alignment, behavior in the presence of this value is unspecified.</a:documentation>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="char">
+ <db:refpurpose>This attribute specifies a single character within a text fragment to act as an axis for alignment. The default value for this attribute is the decimal point character for the current language as set by the lang attribute (e.g., the period in English and the comma in French). User agents are not required to support this attribute.</db:refpurpose>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="charoff">
+ <db:refpurpose>When present, this attribute specifies the offset to the first occurrence of the alignment character on each line. If a line doesn't include the alignment character, it should be horizontally shifted to end at the alignment position. When charoff is used to set the offset of an alignment character, the direction of offset is determined by the current text direction (set by the dir attribute). In left-to-right texts (the default), offset is from the left margin. In right-to-left texts, offset is from the right margin. User agents are not required to support this attribute.</db:refpurpose>
+ <choice>
+ <data type="integer"/>
+ <a:documentation>An explicit offset.</a:documentation>
+ <data type="string">
+ <param name="pattern">[0-9]+%</param>
+ </data>
+ <a:documentation>A percentage offset.</a:documentation>
+ </choice>
+ </attribute>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.html.cellvalign">
+ <optional>
+ <attribute name="valign">
+ <db:refpurpose>Specifies the vertical position of data within a cell.</db:refpurpose>
+ <choice>
+ <value>top</value>
+ <a:documentation>Cell data is flush with the top of the cell.</a:documentation>
+ <value>middle</value>
+ <a:documentation>Cell data is centered vertically within the cell. This is the default value.</a:documentation>
+ <value>bottom</value>
+ <a:documentation>Cell data is flush with the bottom of the cell.</a:documentation>
+ <value>baseline</value>
+ <a:documentation>All cells in the same row as a cell whose valign attribute has this value should have their textual data positioned so that the first text line occurs on a baseline common to all cells in the row. This constraint does not apply to subsequent text lines in these cells.</a:documentation>
+ </choice>
+ </attribute>
+ </optional>
+ </define>
+ <define name="db.html.table.attributes">
+ <interleave>
+ <optional>
+ <attribute name="summary">
+ <db:refpurpose>Provides a summary of the table's purpose and structure for user agents rendering to non-visual media such as speech and Braille.</db:refpurpose>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="width">
+ <db:refpurpose>Specifies the desired width of the entire table and is intended for visual user agents. When the value is a percentage value, the value is relative to the user agent's available horizontal space. In the absence of any width specification, table width is determined by the user agent.</db:refpurpose>
+ <choice>
+ <data type="integer"/>
+ <a:documentation>An explicit width.</a:documentation>
+ <data type="string">
+ <param name="pattern">[0-9]+%</param>
+ </data>
+ <a:documentation>A percentage width.</a:documentation>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="border">
+ <db:refpurpose>Specifies the width (in pixels only) of the frame around a table.</db:refpurpose>
+ <data type="nonNegativeInteger"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="frame">
+ <db:refpurpose>Specifies which sides of the frame surrounding a table will be visible.</db:refpurpose>
+ <choice>
+ <value>void</value>
+ <a:documentation>No sides. This is the default value.</a:documentation>
+ <value>above</value>
+ <a:documentation>The top side only.</a:documentation>
+ <value>below</value>
+ <a:documentation>The bottom side only.</a:documentation>
+ <value>hsides</value>
+ <a:documentation>The top and bottom sides only.</a:documentation>
+ <value>lhs</value>
+ <a:documentation>The left-hand side only.</a:documentation>
+ <value>rhs</value>
+ <a:documentation>The right-hand side only.</a:documentation>
+ <value>vsides</value>
+ <a:documentation>The right and left sides only.</a:documentation>
+ <value>box</value>
+ <a:documentation>All four sides.</a:documentation>
+ <value>border</value>
+ <a:documentation>All four sides.</a:documentation>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="rules">
+ <db:refpurpose>Specifies which rules will appear between cells within a table. The rendering of rules is user agent dependent.</db:refpurpose>
+ <choice>
+ <value>none</value>
+ <a:documentation>No rules. This is the default value.</a:documentation>
+ <value>groups</value>
+ <a:documentation>Rules will appear between row groups (see thead, tfoot, and tbody) and column groups (see colgroup and col) only.</a:documentation>
+ <value>rows</value>
+ <a:documentation>Rules will appear between rows only.</a:documentation>
+ <value>cols</value>
+ <a:documentation>Rules will appear between columns only.</a:documentation>
+ <value>all</value>
+ <a:documentation>Rules will appear between all rows and columns.</a:documentation>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="cellspacing">
+ <db:refpurpose>Specifies how much space the user agent should leave between the left side of the table and the left-hand side of the leftmost column, the top of the table and the top side of the topmost row, and so on for the right and bottom of the table. The attribute also specifies the amount of space to leave between cells.</db:refpurpose>
+ <choice>
+ <data type="integer"/>
+ <a:documentation>An explicit spacing.</a:documentation>
+ <data type="string">
+ <param name="pattern">[0-9]+%</param>
+ </data>
+ <a:documentation>A percentage spacing.</a:documentation>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="cellpadding">
+ <db:refpurpose>Specifies the amount of space between the border of the cell and its contents. If the value of this attribute is a pixel length, all four margins should be this distance from the contents. If the value of the attribute is a percentage length, the top and bottom margins should be equally separated from the content based on a percentage of the available vertical space, and the left and right margins should be equally separated from the content based on a percentage of the available horizontal space.</db:refpurpose>
+ <choice>
+ <data type="integer"/>
+ <a:documentation>An explicit padding.</a:documentation>
+ <data type="string">
+ <param name="pattern">[0-9]+%</param>
+ </data>
+ <a:documentation>A percentage padding.</a:documentation>
+ </choice>
+ </attribute>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.html.tablecell.attributes">
+ <interleave>
+ <optional>
+ <attribute name="abbr">
+ <db:refpurpose>Provides an abbreviated form of the cell's content and may be rendered by user agents when appropriate in place of the cell's content. Abbreviated names should be short since user agents may render them repeatedly. For instance, speech synthesizers may render the abbreviated headers relating to a particular cell before rendering that cell's content.</db:refpurpose>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="axis">
+ <db:refpurpose>This attribute may be used to place a cell into conceptual categories that can be considered to form axes in an n-dimensional space. User agents may give users access to these categories (e.g., the user may query the user agent for all cells that belong to certain categories, the user agent may present a table in the form of a table of contents, etc.). Please consult an HTML reference for more details.</db:refpurpose>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="headers">
+ <db:refpurpose>Specifies the list of header cells that provide header information for the current data cell. The value of this attribute is a space-separated list of cell names; those cells must be named by setting their id attribute. Authors generally use the headers attribute to help non-visual user agents render header information about data cells (e.g., header information is spoken prior to the cell data), but the attribute may also be used in conjunction with style sheets.</db:refpurpose>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="scope">
+ <db:refpurpose>Specifies the set of data cells for which the current header cell provides header information. This attribute may be used in place of the headers attribute, particularly for simple tables.</db:refpurpose>
+ <choice>
+ <value>row</value>
+ <a:documentation>The current cell provides header information for the rest of the row that contains it</a:documentation>
+ <value>col</value>
+ <a:documentation>The current cell provides header information for the rest of the column that contains it.</a:documentation>
+ <value>rowgroup</value>
+ <a:documentation>The header cell provides header information for the rest of the row group that contains it.</a:documentation>
+ <value>colgroup</value>
+ <a:documentation>The header cell provides header information for the rest of the column group that contains it.</a:documentation>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="rowspan">
+ <db:refpurpose>Specifies the number of rows spanned by the current cell. The default value of this attribute is one (<db:quote>1</db:quote>
+). The value zero (<db:quote>0</db:quote>
+) means that the cell spans all rows from the current row to the last row of the table section (<db:tag>thead</db:tag>
+, <db:tag>tbody</db:tag>
+, or <db:tag>tfoot</db:tag>
+) in which the cell is defined.</db:refpurpose>
+ <data type="nonNegativeInteger"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="colspan">
+ <db:refpurpose>Specifies the number of columns spanned by the current cell. The default value of this attribute is one (<db:quote>1</db:quote>
+). The value zero (<db:quote>0</db:quote>
+) means that the cell spans all columns from the current column to the last column of the column group (<db:tag>colgroup</db:tag>
+) in which the cell is defined.</db:refpurpose>
+ <data type="nonNegativeInteger"/>
+ </attribute>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.html.table.info">
+ <ref name="db._info.title.forbidden"/>
+ </define>
+ <define name="db.html.table.model">
+ <optional>
+ <ref name="db.html.table.info"/>
+ </optional>
+ <ref name="db.html.caption"/>
+ <choice>
+ <zeroOrMore>
+ <ref name="db.html.col"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="db.html.colgroup"/>
+ </zeroOrMore>
+ </choice>
+ <optional>
+ <ref name="db.html.thead"/>
+ </optional>
+ <optional>
+ <ref name="db.html.tfoot"/>
+ </optional>
+ <choice>
+ <oneOrMore>
+ <ref name="db.html.tbody"/>
+ </oneOrMore>
+ <oneOrMore>
+ <ref name="db.html.tr"/>
+ </oneOrMore>
+ </choice>
+ </define>
+ <define name="db.html.informaltable.info">
+ <ref name="db._info.title.forbidden"/>
+ </define>
+ <define name="db.html.informaltable.model">
+ <optional>
+ <ref name="db.html.informaltable.info"/>
+ </optional>
+ <choice>
+ <zeroOrMore>
+ <ref name="db.html.col"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="db.html.colgroup"/>
+ </zeroOrMore>
+ </choice>
+ <optional>
+ <ref name="db.html.thead"/>
+ </optional>
+ <optional>
+ <ref name="db.html.tfoot"/>
+ </optional>
+ <choice>
+ <oneOrMore>
+ <ref name="db.html.tbody"/>
+ </oneOrMore>
+ <oneOrMore>
+ <ref name="db.html.tr"/>
+ </oneOrMore>
+ </choice>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>table</db:refname>
+ <db:refpurpose>A formal (captioned) HTML table in a document</db:refpurpose>
+ <define name="db.html.table.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.html.table.label.attribute">
+ <ref name="db.label.attribute"/>
+ </define>
+ <define name="db.html.table.attlist">
+ <interleave>
+ <ref name="db.html.attrs"/>
+ <ref name="db.html.table.attributes"/>
+ <optional>
+ <ref name="db.html.table.role.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.html.table.label.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.orient.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.pgwide.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.tabstyle.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.floatstyle.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.html.table">
+ <element name="table">
+ <ref name="db.html.table.attlist"/>
+ <ref name="db.html.table.model"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>informaltable</db:refname>
+ <db:refpurpose>An HTML table without a title</db:refpurpose>
+ <define name="db.html.informaltable.attlist">
+ <interleave>
+ <ref name="db.html.attrs"/>
+ <ref name="db.html.table.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.html.informaltable">
+ <element name="informaltable">
+ <ref name="db.html.informaltable.attlist"/>
+ <ref name="db.html.informaltable.model"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>caption</db:refname>
+ <db:refpurpose>An HTML table caption</db:refpurpose>
+ <define name="db.html.caption.attlist">
+ <ref name="db.html.attrs"/>
+ </define>
+ <define name="db.html.caption">
+ <element name="caption">
+ <ref name="db.html.caption.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>col</db:refname>
+ <db:refpurpose>Specifications for a column in an HTML table</db:refpurpose>
+ <define name="db.html.col.attlist">
+ <interleave>
+ <ref name="db.html.attrs"/>
+ <optional>
+ <attribute name="span">
+ <db:refpurpose>This attribute, whose value must be an integer &gt; 0, specifies the number of columns <db:quote>spanned</db:quote>
+ by the <db:tag>col</db:tag>
+ element; the <db:tag>col</db:tag>
+ element shares its attributes with all the columns it spans. The default value for this attribute is 1 (i.e., a single column). If the span attribute is set to N &gt; 1, the current <db:tag>col</db:tag>
+ element shares its attributes with the next N-1 columns.</db:refpurpose>
+ <data type="nonNegativeInteger"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="width">
+ <db:refpurpose>Specifies a default width for each column spanned by the current <db:tag>col</db:tag>
+ element. It has the same meaning as the <db:tag class="attribute">width</db:tag>
+ attribute for the <db:tag>colgroup</db:tag>
+ element and overrides it.</db:refpurpose>
+ </attribute>
+ </optional>
+ <ref name="db.html.cellhalign"/>
+ <ref name="db.html.cellvalign"/>
+ </interleave>
+ </define>
+ <define name="db.html.col">
+ <element name="col">
+ <ref name="db.html.col.attlist"/>
+ <empty/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>colgroup</db:refname>
+ <db:refpurpose>A group of columns in an HTML table</db:refpurpose>
+ <define name="db.html.colgroup.attlist">
+ <interleave>
+ <ref name="db.html.attrs"/>
+ <optional>
+ <attribute name="span">
+ <db:refpurpose>This attribute, which must be an integer &gt; 0, specifies the number of columns in a column group. In the absence of a span attribute, each <db:tag>colgroup</db:tag>
+ defines a column group containing one column. If the span attribute is set to N &gt; 0, the current <db:tag>colgroup</db:tag>
+ element defines a column group containing N columns. User agents must ignore this attribute if the <db:tag>colgroup</db:tag>
+ element contains one or more <db:tag>col</db:tag>
+ elements.</db:refpurpose>
+ <data type="nonNegativeInteger"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="width">
+ <db:refpurpose>This attribute specifies a default width for each column in the current column group. In addition to the standard pixel, percentage, and relative values, this attribute allows the special form <db:quote>0*</db:quote>
+ (zero asterisk) which means that the width of the each column in the group should be the minimum width necessary to hold the column's contents. This implies that a column's entire contents must be known before its width may be correctly computed. Authors should be aware that specifying <db:quote>0*</db:quote>
+ will prevent visual user agents from rendering a table incrementally. This attribute is overridden for any column in the column group whose width is specified via a <db:tag>col</db:tag>
+ element.</db:refpurpose>
+ </attribute>
+ </optional>
+ <ref name="db.html.cellhalign"/>
+ <ref name="db.html.cellvalign"/>
+ </interleave>
+ </define>
+ <define name="db.html.colgroup">
+ <element name="colgroup">
+ <ref name="db.html.colgroup.attlist"/>
+ <zeroOrMore>
+ <ref name="db.html.col"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>thead</db:refname>
+ <db:refpurpose>A table header consisting of one or more rows in an HTML table</db:refpurpose>
+ <define name="db.html.thead.attlist">
+ <interleave>
+ <ref name="db.html.attrs"/>
+ <ref name="db.html.cellhalign"/>
+ <ref name="db.html.cellvalign"/>
+ </interleave>
+ </define>
+ <define name="db.html.thead">
+ <element name="thead">
+ <ref name="db.html.thead.attlist"/>
+ <oneOrMore>
+ <ref name="db.html.tr"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>tfoot</db:refname>
+ <db:refpurpose>A table footer consisting of one or more rows in an HTML table</db:refpurpose>
+ <define name="db.html.tfoot.attlist">
+ <interleave>
+ <ref name="db.html.attrs"/>
+ <ref name="db.html.cellhalign"/>
+ <ref name="db.html.cellvalign"/>
+ </interleave>
+ </define>
+ <define name="db.html.tfoot">
+ <element name="tfoot">
+ <ref name="db.html.tfoot.attlist"/>
+ <oneOrMore>
+ <ref name="db.html.tr"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>tbody</db:refname>
+ <db:refpurpose>A wrapper for the rows of an HTML table or informal HTML table</db:refpurpose>
+ <define name="db.html.tbody.attlist">
+ <interleave>
+ <ref name="db.html.attrs"/>
+ <ref name="db.html.cellhalign"/>
+ <ref name="db.html.cellvalign"/>
+ </interleave>
+ </define>
+ <define name="db.html.tbody">
+ <element name="tbody">
+ <ref name="db.html.tbody.attlist"/>
+ <oneOrMore>
+ <ref name="db.html.tr"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>tr</db:refname>
+ <db:refpurpose>A row in an HTML table</db:refpurpose>
+ <define name="db.html.tr.attlist">
+ <interleave>
+ <ref name="db.html.attrs"/>
+ <ref name="db.html.cellhalign"/>
+ <ref name="db.html.cellvalign"/>
+ </interleave>
+ </define>
+ <define name="db.html.tr">
+ <element name="tr">
+ <ref name="db.html.tr.attlist"/>
+ <oneOrMore>
+ <choice>
+ <ref name="db.html.th"/>
+ <ref name="db.html.td"/>
+ </choice>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>th</db:refname>
+ <db:refpurpose>A table header entry in an HTML table</db:refpurpose>
+ <define name="db.html.th.attlist">
+ <interleave>
+ <ref name="db.html.attrs"/>
+ <ref name="db.html.tablecell.attributes"/>
+ <ref name="db.html.cellhalign"/>
+ <ref name="db.html.cellvalign"/>
+ </interleave>
+ </define>
+ <define name="db.html.th">
+ <element name="th">
+ <ref name="db.html.th.attlist"/>
+ <choice>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="db.all.blocks"/>
+ </zeroOrMore>
+ </choice>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>td</db:refname>
+ <db:refpurpose>A table entry in an HTML table</db:refpurpose>
+ <define name="db.html.td.attlist">
+ <interleave>
+ <ref name="db.html.attrs"/>
+ <ref name="db.html.tablecell.attributes"/>
+ <ref name="db.html.cellhalign"/>
+ <ref name="db.html.cellvalign"/>
+ </interleave>
+ </define>
+ <define name="db.html.td">
+ <element name="td">
+ <ref name="db.html.td.attlist"/>
+ <choice>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="db.all.blocks"/>
+ </zeroOrMore>
+ </choice>
+ </element>
+ </define>
+ </div>
+</grammar>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/index.rng b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/index.rng
new file mode 100644
index 000000000..3241fc9ac
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/index.rng
@@ -0,0 +1,773 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: index.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<grammar ns="http://docbook.org/ns/docbook" xmlns:db="http://docbook.org/ns/docbook" xmlns:s="http://purl.oclc.org/dsdl/schematron" xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
+ <start combine="choice">
+ <choice>
+ <ref name="db.setindex"/>
+ <ref name="db.index"/>
+ <ref name="db.indexdiv"/>
+ </choice>
+ </start>
+ <define name="db.ubiq.inlines" combine="choice">
+ <ref name="db.indexterm"/>
+ </define>
+ <define name="db.indexing.inlines" combine="choice">
+ <ref name="db.indexterm"/>
+ </define>
+ <define name="db.nopara.blocks" combine="choice">
+ <ref name="db.indexterm"/>
+ </define>
+ <define name="db.navigation.components" combine="choice">
+ <ref name="db.index"/>
+ </define>
+ <define name="db.setindex.components" combine="choice">
+ <ref name="db.setindex"/>
+ </define>
+ <define name="db.info.elements" combine="choice">
+ <ref name="db.itermset"/>
+ </define>
+ <!-- ====================================================================== -->
+ <define name="db.significance.enumeration">
+ <choice>
+ <value>normal</value>
+ <a:documentation>Normal</a:documentation>
+ <value>preferred</value>
+ <a:documentation>Preferred</a:documentation>
+ </choice>
+ </define>
+ <define name="db.significance.attribute">
+ <attribute name="significance">
+ <db:refpurpose>Specifies the significance of the term</db:refpurpose>
+ <ref name="db.significance.enumeration"/>
+ </attribute>
+ </define>
+ <define name="db.zone.attribute">
+ <attribute name="zone">
+ <db:refpurpose>Specifies the IDs of the elements to which this term applies</db:refpurpose>
+ <data type="IDREFS"/>
+ </attribute>
+ </define>
+ <define name="db.indexterm.pagenum.attribute">
+ <attribute name="pagenum">
+ <db:refpurpose>Indicates the page on which this index term occurs in some version of the printed document</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.scope.enumeration">
+ <choice>
+ <value>all</value>
+ <a:documentation>All indexes</a:documentation>
+ <value>global</value>
+ <a:documentation>The global index (as for a combined index of a set of books)</a:documentation>
+ <value>local</value>
+ <a:documentation>The local index (the index for this document only)</a:documentation>
+ </choice>
+ </define>
+ <define name="db.scope.attribute">
+ <attribute name="scope">
+ <db:refpurpose>Specifies the scope of the index term</db:refpurpose>
+ <ref name="db.scope.enumeration"/>
+ </attribute>
+ </define>
+ <define name="db.sortas.attribute">
+ <attribute name="sortas">
+ <db:refpurpose>Specifies the string by which the term is to be sorted; if unspecified, the term content is used</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.index.type.attribute">
+ <attribute name="type">
+ <db:refpurpose>Specifies the target index for this term</db:refpurpose>
+ </attribute>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>itermset</db:refname>
+ <db:refpurpose>A set of index terms in the meta-information of a document</db:refpurpose>
+ <define name="db.itermset.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.itermset.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.itermset.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.itermset">
+ <element name="itermset">
+ <ref name="db.itermset.attlist"/>
+ <oneOrMore>
+ <ref name="db.indexterm.singular"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <define name="db.indexterm.contentmodel">
+ <optional>
+ <ref name="db.primary"/>
+ </optional>
+ <optional>
+ <choice>
+ <group>
+ <ref name="db.secondary"/>
+ <optional>
+ <choice>
+ <group>
+ <ref name="db.tertiary"/>
+ <optional>
+ <choice>
+ <ref name="db.see"/>
+ <oneOrMore>
+ <ref name="db.seealso"/>
+ </oneOrMore>
+ </choice>
+ </optional>
+ </group>
+ <ref name="db.see"/>
+ <oneOrMore>
+ <ref name="db.seealso"/>
+ </oneOrMore>
+ </choice>
+ </optional>
+ </group>
+ <ref name="db.see"/>
+ <oneOrMore>
+ <ref name="db.seealso"/>
+ </oneOrMore>
+ </choice>
+ </optional>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>indexterm</db:refname>
+ <db:refpurpose>A wrapper for an indexed term</db:refpurpose>
+ <define name="db.indexterm.singular.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.indexterm.singular.class.attribute">
+ <attribute name="class">
+ <db:refpurpose>Identifies the class of index term</db:refpurpose>
+ <value>singular</value>
+ <a:documentation>A singular index term</a:documentation>
+ </attribute>
+ </define>
+ <define name="db.indexterm.singular.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.indexterm.singular.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.significance.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.zone.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.indexterm.pagenum.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.scope.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.index.type.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.indexterm.singular.class.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.indexterm.singular">
+ <element name="indexterm">
+ <ref name="db.indexterm.singular.attlist"/>
+ <ref name="db.indexterm.contentmodel"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>indexterm</db:refname>
+ <db:refpurpose>A wrapper for an indexed term that covers a range</db:refpurpose>
+ <define name="db.indexterm.startofrange.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.indexterm.startofrange.class.attribute">
+ <attribute name="class">
+ <db:refpurpose>Identifies the class of index term</db:refpurpose>
+ <value>startofrange</value>
+ <a:documentation>The start of a range</a:documentation>
+ </attribute>
+ </define>
+ <define name="db.indexterm.startofrange.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.indexterm.startofrange.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.significance.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.zone.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.indexterm.pagenum.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.scope.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.index.type.attribute"/>
+ </optional>
+ <ref name="db.indexterm.startofrange.class.attribute"/>
+ </interleave>
+ </define>
+ <define name="db.indexterm.startofrange">
+ <element name="indexterm">
+ <ref name="db.indexterm.startofrange.attlist"/>
+ <ref name="db.indexterm.contentmodel"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>indexterm</db:refname>
+ <db:refpurpose>Identifies the end of a range associated with an indexed term</db:refpurpose>
+ <define name="db.indexterm.endofrange.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.indexterm.endofrange.class.attribute">
+ <attribute name="class">
+ <db:refpurpose>Identifies the class of index term</db:refpurpose>
+ <value>endofrange</value>
+ <a:documentation>The end of a range</a:documentation>
+ </attribute>
+ </define>
+ <define name="db.indexterm.endofrange.startref.attribute">
+ <attribute name="startref">
+ <db:refpurpose>Points to the start of the range</db:refpurpose>
+ <data type="IDREF"/>
+ </attribute>
+ </define>
+ <define name="db.indexterm.endofrange.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.indexterm.endofrange.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <ref name="db.indexterm.endofrange.class.attribute"/>
+ <ref name="db.indexterm.endofrange.startref.attribute"/>
+ </interleave>
+ </define>
+ <define name="db.indexterm.endofrange">
+ <element name="indexterm">
+ <ref name="db.indexterm.endofrange.attlist"/>
+ <empty/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>indexterm</db:refname>
+ <db:refpurpose>A wrapper for terms to be indexed</db:refpurpose>
+ <define name="db.indexterm">
+ <choice>
+ <ref name="db.indexterm.singular"/>
+ <ref name="db.indexterm.startofrange"/>
+ <ref name="db.indexterm.endofrange"/>
+ </choice>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>primary</db:refname>
+ <db:refpurpose>The primary word or phrase under which an index term should be sorted</db:refpurpose>
+ <define name="db.primary.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.primary.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.primary.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.sortas.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.primary">
+ <element name="primary">
+ <ref name="db.primary.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>secondary</db:refname>
+ <db:refpurpose>A secondary word or phrase in an index term</db:refpurpose>
+ <define name="db.secondary.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.secondary.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.secondary.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.sortas.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.secondary">
+ <element name="secondary">
+ <ref name="db.secondary.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>tertiary</db:refname>
+ <db:refpurpose>A tertiary word or phrase in an index term</db:refpurpose>
+ <define name="db.tertiary.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.tertiary.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.tertiary.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.sortas.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.tertiary">
+ <element name="tertiary">
+ <ref name="db.tertiary.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>see</db:refname>
+ <db:refpurpose>Part of an index term directing the reader instead to another entry in the index</db:refpurpose>
+ <define name="db.see.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.see.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.see.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.see">
+ <element name="see">
+ <ref name="db.see.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>seealso</db:refname>
+ <db:refpurpose>Part of an index term directing the reader also to another entry in the index</db:refpurpose>
+ <define name="db.seealso.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.seealso.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.seealso.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.seealso">
+ <element name="seealso">
+ <ref name="db.seealso.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>index</db:refname>
+ <db:refpurpose>An index to a book or part of a book</db:refpurpose>
+ <define name="db.index.status.attribute">
+ <ref name="db.status.attribute"/>
+ </define>
+ <define name="db.index.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.index.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.index.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.label.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.index.status.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.index.type.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.index.info">
+ <ref name="db._info"/>
+ </define>
+ <!--
+ Yes, db.indexdiv* and db.indexentry*; that way an <index/> is valid.
+ Authors can use an empty index to indicate where a generated index should
+ appear.
+ -->
+ <define name="db.index">
+ <element name="index">
+ <ref name="db.index.attlist"/>
+ <ref name="db.index.info"/>
+ <zeroOrMore>
+ <ref name="db.all.blocks"/>
+ </zeroOrMore>
+ <choice>
+ <zeroOrMore>
+ <ref name="db.indexdiv"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="db.indexentry"/>
+ </zeroOrMore>
+ <ref name="db.segmentedlist"/>
+ </choice>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>setindex</db:refname>
+ <db:refpurpose>An index to a set of books</db:refpurpose>
+ <define name="db.setindex.status.attribute">
+ <ref name="db.status.attribute"/>
+ </define>
+ <define name="db.setindex.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.setindex.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.setindex.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.label.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.setindex.status.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.index.type.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.setindex.info">
+ <ref name="db._info"/>
+ </define>
+ <define name="db.setindex">
+ <element name="setindex">
+ <ref name="db.setindex.attlist"/>
+ <ref name="db.setindex.info"/>
+ <zeroOrMore>
+ <ref name="db.all.blocks"/>
+ </zeroOrMore>
+ <choice>
+ <zeroOrMore>
+ <ref name="db.indexdiv"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="db.indexentry"/>
+ </zeroOrMore>
+ </choice>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>indexdiv</db:refname>
+ <db:refpurpose>A division in an index</db:refpurpose>
+ <define name="db.indexdiv.status.attribute">
+ <ref name="db.status.attribute"/>
+ </define>
+ <define name="db.indexdiv.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.indexdiv.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.indexdiv.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.label.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.indexdiv.status.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.indexdiv.info">
+ <ref name="db._info.title.req"/>
+ </define>
+ <define name="db.indexdiv">
+ <element name="indexdiv">
+ <ref name="db.indexdiv.attlist"/>
+ <ref name="db.indexdiv.info"/>
+ <zeroOrMore>
+ <ref name="db.all.blocks"/>
+ </zeroOrMore>
+ <choice>
+ <oneOrMore>
+ <ref name="db.indexentry"/>
+ </oneOrMore>
+ <ref name="db.segmentedlist"/>
+ </choice>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>indexentry</db:refname>
+ <db:refpurpose>An entry in an index</db:refpurpose>
+ <define name="db.indexentry.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.indexentry.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.indexentry.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.indexentry">
+ <element name="indexentry">
+ <ref name="db.indexentry.attlist"/>
+ <ref name="db.primaryie"/>
+ <zeroOrMore>
+ <choice>
+ <ref name="db.seeie"/>
+ <ref name="db.seealsoie"/>
+ </choice>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="db.secondaryie"/>
+ <zeroOrMore>
+ <choice>
+ <ref name="db.seeie"/>
+ <ref name="db.seealsoie"/>
+ <ref name="db.tertiaryie"/>
+ </choice>
+ </zeroOrMore>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>primaryie</db:refname>
+ <db:refpurpose>A primary term in an index entry, not in the text</db:refpurpose>
+ <define name="db.primaryie.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.primaryie.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.primaryie.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <optional>
+ <ref name="db.linkends.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.primaryie">
+ <element name="primaryie">
+ <ref name="db.primaryie.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>secondaryie</db:refname>
+ <db:refpurpose>A secondary term in an index entry, rather than in the text</db:refpurpose>
+ <define name="db.secondaryie.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.secondaryie.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.secondaryie.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <optional>
+ <ref name="db.linkends.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.secondaryie">
+ <element name="secondaryie">
+ <ref name="db.secondaryie.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>tertiaryie</db:refname>
+ <db:refpurpose>A tertiary term in an index entry, rather than in the text</db:refpurpose>
+ <define name="db.tertiaryie.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.tertiaryie.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.tertiaryie.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <optional>
+ <ref name="db.linkends.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.tertiaryie">
+ <element name="tertiaryie">
+ <ref name="db.tertiaryie.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>seeie</db:refname>
+ <db:refpurpose>A <db:quote>See</db:quote>
+entry in an index, rather than in the text</db:refpurpose>
+ <define name="db.seeie.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.seeie.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.seeie.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <optional>
+ <ref name="db.linkend.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.seeie">
+ <element name="seeie">
+ <ref name="db.seeie.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>seealsoie</db:refname>
+ <db:refpurpose>A <db:quote>See also</db:quote>
+ entry in an index, rather than in the text</db:refpurpose>
+ <define name="db.seealsoie.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.seealsoie.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.seealsoie.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <optional>
+ <ref name="db.linkends.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.seealsoie">
+ <element name="seealsoie">
+ <ref name="db.seealsoie.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+</grammar>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/keyboard.rng b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/keyboard.rng
new file mode 100644
index 000000000..06c264e8a
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/keyboard.rng
@@ -0,0 +1,320 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: pool.rnc 7466 2007-09-27 14:03:55Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<grammar ns="http://docbook.org/ns/docbook" xmlns:db="http://docbook.org/ns/docbook" xmlns:s="http://purl.oclc.org/dsdl/schematron" xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0" xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/" xmlns="http://relaxng.org/ns/structure/1.0">
+ <define name="db.domain.inlines" combine="choice">
+ <ref name="db.keyboard.inlines"/>
+ </define>
+ <define name="db.userinput.inlines" combine="choice">
+ <ref name="db.keyboard.inlines"/>
+ </define>
+ <define name="db.keyboard.inlines">
+ <choice>
+ <ref name="db.keycombo"/>
+ <ref name="db.keycap"/>
+ <ref name="db.keycode"/>
+ <ref name="db.keysym"/>
+ <ref name="db.shortcut"/>
+ <ref name="db.accel"/>
+ </choice>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>keycap</db:refname>
+ <db:refpurpose>The text printed on a key on a keyboard</db:refpurpose>
+ <ctrl:other-attribute name="db.keycap.function.attrib" enum-name="db.keycap.function-enum.attribute" other-name="db.keycap.function-other.attributes"/>
+ <define name="db.keycap.function.enumeration">
+ <choice>
+ <value>alt</value>
+ <a:documentation>The "Alt" key</a:documentation>
+ <value>backspace</value>
+ <a:documentation>The "Backspace" key</a:documentation>
+ <value>command</value>
+ <a:documentation>The "Command" key</a:documentation>
+ <value>control</value>
+ <a:documentation>The "Control" key</a:documentation>
+ <value>delete</value>
+ <a:documentation>The "Delete" key</a:documentation>
+ <value>down</value>
+ <a:documentation>The down arrow</a:documentation>
+ <value>end</value>
+ <a:documentation>The "End" key</a:documentation>
+ <value>enter</value>
+ <a:documentation>The "Enter" or "Return" key</a:documentation>
+ <value>escape</value>
+ <a:documentation>The "Escape" key</a:documentation>
+ <value>home</value>
+ <a:documentation>The "Home" key</a:documentation>
+ <value>insert</value>
+ <a:documentation>The "Insert" key</a:documentation>
+ <value>left</value>
+ <a:documentation>The left arrow</a:documentation>
+ <value>meta</value>
+ <a:documentation>The "Meta" key</a:documentation>
+ <value>option</value>
+ <a:documentation>The "Option" key</a:documentation>
+ <value>pagedown</value>
+ <a:documentation>The page down key</a:documentation>
+ <value>pageup</value>
+ <a:documentation>The page up key</a:documentation>
+ <value>right</value>
+ <a:documentation>The right arrow</a:documentation>
+ <value>shift</value>
+ <a:documentation>The "Shift" key</a:documentation>
+ <value>space</value>
+ <a:documentation>The spacebar</a:documentation>
+ <value>tab</value>
+ <a:documentation>The "Tab" key</a:documentation>
+ <value>up</value>
+ <a:documentation>The up arrow</a:documentation>
+ </choice>
+ </define>
+ <define name="db.keycap.function-enum.attribute">
+ <optional>
+ <attribute name="function">
+ <db:refpurpose>Identifies the function key</db:refpurpose>
+ <ref name="db.keycap.function.enumeration"/>
+ </attribute>
+ </optional>
+ </define>
+ <define name="db.keycap.function-other.attributes">
+ <optional>
+ <attribute name="function">
+ <db:refpurpose>Identifies the function key</db:refpurpose>
+ <value>other</value>
+ <a:documentation>Indicates a non-standard function key</a:documentation>
+ </attribute>
+ </optional>
+ <attribute name="otherfunction">
+ <db:refpurpose>Specifies a keyword that identifies the non-standard key</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.keycap.function.attrib">
+ <choice>
+ <ref name="db.keycap.function-enum.attribute"/>
+ <ref name="db.keycap.function-other.attributes"/>
+ </choice>
+ </define>
+ <define name="db.keycap.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.keycap.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.keycap.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <ref name="db.keycap.function.attrib"/>
+ </interleave>
+ </define>
+ <define name="db.keycap">
+ <element name="keycap">
+ <ref name="db.keycap.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>keycode</db:refname>
+ <db:refpurpose>The internal, frequently numeric, identifier for a key on a keyboard</db:refpurpose>
+ <define name="db.keycode.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.keycode.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.keycode.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.keycode">
+ <element name="keycode">
+ <ref name="db.keycode.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <define name="db.keycombination.contentmodel">
+ <choice>
+ <ref name="db.keycap"/>
+ <ref name="db.keycombo"/>
+ <ref name="db.keysym"/>
+ </choice>
+ </define>
+ <div>
+ <db:refname>keycombo</db:refname>
+ <db:refpurpose>A combination of input actions</db:refpurpose>
+ <ctrl:other-attribute name="db.keycombo.action.attrib" enum-name="db.keycombo.action-enum.attribute" other-name="db.keycombo.action-other.attributes"/>
+ <define name="db.keycombo.action.enumeration">
+ <choice>
+ <value>click</value>
+ <a:documentation>A (single) mouse click.</a:documentation>
+ <value>double-click</value>
+ <a:documentation>A double mouse click.</a:documentation>
+ <value>press</value>
+ <a:documentation>A mouse or key press.</a:documentation>
+ <value>seq</value>
+ <a:documentation>Sequential clicks or presses.</a:documentation>
+ <value>simul</value>
+ <a:documentation>Simultaneous clicks or presses.</a:documentation>
+ </choice>
+ </define>
+ <define name="db.keycombo.action-enum.attribute">
+ <optional>
+ <attribute name="action">
+ <db:refpurpose>Identifies the nature of the action taken. If <db:tag>keycombo</db:tag>
+ contains more than one element, <db:tag class="attvalue">simul</db:tag>
+ is the default, otherwise there is no default.</db:refpurpose>
+ <ref name="db.keycombo.action.enumeration"/>
+ </attribute>
+ </optional>
+ </define>
+ <define name="db.keycombo.action-other.attributes">
+ <optional>
+ <attribute name="action">
+ <db:refpurpose>Identifies the nature of the action taken</db:refpurpose>
+ <value>other</value>
+ <a:documentation>Indicates a non-standard action</a:documentation>
+ </attribute>
+ </optional>
+ <attribute name="otheraction">
+ <db:refpurpose>Identifies the non-standard action in some unspecified way.</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.keycombo.action.attrib">
+ <choice>
+ <ref name="db.keycombo.action-enum.attribute"/>
+ <ref name="db.keycombo.action-other.attributes"/>
+ </choice>
+ </define>
+ <define name="db.keycombo.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.keycombo.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.keycombo.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <ref name="db.keycombo.action.attrib"/>
+ </interleave>
+ </define>
+ <define name="db.keycombo">
+ <element name="keycombo">
+ <ref name="db.keycombo.attlist"/>
+ <oneOrMore>
+ <ref name="db.keycombination.contentmodel"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>keysym</db:refname>
+ <db:refpurpose>The symbolic name of a key on a keyboard</db:refpurpose>
+ <define name="db.keysym.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.keysym.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.keysym.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.keysym">
+ <element name="keysym">
+ <ref name="db.keysym.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>accel</db:refname>
+ <db:refpurpose>A graphical user interface (GUI) keyboard shortcut</db:refpurpose>
+ <define name="db.accel.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.accel.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.accel.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.accel">
+ <element name="accel">
+ <ref name="db.accel.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>shortcut</db:refname>
+ <db:refpurpose>A key combination for an action that is also accessible through a menu</db:refpurpose>
+ <define name="db.shortcut.action.attrib">
+ <ref name="db.keycombo.action.attrib"/>
+ </define>
+ <define name="db.shortcut.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.shortcut.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.shortcut.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <ref name="db.shortcut.action.attrib"/>
+ </interleave>
+ </define>
+ <define name="db.shortcut">
+ <element name="shortcut">
+ <ref name="db.shortcut.attlist"/>
+ <oneOrMore>
+ <ref name="db.keycombination.contentmodel"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+</grammar>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/markup.rng b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/markup.rng
new file mode 100644
index 000000000..7fd9761fd
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/markup.rng
@@ -0,0 +1,304 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: pool.rnc 7466 2007-09-27 14:03:55Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<grammar ns="http://docbook.org/ns/docbook" xmlns:db="http://docbook.org/ns/docbook" xmlns:s="http://purl.oclc.org/dsdl/schematron" xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0" xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
+ <define name="db.domain.inlines" combine="choice">
+ <ref name="db.markup.inlines"/>
+ </define>
+ <define name="db.userinput.inlines" combine="choice">
+ <ref name="db.markup.inlines"/>
+ </define>
+ <define name="db.computeroutput.inlines" combine="choice">
+ <ref name="db.markup.inlines"/>
+ </define>
+ <define name="db.markup.inlines">
+ <choice>
+ <ref name="db.tag"/>
+ <ref name="db.markup"/>
+ <ref name="db.token"/>
+ <ref name="db.symbol"/>
+ <ref name="db.literal"/>
+ <ref name="db.code"/>
+ <ref name="db.constant"/>
+ <ref name="db.email"/>
+ <ref name="db.uri"/>
+ </choice>
+ </define>
+ <define name="db.initializer.inlines" combine="choice">
+ <ref name="db.markup.inlines"/>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>markup</db:refname>
+ <db:refpurpose>A string of formatting markup in text that is to be represented literally</db:refpurpose>
+ <define name="db.markup.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.markup.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.markup.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.markup">
+ <element name="markup">
+ <ref name="db.markup.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>tag</db:refname>
+ <db:refpurpose>A component of XML (or SGML) markup</db:refpurpose>
+ <define name="db.tag.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.tag.class.enumeration">
+ <choice>
+ <value>attribute</value>
+ <a:documentation>An attribute</a:documentation>
+ <value>attvalue</value>
+ <a:documentation>An attribute value</a:documentation>
+ <value>element</value>
+ <a:documentation>An element</a:documentation>
+ <value>emptytag</value>
+ <a:documentation>An empty element tag</a:documentation>
+ <value>endtag</value>
+ <a:documentation>An end tag</a:documentation>
+ <value>genentity</value>
+ <a:documentation>A general entity</a:documentation>
+ <value>localname</value>
+ <a:documentation>The local name part of a qualified name</a:documentation>
+ <value>namespace</value>
+ <a:documentation>A namespace</a:documentation>
+ <value>numcharref</value>
+ <a:documentation>A numeric character reference</a:documentation>
+ <value>paramentity</value>
+ <a:documentation>A parameter entity</a:documentation>
+ <value>pi</value>
+ <a:documentation>A processing instruction</a:documentation>
+ <value>prefix</value>
+ <a:documentation>The prefix part of a qualified name</a:documentation>
+ <value>comment</value>
+ <a:documentation>An SGML comment</a:documentation>
+ <value>starttag</value>
+ <a:documentation>A start tag</a:documentation>
+ <value>xmlpi</value>
+ <a:documentation>An XML processing instruction</a:documentation>
+ </choice>
+ </define>
+ <define name="db.tag.class.attribute">
+ <attribute name="class">
+ <db:refpurpose>Identifies the nature of the tag content</db:refpurpose>
+ <ref name="db.tag.class.enumeration"/>
+ </attribute>
+ </define>
+ <define name="db.tag.namespace.attribute">
+ <attribute name="namespace">
+ <db:refpurpose>Identifies the namespace of the tag content</db:refpurpose>
+ <data type="anyURI"/>
+ </attribute>
+ </define>
+ <define name="db.tag.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.tag.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.tag.class.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.tag.namespace.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.tag">
+ <element name="tag">
+ <ref name="db.tag.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>symbol</db:refname>
+ <db:refpurpose>A name that is replaced by a value before processing</db:refpurpose>
+ <define name="db.symbol.class.attribute">
+ <attribute name="class">
+ <db:refpurpose>Identifies the class of symbol</db:refpurpose>
+ <value>limit</value>
+ <a:documentation>The value is a limit of some kind</a:documentation>
+ </attribute>
+ </define>
+ <define name="db.symbol.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.symbol.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.symbol.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.symbol.class.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.symbol">
+ <element name="symbol">
+ <ref name="db.symbol.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>token</db:refname>
+ <db:refpurpose>A unit of information</db:refpurpose>
+ <define name="db.token.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.token.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.token.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.token">
+ <element name="token">
+ <ref name="db.token.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>literal</db:refname>
+ <db:refpurpose>Inline text that is some literal value</db:refpurpose>
+ <define name="db.literal.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.literal.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.literal.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.literal">
+ <element name="literal">
+ <ref name="db.literal.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>code</db:refname>
+ <db:refpurpose>An inline code fragment</db:refpurpose>
+ <define name="code.language.attribute">
+ <attribute name="language">
+ <db:refpurpose>Identifies the (computer) language of the code fragment</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.code.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.code.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.code.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="code.language.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.code">
+ <element name="code">
+ <ref name="db.code.attlist"/>
+ <zeroOrMore>
+ <choice>
+ <ref name="db.programming.inlines"/>
+ <ref name="db._text"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>constant</db:refname>
+ <db:refpurpose>A programming or system constant</db:refpurpose>
+ <define name="db.constant.class.attribute">
+ <attribute name="class">
+ <db:refpurpose>Identifies the class of constant</db:refpurpose>
+ <value>limit</value>
+ <a:documentation>The value is a limit of some kind</a:documentation>
+ </attribute>
+ </define>
+ <define name="db.constant.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.constant.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.constant.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.constant.class.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.constant">
+ <element name="constant">
+ <ref name="db.constant.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+</grammar>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/math.rng b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/math.rng
new file mode 100644
index 000000000..89d919acb
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/math.rng
@@ -0,0 +1,208 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: math.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<grammar ns="http://docbook.org/ns/docbook" xmlns:db="http://docbook.org/ns/docbook" xmlns:s="http://purl.oclc.org/dsdl/schematron" xmlns:rng="http://relaxng.org/ns/structure/1.0" xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/" xmlns="http://relaxng.org/ns/structure/1.0">
+ <start combine="choice">
+ <choice>
+ <ref name="db.equation"/>
+ <ref name="db.informalequation"/>
+ </choice>
+ </start>
+ <define name="db.formal.blocks" combine="choice">
+ <ref name="db.equation"/>
+ </define>
+ <define name="db.informal.blocks" combine="choice">
+ <ref name="db.informalequation"/>
+ </define>
+ <define name="db.math.inlines">
+ <ref name="db.inlineequation"/>
+ </define>
+ <define name="db.domain.inlines" combine="choice">
+ <ref name="db.math.inlines"/>
+ </define>
+ <define name="db.initializer.inlines" combine="choice">
+ <ref name="db.mathphrase"/>
+ </define>
+ <!-- ====================================================================== -->
+ <define name="db.equation.content">
+ <choice>
+ <oneOrMore>
+ <ref name="db.mediaobject"/>
+ </oneOrMore>
+ <oneOrMore>
+ <ref name="db.mathphrase"/>
+ </oneOrMore>
+ </choice>
+ </define>
+ <define name="db.inlineequation.content">
+ <choice>
+ <oneOrMore>
+ <ref name="db.inlinemediaobject"/>
+ </oneOrMore>
+ <oneOrMore>
+ <ref name="db.mathphrase"/>
+ </oneOrMore>
+ </choice>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>equation</db:refname>
+ <db:refpurpose>A displayed mathematical equation</db:refpurpose>
+ <define name="db.equation.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.equation.label.attribute">
+ <ref name="db.label.attribute"/>
+ </define>
+ <define name="db.equation.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.equation.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.equation.label.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.pgwide.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.floatstyle.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.equation.info">
+ <ref name="db._info.title.only"/>
+ </define>
+ <define name="db.equation">
+ <element name="equation">
+ <ref name="db.equation.attlist"/>
+ <ref name="db.equation.info"/>
+ <optional>
+ <ref name="db.alt"/>
+ </optional>
+ <ref name="db.equation.content"/>
+ <optional>
+ <ref name="db.caption"/>
+ </optional>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>informalequation</db:refname>
+ <db:refpurpose>A displayed mathematical equation without a title</db:refpurpose>
+ <define name="db.informalequation.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.informalequation.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.informalequation.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.informalequation.info">
+ <ref name="db._info.title.forbidden"/>
+ </define>
+ <define name="db.informalequation">
+ <element name="informalequation">
+ <ref name="db.informalequation.attlist"/>
+ <ref name="db.informalequation.info"/>
+ <optional>
+ <ref name="db.alt"/>
+ </optional>
+ <ref name="db.equation.content"/>
+ <optional>
+ <ref name="db.caption"/>
+ </optional>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>inlineequation</db:refname>
+ <db:refpurpose>A mathematical equation or expression occurring inline</db:refpurpose>
+ <define name="db.inlineequation.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.inlineequation.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.inlineequation.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.inlineequation">
+ <element name="inlineequation">
+ <ref name="db.inlineequation.attlist"/>
+ <optional>
+ <ref name="db.alt"/>
+ </optional>
+ <ref name="db.inlineequation.content"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>mathphrase</db:refname>
+ <db:refpurpose>A mathematical phrase that can be represented with ordinary text and a small amount of markup</db:refpurpose>
+ <define name="db.mathphrase.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.mathphrase.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.mathphrase.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.mathphrase">
+ <element name="mathphrase">
+ <ref name="db.mathphrase.attlist"/>
+ <zeroOrMore>
+ <choice>
+ <ref name="db._text"/>
+ <ref name="db.ubiq.inlines"/>
+ <ref name="db._emphasis"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+</grammar>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/mathml.rng b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/mathml.rng
new file mode 100644
index 000000000..f78772512
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/mathml.rng
@@ -0,0 +1,122 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: mathml.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<grammar ns="http://docbook.org/ns/docbook" xmlns:db="http://docbook.org/ns/docbook" xmlns:s="http://purl.oclc.org/dsdl/schematron" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0" xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/" xmlns="http://relaxng.org/ns/structure/1.0">
+ <define name="db.equation.content" combine="choice">
+ <oneOrMore>
+ <ref name="db._any.mml"/>
+ </oneOrMore>
+ </define>
+ <define name="db.inlineequation.content" combine="choice">
+ <oneOrMore>
+ <ref name="db._any.mml"/>
+ </oneOrMore>
+ </define>
+ <define name="db.imageobject.content" combine="choice">
+ <ref name="db.imagedata.mathml"/>
+ </define>
+ <!-- ============================================================ -->
+ <div>
+ <db:refname>imagedata</db:refname>
+ <db:refpurpose>A MathML expression in a media object</db:refpurpose>
+ <define name="db.imagedata.mathml.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.imagedata.mathml.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.imagedata.mathml.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <optional>
+ <attribute name="format">
+ <db:refpurpose>Specifies that the format of the data is MathML</db:refpurpose>
+ <value>mathml</value>
+ <a:documentation>Specifies MathML.</a:documentation>
+ </attribute>
+ </optional>
+ <optional>
+ <ref name="db.imagedata.align.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.imagedata.valign.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.imagedata.width.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.imagedata.contentwidth.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.imagedata.scalefit.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.imagedata.scale.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.imagedata.depth.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.imagedata.contentdepth.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.imagedata.mathml.info">
+ <ref name="db._info.title.forbidden"/>
+ </define>
+ <define name="db.imagedata.mathml">
+ <element name="imagedata">
+ <ref name="db.imagedata.mathml.attlist"/>
+ <ref name="db.imagedata.mathml.info"/>
+ <oneOrMore>
+ <ref name="db._any.mml"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ============================================================ -->
+ <div>
+ <db:refname>mml:*</db:refname>
+ <db:refpurpose>Any element from the MathML namespace</db:refpurpose>
+ <define name="db._any.mml">
+ <element>
+ <nsName ns="http://www.w3.org/1998/Math/MathML"/>
+ <zeroOrMore>
+ <choice>
+ <ref name="db._any.attribute"/>
+ <text/>
+ <ref name="db._any"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+</grammar>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/msgset.rng b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/msgset.rng
new file mode 100644
index 000000000..ad1fe33ca
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/msgset.rng
@@ -0,0 +1,427 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: msgset.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<grammar ns="http://docbook.org/ns/docbook" xmlns:db="http://docbook.org/ns/docbook" xmlns:s="http://purl.oclc.org/dsdl/schematron" xmlns:rng="http://relaxng.org/ns/structure/1.0" xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/" xmlns="http://relaxng.org/ns/structure/1.0">
+ <start combine="choice">
+ <choice>
+ <ref name="db.msg"/>
+ <ref name="db.msgexplan"/>
+ <ref name="db.msgmain"/>
+ <ref name="db.msgrel"/>
+ <ref name="db.msgset"/>
+ <ref name="db.msgsub"/>
+ </choice>
+ </start>
+ <define name="db.technical.blocks" combine="choice">
+ <ref name="db.msgset"/>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>msgset</db:refname>
+ <db:refpurpose>A detailed set of messages, usually error messages</db:refpurpose>
+ <define name="db.msgset.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.msgset.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.msgset.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.msgset.info">
+ <ref name="db._info.title.only"/>
+ </define>
+ <define name="db.msgset">
+ <element name="msgset">
+ <ref name="db.msgset.attlist"/>
+ <ref name="db.msgset.info"/>
+ <choice>
+ <oneOrMore>
+ <ref name="db.msgentry"/>
+ </oneOrMore>
+ <oneOrMore>
+ <ref name="db.simplemsgentry"/>
+ </oneOrMore>
+ </choice>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>msgentry</db:refname>
+ <db:refpurpose>A wrapper for an entry in a message set</db:refpurpose>
+ <define name="db.msgentry.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.msgentry.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.msgentry.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.msgentry">
+ <element name="msgentry">
+ <ref name="db.msgentry.attlist"/>
+ <oneOrMore>
+ <ref name="db.msg"/>
+ </oneOrMore>
+ <optional>
+ <ref name="db.msginfo"/>
+ </optional>
+ <zeroOrMore>
+ <ref name="db.msgexplan"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>simplemsgentry</db:refname>
+ <db:refpurpose>A wrapper for a simpler entry in a message set</db:refpurpose>
+ <define name="db.simplemsgentry.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.simplemsgentry.msgaud.attribute">
+ <attribute name="msgaud">
+ <db:refpurpose>The audience to which the message relevant</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.simplemsgentry.msgorig.attribute">
+ <attribute name="msgorig">
+ <db:refpurpose>The origin of the message</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.simplemsgentry.msglevel.attribute">
+ <attribute name="msglevel">
+ <db:refpurpose>The level of importance or severity of a message</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.simplemsgentry.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.simplemsgentry.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.simplemsgentry.msgaud.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.simplemsgentry.msgorig.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.simplemsgentry.msglevel.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.simplemsgentry">
+ <element name="simplemsgentry">
+ <ref name="db.simplemsgentry.attlist"/>
+ <ref name="db.msgtext"/>
+ <oneOrMore>
+ <ref name="db.msgexplan"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>msg</db:refname>
+ <db:refpurpose>A message in a message set</db:refpurpose>
+ <define name="db.msg.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.msg.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.msg.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.msg.info">
+ <ref name="db._info.title.only"/>
+ </define>
+ <define name="db.msg">
+ <element name="msg">
+ <ref name="db.msg.attlist"/>
+ <ref name="db.msg.info"/>
+ <ref name="db.msgmain"/>
+ <zeroOrMore>
+ <choice>
+ <ref name="db.msgsub"/>
+ <ref name="db.msgrel"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>msgmain</db:refname>
+ <db:refpurpose>The primary component of a message in a message set </db:refpurpose>
+ <define name="db.msgmain.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.msgmain.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.msgmain.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.msgmain.info">
+ <ref name="db._info.title.only"/>
+ </define>
+ <define name="db.msgmain">
+ <element name="msgmain">
+ <ref name="db.msgmain.attlist"/>
+ <ref name="db.msgmain.info"/>
+ <ref name="db.msgtext"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>msgsub</db:refname>
+ <db:refpurpose>A subcomponent of a message in a message set</db:refpurpose>
+ <define name="db.msgsub.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.msgsub.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.msgsub.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.msgsub.info">
+ <ref name="db._info.title.only"/>
+ </define>
+ <define name="db.msgsub">
+ <element name="msgsub">
+ <ref name="db.msgsub.attlist"/>
+ <ref name="db.msgsub.info"/>
+ <ref name="db.msgtext"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>msgrel</db:refname>
+ <db:refpurpose>A related component of a message in a message set</db:refpurpose>
+ <define name="db.msgrel.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.msgrel.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.msgrel.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.msgrel.info">
+ <ref name="db._info.title.only"/>
+ </define>
+ <define name="db.msgrel">
+ <element name="msgrel">
+ <ref name="db.msgrel.attlist"/>
+ <ref name="db.msgrel.info"/>
+ <ref name="db.msgtext"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>msgtext</db:refname>
+ <db:refpurpose>The actual text of a message component in a message set</db:refpurpose>
+ <define name="db.msgtext.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.msgtext.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.msgtext.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.msgtext">
+ <element name="msgtext">
+ <ref name="db.msgtext.attlist"/>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>msginfo</db:refname>
+ <db:refpurpose>Information about a message in a message set</db:refpurpose>
+ <define name="db.msginfo.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.msginfo.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.msginfo.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.msginfo">
+ <element name="msginfo">
+ <ref name="db.msginfo.attlist"/>
+ <zeroOrMore>
+ <choice>
+ <ref name="db.msglevel"/>
+ <ref name="db.msgorig"/>
+ <ref name="db.msgaud"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>msglevel</db:refname>
+ <db:refpurpose>The level of importance or severity of a message in a message set</db:refpurpose>
+ <define name="db.msglevel.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.msglevel.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.msglevel.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.msglevel">
+ <element name="msglevel">
+ <ref name="db.msglevel.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>msgorig</db:refname>
+ <db:refpurpose>The origin of a message in a message set</db:refpurpose>
+ <define name="db.msgorig.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.msgorig.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.msgorig.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.msgorig">
+ <element name="msgorig">
+ <ref name="db.msgorig.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>msgaud</db:refname>
+ <db:refpurpose>The audience to which a message in a message set is relevant</db:refpurpose>
+ <define name="db.msgaud.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.msgaud.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.msgaud.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.msgaud">
+ <element name="msgaud">
+ <ref name="db.msgaud.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>msgexplan</db:refname>
+ <db:refpurpose>Explanatory material relating to a message in a message set</db:refpurpose>
+ <define name="db.msgexplan.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.msgexplan.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.msgexplan.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.msgexplan.info">
+ <ref name="db._info.title.only"/>
+ </define>
+ <define name="db.msgexplan">
+ <element name="msgexplan">
+ <ref name="db.msgexplan.attlist"/>
+ <ref name="db.msgexplan.info"/>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+</grammar>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/os.rng b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/os.rng
new file mode 100644
index 000000000..c53a8db86
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/os.rng
@@ -0,0 +1,513 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: pool.rnc 7466 2007-09-27 14:03:55Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<grammar ns="http://docbook.org/ns/docbook" xmlns:db="http://docbook.org/ns/docbook" xmlns:s="http://purl.oclc.org/dsdl/schematron" xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0" xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/" xmlns="http://relaxng.org/ns/structure/1.0">
+ <start combine="choice">
+ <ref name="db.cmdsynopsis"/>
+ </start>
+ <define name="db.domain.inlines" combine="choice">
+ <ref name="db.os.inlines"/>
+ </define>
+ <define name="db.synopsis.blocks" combine="choice">
+ <ref name="db.cmdsynopsis"/>
+ </define>
+ <define name="db.os.inlines">
+ <choice>
+ <ref name="db.prompt"/>
+ <ref name="db.envar"/>
+ <ref name="db.filename"/>
+ <ref name="db.command"/>
+ <ref name="db.computeroutput"/>
+ <ref name="db.userinput"/>
+ </choice>
+ </define>
+ <define name="db.computeroutput.inlines">
+ <choice>
+ <text/>
+ <ref name="db.ubiq.inlines"/>
+ <ref name="db.os.inlines"/>
+ <ref name="db.technical.inlines"/>
+ </choice>
+ </define>
+ <define name="db.userinput.inlines">
+ <choice>
+ <text/>
+ <ref name="db.ubiq.inlines"/>
+ <ref name="db.os.inlines"/>
+ <ref name="db.technical.inlines"/>
+ </choice>
+ </define>
+ <!-- ====================================================================== -->
+ <define name="db.prompt.inlines">
+ <ref name="db._text"/>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>prompt</db:refname>
+ <db:refpurpose>A character or string indicating the start of an input field in a computer display</db:refpurpose>
+ <define name="db.prompt.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.prompt.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.prompt.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.prompt">
+ <element name="prompt">
+ <ref name="db.prompt.attlist"/>
+ <zeroOrMore>
+ <ref name="db.prompt.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>envar</db:refname>
+ <db:refpurpose>A software environment variable</db:refpurpose>
+ <define name="db.envar.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.envar.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.envar.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.envar">
+ <element name="envar">
+ <ref name="db.envar.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>filename</db:refname>
+ <db:refpurpose>The name of a file</db:refpurpose>
+ <define name="db.filename.class.enumeration">
+ <choice>
+ <value>devicefile</value>
+ <a:documentation>A device</a:documentation>
+ <value>directory</value>
+ <a:documentation>A directory</a:documentation>
+ <value>extension</value>
+ <a:documentation>A filename extension</a:documentation>
+ <value>headerfile</value>
+ <a:documentation>A header file (as for a programming language)</a:documentation>
+ <value>libraryfile</value>
+ <a:documentation>A library file</a:documentation>
+ <value>partition</value>
+ <a:documentation>A partition (as of a hard disk)</a:documentation>
+ <value>symlink</value>
+ <a:documentation>A symbolic link</a:documentation>
+ </choice>
+ </define>
+ <define name="db.filename.class.attribute">
+ <attribute name="class">
+ <db:refpurpose>Identifies the class of filename</db:refpurpose>
+ <ref name="db.filename.class.enumeration"/>
+ </attribute>
+ </define>
+ <define name="db.filename.path.attribute">
+ <attribute name="path">
+ <db:refpurpose>Specifies the path of the filename</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.filename.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.filename.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.filename.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.filename.path.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.filename.class.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.filename">
+ <element name="filename">
+ <ref name="db.filename.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>command</db:refname>
+ <db:refpurpose>The name of an executable program or other software command</db:refpurpose>
+ <define name="db.command.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.command.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.command.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.command">
+ <element name="command">
+ <ref name="db.command.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>computeroutput</db:refname>
+ <db:refpurpose>Data, generally text, displayed or presented by a computer</db:refpurpose>
+ <define name="db.computeroutput.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.computeroutput.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.computeroutput.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.computeroutput">
+ <element name="computeroutput">
+ <ref name="db.computeroutput.attlist"/>
+ <zeroOrMore>
+ <ref name="db.computeroutput.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>userinput</db:refname>
+ <db:refpurpose>Data entered by the user</db:refpurpose>
+ <define name="db.userinput.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.userinput.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.userinput.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.userinput">
+ <element name="userinput">
+ <ref name="db.userinput.attlist"/>
+ <zeroOrMore>
+ <ref name="db.userinput.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>cmdsynopsis</db:refname>
+ <db:refpurpose>A syntax summary for a software command</db:refpurpose>
+ <define name="db.cmdsynopsis.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.cmdsynopsis.sepchar.attribute">
+ <attribute name="sepchar">
+ <db:refpurpose>Specifies the character that should separate the command and its top-level arguments</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.cmdsynopsis.cmdlength.attribute">
+ <attribute name="cmdlength">
+ <db:refpurpose>Indicates the displayed length of the command; this information may be used to intelligently indent command synopses which extend beyond one line</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.cmdsynopsis.label.attribute">
+ <ref name="db.label.attribute"/>
+ </define>
+ <define name="db.cmdsynopsis.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.cmdsynopsis.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.cmdsynopsis.sepchar.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.cmdsynopsis.cmdlength.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.cmdsynopsis.label.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.cmdsynopsis.info">
+ <ref name="db._info.title.forbidden"/>
+ </define>
+ <define name="db.cmdsynopsis">
+ <element name="cmdsynopsis">
+ <ref name="db.cmdsynopsis.attlist"/>
+ <ref name="db.cmdsynopsis.info"/>
+ <oneOrMore>
+ <choice>
+ <ref name="db.command"/>
+ <ref name="db.arg"/>
+ <ref name="db.group"/>
+ <ref name="db.sbr"/>
+ </choice>
+ </oneOrMore>
+ <zeroOrMore>
+ <ref name="db.synopfragment"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <define name="db.rep.enumeration">
+ <choice>
+ <value>norepeat</value>
+ <a:documentation>Can not be repeated.</a:documentation>
+ <value>repeat</value>
+ <a:documentation>Can be repeated.</a:documentation>
+ </choice>
+ </define>
+ <define name="db.rep.attribute">
+ <attribute name="rep" a:defaultValue="norepeat">
+ <db:refpurpose>Indicates whether or not repetition is possible.</db:refpurpose>
+ <ref name="db.rep.enumeration"/>
+ </attribute>
+ </define>
+ <define name="db.choice.enumeration">
+ <choice>
+ <value>opt</value>
+ <a:documentation>Formatted to indicate that it is optional.</a:documentation>
+ <value>plain</value>
+ <a:documentation>Formatted without indication.</a:documentation>
+ <value>req</value>
+ <a:documentation>Formatted to indicate that it is required.</a:documentation>
+ </choice>
+ </define>
+ <define name="db.choice.opt.attribute">
+ <attribute name="choice" a:defaultValue="opt">
+ <db:refpurpose>Indicates optionality.</db:refpurpose>
+ <ref name="db.choice.enumeration"/>
+ </attribute>
+ </define>
+ <define name="db.choice.req.attribute">
+ <attribute name="choice" a:defaultValue="req">
+ <db:refpurpose>Indicates optionality.</db:refpurpose>
+ <ref name="db.choice.enumeration"/>
+ </attribute>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>arg</db:refname>
+ <db:refpurpose>An argument in a cmdsynopsis</db:refpurpose>
+ <define name="db.arg.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.arg.rep.attribute">
+ <ref name="db.rep.attribute"/>
+ </define>
+ <define name="db.arg.choice.attribute">
+ <ref name="db.choice.opt.attribute"/>
+ </define>
+ <define name="db.arg.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.arg.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.arg.rep.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.arg.choice.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.arg">
+ <element name="arg">
+ <ref name="db.arg.attlist"/>
+ <zeroOrMore>
+ <choice>
+ <ref name="db._text"/>
+ <ref name="db.arg"/>
+ <ref name="db.group"/>
+ <ref name="db.option"/>
+ <ref name="db.synopfragmentref"/>
+ <ref name="db.sbr"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>group</db:refname>
+ <db:refpurpose>A group of elements in a cmdsynopsis</db:refpurpose>
+ <define name="db.group.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.group.rep.attribute">
+ <ref name="db.rep.attribute"/>
+ </define>
+ <define name="db.group.choice.attribute">
+ <ref name="db.choice.opt.attribute"/>
+ </define>
+ <define name="db.group.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.group.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.group.rep.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.group.choice.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.group">
+ <element name="group">
+ <ref name="db.group.attlist"/>
+ <oneOrMore>
+ <choice>
+ <ref name="db.arg"/>
+ <ref name="db.group"/>
+ <ref name="db.option"/>
+ <ref name="db.synopfragmentref"/>
+ <ref name="db.replaceable"/>
+ <ref name="db.sbr"/>
+ </choice>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>sbr</db:refname>
+ <db:refpurpose>An explicit line break in a command synopsis</db:refpurpose>
+ <define name="db.sbr.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.sbr.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.sbr.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.sbr">
+ <element name="sbr">
+ <ref name="db.sbr.attlist"/>
+ <empty/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>synopfragment</db:refname>
+ <db:refpurpose>A portion of a cmdsynopsis broken out from the main body of the synopsis</db:refpurpose>
+ <define name="db.synopfragment.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.synopfragment.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.synopfragment.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.synopfragment">
+ <element name="synopfragment">
+ <ref name="db.synopfragment.attlist"/>
+ <oneOrMore>
+ <choice>
+ <ref name="db.arg"/>
+ <ref name="db.group"/>
+ </choice>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>synopfragmentref</db:refname>
+ <db:refpurpose>A reference to a fragment of a command synopsis</db:refpurpose>
+ <define name="db.synopfragmentref.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.synopfragmentref.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.synopfragmentref.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.linkend.attribute"/>
+ </interleave>
+ </define>
+ <define name="db.synopfragmentref">
+ <element name="synopfragmentref">
+ <s:pattern name="Synopsis fragment type constraint">
+ <s:rule context="db:synopfragmentref">
+ <s:assert test="local-name(//*[@xml:id=current()/@linkend]) = 'synopfragment' and namespace-uri(//*[@xml:id=current()/@linkend]) = 'http://docbook.org/ns/docbook'">@linkend on synopfragmentref must point to a synopfragment.</s:assert>
+ </s:rule>
+ </s:pattern>
+ <ref name="db.synopfragmentref.attlist"/>
+ <text/>
+ </element>
+ </define>
+ </div>
+</grammar>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/pool.rng b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/pool.rng
new file mode 100644
index 000000000..691cfe67d
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/pool.rng
@@ -0,0 +1,6084 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: pool.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<grammar ns="http://docbook.org/ns/docbook" xmlns:db="http://docbook.org/ns/docbook" xmlns:s="http://purl.oclc.org/dsdl/schematron" xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:html="http://www.w3.org/1999/xhtml" xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/" xmlns:dbx="http://sourceforge.net/projects/docbook/defguide/schema/extra-markup" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
+ <!-- ====================================================================== -->
+ <!--
+ The start tokens are somewhat arbitrary. To resolve RFE #1899655, the
+ TC concluded that anything with an info element was a reasonable start
+ element. That's mostly what has been done, with a few extra elements
+ where the patterns seemed to warrant it. If you need more, just ask.
+ -->
+ <start combine="choice">
+ <choice>
+ <ref name="db.abstract"/>
+ <ref name="db.mediaobject.content"/>
+ <ref name="db.audiodata"/>
+ <ref name="db.imagedata"/>
+ <ref name="db.textdata"/>
+ <ref name="db.videodata"/>
+ <ref name="db.caption"/>
+ <ref name="db.publishing.blocks"/>
+ <ref name="db.formal.blocks"/>
+ <ref name="db.informal.blocks"/>
+ <ref name="db.formalpara"/>
+ <ref name="db.inlinemediaobject"/>
+ <ref name="db.list.blocks"/>
+ <ref name="db.legalnotice"/>
+ <ref name="db.verbatim.blocks"/>
+ <ref name="db.graphic.blocks"/>
+ <ref name="db.personblurb"/>
+ <ref name="db.revhistory"/>
+ <ref name="db.simpara"/>
+ <ref name="db.step"/>
+ <ref name="db.stepalternatives"/>
+ </choice>
+ </start>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>*:*</db:refname>
+ <db:refpurpose>Any element from almost any namespace</db:refpurpose>
+ <define name="db._any.attribute">
+ <attribute>
+ <db:refpurpose>Any attribute, including any attribute in any namespace.</db:refpurpose>
+ <anyName/>
+ </attribute>
+ </define>
+ <define name="db._any">
+ <element>
+ <anyName>
+ <except>
+ <nsName/>
+ <nsName ns="http://www.w3.org/1999/xhtml"/>
+ </except>
+ </anyName>
+ <zeroOrMore>
+ <choice>
+ <ref name="db._any.attribute"/>
+ <text/>
+ <ref name="db._any"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <define name="db.arch.attribute">
+ <attribute name="arch">
+ <db:refpurpose>Designates the computer or chip architecture to which the element applies</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.audience.attribute">
+ <attribute name="audience">
+ <db:refpurpose>Designates the intended audience to which the element applies, for example, system administrators, programmers, or new users.</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.condition.attribute">
+ <attribute name="condition">
+ <db:refpurpose>provides a standard place for application-specific effectivity</db:refpurpose>
+ <dbx:description>
+ <db:para>Many DocBook users observed that in order to add an effectivity condition that was unique to their environment required <db:quote>abusing</db:quote>
+ the semantics of one of the existing attributes, or adding their own, making their customization an extension rather than a subset. The<db:tag class="attribute">condition</db:tag>
+ attribute is a general-purpose effectivity attribute with no specified semantics.</db:para>
+ <db:para>The<db:tag class="attribute">condition</db:tag>
+ attribute provides a standard place for application-specific effectivity.</db:para>
+ </dbx:description>
+ </attribute>
+ </define>
+ <define name="db.conformance.attribute">
+ <attribute name="conformance">
+ <db:refpurpose>Indicates standards conformance characteristics of the element</db:refpurpose>
+ <dbx:description>
+ <db:para>These characteristics are application-specific; DocBook provides no default semantics.</db:para>
+ </dbx:description>
+ </attribute>
+ </define>
+ <define name="db.os.attribute">
+ <attribute name="os">
+ <db:refpurpose>Indicates the operating system to which the element is applicable</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.revision.attribute">
+ <attribute name="revision">
+ <db:refpurpose>Indicates the editorial revision to which the element belongs</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.security.attribute">
+ <attribute name="security">
+ <db:refpurpose>Indicates something about the security level associated with the element to which it applies</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.userlevel.attribute">
+ <attribute name="userlevel">
+ <db:refpurpose>Indicates the level of user experience for which the element applies</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.vendor.attribute">
+ <attribute name="vendor">
+ <db:refpurpose>Indicates the computer vendor to which the element applies.</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.wordsize.attribute">
+ <attribute name="wordsize">
+ <db:refpurpose>Indicates the word size (width in bits) of the computer architecture to which the element applies</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.effectivity.attributes">
+ <interleave>
+ <optional>
+ <ref name="db.arch.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.audience.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.condition.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.conformance.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.os.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.revision.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.security.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.userlevel.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.vendor.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.wordsize.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <!-- ====================================================================== -->
+ <define name="db.endterm.attribute">
+ <attribute name="endterm">
+ <db:refpurpose>Points to the element whose content is to be used as the text of the link</db:refpurpose>
+ <data type="IDREF"/>
+ </attribute>
+ </define>
+ <define name="db.linkend.attribute">
+ <attribute name="linkend">
+ <db:refpurpose>Points to an internal link target by identifying the value of its xml:id attribute</db:refpurpose>
+ <data type="IDREF"/>
+ </attribute>
+ </define>
+ <define name="db.linkends.attribute">
+ <attribute name="linkends">
+ <db:refpurpose>Points to one or more internal link targets by identifying the value of their xml:id attributes</db:refpurpose>
+ <data type="IDREFS"/>
+ </attribute>
+ </define>
+ <define name="db.xlink.href.attribute">
+ <attribute name="xlink:href">
+ <db:refpurpose>Identifies a link target with a URI</db:refpurpose>
+ <data type="anyURI"/>
+ </attribute>
+ </define>
+ <define name="db.xlink.type.attribute">
+ <attribute name="xlink:type">
+ <db:refpurpose>Identifies the XLink link type</db:refpurpose>
+ <value>simple</value>
+ <a:documentation>An XLink simple link</a:documentation>
+ </attribute>
+ </define>
+ <define name="db.xlink.role.attribute">
+ <attribute name="xlink:role">
+ <db:refpurpose>Identifies the XLink role of the link</db:refpurpose>
+ <dbx:description>
+ <db:para>DocBook uses the XLink role value <db:uri>http://docbook.org/xlink/role/olink</db:uri>
+ to identify linking elements with OLink semantics. That means the part of <db:tag class="attribute">xlink:href</db:tag>
+ before the number sign (#) is to be interpreted as equivalent to the olink <db:tag class="attribute">targetdoc</db:tag>
+ attribute value, and the part after the number sign as the olink <db:tag class="attribute">targetptr</db:tag>
+ attribute value.</db:para>
+ </dbx:description>
+ <data type="anyURI"/>
+ </attribute>
+ </define>
+ <define name="db.xlink.arcrole.attribute">
+ <attribute name="xlink:arcrole">
+ <db:refpurpose>Identifies the XLink arcrole of the link</db:refpurpose>
+ <data type="anyURI"/>
+ </attribute>
+ </define>
+ <define name="db.xlink.title.attribute">
+ <attribute name="xlink:title">
+ <db:refpurpose>Identifies the XLink title of the link</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.xlink.show.enumeration">
+ <choice>
+ <value>new</value>
+ <a:documentation>An application traversing to the ending resource should load it in a new window, frame, pane, or other relevant presentation context.</a:documentation>
+ <value>replace</value>
+ <a:documentation>An application traversing to the ending resource should load the resource in the same window, frame, pane, or other relevant presentation context in which the starting resource was loaded.</a:documentation>
+ <value>embed</value>
+ <a:documentation>An application traversing to the ending resource should load its presentation in place of the presentation of the starting resource.</a:documentation>
+ <value>other</value>
+ <a:documentation>The behavior of an application traversing to the ending resource is unconstrained by XLink. The application should look for other markup present in the link to determine the appropriate behavior.</a:documentation>
+ <value>none</value>
+ <a:documentation>The behavior of an application traversing to the ending resource is unconstrained by this specification. No other markup is present to help the application determine the appropriate behavior.</a:documentation>
+ </choice>
+ </define>
+ <define name="db.xlink.show.attribute">
+ <attribute name="xlink:show">
+ <db:refpurpose>Identifies the XLink show behavior of the link</db:refpurpose>
+ <ref name="db.xlink.show.enumeration"/>
+ </attribute>
+ </define>
+ <define name="db.xlink.actuate.enumeration">
+ <choice>
+ <value>onLoad</value>
+ <a:documentation>An application should traverse to the ending resource immediately on loading the starting resource.</a:documentation>
+ <value>onRequest</value>
+ <a:documentation>An application should traverse from the starting resource to the ending resource only on a post-loading event triggered for the purpose of traversal.</a:documentation>
+ <value>other</value>
+ <a:documentation>The behavior of an application traversing to the ending resource is unconstrained by this specification. The application should look for other markup present in the link to determine the appropriate behavior.</a:documentation>
+ <value>none</value>
+ <a:documentation>The behavior of an application traversing to the ending resource is unconstrained by this specification. No other markup is present to help the application determine the appropriate behavior.</a:documentation>
+ </choice>
+ </define>
+ <define name="db.xlink.actuate.attribute">
+ <attribute name="xlink:actuate">
+ <db:refpurpose>Identifies the XLink actuate behavior of the link</db:refpurpose>
+ <ref name="db.xlink.actuate.enumeration"/>
+ </attribute>
+ </define>
+ <define name="db.href.attributes">
+ <interleave>
+ <ref name="db.xlink.href.attribute"/>
+ <optional>
+ <ref name="db.xlink.type.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.xlink.role.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.xlink.arcrole.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.xlink.title.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.xlink.show.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.xlink.actuate.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <!-- ====================================================================== -->
+ <define name="db.xml.id.attribute">
+ <attribute name="xml:id">
+ <db:refpurpose>Identifies the unique ID value of the element</db:refpurpose>
+ <data type="ID"/>
+ </attribute>
+ </define>
+ <define name="db.version.attribute">
+ <attribute name="version">
+ <db:refpurpose>Specifies the DocBook version of the element and its descendants</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.xml.lang.attribute">
+ <attribute name="xml:lang">
+ <db:refpurpose>Specifies the natural language of the element and its descendants</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.xml.base.attribute">
+ <attribute name="xml:base">
+ <db:refpurpose>Specifies the base URI of the element and its descendants</db:refpurpose>
+ <data type="anyURI"/>
+ </attribute>
+ </define>
+ <define name="db.remap.attribute">
+ <attribute name="remap">
+ <db:refpurpose>Provides the name or similar semantic identifier assigned to the content in some previous markup scheme</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.xreflabel.attribute">
+ <attribute name="xreflabel">
+ <db:refpurpose>Provides the text that is to be generated for a cross reference to the element</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.xrefstyle.attribute">
+ <attribute name="xrefstyle">
+ <db:refpurpose>Specifies a keyword or keywords identifying additional style information</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.revisionflag.enumeration">
+ <choice>
+ <value>changed</value>
+ <a:documentation>The element has been changed.</a:documentation>
+ <value>added</value>
+ <a:documentation>The element is new (has been added to the document).</a:documentation>
+ <value>deleted</value>
+ <a:documentation>The element has been deleted.</a:documentation>
+ <value>off</value>
+ <a:documentation>Explicitly turns off revision markup for this element.</a:documentation>
+ </choice>
+ </define>
+ <define name="db.revisionflag.attribute">
+ <attribute name="revisionflag">
+ <db:refpurpose>Identifies the revision status of the element</db:refpurpose>
+ <ref name="db.revisionflag.enumeration"/>
+ </attribute>
+ </define>
+ <define name="db.dir.enumeration">
+ <choice>
+ <value>ltr</value>
+ <a:documentation>Left-to-right text</a:documentation>
+ <value>rtl</value>
+ <a:documentation>Right-to-left text</a:documentation>
+ <value>lro</value>
+ <a:documentation>Left-to-right override</a:documentation>
+ <value>rlo</value>
+ <a:documentation>Right-to-left override</a:documentation>
+ </choice>
+ </define>
+ <define name="db.dir.attribute">
+ <attribute name="dir">
+ <db:refpurpose>Identifies the direction of text in an element</db:refpurpose>
+ <ref name="db.dir.enumeration"/>
+ </attribute>
+ </define>
+ <define name="db.common.base.attributes">
+ <interleave>
+ <optional>
+ <ref name="db.version.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.xml.lang.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.xml.base.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.remap.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.xreflabel.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.revisionflag.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.dir.attribute"/>
+ </optional>
+ <ref name="db.effectivity.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.common.attributes">
+ <interleave>
+ <optional>
+ <ref name="db.xml.id.attribute"/>
+ </optional>
+ <ref name="db.common.base.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.common.idreq.attributes">
+ <interleave>
+ <ref name="db.xml.id.attribute"/>
+ <ref name="db.common.base.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.common.linking.attributes">
+ <optional>
+ <choice>
+ <ref name="db.linkend.attribute"/>
+ <ref name="db.href.attributes"/>
+ </choice>
+ </optional>
+ </define>
+ <define name="db.common.req.linking.attributes">
+ <choice>
+ <ref name="db.linkend.attribute"/>
+ <ref name="db.href.attributes"/>
+ </choice>
+ </define>
+ <define name="db.common.data.attributes">
+ <optional>
+ <attribute name="format">
+ <db:refpurpose>Specifies the format of the data</db:refpurpose>
+ </attribute>
+ </optional>
+ <choice>
+ <attribute name="fileref">
+ <db:refpurpose>Indentifies the location of the data by URI</db:refpurpose>
+ <data type="anyURI"/>
+ </attribute>
+ <attribute name="entityref">
+ <db:refpurpose>Identifies the location of the data by external identifier (entity name)</db:refpurpose>
+ <data type="ENTITY"/>
+ </attribute>
+ </choice>
+ </define>
+ <!-- ====================================================================== -->
+ <define name="db.verbatim.continuation.enumeration">
+ <choice>
+ <value>continues</value>
+ <a:documentation>Line numbering continues from the immediately preceding element with the same name.</a:documentation>
+ <value>restarts</value>
+ <a:documentation>Line numbering restarts (begins at 1, usually).</a:documentation>
+ </choice>
+ </define>
+ <define name="db.verbatim.continuation.attribute">
+ <attribute name="continuation">
+ <db:refpurpose>Determines whether line numbering continues from the previous element or restarts.</db:refpurpose>
+ <ref name="db.verbatim.continuation.enumeration"/>
+ </attribute>
+ </define>
+ <define name="db.verbatim.linenumbering.enumeration">
+ <choice>
+ <value>numbered</value>
+ <a:documentation>Lines are numbered.</a:documentation>
+ <value>unnumbered</value>
+ <a:documentation>Lines are not numbered.</a:documentation>
+ </choice>
+ </define>
+ <define name="db.verbatim.linenumbering.attribute">
+ <attribute name="linenumbering">
+ <db:refpurpose>Determines whether lines are numbered.</db:refpurpose>
+ <ref name="db.verbatim.linenumbering.enumeration"/>
+ </attribute>
+ </define>
+ <define name="db.verbatim.startinglinenumber.attribute">
+ <attribute name="startinglinenumber">
+ <db:refpurpose>Specifies the initial line number.</db:refpurpose>
+ <data type="integer"/>
+ </attribute>
+ </define>
+ <define name="db.verbatim.language.attribute">
+ <attribute name="language">
+ <db:refpurpose>Identifies the language (i.e. programming language) of the verbatim content.</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.verbatim.xml.space.attribute">
+ <attribute name="xml:space">
+ <db:refpurpose>Can be used to indicate explicitly that whitespace in the verbatim environment is preserved. Whitespace must always be preserved in verbatim environments whether this attribute is specified or not.</db:refpurpose>
+ <value>preserve</value>
+ <a:documentation>Whitespace must be preserved.</a:documentation>
+ </attribute>
+ </define>
+ <define name="db.verbatim.attributes">
+ <interleave>
+ <optional>
+ <ref name="db.verbatim.continuation.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.verbatim.linenumbering.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.verbatim.startinglinenumber.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.verbatim.language.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.verbatim.xml.space.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <!-- ====================================================================== -->
+ <define name="db.label.attribute">
+ <attribute name="label">
+ <db:refpurpose>Specifies an identifying string for presentation purposes</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.width.characters.attribute">
+ <attribute name="width">
+ <db:refpurpose>Specifies the width (in characters) of the element</db:refpurpose>
+ <data type="nonNegativeInteger"/>
+ </attribute>
+ </define>
+ <define name="db.spacing.enumeration">
+ <choice>
+ <value>compact</value>
+ <a:documentation>The spacing should be "compact".</a:documentation>
+ <value>normal</value>
+ <a:documentation>The spacing should be "normal".</a:documentation>
+ </choice>
+ </define>
+ <define name="db.spacing.attribute">
+ <attribute name="spacing">
+ <db:refpurpose>Specifies (a hint about) the spacing of the content</db:refpurpose>
+ <ref name="db.spacing.enumeration"/>
+ </attribute>
+ </define>
+ <define name="db.pgwide.enumeration">
+ <choice>
+ <value>0</value>
+ <a:documentation>The element should be rendered in the current text flow (with the flow column width).</a:documentation>
+ <value>1</value>
+ <a:documentation>The element should be rendered across the full text page.</a:documentation>
+ </choice>
+ </define>
+ <define name="db.pgwide.attribute">
+ <attribute name="pgwide">
+ <db:refpurpose>Indicates if the element is rendered across the column or the page</db:refpurpose>
+ <ref name="db.pgwide.enumeration"/>
+ </attribute>
+ </define>
+ <define name="db.language.attribute">
+ <attribute name="language">
+ <db:refpurpose>Identifies the language (i.e. programming language) of the content.</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.performance.enumeration">
+ <choice>
+ <value>optional</value>
+ <a:documentation>The content describes an optional step or steps.</a:documentation>
+ <value>required</value>
+ <a:documentation>The content describes a required step or steps.</a:documentation>
+ </choice>
+ </define>
+ <define name="db.performance.attribute">
+ <attribute name="performance">
+ <db:refpurpose>Specifies if the content is required or optional.</db:refpurpose>
+ <ref name="db.performance.enumeration"/>
+ </attribute>
+ </define>
+ <define name="db.floatstyle.attribute">
+ <attribute name="floatstyle">
+ <db:refpurpose>Specifies style information to be used when rendering the float</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.width.attribute">
+ <attribute name="width">
+ <db:refpurpose>Specifies the width of the element</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.depth.attribute">
+ <attribute name="depth">
+ <db:refpurpose>Specifies the depth of the element</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.contentwidth.attribute">
+ <attribute name="contentwidth">
+ <db:refpurpose>Specifies the width of the content rectangle</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.contentdepth.attribute">
+ <attribute name="contentdepth">
+ <db:refpurpose>Specifies the depth of the content rectangle</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.scalefit.enumeration">
+ <choice>
+ <value>0</value>
+ <a:documentation>False (do not scale-to-fit; anamorphic scaling may occur)</a:documentation>
+ <value>1</value>
+ <a:documentation>True (scale-to-fit; anamorphic scaling is forbidden)</a:documentation>
+ </choice>
+ </define>
+ <define name="db.scale.attribute">
+ <attribute name="scale">
+ <db:refpurpose>Specifies the scaling factor</db:refpurpose>
+ <data type="positiveInteger"/>
+ </attribute>
+ </define>
+ <!-- ====================================================================== -->
+ <define name="db.halign.enumeration">
+ <choice>
+ <value>center</value>
+ <a:documentation>Centered horizontally</a:documentation>
+ <value>char</value>
+ <a:documentation>Aligned horizontally on the specified character</a:documentation>
+ <value>justify</value>
+ <a:documentation>Fully justified (left and right margins or edges)</a:documentation>
+ <value>left</value>
+ <a:documentation>Left aligned</a:documentation>
+ <value>right</value>
+ <a:documentation>Right aligned</a:documentation>
+ </choice>
+ </define>
+ <define name="db.valign.enumeration">
+ <choice>
+ <value>bottom</value>
+ <a:documentation>Aligned on the bottom of the region</a:documentation>
+ <value>middle</value>
+ <a:documentation>Centered vertically</a:documentation>
+ <value>top</value>
+ <a:documentation>Aligned on the top of the region</a:documentation>
+ </choice>
+ </define>
+ <!-- ====================================================================== -->
+ <ctrl:other-attribute name="db.biblio.class.attribute" enum-name="db.biblio.class-enum.attribute" other-name="db.biblio.class-other.attributes"/>
+ <define name="db.biblio.class.enumeration">
+ <choice>
+ <value>doi</value>
+ <a:documentation>A digital object identifier.</a:documentation>
+ <value>isbn</value>
+ <a:documentation>An international standard book number.</a:documentation>
+ <value>isrn</value>
+ <a:documentation>An international standard technical report number (ISO 10444).</a:documentation>
+ <value>issn</value>
+ <a:documentation>An international standard serial number.</a:documentation>
+ <value>libraryofcongress</value>
+ <a:documentation>A Library of Congress reference number.</a:documentation>
+ <value>pubsnumber</value>
+ <a:documentation>A publication number (an internal number or possibly organizational standard).</a:documentation>
+ <value>uri</value>
+ <a:documentation>A Uniform Resource Identifier</a:documentation>
+ </choice>
+ </define>
+ <define name="db.biblio.class-enum.attribute">
+ <optional>
+ <attribute name="class">
+ <db:refpurpose>Identifies the kind of bibliographic identifier</db:refpurpose>
+ <ref name="db.biblio.class.enumeration"/>
+ </attribute>
+ </optional>
+ </define>
+ <define name="db.biblio.class-other.attribute">
+ <attribute name="otherclass">
+ <db:refpurpose>Identifies the nature of the non-standard bibliographic identifier</db:refpurpose>
+ <data type="NMTOKEN"/>
+ </attribute>
+ </define>
+ <define name="db.biblio.class-other.attributes">
+ <interleave>
+ <attribute name="class">
+ <db:refpurpose>Identifies the kind of bibliographic identifier</db:refpurpose>
+ <value>other</value>
+ <a:documentation>Indicates that the identifier is some 'other' kind.</a:documentation>
+ </attribute>
+ <ref name="db.biblio.class-other.attribute"/>
+ </interleave>
+ </define>
+ <define name="db.biblio.class.attribute">
+ <choice>
+ <ref name="db.biblio.class-enum.attribute"/>
+ <ref name="db.biblio.class-other.attributes"/>
+ </choice>
+ </define>
+ <!-- ====================================================================== -->
+ <define name="db.ubiq.inlines">
+ <choice>
+ <ref name="db.inlinemediaobject"/>
+ <ref name="db.remark"/>
+ <ref name="db.link.inlines"/>
+ <ref name="db.alt"/>
+ <ref name="db.trademark"/>
+ <!-- below, effectively the publishing inlines (as of 5.0) -->
+ <ref name="db.abbrev"/>
+ <ref name="db.acronym"/>
+ <ref name="db.date"/>
+ <ref name="db._emphasis"/>
+ <ref name="db.footnote"/>
+ <ref name="db.footnoteref"/>
+ <ref name="db._foreignphrase"/>
+ <ref name="db._phrase"/>
+ <ref name="db._quote"/>
+ <ref name="db.subscript"/>
+ <ref name="db.superscript"/>
+ <ref name="db.wordasword"/>
+ </choice>
+ </define>
+ <define name="db._text">
+ <zeroOrMore>
+ <choice>
+ <text/>
+ <ref name="db.ubiq.inlines"/>
+ <ref name="db._phrase"/>
+ <ref name="db.replaceable"/>
+ </choice>
+ </zeroOrMore>
+ </define>
+ <define name="db._title">
+ <interleave>
+ <optional>
+ <ref name="db.title"/>
+ </optional>
+ <optional>
+ <ref name="db.titleabbrev"/>
+ </optional>
+ <optional>
+ <ref name="db.subtitle"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db._title.req">
+ <interleave>
+ <ref name="db.title"/>
+ <optional>
+ <ref name="db.titleabbrev"/>
+ </optional>
+ <optional>
+ <ref name="db.subtitle"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db._title.only">
+ <interleave>
+ <optional>
+ <ref name="db.title"/>
+ </optional>
+ <optional>
+ <ref name="db.titleabbrev"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db._title.onlyreq">
+ <interleave>
+ <ref name="db.title"/>
+ <optional>
+ <ref name="db.titleabbrev"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db._info">
+ <choice>
+ <group>
+ <ref name="db._title"/>
+ <optional>
+ <ref name="db.titleforbidden.info"/>
+ </optional>
+ </group>
+ <optional>
+ <ref name="db.info"/>
+ </optional>
+ </choice>
+ </define>
+ <define name="db._info.title.req">
+ <choice>
+ <group>
+ <ref name="db._title.req"/>
+ <optional>
+ <ref name="db.titleforbidden.info"/>
+ </optional>
+ </group>
+ <ref name="db.titlereq.info"/>
+ </choice>
+ </define>
+ <define name="db._info.title.only">
+ <choice>
+ <group>
+ <ref name="db._title.only"/>
+ <optional>
+ <ref name="db.titleforbidden.info"/>
+ </optional>
+ </group>
+ <ref name="db.titleonly.info"/>
+ </choice>
+ </define>
+ <define name="db._info.title.onlyreq">
+ <choice>
+ <group>
+ <ref name="db._title.onlyreq"/>
+ <optional>
+ <ref name="db.titleforbidden.info"/>
+ </optional>
+ </group>
+ <ref name="db.titleonlyreq.info"/>
+ </choice>
+ </define>
+ <define name="db._info.title.forbidden">
+ <optional>
+ <ref name="db.titleforbidden.info"/>
+ </optional>
+ </define>
+ <!-- ====================================================================== -->
+ <define name="db.all.inlines">
+ <choice>
+ <text/>
+ <ref name="db.ubiq.inlines"/>
+ <ref name="db.general.inlines"/>
+ <ref name="db.domain.inlines"/>
+ <ref name="db.extension.inlines"/>
+ </choice>
+ </define>
+ <define name="db.general.inlines">
+ <choice>
+ <ref name="db.publishing.inlines"/>
+ <ref name="db.product.inlines"/>
+ <ref name="db.bibliography.inlines"/>
+ <ref name="db.graphic.inlines"/>
+ <ref name="db.indexing.inlines"/>
+ <ref name="db.link.inlines"/>
+ </choice>
+ </define>
+ <define name="db.domain.inlines">
+ <ref name="db.technical.inlines"/>
+ </define>
+ <define name="db.technical.inlines">
+ <choice>
+ <ref name="db.replaceable"/>
+ <ref name="db.package"/>
+ <ref name="db.parameter"/>
+ </choice>
+ </define>
+ <define name="db.product.inlines">
+ <ref name="db.trademark"/>
+ </define>
+ <define name="db.bibliography.inlines">
+ <choice>
+ <ref name="db.citation"/>
+ <ref name="db.citerefentry"/>
+ <ref name="db.citetitle"/>
+ <ref name="db.citebiblioid"/>
+ <ref name="db.author"/>
+ <ref name="db.person"/>
+ <ref name="db.personname"/>
+ <ref name="db.org"/>
+ <ref name="db.orgname"/>
+ <ref name="db.editor"/>
+ <ref name="db.jobtitle"/>
+ </choice>
+ </define>
+ <define name="db.publishing.inlines">
+ <choice>
+ <ref name="db.abbrev"/>
+ <ref name="db.acronym"/>
+ <ref name="db.date"/>
+ <ref name="db.emphasis"/>
+ <ref name="db.footnote"/>
+ <ref name="db.footnoteref"/>
+ <ref name="db.foreignphrase"/>
+ <ref name="db.phrase"/>
+ <ref name="db.quote"/>
+ <ref name="db.subscript"/>
+ <ref name="db.superscript"/>
+ <ref name="db.wordasword"/>
+ </choice>
+ </define>
+ <define name="db.graphic.inlines">
+ <ref name="db.inlinemediaobject"/>
+ </define>
+ <define name="db.indexing.inlines">
+ <notAllowed/>
+ </define>
+ <define name="db.link.inlines">
+ <choice>
+ <ref name="db.xref"/>
+ <ref name="db.link"/>
+ <ref name="db.olink"/>
+ <ref name="db.anchor"/>
+ </choice>
+ </define>
+ <define name="db.extension.inlines">
+ <notAllowed/>
+ </define>
+ <!-- ====================================================================== -->
+ <define name="db.nopara.blocks">
+ <choice>
+ <ref name="db.list.blocks"/>
+ <ref name="db.formal.blocks"/>
+ <ref name="db.informal.blocks"/>
+ <ref name="db.publishing.blocks"/>
+ <ref name="db.graphic.blocks"/>
+ <ref name="db.technical.blocks"/>
+ <ref name="db.verbatim.blocks"/>
+ <ref name="db.bridgehead"/>
+ <ref name="db.remark"/>
+ <ref name="db.revhistory"/>
+ </choice>
+ </define>
+ <define name="db.para.blocks">
+ <choice>
+ <ref name="db.anchor"/>
+ <ref name="db.para"/>
+ <ref name="db.formalpara"/>
+ <ref name="db.simpara"/>
+ </choice>
+ </define>
+ <define name="db.all.blocks">
+ <choice>
+ <ref name="db.nopara.blocks"/>
+ <ref name="db.para.blocks"/>
+ <ref name="db.extension.blocks"/>
+ </choice>
+ </define>
+ <ctrl:exclude from="db.formal.blocks" exclude="db.formal.blocks"/>
+ <define name="db.formal.blocks">
+ <choice>
+ <ref name="db.example"/>
+ <ref name="db.figure"/>
+ <ref name="db.table"/>
+ </choice>
+ </define>
+ <define name="db.informal.blocks">
+ <choice>
+ <ref name="db.informalexample"/>
+ <ref name="db.informalfigure"/>
+ <ref name="db.informaltable"/>
+ </choice>
+ </define>
+ <define name="db.publishing.blocks">
+ <choice>
+ <ref name="db.sidebar"/>
+ <ref name="db.blockquote"/>
+ <ref name="db.address"/>
+ <ref name="db.epigraph"/>
+ </choice>
+ </define>
+ <define name="db.graphic.blocks">
+ <choice>
+ <ref name="db.mediaobject"/>
+ <ref name="db.screenshot"/>
+ </choice>
+ </define>
+ <define name="db.technical.blocks">
+ <ref name="db.procedure"/>
+ </define>
+ <define name="db.list.blocks">
+ <choice>
+ <ref name="db.itemizedlist"/>
+ <ref name="db.orderedlist"/>
+ <ref name="db.procedure"/>
+ <ref name="db.simplelist"/>
+ <ref name="db.variablelist"/>
+ <ref name="db.segmentedlist"/>
+ </choice>
+ </define>
+ <define name="db.verbatim.blocks">
+ <choice>
+ <ref name="db.screen"/>
+ <ref name="db.literallayout"/>
+ </choice>
+ </define>
+ <define name="db.extension.blocks">
+ <notAllowed/>
+ </define>
+ <!-- ====================================================================== -->
+ <define name="db.info.extension">
+ <ref name="db._any"/>
+ </define>
+ <define name="db.info.elements">
+ <choice>
+ <ref name="db.abstract"/>
+ <ref name="db.address"/>
+ <ref name="db.artpagenums"/>
+ <ref name="db.author"/>
+ <ref name="db.authorgroup"/>
+ <ref name="db.authorinitials"/>
+ <ref name="db.bibliocoverage"/>
+ <ref name="db.biblioid"/>
+ <ref name="db.bibliosource"/>
+ <ref name="db.collab"/>
+ <ref name="db.confgroup"/>
+ <ref name="db.contractsponsor"/>
+ <ref name="db.contractnum"/>
+ <ref name="db.copyright"/>
+ <ref name="db.cover"/>
+ <ref name="db.date"/>
+ <ref name="db.edition"/>
+ <ref name="db.editor"/>
+ <ref name="db.issuenum"/>
+ <ref name="db.keywordset"/>
+ <ref name="db.legalnotice"/>
+ <ref name="db.mediaobject"/>
+ <ref name="db.org"/>
+ <ref name="db.orgname"/>
+ <ref name="db.othercredit"/>
+ <ref name="db.pagenums"/>
+ <ref name="db.printhistory"/>
+ <ref name="db.pubdate"/>
+ <ref name="db.publisher"/>
+ <ref name="db.publishername"/>
+ <ref name="db.releaseinfo"/>
+ <ref name="db.revhistory"/>
+ <ref name="db.seriesvolnums"/>
+ <ref name="db.subjectset"/>
+ <ref name="db.volumenum"/>
+ <ref name="db.info.extension"/>
+ </choice>
+ </define>
+ <define name="db.bibliographic.elements">
+ <choice>
+ <ref name="db.info.elements"/>
+ <ref name="db.publishing.inlines"/>
+ <ref name="db.citerefentry"/>
+ <ref name="db.citetitle"/>
+ <ref name="db.citebiblioid"/>
+ <ref name="db.person"/>
+ <ref name="db.personblurb"/>
+ <ref name="db.personname"/>
+ <ref name="db.subtitle"/>
+ <ref name="db.title"/>
+ <ref name="db.titleabbrev"/>
+ </choice>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>title</db:refname>
+ <db:refpurpose>The text of the title of a section of a document or of a formal block-level element</db:refpurpose>
+ <define name="db.title.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.title.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.title.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.title">
+ <element name="title">
+ <ref name="db.title.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>titleabbrev</db:refname>
+ <db:refpurpose>The abbreviation of a title</db:refpurpose>
+ <define name="db.titleabbrev.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.titleabbrev.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.titleabbrev.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.titleabbrev">
+ <element name="titleabbrev">
+ <ref name="db.titleabbrev.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>subtitle</db:refname>
+ <db:refpurpose>The subtitle of a document</db:refpurpose>
+ <define name="db.subtitle.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.subtitle.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.subtitle.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.subtitle">
+ <element name="subtitle">
+ <ref name="db.subtitle.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>info</db:refname>
+ <db:refpurpose>A wrapper for information about a component or other block</db:refpurpose>
+ <define name="db.info.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.info.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.info.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.info">
+ <element name="info">
+ <ref name="db.info.attlist"/>
+ <interleave>
+ <ref name="db._title"/>
+ <zeroOrMore>
+ <ref name="db.info.elements"/>
+ </zeroOrMore>
+ </interleave>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>info</db:refname>
+ <db:refpurpose>A wrapper for information about a component or other block with a required title</db:refpurpose>
+ <define name="db.titlereq.info.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.titlereq.info.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.titlereq.info.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.titlereq.info">
+ <element name="info">
+ <ref name="db.titlereq.info.attlist"/>
+ <interleave>
+ <ref name="db._title.req"/>
+ <zeroOrMore>
+ <ref name="db.info.elements"/>
+ </zeroOrMore>
+ </interleave>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>info</db:refname>
+ <db:refpurpose>A wrapper for information about a component or other block with only a title</db:refpurpose>
+ <define name="db.titleonly.info.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.titleonly.info.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.titleonly.info.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.titleonly.info">
+ <element name="info">
+ <ref name="db.titleonly.info.attlist"/>
+ <interleave>
+ <ref name="db._title.only"/>
+ <zeroOrMore>
+ <ref name="db.info.elements"/>
+ </zeroOrMore>
+ </interleave>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>info</db:refname>
+ <db:refpurpose>A wrapper for information about a component or other block with only a required title</db:refpurpose>
+ <define name="db.titleonlyreq.info.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.titleonlyreq.info.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.titleonlyreq.info.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.titleonlyreq.info">
+ <element name="info">
+ <ref name="db.titleonlyreq.info.attlist"/>
+ <interleave>
+ <ref name="db._title.onlyreq"/>
+ <zeroOrMore>
+ <ref name="db.info.elements"/>
+ </zeroOrMore>
+ </interleave>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>info</db:refname>
+ <db:refpurpose>A wrapper for information about a component or other block without a title</db:refpurpose>
+ <define name="db.titleforbidden.info.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.titleforbidden.info.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.titleforbidden.info.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.titleforbidden.info">
+ <element name="info">
+ <ref name="db.titleforbidden.info.attlist"/>
+ <zeroOrMore>
+ <ref name="db.info.elements"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>subjectset</db:refname>
+ <db:refpurpose>A set of terms describing the subject matter of a document</db:refpurpose>
+ <define name="db.subjectset.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.subjectset.scheme.attribute">
+ <attribute name="scheme">
+ <db:refpurpose>Identifies the controlled vocabulary used by this set's terms</db:refpurpose>
+ <data type="NMTOKEN"/>
+ </attribute>
+ </define>
+ <define name="db.subjectset.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.subjectset.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.subjectset.scheme.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.subjectset">
+ <element name="subjectset">
+ <ref name="db.subjectset.attlist"/>
+ <oneOrMore>
+ <ref name="db.subject"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>subject</db:refname>
+ <db:refpurpose>One of a group of terms describing the subject matter of a document</db:refpurpose>
+ <define name="db.subject.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.subject.weight.attribute">
+ <attribute name="weight">
+ <db:refpurpose>Specifies a ranking for this subject relative to other subjects in the same set</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.subject.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.subject.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.subject.weight.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.subject">
+ <element name="subject">
+ <ref name="db.subject.attlist"/>
+ <oneOrMore>
+ <ref name="db.subjectterm"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>subjectterm</db:refname>
+ <db:refpurpose>A term in a group of terms describing the subject matter of a document</db:refpurpose>
+ <define name="db.subjectterm.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.subjectterm.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.subjectterm.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.subjectterm">
+ <element name="subjectterm">
+ <ref name="db.subjectterm.attlist"/>
+ <text/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>keywordset</db:refname>
+ <db:refpurpose>A set of keywords describing the content of a document</db:refpurpose>
+ <define name="db.keywordset.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.keywordset.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.keywordset.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.keywordset">
+ <element name="keywordset">
+ <ref name="db.keywordset.attlist"/>
+ <oneOrMore>
+ <ref name="db.keyword"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>keyword</db:refname>
+ <db:refpurpose>One of a set of keywords describing the content of a document</db:refpurpose>
+ <define name="db.keyword.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.keyword.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.keyword.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.keyword">
+ <element name="keyword">
+ <ref name="db.keyword.attlist"/>
+ <text/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <define name="db.table.choice">
+ <notAllowed/>
+ </define>
+ <define name="db.informaltable.choice">
+ <notAllowed/>
+ </define>
+ <define name="db.table">
+ <ref name="db.table.choice"/>
+ </define>
+ <define name="db.informaltable">
+ <ref name="db.informaltable.choice"/>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>procedure</db:refname>
+ <db:refpurpose>A list of operations to be performed in a well-defined sequence</db:refpurpose>
+ <define name="db.procedure.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.procedure.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.procedure.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.procedure.info">
+ <ref name="db._info.title.only"/>
+ </define>
+ <define name="db.procedure">
+ <element name="procedure">
+ <ref name="db.procedure.attlist"/>
+ <ref name="db.procedure.info"/>
+ <zeroOrMore>
+ <ref name="db.all.blocks"/>
+ </zeroOrMore>
+ <oneOrMore>
+ <ref name="db.step"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>step</db:refname>
+ <db:refpurpose>A unit of action in a procedure</db:refpurpose>
+ <define name="db.step.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.step.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.step.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.performance.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.step.info">
+ <ref name="db._info.title.only"/>
+ </define>
+ <!--
+ This content model is blocks*, step|stepalternatives, blocks* but
+ expressed this way it avoids UPA issues in XSD and DTD versions
+ -->
+ <define name="db.step">
+ <element name="step">
+ <ref name="db.step.attlist"/>
+ <ref name="db.step.info"/>
+ <choice>
+ <group>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ <optional>
+ <choice>
+ <ref name="db.substeps"/>
+ <ref name="db.stepalternatives"/>
+ </choice>
+ <zeroOrMore>
+ <ref name="db.all.blocks"/>
+ </zeroOrMore>
+ </optional>
+ </group>
+ <group>
+ <choice>
+ <ref name="db.substeps"/>
+ <ref name="db.stepalternatives"/>
+ </choice>
+ <zeroOrMore>
+ <ref name="db.all.blocks"/>
+ </zeroOrMore>
+ </group>
+ </choice>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>stepalternatives</db:refname>
+ <db:refpurpose>Alternative steps in a procedure</db:refpurpose>
+ <define name="db.stepalternatives.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.stepalternatives.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.stepalternatives.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.performance.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.stepalternatives.info">
+ <ref name="db._info.title.forbidden"/>
+ </define>
+ <define name="db.stepalternatives">
+ <element name="stepalternatives">
+ <ref name="db.stepalternatives.attlist"/>
+ <ref name="db.stepalternatives.info"/>
+ <oneOrMore>
+ <ref name="db.step"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>substeps</db:refname>
+ <db:refpurpose>A wrapper for steps that occur within steps in a procedure</db:refpurpose>
+ <define name="db.substeps.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.substeps.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.substeps.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.performance.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.substeps">
+ <element name="substeps">
+ <ref name="db.substeps.attlist"/>
+ <oneOrMore>
+ <ref name="db.step"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>sidebar</db:refname>
+ <db:refpurpose>A portion of a document that is isolated from the main narrative flow</db:refpurpose>
+ <ctrl:exclude from="db.sidebar" exclude="db.sidebar"/>
+ <define name="db.sidebar.floatstyle.attribute">
+ <ref name="db.floatstyle.attribute"/>
+ </define>
+ <define name="db.sidebar.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.sidebar.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.sidebar.role.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.sidebar.floatstyle.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.sidebar.info">
+ <ref name="db._info"/>
+ </define>
+ <define name="db.sidebar">
+ <element name="sidebar">
+ <ref name="db.sidebar.attlist"/>
+ <ref name="db.sidebar.info"/>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>abstract</db:refname>
+ <db:refpurpose>A summary</db:refpurpose>
+ <define name="db.abstract.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.abstract.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.abstract.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.abstract.info">
+ <ref name="db._info.title.only"/>
+ </define>
+ <define name="db.abstract">
+ <element name="abstract">
+ <ref name="db.abstract.attlist"/>
+ <ref name="db.abstract.info"/>
+ <oneOrMore>
+ <ref name="db.para.blocks"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>personblurb</db:refname>
+ <db:refpurpose>A short description or note about a person</db:refpurpose>
+ <define name="db.personblurb.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.personblurb.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.personblurb.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.personblurb.info">
+ <ref name="db._info.title.only"/>
+ </define>
+ <define name="db.personblurb">
+ <element name="personblurb">
+ <ref name="db.personblurb.attlist"/>
+ <ref name="db.personblurb.info"/>
+ <oneOrMore>
+ <ref name="db.para.blocks"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>blockquote</db:refname>
+ <db:refpurpose>A quotation set off from the main text</db:refpurpose>
+ <define name="db.blockquote.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.blockquote.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.blockquote.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.blockquote.info">
+ <ref name="db._info.title.only"/>
+ </define>
+ <define name="db.blockquote">
+ <element name="blockquote">
+ <ref name="db.blockquote.attlist"/>
+ <ref name="db.blockquote.info"/>
+ <optional>
+ <ref name="db.attribution"/>
+ </optional>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>attribution</db:refname>
+ <db:refpurpose>The source of a block quote or epigraph</db:refpurpose>
+ <define name="db.attribution.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.attribution.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.attribution.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.attribution">
+ <element name="attribution">
+ <ref name="db.attribution.attlist"/>
+ <zeroOrMore>
+ <choice>
+ <ref name="db._text"/>
+ <ref name="db.person"/>
+ <ref name="db.personname"/>
+ <ref name="db.citetitle"/>
+ <ref name="db.citation"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>bridgehead</db:refname>
+ <db:refpurpose>A free-floating heading</db:refpurpose>
+ <ctrl:other-attribute name="db.bridgehead.renderas.attribute" enum-name="db.bridgehead.renderas-enum.attribute" other-name="db.bridgehead.renderas-other.attributes"/>
+ <define name="db.bridgehead.renderas.enumeration">
+ <choice>
+ <value>sect1</value>
+ <a:documentation>Render as a first-level section</a:documentation>
+ <value>sect2</value>
+ <a:documentation>Render as a second-level section</a:documentation>
+ <value>sect3</value>
+ <a:documentation>Render as a third-level section</a:documentation>
+ <value>sect4</value>
+ <a:documentation>Render as a fourth-level section</a:documentation>
+ <value>sect5</value>
+ <a:documentation>Render as a fifth-level section</a:documentation>
+ </choice>
+ </define>
+ <define name="db.bridgehead.renderas-enum.attribute">
+ <optional>
+ <attribute name="renderas">
+ <db:refpurpose>Indicates how the bridge head should be rendered</db:refpurpose>
+ <ref name="db.bridgehead.renderas.enumeration"/>
+ </attribute>
+ </optional>
+ </define>
+ <define name="db.bridgehead.renderas-other.attribute">
+ <attribute name="otherrenderas">
+ <db:refpurpose>Identifies the nature of the non-standard rendering</db:refpurpose>
+ <data type="NMTOKEN"/>
+ </attribute>
+ </define>
+ <define name="db.bridgehead.renderas-other.attributes">
+ <interleave>
+ <attribute name="renderas">
+ <db:refpurpose>Indicates how the bridge head should be rendered</db:refpurpose>
+ <value>other</value>
+ <a:documentation>Identifies a non-standard rendering</a:documentation>
+ </attribute>
+ <ref name="db.bridgehead.renderas-other.attribute"/>
+ </interleave>
+ </define>
+ <define name="db.bridgehead.renderas.attribute">
+ <choice>
+ <ref name="db.bridgehead.renderas-enum.attribute"/>
+ <ref name="db.bridgehead.renderas-other.attributes"/>
+ </choice>
+ </define>
+ <define name="db.bridgehead.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.bridgehead.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.bridgehead.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.bridgehead.renderas.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.bridgehead">
+ <element name="bridgehead">
+ <ref name="db.bridgehead.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>remark</db:refname>
+ <db:refpurpose>A remark (or comment) intended for presentation in a draft manuscript</db:refpurpose>
+ <define name="db.remark.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.remark.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.remark.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.remark">
+ <element name="remark">
+ <ref name="db.remark.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>epigraph</db:refname>
+ <db:refpurpose>A short inscription at the beginning of a document or component</db:refpurpose>
+ <define name="db.epigraph.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.epigraph.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.epigraph.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.epigraph.info">
+ <ref name="db._info.title.forbidden"/>
+ </define>
+ <define name="db.epigraph">
+ <element name="epigraph">
+ <ref name="db.epigraph.attlist"/>
+ <ref name="db.epigraph.info"/>
+ <optional>
+ <ref name="db.attribution"/>
+ </optional>
+ <oneOrMore>
+ <choice>
+ <ref name="db.para.blocks"/>
+ <ref name="db.literallayout"/>
+ </choice>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>footnote</db:refname>
+ <db:refpurpose>A footnote</db:refpurpose>
+ <ctrl:exclude from="db.footnote" exclude="db.footnote"/>
+ <ctrl:exclude from="db.footnote" exclude="db.formal.blocks"/>
+ <ctrl:exclude from="db.footnote" exclude="db.sidebar"/>
+ <ctrl:exclude from="db.footnote" exclude="db.task"/>
+ <ctrl:exclude from="db.footnote" exclude="db.epigraph"/>
+ <define name="db.footnote.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.footnote.label.attribute">
+ <attribute name="label">
+ <db:refpurpose>Identifies the desired footnote mark</db:refpurpose>
+ <data type="NMTOKEN"/>
+ </attribute>
+ </define>
+ <define name="db.footnote.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.footnote.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.footnote.label.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.footnote">
+ <element name="footnote">
+ <ref name="db.footnote.attlist"/>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>formalpara</db:refname>
+ <db:refpurpose>A paragraph with a title</db:refpurpose>
+ <define name="db.formalpara.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.formalpara.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.formalpara.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.formalpara.info">
+ <ref name="db._info.title.onlyreq"/>
+ </define>
+ <define name="db.formalpara">
+ <element name="formalpara">
+ <ref name="db.formalpara.attlist"/>
+ <ref name="db.formalpara.info"/>
+ <zeroOrMore>
+ <ref name="db.indexing.inlines"/>
+ </zeroOrMore>
+ <ref name="db.para"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>para</db:refname>
+ <db:refpurpose>A paragraph</db:refpurpose>
+ <define name="db.para.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.para.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.para.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.para.info">
+ <ref name="db._info.title.forbidden"/>
+ </define>
+ <define name="db.para">
+ <element name="para">
+ <ref name="db.para.attlist"/>
+ <ref name="db.para.info"/>
+ <zeroOrMore>
+ <choice>
+ <ref name="db.all.inlines"/>
+ <ref name="db.nopara.blocks"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>simpara</db:refname>
+ <db:refpurpose>A paragraph that contains only text and inline markup, no block elements</db:refpurpose>
+ <define name="db.simpara.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.simpara.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.simpara.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.simpara.info">
+ <ref name="db._info.title.forbidden"/>
+ </define>
+ <define name="db.simpara">
+ <element name="simpara">
+ <ref name="db.simpara.attlist"/>
+ <ref name="db.simpara.info"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>itemizedlist</db:refname>
+ <db:refpurpose>A list in which each entry is marked with a bullet or other dingbat</db:refpurpose>
+ <define name="db.itemizedlist.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.itemizedlist.mark.attribute">
+ <attribute name="mark">
+ <db:refpurpose>Identifies the type of mark to be used on items in this list</db:refpurpose>
+ <data type="NMTOKEN"/>
+ </attribute>
+ </define>
+ <define name="db.itemizedlist.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.itemizedlist.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.spacing.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.itemizedlist.mark.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.itemizedlist.info">
+ <ref name="db._info.title.only"/>
+ </define>
+ <define name="db.itemizedlist">
+ <element name="itemizedlist">
+ <ref name="db.itemizedlist.attlist"/>
+ <ref name="db.itemizedlist.info"/>
+ <zeroOrMore>
+ <ref name="db.all.blocks"/>
+ </zeroOrMore>
+ <oneOrMore>
+ <ref name="db.listitem"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>orderedlist</db:refname>
+ <db:refpurpose>A list in which each entry is marked with a sequentially incremented label</db:refpurpose>
+ <define name="db.orderedlist.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.orderedlist.continuation.enumeration">
+ <choice>
+ <value>continues</value>
+ <a:documentation>Specifies that numbering should begin where the preceding list left off</a:documentation>
+ <value>restarts</value>
+ <a:documentation>Specifies that numbering should begin again at 1</a:documentation>
+ </choice>
+ </define>
+ <define name="db.orderedlist.continuation.attribute">
+ <attribute name="continuation">
+ <db:refpurpose>Indicates how list numbering should begin relative to the immediately preceding list</db:refpurpose>
+ <ref name="db.orderedlist.continuation.enumeration"/>
+ </attribute>
+ </define>
+ <define name="db.orderedlist.startingnumber.attribute">
+ <attribute name="startingnumber">
+ <db:refpurpose>Specifies the initial line number.</db:refpurpose>
+ <data type="integer"/>
+ </attribute>
+ </define>
+ <define name="db.orderedlist.inheritnum.enumeration">
+ <choice>
+ <value>ignore</value>
+ <a:documentation>Specifies that numbering should ignore list nesting</a:documentation>
+ <value>inherit</value>
+ <a:documentation>Specifies that numbering should inherit from outer-level lists</a:documentation>
+ </choice>
+ </define>
+ <define name="db.orderedlist.inheritnum.attribute">
+ <attribute name="inheritnum">
+ <db:refpurpose>Indicates whether or not item numbering should be influenced by list nesting</db:refpurpose>
+ <ref name="db.orderedlist.inheritnum.enumeration"/>
+ </attribute>
+ </define>
+ <define name="db.orderedlist.numeration.enumeration">
+ <choice>
+ <value>arabic</value>
+ <a:documentation>Specifies Arabic numeration (1, 2, 3, …)</a:documentation>
+ <value>upperalpha</value>
+ <a:documentation>Specifies upper-case alphabetic numeration (A, B, C, …)</a:documentation>
+ <value>loweralpha</value>
+ <a:documentation>Specifies lower-case alphabetic numeration (a, b, c, …)</a:documentation>
+ <value>upperroman</value>
+ <a:documentation>Specifies upper-case Roman numeration (I, II, III, …)</a:documentation>
+ <value>lowerroman</value>
+ <a:documentation>Specifies lower-case Roman numeration (i, ii, iii …)</a:documentation>
+ </choice>
+ </define>
+ <define name="db.orderedlist.numeration.attribute">
+ <attribute name="numeration">
+ <db:refpurpose>Indicates the desired numeration</db:refpurpose>
+ <ref name="db.orderedlist.numeration.enumeration"/>
+ </attribute>
+ </define>
+ <define name="db.orderedlist.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.orderedlist.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.spacing.attribute"/>
+ </optional>
+ <optional>
+ <choice>
+ <ref name="db.orderedlist.continuation.attribute"/>
+ <ref name="db.orderedlist.startingnumber.attribute"/>
+ </choice>
+ </optional>
+ <optional>
+ <ref name="db.orderedlist.inheritnum.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.orderedlist.numeration.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.orderedlist.info">
+ <ref name="db._info.title.only"/>
+ </define>
+ <define name="db.orderedlist">
+ <element name="orderedlist">
+ <ref name="db.orderedlist.attlist"/>
+ <ref name="db.orderedlist.info"/>
+ <zeroOrMore>
+ <ref name="db.all.blocks"/>
+ </zeroOrMore>
+ <oneOrMore>
+ <ref name="db.listitem"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>listitem</db:refname>
+ <db:refpurpose>A wrapper for the elements of a list item</db:refpurpose>
+ <define name="db.listitem.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.listitem.override.attribute">
+ <attribute name="override">
+ <db:refpurpose>Specifies the keyword for the type of mark that should be used on <db:emphasis>this</db:emphasis>
+ item, instead of the mark that would be used by default</db:refpurpose>
+ <data type="NMTOKEN"/>
+ </attribute>
+ </define>
+ <define name="db.listitem.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.listitem.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.listitem.override.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.listitem">
+ <element name="listitem">
+ <ref name="db.listitem.attlist"/>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>segmentedlist</db:refname>
+ <db:refpurpose>A segmented list, a list of sets of elements</db:refpurpose>
+ <define name="db.segmentedlist.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.segmentedlist.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.segmentedlist.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.segmentedlist.info">
+ <ref name="db._info.title.only"/>
+ </define>
+ <define name="db.segmentedlist">
+ <element name="segmentedlist">
+ <ref name="db.segmentedlist.attlist"/>
+ <ref name="db.segmentedlist.info"/>
+ <oneOrMore>
+ <ref name="db.segtitle"/>
+ </oneOrMore>
+ <oneOrMore>
+ <ref name="db.seglistitem"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>segtitle</db:refname>
+ <db:refpurpose>The title of an element of a list item in a segmented list</db:refpurpose>
+ <define name="db.segtitle.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.segtitle.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.segtitle.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.segtitle">
+ <element name="segtitle">
+ <ref name="db.segtitle.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>seglistitem</db:refname>
+ <db:refpurpose>A list item in a segmented list</db:refpurpose>
+ <define name="db.seglistitem.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.seglistitem.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.seglistitem.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.seglistitem">
+ <element name="seglistitem">
+ <s:pattern name="Cardinality of segments and titles">
+ <s:rule context="db:seglistitem">
+ <s:assert test="count(db:seg) = count(../db:segtitle)">The number of seg elements must be the same as the number of segtitle elements in the parent segmentedlist</s:assert>
+ </s:rule>
+ </s:pattern>
+ <ref name="db.seglistitem.attlist"/>
+ <oneOrMore>
+ <ref name="db.seg"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>seg</db:refname>
+ <db:refpurpose>An element of a list item in a segmented list</db:refpurpose>
+ <define name="db.seg.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.seg.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.seg.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.seg">
+ <element name="seg">
+ <ref name="db.seg.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>simplelist</db:refname>
+ <db:refpurpose>An undecorated list of single words or short phrases</db:refpurpose>
+ <define name="db.simplelist.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.simplelist.type.enumeration">
+ <choice>
+ <value>horiz</value>
+ <a:documentation>A tabular presentation in row-major order.</a:documentation>
+ <value>vert</value>
+ <a:documentation>A tabular presentation in column-major order.</a:documentation>
+ <value>inline</value>
+ <a:documentation>An inline presentation, usually a comma-delimited list.</a:documentation>
+ </choice>
+ </define>
+ <define name="db.simplelist.type.attribute">
+ <attribute name="type" a:defaultValue="vert">
+ <db:refpurpose>Specifies the type of list presentation.</db:refpurpose>
+ <ref name="db.simplelist.type.enumeration"/>
+ </attribute>
+ </define>
+ <define name="db.simplelist.columns.attribute">
+ <attribute name="columns">
+ <db:refpurpose>Specifies the number of columns for horizontal or vertical presentation</db:refpurpose>
+ <data type="integer"/>
+ </attribute>
+ </define>
+ <define name="db.simplelist.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.simplelist.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.simplelist.type.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.simplelist.columns.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.simplelist">
+ <element name="simplelist">
+ <ref name="db.simplelist.attlist"/>
+ <oneOrMore>
+ <ref name="db.member"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>member</db:refname>
+ <db:refpurpose>An element of a simple list</db:refpurpose>
+ <define name="db.member.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.member.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.member.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.member">
+ <element name="member">
+ <ref name="db.member.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>variablelist</db:refname>
+ <db:refpurpose>A list in which each entry is composed of a set of one or more terms and an associated description</db:refpurpose>
+ <define name="db.variablelist.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.variablelist.termlength.attribute">
+ <attribute name="termlength">
+ <db:refpurpose>Indicates a length beyond which the presentation system may consider a term too long and select an alternate presentation for that term, item, or list</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.variablelist.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.variablelist.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.spacing.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.variablelist.termlength.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.variablelist.info">
+ <ref name="db._info.title.only"/>
+ </define>
+ <define name="db.variablelist">
+ <element name="variablelist">
+ <ref name="db.variablelist.attlist"/>
+ <ref name="db.variablelist.info"/>
+ <zeroOrMore>
+ <ref name="db.all.blocks"/>
+ </zeroOrMore>
+ <oneOrMore>
+ <ref name="db.varlistentry"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>varlistentry</db:refname>
+ <db:refpurpose>A wrapper for a set of terms and the associated description in a variable list</db:refpurpose>
+ <define name="db.varlistentry.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.varlistentry.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.varlistentry.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.varlistentry">
+ <element name="varlistentry">
+ <ref name="db.varlistentry.attlist"/>
+ <oneOrMore>
+ <ref name="db.term"/>
+ </oneOrMore>
+ <ref name="db.listitem"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>term</db:refname>
+ <db:refpurpose>The word or phrase being defined or described in a variable list</db:refpurpose>
+ <define name="db.term.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.term.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.term.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.term">
+ <element name="term">
+ <ref name="db.term.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>example</db:refname>
+ <db:refpurpose>A formal example, with a title</db:refpurpose>
+ <define name="db.example.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.example.label.attribute">
+ <ref name="db.label.attribute"/>
+ </define>
+ <define name="db.example.width.attribute">
+ <ref name="db.width.characters.attribute"/>
+ </define>
+ <define name="db.example.pgwide.attribute">
+ <ref name="db.pgwide.attribute"/>
+ </define>
+ <define name="db.example.floatstyle.attribute">
+ <ref name="db.floatstyle.attribute"/>
+ </define>
+ <define name="db.example.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.example.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.example.label.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.example.floatstyle.attribute"/>
+ </optional>
+ <optional>
+ <choice>
+ <ref name="db.example.width.attribute"/>
+ <ref name="db.example.pgwide.attribute"/>
+ </choice>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.example.info">
+ <ref name="db._info.title.onlyreq"/>
+ </define>
+ <define name="db.example">
+ <element name="example">
+ <ref name="db.example.attlist"/>
+ <ref name="db.example.info"/>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ <optional>
+ <ref name="db.caption"/>
+ </optional>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>informalexample</db:refname>
+ <db:refpurpose>A displayed example without a title</db:refpurpose>
+ <define name="db.informalexample.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.informalexample.width.attribute">
+ <ref name="db.width.characters.attribute"/>
+ </define>
+ <define name="db.informalexample.floatstyle.attribute">
+ <ref name="db.floatstyle.attribute"/>
+ </define>
+ <define name="db.informalexample.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.informalexample.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.informalexample.floatstyle.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.informalexample.width.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.informalexample.info">
+ <ref name="db._info.title.forbidden"/>
+ </define>
+ <define name="db.informalexample">
+ <element name="informalexample">
+ <ref name="db.informalexample.attlist"/>
+ <ref name="db.informalexample.info"/>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ <optional>
+ <ref name="db.caption"/>
+ </optional>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <define name="db.verbatim.inlines">
+ <choice>
+ <ref name="db.all.inlines"/>
+ <ref name="db.lineannotation"/>
+ </choice>
+ </define>
+ <define name="db.verbatim.contentmodel">
+ <ref name="db._info.title.forbidden"/>
+ <choice>
+ <ref name="db.textobject"/>
+ <zeroOrMore>
+ <ref name="db.verbatim.inlines"/>
+ </zeroOrMore>
+ </choice>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>literallayout</db:refname>
+ <db:refpurpose>A block of text in which line breaks and white space are to be reproduced faithfully</db:refpurpose>
+ <define name="db.literallayout.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.literallayout.class.enumeration">
+ <choice>
+ <value>monospaced</value>
+ <a:documentation>The literal layout should be formatted with a monospaced font</a:documentation>
+ <value>normal</value>
+ <a:documentation>The literal layout should be formatted with the current font</a:documentation>
+ </choice>
+ </define>
+ <define name="db.literallayout.class.attribute">
+ <attribute name="class">
+ <db:refpurpose>Specifies the class of literal layout</db:refpurpose>
+ <ref name="db.literallayout.class.enumeration"/>
+ </attribute>
+ </define>
+ <define name="db.literallayout.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.literallayout.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <ref name="db.verbatim.attributes"/>
+ <optional>
+ <ref name="db.literallayout.class.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.literallayout">
+ <element name="literallayout">
+ <ref name="db.literallayout.attlist"/>
+ <ref name="db.verbatim.contentmodel"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>screen</db:refname>
+ <db:refpurpose>Text that a user sees or might see on a computer screen</db:refpurpose>
+ <define name="db.screen.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.screen.width.attribute">
+ <ref name="db.width.characters.attribute"/>
+ </define>
+ <define name="db.screen.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.screen.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <ref name="db.verbatim.attributes"/>
+ <optional>
+ <ref name="db.screen.width.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.screen">
+ <element name="screen">
+ <ref name="db.screen.attlist"/>
+ <ref name="db.verbatim.contentmodel"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>screenshot</db:refname>
+ <db:refpurpose>A representation of what the user sees or might see on a computer screen</db:refpurpose>
+ <define name="db.screenshot.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.screenshot.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.screenshot.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.screenshot.info">
+ <ref name="db._info"/>
+ </define>
+ <define name="db.screenshot">
+ <element name="screenshot">
+ <ref name="db.screenshot.attlist"/>
+ <ref name="db.screenshot.info"/>
+ <ref name="db.mediaobject"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>figure</db:refname>
+ <db:refpurpose>A formal figure, generally an illustration, with a title</db:refpurpose>
+ <define name="db.figure.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.figure.label.attribute">
+ <ref name="db.label.attribute"/>
+ </define>
+ <define name="db.figure.pgwide.attribute">
+ <ref name="db.pgwide.attribute"/>
+ </define>
+ <define name="db.figure.floatstyle.attribute">
+ <ref name="db.floatstyle.attribute"/>
+ </define>
+ <define name="db.figure.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.figure.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.figure.label.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.figure.pgwide.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.figure.floatstyle.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.figure.info">
+ <ref name="db._info.title.onlyreq"/>
+ </define>
+ <define name="db.figure">
+ <element name="figure">
+ <ref name="db.figure.attlist"/>
+ <ref name="db.figure.info"/>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ <optional>
+ <ref name="db.caption"/>
+ </optional>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>informalfigure</db:refname>
+ <db:refpurpose>A untitled figure</db:refpurpose>
+ <define name="db.informalfigure.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.informalfigure.label.attribute">
+ <ref name="db.label.attribute"/>
+ </define>
+ <define name="db.informalfigure.pgwide.attribute">
+ <ref name="db.pgwide.attribute"/>
+ </define>
+ <define name="db.informalfigure.floatstyle.attribute">
+ <ref name="db.floatstyle.attribute"/>
+ </define>
+ <define name="db.informalfigure.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.informalfigure.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.informalfigure.label.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.informalfigure.pgwide.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.informalfigure.floatstyle.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.informalfigure.info">
+ <ref name="db._info.title.forbidden"/>
+ </define>
+ <define name="db.informalfigure">
+ <element name="informalfigure">
+ <ref name="db.informalfigure.attlist"/>
+ <ref name="db.informalfigure.info"/>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ <optional>
+ <ref name="db.caption"/>
+ </optional>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <define name="db.mediaobject.content">
+ <choice>
+ <ref name="db.videoobject"/>
+ <ref name="db.audioobject"/>
+ <ref name="db.imageobject"/>
+ <ref name="db.textobject"/>
+ </choice>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>mediaobject</db:refname>
+ <db:refpurpose>A displayed media object (video, audio, image, etc.)</db:refpurpose>
+ <define name="db.mediaobject.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.mediaobject.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.mediaobject.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.mediaobject.info">
+ <ref name="db._info.title.forbidden"/>
+ </define>
+ <define name="db.mediaobject">
+ <element name="mediaobject">
+ <ref name="db.mediaobject.attlist"/>
+ <ref name="db.mediaobject.info"/>
+ <optional>
+ <ref name="db.alt"/>
+ </optional>
+ <oneOrMore>
+ <ref name="db.mediaobject.content"/>
+ </oneOrMore>
+ <optional>
+ <ref name="db.caption"/>
+ </optional>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>inlinemediaobject</db:refname>
+ <db:refpurpose>An inline media object (video, audio, image, and so on)</db:refpurpose>
+ <define name="db.inlinemediaobject.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.inlinemediaobject.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.inlinemediaobject.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.inlinemediaobject.info">
+ <ref name="db._info.title.forbidden"/>
+ </define>
+ <define name="db.inlinemediaobject">
+ <element name="inlinemediaobject">
+ <ref name="db.inlinemediaobject.attlist"/>
+ <ref name="db.inlinemediaobject.info"/>
+ <optional>
+ <ref name="db.alt"/>
+ </optional>
+ <oneOrMore>
+ <ref name="db.mediaobject.content"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>videoobject</db:refname>
+ <db:refpurpose>A wrapper for video data and its associated meta-information</db:refpurpose>
+ <define name="db.videoobject.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.videoobject.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.videoobject.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.videoobject.info">
+ <ref name="db._info.title.forbidden"/>
+ </define>
+ <define name="db.videoobject">
+ <element name="videoobject">
+ <ref name="db.videoobject.attlist"/>
+ <ref name="db.videoobject.info"/>
+ <ref name="db.videodata"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>audioobject</db:refname>
+ <db:refpurpose>A wrapper for audio data and its associated meta-information</db:refpurpose>
+ <define name="db.audioobject.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.audioobject.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.audioobject.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.audioobject.info">
+ <ref name="db._info.title.forbidden"/>
+ </define>
+ <define name="db.audioobject">
+ <element name="audioobject">
+ <ref name="db.audioobject.attlist"/>
+ <ref name="db.audioobject.info"/>
+ <ref name="db.audiodata"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <define name="db.imageobject.content">
+ <ref name="db.imagedata"/>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>imageobject</db:refname>
+ <db:refpurpose>A wrapper for image data and its associated meta-information</db:refpurpose>
+ <define name="db.imageobject.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.imageobject.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.imageobject.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.imageobject.info">
+ <ref name="db._info.title.forbidden"/>
+ </define>
+ <define name="db.imageobject">
+ <element name="imageobject">
+ <ref name="db.imageobject.attlist"/>
+ <ref name="db.imageobject.info"/>
+ <ref name="db.imageobject.content"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>textobject</db:refname>
+ <db:refpurpose>A wrapper for a text description of an object and its associated meta-information</db:refpurpose>
+ <define name="db.textobject.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.textobject.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.textobject.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.textobject.info">
+ <ref name="db._info.title.forbidden"/>
+ </define>
+ <define name="db.textobject">
+ <element name="textobject">
+ <ref name="db.textobject.attlist"/>
+ <ref name="db.textobject.info"/>
+ <choice>
+ <ref name="db.phrase"/>
+ <ref name="db.textdata"/>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ </choice>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>videodata</db:refname>
+ <db:refpurpose>Pointer to external video data</db:refpurpose>
+ <define name="db.videodata.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.videodata.align.enumeration">
+ <ref name="db.halign.enumeration"/>
+ </define>
+ <define name="db.videodata.align.attribute">
+ <attribute name="align">
+ <db:refpurpose>Specifies the (horizontal) alignment of the video data</db:refpurpose>
+ <ref name="db.videodata.align.enumeration"/>
+ </attribute>
+ </define>
+ <define name="db.videodata.valign.enumeration">
+ <ref name="db.valign.enumeration"/>
+ </define>
+ <define name="db.videodata.valign.attribute">
+ <attribute name="valign">
+ <db:refpurpose>Specifies the vertical alignment of the video data</db:refpurpose>
+ <ref name="db.videodata.valign.enumeration"/>
+ </attribute>
+ </define>
+ <define name="db.videodata.width.attribute">
+ <ref name="db.width.attribute"/>
+ </define>
+ <define name="db.videodata.depth.attribute">
+ <ref name="db.depth.attribute"/>
+ </define>
+ <define name="db.videodata.contentwidth.attribute">
+ <ref name="db.contentwidth.attribute"/>
+ </define>
+ <define name="db.videodata.contentdepth.attribute">
+ <ref name="db.contentdepth.attribute"/>
+ </define>
+ <define name="db.videodata.scalefit.enumeration">
+ <ref name="db.scalefit.enumeration"/>
+ </define>
+ <define name="db.videodata.scalefit.attribute">
+ <attribute name="scalefit">
+ <db:refpurpose>Determines if anamorphic scaling is forbidden</db:refpurpose>
+ <ref name="db.videodata.scalefit.enumeration"/>
+ </attribute>
+ </define>
+ <define name="db.videodata.scale.attribute">
+ <ref name="db.scale.attribute"/>
+ </define>
+ <define name="db.videodata.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.videodata.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.data.attributes"/>
+ <optional>
+ <ref name="db.videodata.align.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.videodata.valign.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.videodata.width.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.videodata.contentwidth.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.videodata.scalefit.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.videodata.scale.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.videodata.depth.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.videodata.contentdepth.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.videodata.info">
+ <ref name="db._info.title.forbidden"/>
+ </define>
+ <define name="db.videodata">
+ <element name="videodata">
+ <ref name="db.videodata.attlist"/>
+ <ref name="db.videodata.info"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>audiodata</db:refname>
+ <db:refpurpose>Pointer to external audio data</db:refpurpose>
+ <define name="db.audiodata.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.audiodata.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.audiodata.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.data.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.audiodata.info">
+ <ref name="db._info.title.forbidden"/>
+ </define>
+ <define name="db.audiodata">
+ <element name="audiodata">
+ <ref name="db.audiodata.attlist"/>
+ <ref name="db.audiodata.info"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>imagedata</db:refname>
+ <db:refpurpose>Pointer to external image data</db:refpurpose>
+ <define name="db.imagedata.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.imagedata.align.enumeration">
+ <ref name="db.halign.enumeration"/>
+ </define>
+ <define name="db.imagedata.align.attribute">
+ <attribute name="align">
+ <db:refpurpose>Specifies the (horizontal) alignment of the image data</db:refpurpose>
+ <ref name="db.imagedata.align.enumeration"/>
+ </attribute>
+ </define>
+ <define name="db.imagedata.valign.enumeration">
+ <ref name="db.valign.enumeration"/>
+ </define>
+ <define name="db.imagedata.valign.attribute">
+ <attribute name="valign">
+ <db:refpurpose>Specifies the vertical alignment of the image data</db:refpurpose>
+ <ref name="db.imagedata.valign.enumeration"/>
+ </attribute>
+ </define>
+ <define name="db.imagedata.width.attribute">
+ <ref name="db.width.attribute"/>
+ </define>
+ <define name="db.imagedata.depth.attribute">
+ <ref name="db.depth.attribute"/>
+ </define>
+ <define name="db.imagedata.contentwidth.attribute">
+ <ref name="db.contentwidth.attribute"/>
+ </define>
+ <define name="db.imagedata.contentdepth.attribute">
+ <ref name="db.contentdepth.attribute"/>
+ </define>
+ <define name="db.imagedata.scalefit.enumeration">
+ <ref name="db.scalefit.enumeration"/>
+ </define>
+ <define name="db.imagedata.scalefit.attribute">
+ <attribute name="scalefit">
+ <db:refpurpose>Determines if anamorphic scaling is forbidden</db:refpurpose>
+ <ref name="db.imagedata.scalefit.enumeration"/>
+ </attribute>
+ </define>
+ <define name="db.imagedata.scale.attribute">
+ <ref name="db.scale.attribute"/>
+ </define>
+ <define name="db.imagedata.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.imagedata.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.data.attributes"/>
+ <optional>
+ <ref name="db.imagedata.align.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.imagedata.valign.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.imagedata.width.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.imagedata.contentwidth.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.imagedata.scalefit.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.imagedata.scale.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.imagedata.depth.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.imagedata.contentdepth.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.imagedata.info">
+ <ref name="db._info.title.forbidden"/>
+ </define>
+ <define name="db.imagedata">
+ <element name="imagedata">
+ <ref name="db.imagedata.attlist"/>
+ <ref name="db.imagedata.info"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>textdata</db:refname>
+ <db:refpurpose>Pointer to external text data</db:refpurpose>
+ <define name="db.textdata.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.textdata.encoding.attribute">
+ <attribute name="encoding">
+ <db:refpurpose>Identifies the encoding of the text in the external file</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.textdata.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.textdata.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.data.attributes"/>
+ <optional>
+ <ref name="db.textdata.encoding.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.textdata.info">
+ <ref name="db._info.title.forbidden"/>
+ </define>
+ <define name="db.textdata">
+ <element name="textdata">
+ <ref name="db.textdata.attlist"/>
+ <ref name="db.textdata.info"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>caption</db:refname>
+ <db:refpurpose>A caption</db:refpurpose>
+ <ctrl:exclude from="db.caption" exclude="db.formal.blocks"/>
+ <ctrl:exclude from="db.caption" exclude="db.sidebar"/>
+ <ctrl:exclude from="db.caption" exclude="db.task"/>
+ <define name="db.caption.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.caption.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.caption.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.caption.info">
+ <ref name="db._info.title.forbidden"/>
+ </define>
+ <define name="db.caption">
+ <element name="caption">
+ <ref name="db.caption.attlist"/>
+ <ref name="db.caption.info"/>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>address</db:refname>
+ <db:refpurpose>A real-world address, generally a postal address</db:refpurpose>
+ <define name="db.address.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.address.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.address.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <ref name="db.verbatim.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.address">
+ <element name="address">
+ <ref name="db.address.attlist"/>
+ <zeroOrMore>
+ <choice>
+ <ref name="db._text"/>
+ <ref name="db.personname"/>
+ <ref name="db.orgname"/>
+ <ref name="db.pob"/>
+ <ref name="db.street"/>
+ <ref name="db.city"/>
+ <ref name="db.state"/>
+ <ref name="db.postcode"/>
+ <ref name="db.country"/>
+ <ref name="db.phone"/>
+ <ref name="db.fax"/>
+ <ref name="db.email"/>
+ <ref name="db.uri"/>
+ <ref name="db.otheraddr"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>street</db:refname>
+ <db:refpurpose>A street address in an address</db:refpurpose>
+ <define name="db.street.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.street.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.street.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.street">
+ <element name="street">
+ <ref name="db.street.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>pob</db:refname>
+ <db:refpurpose>A post office box in an address</db:refpurpose>
+ <define name="db.pob.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.pob.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.pob.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.pob">
+ <element name="pob">
+ <ref name="db.pob.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>postcode</db:refname>
+ <db:refpurpose>A postal code in an address</db:refpurpose>
+ <define name="db.postcode.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.postcode.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.postcode.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.postcode">
+ <element name="postcode">
+ <ref name="db.postcode.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>city</db:refname>
+ <db:refpurpose>The name of a city in an address</db:refpurpose>
+ <define name="db.city.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.city.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.city.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.city">
+ <element name="city">
+ <ref name="db.city.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>state</db:refname>
+ <db:refpurpose>A state or province in an address</db:refpurpose>
+ <define name="db.state.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.state.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.state.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.state">
+ <element name="state">
+ <ref name="db.state.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>country</db:refname>
+ <db:refpurpose>The name of a country</db:refpurpose>
+ <define name="db.country.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.country.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.country.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.country">
+ <element name="country">
+ <ref name="db.country.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>phone</db:refname>
+ <db:refpurpose>A telephone number</db:refpurpose>
+ <define name="db.phone.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.phone.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.phone.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.phone">
+ <element name="phone">
+ <ref name="db.phone.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>fax</db:refname>
+ <db:refpurpose>A fax number</db:refpurpose>
+ <define name="db.fax.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.fax.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.fax.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.fax">
+ <element name="fax">
+ <ref name="db.fax.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>otheraddr</db:refname>
+ <db:refpurpose>Uncategorized information in address</db:refpurpose>
+ <define name="db.otheraddr.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.otheraddr.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.otheraddr.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.otheraddr">
+ <element name="otheraddr">
+ <ref name="db.otheraddr.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>affiliation</db:refname>
+ <db:refpurpose>The institutional affiliation of an individual</db:refpurpose>
+ <define name="db.affiliation.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.affiliation.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.affiliation.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.affiliation">
+ <element name="affiliation">
+ <ref name="db.affiliation.attlist"/>
+ <optional>
+ <ref name="db.shortaffil"/>
+ </optional>
+ <zeroOrMore>
+ <ref name="db.jobtitle"/>
+ </zeroOrMore>
+ <choice>
+ <optional>
+ <ref name="db.org"/>
+ </optional>
+ <group>
+ <optional>
+ <ref name="db.orgname"/>
+ </optional>
+ <zeroOrMore>
+ <ref name="db.orgdiv"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="db.address"/>
+ </zeroOrMore>
+ </group>
+ </choice>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>shortaffil</db:refname>
+ <db:refpurpose>A brief description of an affiliation</db:refpurpose>
+ <define name="db.shortaffil.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.shortaffil.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.shortaffil.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.shortaffil">
+ <element name="shortaffil">
+ <ref name="db.shortaffil.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>jobtitle</db:refname>
+ <db:refpurpose>The title of an individual in an organization</db:refpurpose>
+ <define name="db.jobtitle.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.jobtitle.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.jobtitle.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.jobtitle">
+ <element name="jobtitle">
+ <ref name="db.jobtitle.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>orgname</db:refname>
+ <db:refpurpose>The name of an organization</db:refpurpose>
+ <ctrl:other-attribute name="db.orgname.class.attrib" enum-name="db.orgname.class-enum.attribute" other-name="db.orgname.class-other.attributes"/>
+ <define name="db.orgname.class.enumeration">
+ <choice>
+ <value>consortium</value>
+ <a:documentation>A consortium</a:documentation>
+ <value>corporation</value>
+ <a:documentation>A corporation</a:documentation>
+ <value>informal</value>
+ <a:documentation>An informal organization</a:documentation>
+ <value>nonprofit</value>
+ <a:documentation>A non-profit organization</a:documentation>
+ </choice>
+ </define>
+ <define name="db.orgname.class-enum.attribute">
+ <attribute name="class">
+ <db:refpurpose>Specifies the nature of the organization</db:refpurpose>
+ <ref name="db.orgname.class.enumeration"/>
+ </attribute>
+ </define>
+ <define name="db.orgname.class-other.attributes">
+ <attribute name="class">
+ <db:refpurpose>Specifies the nature of the organization</db:refpurpose>
+ <value>other</value>
+ <a:documentation>Indicates a non-standard organization class</a:documentation>
+ </attribute>
+ <attribute name="otherclass">
+ <db:refpurpose>Identifies the non-standard nature of the organization</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.orgname.class.attribute">
+ <choice>
+ <ref name="db.orgname.class-enum.attribute"/>
+ <ref name="db.orgname.class-other.attributes"/>
+ </choice>
+ </define>
+ <define name="db.orgname.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.orgname.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.orgname.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.orgname.class.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.orgname">
+ <element name="orgname">
+ <ref name="db.orgname.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>orgdiv</db:refname>
+ <db:refpurpose>A division of an organization</db:refpurpose>
+ <define name="db.orgdiv.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.orgdiv.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.orgdiv.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.orgdiv">
+ <element name="orgdiv">
+ <ref name="db.orgdiv.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>artpagenums</db:refname>
+ <db:refpurpose>The page numbers of an article as published</db:refpurpose>
+ <define name="db.artpagenums.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.artpagenums.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.artpagenums.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.artpagenums">
+ <element name="artpagenums">
+ <ref name="db.artpagenums.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>personname</db:refname>
+ <db:refpurpose>The personal name of an individual</db:refpurpose>
+ <define name="db.personname.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.personname.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.personname.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.personname">
+ <element name="personname">
+ <ref name="db.personname.attlist"/>
+ <choice>
+ <ref name="db._text"/>
+ <oneOrMore>
+ <choice>
+ <ref name="db.honorific"/>
+ <ref name="db.firstname"/>
+ <ref name="db.surname"/>
+ <ref name="db.lineage"/>
+ <ref name="db.othername"/>
+ </choice>
+ </oneOrMore>
+ <oneOrMore>
+ <choice>
+ <ref name="db.honorific"/>
+ <ref name="db.givenname"/>
+ <ref name="db.surname"/>
+ <ref name="db.lineage"/>
+ <ref name="db.othername"/>
+ </choice>
+ </oneOrMore>
+ </choice>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <define name="db.person.author.contentmodel">
+ <ref name="db.personname"/>
+ <zeroOrMore>
+ <choice>
+ <ref name="db.personblurb"/>
+ <ref name="db.affiliation"/>
+ <ref name="db.email"/>
+ <ref name="db.uri"/>
+ <ref name="db.address"/>
+ <ref name="db.contrib"/>
+ </choice>
+ </zeroOrMore>
+ </define>
+ <define name="db.org.author.contentmodel">
+ <ref name="db.orgname"/>
+ <zeroOrMore>
+ <choice>
+ <ref name="db.orgdiv"/>
+ <ref name="db.affiliation"/>
+ <ref name="db.email"/>
+ <ref name="db.uri"/>
+ <ref name="db.address"/>
+ <ref name="db.contrib"/>
+ </choice>
+ </zeroOrMore>
+ </define>
+ <define name="db.credit.contentmodel">
+ <choice>
+ <ref name="db.person.author.contentmodel"/>
+ <ref name="db.org.author.contentmodel"/>
+ </choice>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>author</db:refname>
+ <db:refpurpose>The name of an individual author</db:refpurpose>
+ <define name="db.author.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.author.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.author.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.author">
+ <element name="author">
+ <ref name="db.author.attlist"/>
+ <ref name="db.credit.contentmodel"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>authorgroup</db:refname>
+ <db:refpurpose>Wrapper for author information when a document has multiple authors or collaborators</db:refpurpose>
+ <define name="db.authorgroup.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.authorgroup.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.authorgroup.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.authorgroup">
+ <element name="authorgroup">
+ <ref name="db.authorgroup.attlist"/>
+ <oneOrMore>
+ <choice>
+ <ref name="db.author"/>
+ <ref name="db.editor"/>
+ <ref name="db.othercredit"/>
+ </choice>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>collab</db:refname>
+ <db:refpurpose>Identifies a collaborator</db:refpurpose>
+ <define name="db.collab.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.collab.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.collab.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.collab">
+ <element name="collab">
+ <ref name="db.collab.attlist"/>
+ <oneOrMore>
+ <choice>
+ <ref name="db.person"/>
+ <ref name="db.personname"/>
+ <ref name="db.org"/>
+ <ref name="db.orgname"/>
+ </choice>
+ </oneOrMore>
+ <zeroOrMore>
+ <ref name="db.affiliation"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>authorinitials</db:refname>
+ <db:refpurpose>The initials or other short identifier for an author</db:refpurpose>
+ <define name="db.authorinitials.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.authorinitials.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.authorinitials.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.authorinitials">
+ <element name="authorinitials">
+ <ref name="db.authorinitials.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>person</db:refname>
+ <db:refpurpose>A person and associated metadata</db:refpurpose>
+ <define name="db.person.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.person.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.person.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.person">
+ <element name="person">
+ <ref name="db.person.attlist"/>
+ <ref name="db.personname"/>
+ <zeroOrMore>
+ <choice>
+ <ref name="db.address"/>
+ <ref name="db.affiliation"/>
+ <ref name="db.email"/>
+ <ref name="db.uri"/>
+ <ref name="db.personblurb"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>org</db:refname>
+ <db:refpurpose>An organization and associated metadata</db:refpurpose>
+ <define name="db.org.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.org.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.org.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.org">
+ <element name="org">
+ <ref name="db.org.attlist"/>
+ <ref name="db.orgname"/>
+ <zeroOrMore>
+ <choice>
+ <ref name="db.address"/>
+ <ref name="db.affiliation"/>
+ <ref name="db.email"/>
+ <ref name="db.uri"/>
+ <ref name="db.orgdiv"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>confgroup</db:refname>
+ <db:refpurpose>A wrapper for document meta-information about a conference</db:refpurpose>
+ <define name="db.confgroup.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.confgroup.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.confgroup.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.confgroup">
+ <element name="confgroup">
+ <ref name="db.confgroup.attlist"/>
+ <zeroOrMore>
+ <choice>
+ <ref name="db.confdates"/>
+ <ref name="db.conftitle"/>
+ <ref name="db.confnum"/>
+ <ref name="db.confsponsor"/>
+ <ref name="db.address"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>confdates</db:refname>
+ <db:refpurpose>The dates of a conference for which a document was written</db:refpurpose>
+ <define name="db.confdates.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.confdates.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.confdates.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.confdates">
+ <element name="confdates">
+ <ref name="db.confdates.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>conftitle</db:refname>
+ <db:refpurpose>The title of a conference for which a document was written</db:refpurpose>
+ <define name="db.conftitle.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.conftitle.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.conftitle.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.conftitle">
+ <element name="conftitle">
+ <ref name="db.conftitle.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>confnum</db:refname>
+ <db:refpurpose>An identifier, frequently numerical, associated with a conference for which a document was written</db:refpurpose>
+ <define name="db.confnum.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.confnum.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.confnum.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.confnum">
+ <element name="confnum">
+ <ref name="db.confnum.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>confsponsor</db:refname>
+ <db:refpurpose>The sponsor of a conference for which a document was written</db:refpurpose>
+ <define name="db.confsponsor.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.confsponsor.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.confsponsor.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.confsponsor">
+ <element name="confsponsor">
+ <ref name="db.confsponsor.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>contractnum</db:refname>
+ <db:refpurpose>The contract number of a document</db:refpurpose>
+ <define name="db.contractnum.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.contractnum.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.contractnum.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.contractnum">
+ <element name="contractnum">
+ <ref name="db.contractnum.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>contractsponsor</db:refname>
+ <db:refpurpose>The sponsor of a contract</db:refpurpose>
+ <define name="db.contractsponsor.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.contractsponsor.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.contractsponsor.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.contractsponsor">
+ <element name="contractsponsor">
+ <ref name="db.contractsponsor.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>copyright</db:refname>
+ <db:refpurpose>Copyright information about a document</db:refpurpose>
+ <define name="db.copyright.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.copyright.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.copyright.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.copyright">
+ <element name="copyright">
+ <ref name="db.copyright.attlist"/>
+ <oneOrMore>
+ <ref name="db.year"/>
+ </oneOrMore>
+ <zeroOrMore>
+ <ref name="db.holder"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>year</db:refname>
+ <db:refpurpose>The year of publication of a document</db:refpurpose>
+ <define name="db.year.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.year.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.year.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.year">
+ <element name="year">
+ <ref name="db.year.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>holder</db:refname>
+ <db:refpurpose>The name of the individual or organization that holds a copyright</db:refpurpose>
+ <define name="db.holder.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.holder.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.holder.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.holder">
+ <element name="holder">
+ <ref name="db.holder.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <define name="db.cover.contentmodel">
+ <choice>
+ <ref name="db.para.blocks"/>
+ <ref name="db.extension.blocks"/>
+ <ref name="db.list.blocks"/>
+ <ref name="db.informal.blocks"/>
+ <ref name="db.publishing.blocks"/>
+ <ref name="db.graphic.blocks"/>
+ <ref name="db.technical.blocks"/>
+ <ref name="db.verbatim.blocks"/>
+ <ref name="db.bridgehead"/>
+ <ref name="db.remark"/>
+ <ref name="db.revhistory"/>
+ </choice>
+ </define>
+ <div>
+ <db:refname>cover</db:refname>
+ <db:refpurpose>Additional content for the cover of a publication</db:refpurpose>
+ <define name="db.cover.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.cover.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.cover.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.cover">
+ <element name="cover">
+ <ref name="db.cover.attlist"/>
+ <oneOrMore>
+ <ref name="db.cover.contentmodel"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <define name="db.date.contentmodel">
+ <choice>
+ <data type="date"/>
+ <data type="dateTime"/>
+ <data type="gYearMonth"/>
+ <data type="gYear"/>
+ <text/>
+ </choice>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>date</db:refname>
+ <db:refpurpose>The date of publication or revision of a document</db:refpurpose>
+ <define name="db.date.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.date.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.date.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.date">
+ <element name="date">
+ <ref name="db.date.attlist"/>
+ <ref name="db.date.contentmodel"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>edition</db:refname>
+ <db:refpurpose>The name or number of an edition of a document</db:refpurpose>
+ <define name="db.edition.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.edition.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.edition.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.edition">
+ <element name="edition">
+ <ref name="db.edition.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>editor</db:refname>
+ <db:refpurpose>The name of the editor of a document</db:refpurpose>
+ <define name="db.editor.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.editor.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.editor.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.editor">
+ <element name="editor">
+ <ref name="db.editor.attlist"/>
+ <ref name="db.credit.contentmodel"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>biblioid</db:refname>
+ <db:refpurpose>An identifier for a document</db:refpurpose>
+ <define name="db.biblioid.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.biblioid.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.biblioid.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <ref name="db.biblio.class.attribute"/>
+ </interleave>
+ </define>
+ <define name="db.biblioid">
+ <element name="biblioid">
+ <ref name="db.biblioid.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>citebiblioid</db:refname>
+ <db:refpurpose>A citation of a bibliographic identifier</db:refpurpose>
+ <define name="db.citebiblioid.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.citebiblioid.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.citebiblioid.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <ref name="db.biblio.class.attribute"/>
+ </interleave>
+ </define>
+ <define name="db.citebiblioid">
+ <element name="citebiblioid">
+ <ref name="db.citebiblioid.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>bibliosource</db:refname>
+ <db:refpurpose>The source of a document</db:refpurpose>
+ <define name="db.bibliosource.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.bibliosource.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.bibliosource.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <ref name="db.biblio.class.attribute"/>
+ </interleave>
+ </define>
+ <define name="db.bibliosource">
+ <element name="bibliosource">
+ <ref name="db.bibliosource.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>bibliorelation</db:refname>
+ <db:refpurpose>The relationship of a document to another</db:refpurpose>
+ <ctrl:other-attribute name="db.bibliorelation.type.attrib" enum-name="db.bibliorelation.type-enum.attribute" other-name="db.bibliorelation.type-other.attributes"/>
+ <define name="db.bibliorelation.type.enumeration">
+ <choice>
+ <value>hasformat</value>
+ <a:documentation>The described resource pre-existed the referenced resource, which is essentially the same intellectual content presented in another format</a:documentation>
+ <value>haspart</value>
+ <a:documentation>The described resource includes the referenced resource either physically or logically</a:documentation>
+ <value>hasversion</value>
+ <a:documentation>The described resource has a version, edition, or adaptation, namely, the referenced resource</a:documentation>
+ <value>isformatof</value>
+ <a:documentation>The described resource is the same intellectual content of the referenced resource, but presented in another format</a:documentation>
+ <value>ispartof</value>
+ <a:documentation>The described resource is a physical or logical part of the referenced resource</a:documentation>
+ <value>isreferencedby</value>
+ <a:documentation>The described resource is referenced, cited, or otherwise pointed to by the referenced resource</a:documentation>
+ <value>isreplacedby</value>
+ <a:documentation>The described resource is supplanted, displaced, or superceded by the referenced resource</a:documentation>
+ <value>isrequiredby</value>
+ <a:documentation>The described resource is required by the referenced resource, either physically or logically</a:documentation>
+ <value>isversionof</value>
+ <a:documentation>The described resource is a version, edition, or adaptation of the referenced resource; changes in version imply substantive changes in content rather than differences in format</a:documentation>
+ <value>references</value>
+ <a:documentation>The described resource references, cites, or otherwise points to the referenced resource</a:documentation>
+ <value>replaces</value>
+ <a:documentation>The described resource supplants, displaces, or supersedes the referenced resource</a:documentation>
+ <value>requires</value>
+ <a:documentation>The described resource requires the referenced resource to support its function, delivery, or coherence of content</a:documentation>
+ </choice>
+ </define>
+ <define name="db.bibliorelation.type-enum.attribute">
+ <optional>
+ <attribute name="type">
+ <db:refpurpose>Identifies the type of relationship</db:refpurpose>
+ <ref name="db.bibliorelation.type.enumeration"/>
+ </attribute>
+ </optional>
+ </define>
+ <define name="db.bibliorelation.type-other.attributes">
+ <optional>
+ <attribute name="type">
+ <db:refpurpose>Identifies the type of relationship</db:refpurpose>
+ <value>othertype</value>
+ <a:documentation>The described resource has a non-standard relationship with the referenced resource</a:documentation>
+ </attribute>
+ </optional>
+ <attribute name="othertype">
+ <db:refpurpose>A keyword that identififes the type of the non-standard relationship</db:refpurpose>
+ <data type="NMTOKEN"/>
+ </attribute>
+ </define>
+ <define name="db.bibliorelation.type.attribute">
+ <choice>
+ <ref name="db.bibliorelation.type-enum.attribute"/>
+ <ref name="db.bibliorelation.type-other.attributes"/>
+ </choice>
+ </define>
+ <define name="db.bibliorelation.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.bibliorelation.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.bibliorelation.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <ref name="db.biblio.class.attribute"/>
+ <ref name="db.bibliorelation.type.attribute"/>
+ </interleave>
+ </define>
+ <define name="db.bibliorelation">
+ <element name="bibliorelation">
+ <ref name="db.bibliorelation.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>bibliocoverage</db:refname>
+ <db:refpurpose>The spatial or temporal coverage of a document</db:refpurpose>
+ <ctrl:other-attribute name="db.bibliocoverage.spatial.attrib" enum-name="db.bibliocoverage.spatial-enum.attribute" other-name="db.bibliocoverage.spatial-other.attributes"/>
+ <define name="db.bibliocoverage.spacial.enumeration">
+ <choice>
+ <value>dcmipoint</value>
+ <a:documentation>The DCMI Point identifies a point in space using its geographic coordinates</a:documentation>
+ <value>iso3166</value>
+ <a:documentation>ISO 3166 Codes for the representation of names of countries</a:documentation>
+ <value>dcmibox</value>
+ <a:documentation>The DCMI Box identifies a region of space using its geographic limits</a:documentation>
+ <value>tgn</value>
+ <a:documentation>The Getty Thesaurus of Geographic Names</a:documentation>
+ </choice>
+ </define>
+ <define name="db.bibliocoverage.spatial-enum.attribute">
+ <optional>
+ <attribute name="spatial">
+ <db:refpurpose>Specifies the type of spatial coverage</db:refpurpose>
+ <ref name="db.bibliocoverage.spacial.enumeration"/>
+ </attribute>
+ </optional>
+ </define>
+ <define name="db.bibliocoverage.spatial-other.attributes">
+ <optional>
+ <attribute name="spatial">
+ <db:refpurpose>Specifies the type of spatial coverage</db:refpurpose>
+ <value>otherspatial</value>
+ <a:documentation>Identifies a non-standard type of coverage</a:documentation>
+ </attribute>
+ </optional>
+ <attribute name="otherspatial">
+ <db:refpurpose>A keyword that identifies the type of non-standard coverage</db:refpurpose>
+ <data type="NMTOKEN"/>
+ </attribute>
+ </define>
+ <define name="db.bibliocoverage.spatial.attribute">
+ <choice>
+ <ref name="db.bibliocoverage.spatial-enum.attribute"/>
+ <ref name="db.bibliocoverage.spatial-other.attributes"/>
+ </choice>
+ </define>
+ <ctrl:other-attribute name="db.bibliocoverage.temporal.attrib" enum-name="db.bibliocoverage.temporal-enum.attribute" other-name="db.bibliocoverage.temporal-other.attributes"/>
+ <define name="db.bibliocoverage.temporal.enumeration">
+ <choice>
+ <value>dcmiperiod</value>
+ <a:documentation>A specification of the limits of a time interval</a:documentation>
+ <value>w3c-dtf</value>
+ <a:documentation>W3C Encoding rules for dates and times—a profile based on ISO 8601</a:documentation>
+ </choice>
+ </define>
+ <define name="db.bibliocoverage.temporal-enum.attribute">
+ <optional>
+ <attribute name="temporal">
+ <db:refpurpose>Specifies the type of temporal coverage</db:refpurpose>
+ <ref name="db.bibliocoverage.temporal.enumeration"/>
+ </attribute>
+ </optional>
+ </define>
+ <define name="db.bibliocoverage.temporal-other.attributes">
+ <optional>
+ <attribute name="temporal">
+ <db:refpurpose>Specifies the type of temporal coverage</db:refpurpose>
+ <value>othertemporal</value>
+ <a:documentation>Specifies a non-standard type of coverage</a:documentation>
+ </attribute>
+ </optional>
+ <attribute name="othertemporal">
+ <db:refpurpose>A keyword that identifies the type of non-standard coverage</db:refpurpose>
+ <data type="NMTOKEN"/>
+ </attribute>
+ </define>
+ <define name="db.bibliocoverage.temporal.attribute">
+ <choice>
+ <ref name="db.bibliocoverage.temporal-enum.attribute"/>
+ <ref name="db.bibliocoverage.temporal-other.attributes"/>
+ </choice>
+ </define>
+ <define name="db.bibliocoverage.coverage.attrib">
+ <interleave>
+ <ref name="db.bibliocoverage.spatial.attribute"/>
+ <ref name="db.bibliocoverage.temporal.attribute"/>
+ </interleave>
+ </define>
+ <define name="db.bibliocoverage.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.bibliocoverage.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.bibliocoverage.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <ref name="db.bibliocoverage.coverage.attrib"/>
+ </interleave>
+ </define>
+ <define name="db.bibliocoverage">
+ <element name="bibliocoverage">
+ <ref name="db.bibliocoverage.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>legalnotice</db:refname>
+ <db:refpurpose>A statement of legal obligations or requirements</db:refpurpose>
+ <define name="db.legalnotice.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.legalnotice.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.legalnotice.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.legalnotice.info">
+ <ref name="db._info.title.only"/>
+ </define>
+ <define name="db.legalnotice">
+ <element name="legalnotice">
+ <ref name="db.legalnotice.attlist"/>
+ <ref name="db.legalnotice.info"/>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>othercredit</db:refname>
+ <db:refpurpose>A person or entity, other than an author or editor, credited in a document</db:refpurpose>
+ <ctrl:other-attribute name="db.othercredit.class.attribute" enum-name="db.othercredit.class-enum.attribute" other-name="db.othercredit.class-other.attributes"/>
+ <define name="db.othercredit.class.enumeration">
+ <choice>
+ <value>copyeditor</value>
+ <a:documentation>A copy editor</a:documentation>
+ <value>graphicdesigner</value>
+ <a:documentation>A graphic designer</a:documentation>
+ <value>other</value>
+ <a:documentation>Some other contributor</a:documentation>
+ <value>productioneditor</value>
+ <a:documentation>A production editor</a:documentation>
+ <value>technicaleditor</value>
+ <a:documentation>A technical editor</a:documentation>
+ <value>translator</value>
+ <a:documentation>A translator</a:documentation>
+ <value>indexer</value>
+ <a:documentation>An indexer</a:documentation>
+ <value>proofreader</value>
+ <a:documentation>A proof-reader</a:documentation>
+ <value>coverdesigner</value>
+ <a:documentation>A cover designer</a:documentation>
+ <value>interiordesigner</value>
+ <a:documentation>An interior designer</a:documentation>
+ <value>illustrator</value>
+ <a:documentation>An illustrator</a:documentation>
+ <value>reviewer</value>
+ <a:documentation>A reviewer</a:documentation>
+ <value>typesetter</value>
+ <a:documentation>A typesetter</a:documentation>
+ <value>conversion</value>
+ <a:documentation>A converter (a persons responsible for conversion, not an application)</a:documentation>
+ </choice>
+ </define>
+ <define name="db.othercredit.class-enum.attribute">
+ <optional>
+ <attribute name="class">
+ <db:refpurpose>Identifies the nature of the contributor</db:refpurpose>
+ <ref name="db.othercredit.class.enumeration"/>
+ </attribute>
+ </optional>
+ </define>
+ <define name="db.othercredit.class-other.attribute">
+ <attribute name="otherclass">
+ <db:refpurpose>Identifies the nature of the non-standard contribution</db:refpurpose>
+ <data type="NMTOKEN"/>
+ </attribute>
+ </define>
+ <define name="db.othercredit.class-other.attributes">
+ <interleave>
+ <attribute name="class">
+ <db:refpurpose>Identifies the nature of the contributor</db:refpurpose>
+ <value>other</value>
+ <a:documentation>Identifies a non-standard contribution</a:documentation>
+ </attribute>
+ <ref name="db.othercredit.class-other.attribute"/>
+ </interleave>
+ </define>
+ <define name="db.othercredit.class.attribute">
+ <choice>
+ <ref name="db.othercredit.class-enum.attribute"/>
+ <ref name="db.othercredit.class-other.attributes"/>
+ </choice>
+ </define>
+ <define name="db.othercredit.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.othercredit.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.othercredit.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <ref name="db.othercredit.class.attribute"/>
+ </interleave>
+ </define>
+ <define name="db.othercredit">
+ <element name="othercredit">
+ <ref name="db.othercredit.attlist"/>
+ <ref name="db.credit.contentmodel"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>pagenums</db:refname>
+ <db:refpurpose>The numbers of the pages in a book, for use in a bibliographic entry</db:refpurpose>
+ <define name="db.pagenums.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.pagenums.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.pagenums.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.pagenums">
+ <element name="pagenums">
+ <ref name="db.pagenums.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>contrib</db:refname>
+ <db:refpurpose>A summary of the contributions made to a document by a credited source</db:refpurpose>
+ <define name="db.contrib.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.contrib.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.contrib.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.contrib">
+ <element name="contrib">
+ <ref name="db.contrib.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>honorific</db:refname>
+ <db:refpurpose>The title of a person</db:refpurpose>
+ <define name="db.honorific.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.honorific.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.honorific.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.honorific">
+ <element name="honorific">
+ <ref name="db.honorific.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>firstname</db:refname>
+ <db:refpurpose>A given name of a person</db:refpurpose>
+ <define name="db.firstname.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.firstname.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.firstname.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.firstname">
+ <element name="firstname">
+ <ref name="db.firstname.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>givenname</db:refname>
+ <db:refpurpose>The given name of a person</db:refpurpose>
+ <define name="db.givenname.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.givenname.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.givenname.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.givenname">
+ <element name="givenname">
+ <ref name="db.givenname.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>surname</db:refname>
+ <db:refpurpose>An inherited or family name; in western cultures the last name</db:refpurpose>
+ <define name="db.surname.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.surname.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.surname.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.surname">
+ <element name="surname">
+ <ref name="db.surname.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>lineage</db:refname>
+ <db:refpurpose>The portion of a person's name indicating a relationship to ancestors</db:refpurpose>
+ <define name="db.lineage.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.lineage.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.lineage.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.lineage">
+ <element name="lineage">
+ <ref name="db.lineage.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>othername</db:refname>
+ <db:refpurpose>A component of a person's name that is not a first name, surname, or lineage</db:refpurpose>
+ <define name="db.othername.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.othername.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.othername.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.othername">
+ <element name="othername">
+ <ref name="db.othername.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>printhistory</db:refname>
+ <db:refpurpose>The printing history of a document</db:refpurpose>
+ <define name="db.printhistory.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.printhistory.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.printhistory.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.printhistory">
+ <element name="printhistory">
+ <ref name="db.printhistory.attlist"/>
+ <oneOrMore>
+ <ref name="db.para.blocks"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>pubdate</db:refname>
+ <db:refpurpose>The date of publication of a document</db:refpurpose>
+ <define name="db.pubdate.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.pubdate.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.pubdate.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.pubdate">
+ <element name="pubdate">
+ <ref name="db.pubdate.attlist"/>
+ <ref name="db.date.contentmodel"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>publisher</db:refname>
+ <db:refpurpose>The publisher of a document</db:refpurpose>
+ <define name="db.publisher.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.publisher.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.publisher.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.publisher">
+ <element name="publisher">
+ <ref name="db.publisher.attlist"/>
+ <ref name="db.publishername"/>
+ <zeroOrMore>
+ <ref name="db.address"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>publishername</db:refname>
+ <db:refpurpose>The name of the publisher of a document</db:refpurpose>
+ <define name="db.publishername.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.publishername.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.publishername.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.publishername">
+ <element name="publishername">
+ <ref name="db.publishername.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>releaseinfo</db:refname>
+ <db:refpurpose>Information about a particular release of a document</db:refpurpose>
+ <define name="db.releaseinfo.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.releaseinfo.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.releaseinfo.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.releaseinfo">
+ <element name="releaseinfo">
+ <ref name="db.releaseinfo.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>revhistory</db:refname>
+ <db:refpurpose>A history of the revisions to a document</db:refpurpose>
+ <define name="db.revhistory.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.revhistory.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.revhistory.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.revhistory.info">
+ <ref name="db._info.title.only"/>
+ </define>
+ <define name="db.revhistory">
+ <element name="revhistory">
+ <ref name="db.revhistory.attlist"/>
+ <ref name="db.revhistory.info"/>
+ <oneOrMore>
+ <ref name="db.revision"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>revision</db:refname>
+ <db:refpurpose>An entry describing a single revision in the history of the revisions to a document</db:refpurpose>
+ <define name="db.revision.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.revision.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.revision.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.revision">
+ <element name="revision">
+ <ref name="db.revision.attlist"/>
+ <optional>
+ <ref name="db.revnumber"/>
+ </optional>
+ <ref name="db.date"/>
+ <zeroOrMore>
+ <choice>
+ <ref name="db.authorinitials"/>
+ <ref name="db.author"/>
+ </choice>
+ </zeroOrMore>
+ <optional>
+ <choice>
+ <ref name="db.revremark"/>
+ <ref name="db.revdescription"/>
+ </choice>
+ </optional>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>revnumber</db:refname>
+ <db:refpurpose>A document revision number</db:refpurpose>
+ <define name="db.revnumber.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.revnumber.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.revnumber.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.revnumber">
+ <element name="revnumber">
+ <ref name="db.revnumber.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>revremark</db:refname>
+ <db:refpurpose>A description of a revision to a document</db:refpurpose>
+ <define name="db.revremark.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.revremark.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.revremark.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.revremark">
+ <element name="revremark">
+ <ref name="db.revremark.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>revdescription</db:refname>
+ <db:refpurpose>A extended description of a revision to a document</db:refpurpose>
+ <define name="db.revdescription.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.revdescription.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.revdescription.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.revdescription">
+ <element name="revdescription">
+ <ref name="db.revdescription.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.blocks"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>seriesvolnums</db:refname>
+ <db:refpurpose>Numbers of the volumes in a series of books</db:refpurpose>
+ <define name="db.seriesvolnums.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.seriesvolnums.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.seriesvolnums.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.seriesvolnums">
+ <element name="seriesvolnums">
+ <ref name="db.seriesvolnums.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>volumenum</db:refname>
+ <db:refpurpose>The volume number of a document in a set (as of books in a set or articles in a journal)</db:refpurpose>
+ <define name="db.volumenum.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.volumenum.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.volumenum.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.volumenum">
+ <element name="volumenum">
+ <ref name="db.volumenum.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>issuenum</db:refname>
+ <db:refpurpose>The number of an issue of a journal</db:refpurpose>
+ <define name="db.issuenum.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.issuenum.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.issuenum.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.issuenum">
+ <element name="issuenum">
+ <ref name="db.issuenum.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>package</db:refname>
+ <db:refpurpose>A software or application package</db:refpurpose>
+ <define name="db.package.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.package.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.package.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.package">
+ <element name="package">
+ <ref name="db.package.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>email</db:refname>
+ <db:refpurpose>An email address</db:refpurpose>
+ <define name="db.email.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.email.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.email.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.email">
+ <element name="email">
+ <ref name="db.email.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>lineannotation</db:refname>
+ <db:refpurpose>A comment on a line in a verbatim listing</db:refpurpose>
+ <define name="db.lineannotation.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.lineannotation.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.lineannotation.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.lineannotation">
+ <element name="lineannotation">
+ <ref name="db.lineannotation.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>parameter</db:refname>
+ <db:refpurpose>A value or a symbolic reference to a value</db:refpurpose>
+ <define name="db.parameter.class.enumeration">
+ <choice>
+ <value>command</value>
+ <a:documentation>A command</a:documentation>
+ <value>function</value>
+ <a:documentation>A function</a:documentation>
+ <value>option</value>
+ <a:documentation>An option</a:documentation>
+ </choice>
+ </define>
+ <define name="db.parameter.class.attribute">
+ <attribute name="class">
+ <db:refpurpose>Identifies the class of parameter</db:refpurpose>
+ <ref name="db.parameter.class.enumeration"/>
+ </attribute>
+ </define>
+ <define name="db.parameter.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.parameter.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.parameter.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.parameter.class.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.parameter">
+ <element name="parameter">
+ <ref name="db.parameter.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <define name="db.replaceable.inlines">
+ <ref name="db._text"/>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>replaceable</db:refname>
+ <db:refpurpose>Content that may or must be replaced by the user</db:refpurpose>
+ <define name="db.replaceable.class.enumeration">
+ <choice>
+ <value>command</value>
+ <a:documentation>A command</a:documentation>
+ <value>function</value>
+ <a:documentation>A function</a:documentation>
+ <value>option</value>
+ <a:documentation>An option</a:documentation>
+ <value>parameter</value>
+ <a:documentation>A parameter</a:documentation>
+ </choice>
+ </define>
+ <define name="db.replaceable.class.attribute">
+ <attribute name="class">
+ <db:refpurpose>Identifies the nature of the replaceable text</db:refpurpose>
+ <ref name="db.replaceable.class.enumeration"/>
+ </attribute>
+ </define>
+ <define name="db.replaceable.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.replaceable.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.replaceable.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.replaceable.class.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.replaceable">
+ <element name="replaceable">
+ <ref name="db.replaceable.attlist"/>
+ <zeroOrMore>
+ <ref name="db.replaceable.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>uri</db:refname>
+ <db:refpurpose>A Uniform Resource Identifier</db:refpurpose>
+ <define name="db.uri.type.attribute">
+ <optional>
+ <attribute name="type">
+ <db:refpurpose>Identifies the type of URI specified</db:refpurpose>
+ </attribute>
+ </optional>
+ </define>
+ <define name="db.uri.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.uri.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.uri.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <ref name="db.uri.type.attribute"/>
+ </interleave>
+ </define>
+ <define name="db.uri">
+ <element name="uri">
+ <ref name="db.uri.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>abbrev</db:refname>
+ <db:refpurpose>An abbreviation, especially one followed by a period</db:refpurpose>
+ <define name="db.abbrev.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.abbrev.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.abbrev.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.abbrev">
+ <element name="abbrev">
+ <ref name="db.abbrev.attlist"/>
+ <zeroOrMore>
+ <choice>
+ <ref name="db._text"/>
+ <ref name="db.superscript"/>
+ <ref name="db.subscript"/>
+ <ref name="db.trademark"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>acronym</db:refname>
+ <db:refpurpose>An often pronounceable word made from the initial (or selected) letters of a name or phrase</db:refpurpose>
+ <define name="db.acronym.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.acronym.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.acronym.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.acronym">
+ <element name="acronym">
+ <ref name="db.acronym.attlist"/>
+ <zeroOrMore>
+ <choice>
+ <ref name="db._text"/>
+ <ref name="db.superscript"/>
+ <ref name="db.subscript"/>
+ <ref name="db.trademark"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>citation</db:refname>
+ <db:refpurpose>An inline bibliographic reference to another published work</db:refpurpose>
+ <define name="db.citation.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.citation.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.citation.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.citation">
+ <element name="citation">
+ <ref name="db.citation.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>citerefentry</db:refname>
+ <db:refpurpose>A citation to a reference page</db:refpurpose>
+ <define name="db.citerefentry.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.citerefentry.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.citerefentry.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.citerefentry">
+ <element name="citerefentry">
+ <ref name="db.citerefentry.attlist"/>
+ <ref name="db.refentrytitle"/>
+ <optional>
+ <ref name="db.manvolnum"/>
+ </optional>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>refentrytitle</db:refname>
+ <db:refpurpose>The title of a reference page</db:refpurpose>
+ <define name="db.refentrytitle.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.refentrytitle.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.refentrytitle.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.refentrytitle">
+ <element name="refentrytitle">
+ <ref name="db.refentrytitle.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>manvolnum</db:refname>
+ <db:refpurpose>A reference volume number</db:refpurpose>
+ <define name="db.manvolnum.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.manvolnum.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.manvolnum.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.manvolnum">
+ <element name="manvolnum">
+ <ref name="db.manvolnum.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>citetitle</db:refname>
+ <db:refpurpose>The title of a cited work</db:refpurpose>
+ <define name="db.citetitle.pubwork.enumeration">
+ <choice>
+ <value>article</value>
+ <a:documentation>An article</a:documentation>
+ <value>bbs</value>
+ <a:documentation>A bulletin board system</a:documentation>
+ <value>book</value>
+ <a:documentation>A book</a:documentation>
+ <value>cdrom</value>
+ <a:documentation>A CD-ROM</a:documentation>
+ <value>chapter</value>
+ <a:documentation>A chapter (as of a book)</a:documentation>
+ <value>dvd</value>
+ <a:documentation>A DVD</a:documentation>
+ <value>emailmessage</value>
+ <a:documentation>An email message</a:documentation>
+ <value>gopher</value>
+ <a:documentation>A gopher page</a:documentation>
+ <value>journal</value>
+ <a:documentation>A journal</a:documentation>
+ <value>manuscript</value>
+ <a:documentation>A manuscript</a:documentation>
+ <value>newsposting</value>
+ <a:documentation>A posting to a newsgroup</a:documentation>
+ <value>part</value>
+ <a:documentation>A part (as of a book)</a:documentation>
+ <value>refentry</value>
+ <a:documentation>A reference entry</a:documentation>
+ <value>section</value>
+ <a:documentation>A section (as of a book or article)</a:documentation>
+ <value>series</value>
+ <a:documentation>A series</a:documentation>
+ <value>set</value>
+ <a:documentation>A set (as of books)</a:documentation>
+ <value>webpage</value>
+ <a:documentation>A web page</a:documentation>
+ <value>wiki</value>
+ <a:documentation>A wiki page</a:documentation>
+ </choice>
+ </define>
+ <define name="db.citetitle.pubwork.attribute">
+ <attribute name="pubwork">
+ <db:refpurpose>Identifies the nature of the publication being cited</db:refpurpose>
+ <ref name="db.citetitle.pubwork.enumeration"/>
+ </attribute>
+ </define>
+ <define name="db.citetitle.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.citetitle.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.citetitle.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.citetitle.pubwork.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.citetitle">
+ <element name="citetitle">
+ <ref name="db.citetitle.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>emphasis</db:refname>
+ <db:refpurpose>Emphasized text</db:refpurpose>
+ <define name="db.emphasis.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.emphasis.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.emphasis.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.emphasis">
+ <element name="emphasis">
+ <ref name="db.emphasis.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>emphasis</db:refname>
+ <db:refpurpose>A limited span of emphasized text</db:refpurpose>
+ <define name="db._emphasis">
+ <element name="emphasis">
+ <ref name="db.emphasis.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>foreignphrase</db:refname>
+ <db:refpurpose>A word or phrase in a language other than the primary language of the document</db:refpurpose>
+ <define name="db.foreignphrase.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.foreignphrase.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.foreignphrase.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.foreignphrase">
+ <element name="foreignphrase">
+ <ref name="db.foreignphrase.attlist"/>
+ <zeroOrMore>
+ <choice>
+ <text/>
+ <ref name="db.general.inlines"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>foreignphrase</db:refname>
+ <db:refpurpose>A limited word or phrase in a language other than the primary language of the document</db:refpurpose>
+ <define name="db._foreignphrase.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db._foreignphrase.attlist">
+ <interleave>
+ <optional>
+ <ref name="db._foreignphrase.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db._foreignphrase">
+ <element name="foreignphrase">
+ <ref name="db._foreignphrase.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>phrase</db:refname>
+ <db:refpurpose>A span of text</db:refpurpose>
+ <define name="db.phrase.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.phrase.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.phrase.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.phrase">
+ <element name="phrase">
+ <ref name="db.phrase.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>phrase</db:refname>
+ <db:refpurpose>A limited span of text</db:refpurpose>
+ <define name="db._phrase">
+ <element name="phrase">
+ <ref name="db.phrase.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>quote</db:refname>
+ <db:refpurpose>An inline quotation</db:refpurpose>
+ <define name="db.quote.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.quote.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.quote.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.quote">
+ <element name="quote">
+ <ref name="db.quote.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>quote</db:refname>
+ <db:refpurpose>A limited inline quotation</db:refpurpose>
+ <define name="db._quote.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db._quote.attlist">
+ <interleave>
+ <optional>
+ <ref name="db._quote.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db._quote">
+ <element name="quote">
+ <ref name="db._quote.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>subscript</db:refname>
+ <db:refpurpose>A subscript (as in H<db:subscript>2</db:subscript>
+O, the molecular formula for water)</db:refpurpose>
+ <define name="db.subscript.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.subscript.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.subscript.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.subscript">
+ <element name="subscript">
+ <ref name="db.subscript.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>superscript</db:refname>
+ <db:refpurpose>A superscript (as in x<db:superscript>2</db:superscript>
+, the mathematical notation for x multiplied by itself)</db:refpurpose>
+ <define name="db.superscript.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.superscript.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.superscript.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.superscript">
+ <element name="superscript">
+ <ref name="db.superscript.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>trademark</db:refname>
+ <db:refpurpose>A trademark</db:refpurpose>
+ <define name="db.trademark.class.enumeration">
+ <choice>
+ <value>copyright</value>
+ <a:documentation>A copyright</a:documentation>
+ <value>registered</value>
+ <a:documentation>A registered copyright</a:documentation>
+ <value>service</value>
+ <a:documentation>A service</a:documentation>
+ <value>trade</value>
+ <a:documentation>A trademark</a:documentation>
+ </choice>
+ </define>
+ <define name="db.trademark.class.attribute">
+ <attribute name="class">
+ <db:refpurpose>Identifies the class of trade mark</db:refpurpose>
+ <ref name="db.trademark.class.enumeration"/>
+ </attribute>
+ </define>
+ <define name="db.trademark.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.trademark.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.trademark.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.trademark.class.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.trademark">
+ <element name="trademark">
+ <ref name="db.trademark.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>wordasword</db:refname>
+ <db:refpurpose>A word meant specifically as a word and not representing anything else</db:refpurpose>
+ <define name="db.wordasword.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.wordasword.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.wordasword.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.wordasword">
+ <element name="wordasword">
+ <ref name="db.wordasword.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>footnoteref</db:refname>
+ <db:refpurpose>A cross reference to a footnote (a footnote mark)</db:refpurpose>
+ <define name="db.footnoteref.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.footnoteref.label.attribute">
+ <ref name="db.label.attribute"/>
+ </define>
+ <define name="db.footnoteref.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.footnoteref.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.linkend.attribute"/>
+ <optional>
+ <ref name="db.footnoteref.label.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.footnoteref">
+ <element name="footnoteref">
+ <s:pattern name="Footnote reference type constraint">
+ <s:rule context="db:footnoteref">
+ <s:assert test="local-name(//*[@xml:id=current()/@linkend]) = 'footnote' and namespace-uri(//*[@xml:id=current()/@linkend]) = 'http://docbook.org/ns/docbook'">@linkend on footnoteref must point to a footnote.</s:assert>
+ </s:rule>
+ </s:pattern>
+ <ref name="db.footnoteref.attlist"/>
+ <empty/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>xref</db:refname>
+ <db:refpurpose>A cross reference to another part of the document</db:refpurpose>
+ <define name="db.xref.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.xref.xrefstyle.attribute">
+ <ref name="db.xrefstyle.attribute"/>
+ </define>
+ <define name="db.xref.endterm.attribute">
+ <ref name="db.endterm.attribute"/>
+ </define>
+ <define name="db.xref.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.xref.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.req.linking.attributes"/>
+ <optional>
+ <ref name="db.xref.xrefstyle.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.xref.endterm.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.xref">
+ <element name="xref">
+ <ref name="db.xref.attlist"/>
+ <empty/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>link</db:refname>
+ <db:refpurpose>A hypertext link</db:refpurpose>
+ <define name="db.link.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.link.xrefstyle.attribute">
+ <ref name="db.xrefstyle.attribute"/>
+ </define>
+ <define name="db.link.endterm.attribute">
+ <ref name="db.endterm.attribute"/>
+ </define>
+ <define name="db.link.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.link.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.req.linking.attributes"/>
+ <optional>
+ <ref name="db.link.xrefstyle.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.link.endterm.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.link">
+ <element name="link">
+ <ref name="db.link.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>olink</db:refname>
+ <db:refpurpose>A link that addresses its target indirectly</db:refpurpose>
+ <define name="db.olink.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.olink.xrefstyle.attribute">
+ <ref name="db.xrefstyle.attribute"/>
+ </define>
+ <define name="db.olink.localinfo.attribute">
+ <attribute name="localinfo">
+ <db:refpurpose>Holds additional information that may be used by the application when resolving the link</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.olink.targetdoc.attribute">
+ <attribute name="targetdoc">
+ <db:refpurpose>Specifies the URI of the document in which the link target appears</db:refpurpose>
+ <data type="anyURI"/>
+ </attribute>
+ </define>
+ <define name="db.olink.targetptr.attribute">
+ <attribute name="targetptr">
+ <db:refpurpose>Specifies the location of the link target in the document</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.olink.type.attribute">
+ <attribute name="type">
+ <db:refpurpose>Identifies application-specific customization of the link behavior</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.olink.attlist">
+ <interleave>
+ <ref name="db.common.attributes"/>
+ <optional>
+ <ref name="db.olink.targetdoc.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.olink.role.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.olink.xrefstyle.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.olink.localinfo.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.olink.targetptr.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.olink.type.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.olink">
+ <element name="olink">
+ <ref name="db.olink.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>anchor</db:refname>
+ <db:refpurpose>A spot in the document</db:refpurpose>
+ <define name="db.anchor.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.anchor.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.anchor.role.attribute"/>
+ </optional>
+ <ref name="db.common.idreq.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.anchor">
+ <element name="anchor">
+ <ref name="db.anchor.attlist"/>
+ <empty/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>alt</db:refname>
+ <db:refpurpose>A text-only annotation, often used for accessibility</db:refpurpose>
+ <define name="db.alt.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.alt.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.alt.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.alt">
+ <element name="alt">
+ <ref name="db.alt.attlist"/>
+ <zeroOrMore>
+ <choice>
+ <text/>
+ <ref name="db.inlinemediaobject"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+</grammar>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/product.rng b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/product.rng
new file mode 100644
index 000000000..443544578
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/product.rng
@@ -0,0 +1,250 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: pool.rnc 7466 2007-09-27 14:03:55Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<grammar ns="http://docbook.org/ns/docbook" xmlns:db="http://docbook.org/ns/docbook" xmlns:s="http://purl.oclc.org/dsdl/schematron" xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0" xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/" xmlns="http://relaxng.org/ns/structure/1.0">
+ <define name="db.info.elements" combine="choice">
+ <choice>
+ <ref name="db.productname"/>
+ <ref name="db.productnumber"/>
+ </choice>
+ </define>
+ <define name="db.product.inlines" combine="choice">
+ <choice>
+ <ref name="db.productnumber"/>
+ <ref name="db.productname"/>
+ <ref name="db.database"/>
+ <ref name="db.application"/>
+ <ref name="db.hardware"/>
+ </choice>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>productname</db:refname>
+ <db:refpurpose>The formal name of a product</db:refpurpose>
+ <define name="db.productname.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.productname.class.enumeration">
+ <choice>
+ <value>copyright</value>
+ <a:documentation>A name with a copyright</a:documentation>
+ <value>registered</value>
+ <a:documentation>A name with a registered copyright</a:documentation>
+ <value>service</value>
+ <a:documentation>A name of a service</a:documentation>
+ <value>trade</value>
+ <a:documentation>A name which is trademarked</a:documentation>
+ </choice>
+ </define>
+ <define name="db.productname.class.attribute">
+ <attribute name="class">
+ <db:refpurpose>Specifies the class of product name</db:refpurpose>
+ <ref name="db.productname.class.enumeration"/>
+ </attribute>
+ </define>
+ <define name="db.productname.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.productname.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.productname.class.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.productname">
+ <element name="productname">
+ <ref name="db.productname.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>productnumber</db:refname>
+ <db:refpurpose>A number assigned to a product</db:refpurpose>
+ <define name="db.productnumber.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.productnumber.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.productnumber.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.productnumber">
+ <element name="productnumber">
+ <ref name="db.productnumber.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>database</db:refname>
+ <db:refpurpose>The name of a database, or part of a database</db:refpurpose>
+ <define name="db.database.class.enumeration">
+ <choice>
+ <value>altkey</value>
+ <a:documentation>An alternate or secondary key</a:documentation>
+ <value>constraint</value>
+ <a:documentation>A constraint</a:documentation>
+ <value>datatype</value>
+ <a:documentation>A data type</a:documentation>
+ <value>field</value>
+ <a:documentation>A field</a:documentation>
+ <value>foreignkey</value>
+ <a:documentation>A foreign key</a:documentation>
+ <value>group</value>
+ <a:documentation>A group</a:documentation>
+ <value>index</value>
+ <a:documentation>An index</a:documentation>
+ <value>key1</value>
+ <a:documentation>The first or primary key</a:documentation>
+ <value>key2</value>
+ <a:documentation>An alternate or secondary key</a:documentation>
+ <value>name</value>
+ <a:documentation>A name</a:documentation>
+ <value>primarykey</value>
+ <a:documentation>The primary key</a:documentation>
+ <value>procedure</value>
+ <a:documentation>A (stored) procedure</a:documentation>
+ <value>record</value>
+ <a:documentation>A record</a:documentation>
+ <value>rule</value>
+ <a:documentation>A rule</a:documentation>
+ <value>secondarykey</value>
+ <a:documentation>The secondary key</a:documentation>
+ <value>table</value>
+ <a:documentation>A table</a:documentation>
+ <value>user</value>
+ <a:documentation>A user</a:documentation>
+ <value>view</value>
+ <a:documentation>A view</a:documentation>
+ </choice>
+ </define>
+ <define name="db.database.class.attribute">
+ <attribute name="class">
+ <db:refpurpose>Identifies the class of database artifact</db:refpurpose>
+ <ref name="db.database.class.enumeration"/>
+ </attribute>
+ </define>
+ <define name="db.database.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.database.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.database.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.database.class.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.database">
+ <element name="database">
+ <ref name="db.database.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>application</db:refname>
+ <db:refpurpose>The name of a software program</db:refpurpose>
+ <define name="db.application.class.enumeration">
+ <choice>
+ <value>hardware</value>
+ <a:documentation>A hardware application</a:documentation>
+ <value>software</value>
+ <a:documentation>A software application</a:documentation>
+ </choice>
+ </define>
+ <define name="db.application.class.attribute">
+ <attribute name="class">
+ <db:refpurpose>Identifies the class of application</db:refpurpose>
+ <ref name="db.application.class.enumeration"/>
+ </attribute>
+ </define>
+ <define name="db.application.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.application.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.application.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.application.class.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.application">
+ <element name="application">
+ <ref name="db.application.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>hardware</db:refname>
+ <db:refpurpose>A physical part of a computer system</db:refpurpose>
+ <define name="db.hardware.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.hardware.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.hardware.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.hardware">
+ <element name="hardware">
+ <ref name="db.hardware.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+</grammar>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/programming.rng b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/programming.rng
new file mode 100644
index 000000000..6a14e9db7
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/programming.rng
@@ -0,0 +1,1116 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: pool.rnc 7466 2007-09-27 14:03:55Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<grammar ns="http://docbook.org/ns/docbook" xmlns:db="http://docbook.org/ns/docbook" xmlns:s="http://purl.oclc.org/dsdl/schematron" xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0" xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/" xmlns="http://relaxng.org/ns/structure/1.0">
+ <start combine="choice">
+ <choice>
+ <ref name="db.synopsis.blocks"/>
+ <ref name="db.funcsynopsisinfo"/>
+ <ref name="db.classsynopsisinfo"/>
+ </choice>
+ </start>
+ <define name="db.domain.inlines" combine="choice">
+ <ref name="db.programming.inlines"/>
+ </define>
+ <define name="db.nopara.blocks" combine="choice">
+ <ref name="db.synopsis.blocks"/>
+ </define>
+ <define name="db.cover.contentmodel" combine="choice">
+ <ref name="db.synopsis.blocks"/>
+ </define>
+ <define name="db.verbatim.blocks" combine="choice">
+ <choice>
+ <ref name="db.programlisting"/>
+ <ref name="db.synopsis"/>
+ </choice>
+ </define>
+ <define name="db.programming.inlines">
+ <choice>
+ <ref name="db.function"/>
+ <ref name="db.parameter"/>
+ <ref name="db.varname"/>
+ <ref name="db.returnvalue"/>
+ <ref name="db.type"/>
+ <ref name="db.classname"/>
+ <ref name="db.exceptionname"/>
+ <ref name="db.interfacename"/>
+ <ref name="db.methodname"/>
+ <ref name="db.modifier"/>
+ <ref name="db.initializer"/>
+ <ref name="db.oo.inlines"/>
+ </choice>
+ </define>
+ <define name="db.oo.inlines">
+ <choice>
+ <ref name="db.ooclass"/>
+ <ref name="db.ooexception"/>
+ <ref name="db.oointerface"/>
+ </choice>
+ </define>
+ <define name="db.synopsis.blocks">
+ <choice>
+ <ref name="db.funcsynopsis"/>
+ <ref name="db.classsynopsis"/>
+ <ref name="db.methodsynopsis"/>
+ <ref name="db.constructorsynopsis"/>
+ <ref name="db.destructorsynopsis"/>
+ <ref name="db.fieldsynopsis"/>
+ </choice>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>synopsis</db:refname>
+ <db:refpurpose>A general-purpose element for representing the syntax of commands or functions</db:refpurpose>
+ <define name="db.synopsis.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.synopsis.label.attribute">
+ <ref name="db.label.attribute"/>
+ </define>
+ <define name="db.synopsis.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.synopsis.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <ref name="db.verbatim.attributes"/>
+ <optional>
+ <ref name="db.synopsis.label.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.synopsis">
+ <element name="synopsis">
+ <ref name="db.synopsis.attlist"/>
+ <ref name="db.verbatim.contentmodel"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>funcsynopsis</db:refname>
+ <db:refpurpose>The syntax summary for a function definition</db:refpurpose>
+ <define name="db.funcsynopsis.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.funcsynopsis.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.funcsynopsis.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.language.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.funcsynopsis.info">
+ <ref name="db._info.title.forbidden"/>
+ </define>
+ <define name="db.funcsynopsis">
+ <element name="funcsynopsis">
+ <ref name="db.funcsynopsis.attlist"/>
+ <ref name="db.funcsynopsis.info"/>
+ <oneOrMore>
+ <choice>
+ <ref name="db.funcsynopsisinfo"/>
+ <ref name="db.funcprototype"/>
+ </choice>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>funcsynopsisinfo</db:refname>
+ <db:refpurpose>Information supplementing the funcdefs of a funcsynopsis</db:refpurpose>
+ <define name="db.funcsynopsisinfo.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.funcsynopsisinfo.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.funcsynopsisinfo.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <ref name="db.verbatim.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.funcsynopsisinfo">
+ <element name="funcsynopsisinfo">
+ <ref name="db.funcsynopsisinfo.attlist"/>
+ <ref name="db.verbatim.contentmodel"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>funcprototype</db:refname>
+ <db:refpurpose>The prototype of a function</db:refpurpose>
+ <define name="db.funcprototype.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.funcprototype.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.funcprototype.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.funcprototype">
+ <element name="funcprototype">
+ <ref name="db.funcprototype.attlist"/>
+ <zeroOrMore>
+ <ref name="db.modifier"/>
+ </zeroOrMore>
+ <ref name="db.funcdef"/>
+ <choice>
+ <ref name="db.void"/>
+ <ref name="db.varargs"/>
+ <group>
+ <oneOrMore>
+ <choice>
+ <ref name="db.paramdef"/>
+ <ref name="db.group.paramdef"/>
+ </choice>
+ </oneOrMore>
+ <optional>
+ <ref name="db.varargs"/>
+ </optional>
+ </group>
+ </choice>
+ <zeroOrMore>
+ <ref name="db.modifier"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>funcdef</db:refname>
+ <db:refpurpose>A function (subroutine) name and its return type</db:refpurpose>
+ <define name="db.funcdef.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.funcdef.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.funcdef.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.funcdef">
+ <element name="funcdef">
+ <ref name="db.funcdef.attlist"/>
+ <zeroOrMore>
+ <choice>
+ <ref name="db._text"/>
+ <ref name="db.type"/>
+ <ref name="db.function"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>function</db:refname>
+ <db:refpurpose>The name of a function or subroutine, as in a programming language</db:refpurpose>
+ <define name="db.function.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.function.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.function.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.function">
+ <element name="function">
+ <ref name="db.function.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>void</db:refname>
+ <db:refpurpose>An empty element in a function synopsis indicating that the function in question takes no arguments</db:refpurpose>
+ <define name="db.void.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.void.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.void.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.void">
+ <element name="void">
+ <ref name="db.void.attlist"/>
+ <empty/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>varargs</db:refname>
+ <db:refpurpose>An empty element in a function synopsis indicating a variable number of arguments</db:refpurpose>
+ <define name="db.varargs.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.varargs.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.varargs.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.varargs">
+ <element name="varargs">
+ <ref name="db.varargs.attlist"/>
+ <empty/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>group</db:refname>
+ <db:refpurpose>A group of parameters</db:refpurpose>
+ <define name="db.group.paramdef.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.group.paramdef.choice.attribute">
+ <ref name="db.choice.opt.attribute"/>
+ </define>
+ <define name="db.group.paramdef.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.group.paramdef.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.group.paramdef.choice.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.group.paramdef">
+ <element name="group">
+ <ref name="db.group.paramdef.attlist"/>
+ <oneOrMore>
+ <choice>
+ <ref name="db.paramdef"/>
+ <ref name="db.group.paramdef"/>
+ </choice>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>paramdef</db:refname>
+ <db:refpurpose>Information about a function parameter in a programming language</db:refpurpose>
+ <define name="db.paramdef.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.paramdef.choice.enumeration">
+ <choice>
+ <value>opt</value>
+ <a:documentation>Formatted to indicate that it is optional.</a:documentation>
+ <value>req</value>
+ <a:documentation>Formatted to indicate that it is required.</a:documentation>
+ </choice>
+ </define>
+ <define name="db.paramdef.choice.attribute">
+ <attribute name="choice" a:defaultValue="opt">
+ <db:refpurpose>Indicates optionality.</db:refpurpose>
+ <ref name="db.paramdef.choice.enumeration"/>
+ </attribute>
+ </define>
+ <define name="db.paramdef.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.paramdef.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.paramdef.choice.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.paramdef">
+ <element name="paramdef">
+ <ref name="db.paramdef.attlist"/>
+ <zeroOrMore>
+ <choice>
+ <ref name="db._text"/>
+ <ref name="db.initializer"/>
+ <ref name="db.type"/>
+ <ref name="db.parameter"/>
+ <ref name="db.funcparams"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>funcparams</db:refname>
+ <db:refpurpose>Parameters for a function referenced through a function pointer in a synopsis</db:refpurpose>
+ <define name="db.funcparams.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.funcparams.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.funcparams.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.funcparams">
+ <element name="funcparams">
+ <ref name="db.funcparams.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>classsynopsis</db:refname>
+ <db:refpurpose>The syntax summary for a class definition</db:refpurpose>
+ <define name="db.classsynopsis.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.classsynopsis.class.enumeration">
+ <choice>
+ <value>class</value>
+ <a:documentation>This is the synopsis of a class</a:documentation>
+ <value>interface</value>
+ <a:documentation>This is the synopsis of an interface</a:documentation>
+ </choice>
+ </define>
+ <define name="db.classsynopsis.class.attribute">
+ <attribute name="class">
+ <db:refpurpose>Specifies the nature of the synopsis</db:refpurpose>
+ <ref name="db.classsynopsis.class.enumeration"/>
+ </attribute>
+ </define>
+ <define name="db.classsynopsis.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.classsynopsis.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.language.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.classsynopsis.class.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.classsynopsis">
+ <element name="classsynopsis">
+ <ref name="db.classsynopsis.attlist"/>
+ <oneOrMore>
+ <ref name="db.oo.inlines"/>
+ </oneOrMore>
+ <zeroOrMore>
+ <choice>
+ <ref name="db.classsynopsisinfo"/>
+ <ref name="db.methodsynopsis"/>
+ <ref name="db.constructorsynopsis"/>
+ <ref name="db.destructorsynopsis"/>
+ <ref name="db.fieldsynopsis"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>classsynopsisinfo</db:refname>
+ <db:refpurpose>Information supplementing the contents of a classsynopsis</db:refpurpose>
+ <define name="db.classsynopsisinfo.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.classsynopsisinfo.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.classsynopsisinfo.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <ref name="db.verbatim.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.classsynopsisinfo">
+ <element name="classsynopsisinfo">
+ <ref name="db.classsynopsisinfo.attlist"/>
+ <ref name="db.verbatim.contentmodel"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>ooclass</db:refname>
+ <db:refpurpose>A class in an object-oriented programming language</db:refpurpose>
+ <define name="db.ooclass.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.ooclass.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.ooclass.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.ooclass">
+ <element name="ooclass">
+ <ref name="db.ooclass.attlist"/>
+ <zeroOrMore>
+ <choice>
+ <ref name="db.package"/>
+ <ref name="db.modifier"/>
+ </choice>
+ </zeroOrMore>
+ <ref name="db.classname"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>oointerface</db:refname>
+ <db:refpurpose>An interface in an object-oriented programming language</db:refpurpose>
+ <define name="db.oointerface.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.oointerface.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.oointerface.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.oointerface">
+ <element name="oointerface">
+ <ref name="db.oointerface.attlist"/>
+ <zeroOrMore>
+ <choice>
+ <ref name="db.package"/>
+ <ref name="db.modifier"/>
+ </choice>
+ </zeroOrMore>
+ <ref name="db.interfacename"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>ooexception</db:refname>
+ <db:refpurpose>An exception in an object-oriented programming language</db:refpurpose>
+ <define name="db.ooexception.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.ooexception.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.ooexception.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.ooexception">
+ <element name="ooexception">
+ <ref name="db.ooexception.attlist"/>
+ <zeroOrMore>
+ <choice>
+ <ref name="db.package"/>
+ <ref name="db.modifier"/>
+ </choice>
+ </zeroOrMore>
+ <ref name="db.exceptionname"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <define name="db.modifier.xml.space.attribute">
+ <attribute name="xml:space">
+ <db:refpurpose>Can be used to indicate that whitespace in the modifier should be preserved (for multi-line annotations, for example).</db:refpurpose>
+ <value>preserve</value>
+ <a:documentation>Extra whitespace and line breaks must be preserved.</a:documentation>
+ <!--
+ Ideally the definition of xml:space used on modifier would be
+ different from the definition used on the verbatim elements. The
+ verbatim elements forbid the use of xml:space="default" which
+ wouldn't be a problem on modifier. But doing that causes the
+ generated XSD schemas to be broken so I'm just reusing the existing
+ definition for now. It won't be backwards incompatible to fix this
+ problem in the future.
+ | ## Extra whitespace and line breaks are not preserved.
+ "default"
+ -->
+ </attribute>
+ </define>
+ <div>
+ <db:refname>modifier</db:refname>
+ <db:refpurpose>Modifiers in a synopsis</db:refpurpose>
+ <define name="db.modifier.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.modifier.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.modifier.xml.space.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.modifier.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.modifier">
+ <element name="modifier">
+ <ref name="db.modifier.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>interfacename</db:refname>
+ <db:refpurpose>The name of an interface</db:refpurpose>
+ <define name="db.interfacename.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.interfacename.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.interfacename.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.interfacename">
+ <element name="interfacename">
+ <ref name="db.interfacename.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>exceptionname</db:refname>
+ <db:refpurpose>The name of an exception</db:refpurpose>
+ <define name="db.exceptionname.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.exceptionname.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.exceptionname.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.exceptionname">
+ <element name="exceptionname">
+ <ref name="db.exceptionname.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>fieldsynopsis</db:refname>
+ <db:refpurpose>The name of a field in a class definition</db:refpurpose>
+ <define name="db.fieldsynopsis.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.fieldsynopsis.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.fieldsynopsis.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.language.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.fieldsynopsis">
+ <element name="fieldsynopsis">
+ <ref name="db.fieldsynopsis.attlist"/>
+ <zeroOrMore>
+ <ref name="db.modifier"/>
+ </zeroOrMore>
+ <optional>
+ <ref name="db.type"/>
+ </optional>
+ <ref name="db.varname"/>
+ <optional>
+ <ref name="db.initializer"/>
+ </optional>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>initializer</db:refname>
+ <db:refpurpose>The initializer for a fieldsynopsis</db:refpurpose>
+ <define name="db.initializer.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.initializer.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.initializer.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.initializer.inlines">
+ <ref name="db._text"/>
+ </define>
+ <define name="db.initializer">
+ <element name="initializer">
+ <ref name="db.initializer.attlist"/>
+ <zeroOrMore>
+ <ref name="db.initializer.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>constructorsynopsis</db:refname>
+ <db:refpurpose>A syntax summary for a constructor</db:refpurpose>
+ <define name="db.constructorsynopsis.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.constructorsynopsis.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.constructorsynopsis.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.language.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.constructorsynopsis">
+ <element name="constructorsynopsis">
+ <ref name="db.constructorsynopsis.attlist"/>
+ <zeroOrMore>
+ <ref name="db.modifier"/>
+ </zeroOrMore>
+ <optional>
+ <ref name="db.methodname"/>
+ </optional>
+ <choice>
+ <oneOrMore>
+ <choice>
+ <ref name="db.methodparam"/>
+ <ref name="db.group.methodparam"/>
+ </choice>
+ </oneOrMore>
+ <optional>
+ <ref name="db.void"/>
+ </optional>
+ </choice>
+ <zeroOrMore>
+ <ref name="db.exceptionname"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>destructorsynopsis</db:refname>
+ <db:refpurpose>A syntax summary for a destructor</db:refpurpose>
+ <define name="db.destructorsynopsis.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.destructorsynopsis.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.destructorsynopsis.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.language.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.destructorsynopsis">
+ <element name="destructorsynopsis">
+ <ref name="db.destructorsynopsis.attlist"/>
+ <zeroOrMore>
+ <ref name="db.modifier"/>
+ </zeroOrMore>
+ <optional>
+ <ref name="db.methodname"/>
+ </optional>
+ <choice>
+ <oneOrMore>
+ <choice>
+ <ref name="db.methodparam"/>
+ <ref name="db.group.methodparam"/>
+ </choice>
+ </oneOrMore>
+ <optional>
+ <ref name="db.void"/>
+ </optional>
+ </choice>
+ <zeroOrMore>
+ <ref name="db.exceptionname"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>methodsynopsis</db:refname>
+ <db:refpurpose>A syntax summary for a method</db:refpurpose>
+ <define name="db.methodsynopsis.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.methodsynopsis.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.methodsynopsis.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.language.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.methodsynopsis">
+ <element name="methodsynopsis">
+ <ref name="db.methodsynopsis.attlist"/>
+ <zeroOrMore>
+ <ref name="db.modifier"/>
+ </zeroOrMore>
+ <optional>
+ <choice>
+ <ref name="db.type"/>
+ <ref name="db.void"/>
+ </choice>
+ </optional>
+ <ref name="db.methodname"/>
+ <choice>
+ <oneOrMore>
+ <choice>
+ <ref name="db.methodparam"/>
+ <ref name="db.group.methodparam"/>
+ </choice>
+ </oneOrMore>
+ <ref name="db.void"/>
+ </choice>
+ <zeroOrMore>
+ <ref name="db.exceptionname"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="db.modifier"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>methodname</db:refname>
+ <db:refpurpose>The name of a method</db:refpurpose>
+ <define name="db.methodname.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.methodname.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.methodname.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.methodname">
+ <element name="methodname">
+ <ref name="db.methodname.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>methodparam</db:refname>
+ <db:refpurpose>Parameters to a method</db:refpurpose>
+ <define name="db.methodparam.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.methodparam.rep.attribute">
+ <ref name="db.rep.attribute"/>
+ </define>
+ <define name="db.methodparam.choice.attribute">
+ <ref name="db.choice.req.attribute"/>
+ </define>
+ <define name="db.methodparam.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.methodparam.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.methodparam.rep.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.methodparam.choice.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.methodparam">
+ <element name="methodparam">
+ <ref name="db.methodparam.attlist"/>
+ <zeroOrMore>
+ <ref name="db.modifier"/>
+ </zeroOrMore>
+ <optional>
+ <ref name="db.type"/>
+ </optional>
+ <choice>
+ <group>
+ <zeroOrMore>
+ <ref name="db.modifier"/>
+ </zeroOrMore>
+ <ref name="db.parameter"/>
+ <optional>
+ <ref name="db.initializer"/>
+ </optional>
+ </group>
+ <ref name="db.funcparams"/>
+ </choice>
+ <zeroOrMore>
+ <ref name="db.modifier"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>group</db:refname>
+ <db:refpurpose>A group of method parameters</db:refpurpose>
+ <define name="db.group.methodparam.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.group.methodparam.choice.attribute">
+ <ref name="db.choice.opt.attribute"/>
+ </define>
+ <define name="db.group.methodparam.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.group.methodparam.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.group.methodparam.choice.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.group.methodparam">
+ <element name="group">
+ <ref name="db.group.methodparam.attlist"/>
+ <oneOrMore>
+ <choice>
+ <ref name="db.methodparam"/>
+ <ref name="db.group.methodparam"/>
+ </choice>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>varname</db:refname>
+ <db:refpurpose>The name of a variable</db:refpurpose>
+ <define name="db.varname.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.varname.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.varname.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.varname">
+ <element name="varname">
+ <ref name="db.varname.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>returnvalue</db:refname>
+ <db:refpurpose>The value returned by a function</db:refpurpose>
+ <define name="db.returnvalue.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.returnvalue.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.returnvalue.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.returnvalue">
+ <element name="returnvalue">
+ <ref name="db.returnvalue.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>type</db:refname>
+ <db:refpurpose>The classification of a value</db:refpurpose>
+ <define name="db.type.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.type.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.type.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.type">
+ <element name="type">
+ <ref name="db.type.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>classname</db:refname>
+ <db:refpurpose>The name of a class, in the object-oriented programming sense</db:refpurpose>
+ <define name="db.classname.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.classname.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.classname.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.classname">
+ <element name="classname">
+ <ref name="db.classname.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>programlisting</db:refname>
+ <db:refpurpose>A literal listing of all or part of a program</db:refpurpose>
+ <define name="db.programlisting.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.programlisting.width.attribute">
+ <ref name="db.width.characters.attribute"/>
+ </define>
+ <define name="db.programlisting.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.programlisting.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <ref name="db.verbatim.attributes"/>
+ <optional>
+ <ref name="db.programlisting.width.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.programlisting">
+ <element name="programlisting">
+ <ref name="db.programlisting.attlist"/>
+ <ref name="db.verbatim.contentmodel"/>
+ </element>
+ </define>
+ </div>
+</grammar>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/qandaset.rng b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/qandaset.rng
new file mode 100644
index 000000000..5fe93f6b9
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/qandaset.rng
@@ -0,0 +1,245 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: qandaset.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<grammar ns="http://docbook.org/ns/docbook" xmlns:db="http://docbook.org/ns/docbook" xmlns:s="http://purl.oclc.org/dsdl/schematron" xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0" xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/" xmlns="http://relaxng.org/ns/structure/1.0">
+ <start combine="choice">
+ <choice>
+ <ref name="db.qandadiv"/>
+ <ref name="db.qandaentry"/>
+ <ref name="db.qandaset"/>
+ </choice>
+ </start>
+ <define name="db.list.blocks" combine="choice">
+ <ref name="db.qandaset"/>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>qandaset</db:refname>
+ <db:refpurpose>A question-and-answer set</db:refpurpose>
+ <define name="db.qandaset.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.qandaset.defaultlabel.enumeration">
+ <choice>
+ <value>none</value>
+ <a:documentation>No labels</a:documentation>
+ <value>number</value>
+ <a:documentation>Numeric labels</a:documentation>
+ <value>qanda</value>
+ <a:documentation>"Q:" and "A:" labels</a:documentation>
+ </choice>
+ </define>
+ <define name="db.qandaset.defaultlabel.attribute">
+ <attribute name="defaultlabel">
+ <db:refpurpose>Specifies the default labelling</db:refpurpose>
+ <ref name="db.qandaset.defaultlabel.enumeration"/>
+ </attribute>
+ </define>
+ <define name="db.qandaset.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.qandaset.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.qandaset.defaultlabel.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.qandaset.info">
+ <ref name="db._info.title.only"/>
+ </define>
+ <define name="db.qandaset">
+ <element name="qandaset">
+ <ref name="db.qandaset.attlist"/>
+ <ref name="db.qandaset.info"/>
+ <zeroOrMore>
+ <ref name="db.all.blocks"/>
+ </zeroOrMore>
+ <choice>
+ <oneOrMore>
+ <ref name="db.qandadiv"/>
+ </oneOrMore>
+ <oneOrMore>
+ <ref name="db.qandaentry"/>
+ </oneOrMore>
+ </choice>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>qandadiv</db:refname>
+ <db:refpurpose>A titled division in a qandaset</db:refpurpose>
+ <define name="db.qandadiv.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.qandadiv.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.qandadiv.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.qandadiv.info">
+ <ref name="db._info.title.only"/>
+ </define>
+ <define name="db.qandadiv">
+ <element name="qandadiv">
+ <ref name="db.qandadiv.attlist"/>
+ <ref name="db.qandadiv.info"/>
+ <zeroOrMore>
+ <ref name="db.all.blocks"/>
+ </zeroOrMore>
+ <choice>
+ <oneOrMore>
+ <ref name="db.qandadiv"/>
+ </oneOrMore>
+ <oneOrMore>
+ <ref name="db.qandaentry"/>
+ </oneOrMore>
+ </choice>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>qandaentry</db:refname>
+ <db:refpurpose>A question/answer set within a qandaset</db:refpurpose>
+ <define name="db.qandaentry.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.qandaentry.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.qandaentry.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.qandaentry.info">
+ <ref name="db._info.title.only"/>
+ </define>
+ <define name="db.qandaentry">
+ <element name="qandaentry">
+ <ref name="db.qandaentry.attlist"/>
+ <ref name="db.qandaentry.info"/>
+ <ref name="db.question"/>
+ <zeroOrMore>
+ <ref name="db.answer"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>question</db:refname>
+ <db:refpurpose>A question in a qandaset</db:refpurpose>
+ <define name="db.question.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.question.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.question.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.question">
+ <element name="question">
+ <ref name="db.question.attlist"/>
+ <optional>
+ <ref name="db.label"/>
+ </optional>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>answer</db:refname>
+ <db:refpurpose>An answer to a question posed in a qandaset</db:refpurpose>
+ <define name="db.answer.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.answer.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.answer.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.answer">
+ <element name="answer">
+ <ref name="db.answer.attlist"/>
+ <optional>
+ <ref name="db.label"/>
+ </optional>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>label</db:refname>
+ <db:refpurpose>A label on a question or answer</db:refpurpose>
+ <define name="db.label.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.label.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.label.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.label">
+ <element name="label">
+ <ref name="db.label.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+</grammar>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/refentry.rng b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/refentry.rng
new file mode 100644
index 000000000..1560550f2
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/refentry.rng
@@ -0,0 +1,488 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: refentry.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<grammar ns="http://docbook.org/ns/docbook" xmlns:db="http://docbook.org/ns/docbook" xmlns:s="http://purl.oclc.org/dsdl/schematron" xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0" xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/" xmlns="http://relaxng.org/ns/structure/1.0">
+ <start combine="choice">
+ <choice>
+ <ref name="db.refentry"/>
+ <ref name="db.refsection"/>
+ <ref name="db.refsynopsisdiv"/>
+ </choice>
+ </start>
+ <define name="db.divisions" combine="choice">
+ <ref name="db.reference"/>
+ </define>
+ <define name="db.part.components" combine="choice">
+ <choice>
+ <ref name="db.refentry"/>
+ <ref name="db.reference"/>
+ </choice>
+ </define>
+ <define name="db.toplevel.sections" combine="choice">
+ <oneOrMore>
+ <ref name="db.refentry"/>
+ </oneOrMore>
+ </define>
+ <define name="db.recursive.sections" combine="choice">
+ <oneOrMore>
+ <ref name="db.refentry"/>
+ </oneOrMore>
+ </define>
+ <define name="db.toplevel.refsection">
+ <oneOrMore>
+ <ref name="db.refsection"/>
+ </oneOrMore>
+ </define>
+ <define name="db.secondlevel.refsection">
+ <oneOrMore>
+ <ref name="db.refsection"/>
+ </oneOrMore>
+ </define>
+ <!-- ====================================================================== -->
+ <define name="db.reference.components">
+ <ref name="db.refentry"/>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>reference</db:refname>
+ <db:refpurpose>A collection of reference entries</db:refpurpose>
+ <define name="db.reference.status.attribute">
+ <ref name="db.status.attribute"/>
+ </define>
+ <define name="db.reference.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.reference.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.reference.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.reference.status.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.label.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.reference.info">
+ <ref name="db._info.title.req"/>
+ </define>
+ <define name="db.reference">
+ <element name="reference">
+ <ref name="db.reference.attlist"/>
+ <ref name="db.reference.info"/>
+ <optional>
+ <ref name="db.partintro"/>
+ </optional>
+ <oneOrMore>
+ <ref name="db.reference.components"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>refentry</db:refname>
+ <db:refpurpose>A reference page (originally a UNIX man-style reference page)</db:refpurpose>
+ <define name="db.refentry.status.attribute">
+ <ref name="db.status.attribute"/>
+ </define>
+ <define name="db.refentry.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.refentry.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.refentry.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.refentry.status.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.label.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.refentry.info">
+ <ref name="db._info.title.forbidden"/>
+ </define>
+ <define name="db.refentry">
+ <element name="refentry">
+ <ref name="db.refentry.attlist"/>
+ <zeroOrMore>
+ <ref name="db.indexterm"/>
+ </zeroOrMore>
+ <ref name="db.refentry.info"/>
+ <optional>
+ <ref name="db.refmeta"/>
+ </optional>
+ <oneOrMore>
+ <ref name="db.refnamediv"/>
+ </oneOrMore>
+ <optional>
+ <ref name="db.refsynopsisdiv"/>
+ </optional>
+ <ref name="db.toplevel.refsection"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>refmeta</db:refname>
+ <db:refpurpose>Meta-information for a reference entry</db:refpurpose>
+ <define name="db.refmeta.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.refmeta.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.refmeta.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.refmeta">
+ <element name="refmeta">
+ <ref name="db.refmeta.attlist"/>
+ <zeroOrMore>
+ <ref name="db.indexterm"/>
+ </zeroOrMore>
+ <ref name="db.refentrytitle"/>
+ <optional>
+ <ref name="db.manvolnum"/>
+ </optional>
+ <zeroOrMore>
+ <ref name="db.refmiscinfo"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="db.indexterm"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <ctrl:other-attribute name="db.refmiscinfo.class.attribute" enum-name="db.refmiscinfo.class-enum.attribute" other-name="db.refmiscinfo.class-other.attributes"/>
+ <define name="db.refmiscinfo.class.enumeration">
+ <choice>
+ <value>source</value>
+ <a:documentation>The name of the software product or component to which this topic applies</a:documentation>
+ <value>version</value>
+ <a:documentation>The version of the software product or component to which this topic applies</a:documentation>
+ <value>manual</value>
+ <a:documentation>The section title of the reference page (e.g., User Commands)</a:documentation>
+ <value>sectdesc</value>
+ <a:documentation>The section title of the reference page (believed synonymous with "manual" but in wide use)</a:documentation>
+ <value>software</value>
+ <a:documentation>The name of the software product or component to which this topic applies (e.g., SunOS x.y; believed synonymous with "source" but in wide use)</a:documentation>
+ </choice>
+ </define>
+ <define name="db.refmiscinfo.class-enum.attribute">
+ <optional>
+ <attribute name="class">
+ <db:refpurpose>Identifies the kind of miscellaneous information</db:refpurpose>
+ <ref name="db.refmiscinfo.class.enumeration"/>
+ </attribute>
+ </optional>
+ </define>
+ <define name="db.refmiscinfo.class-other.attribute">
+ <attribute name="otherclass">
+ <db:refpurpose>Identifies the nature of non-standard miscellaneous information</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.refmiscinfo.class-other.attributes">
+ <interleave>
+ <attribute name="class">
+ <db:refpurpose>Identifies the kind of miscellaneious information</db:refpurpose>
+ <value>other</value>
+ <a:documentation>Indicates that the information is some 'other' kind.</a:documentation>
+ </attribute>
+ <ref name="db.refmiscinfo.class-other.attribute"/>
+ </interleave>
+ </define>
+ <define name="db.refmiscinfo.class.attribute">
+ <choice>
+ <ref name="db.refmiscinfo.class-enum.attribute"/>
+ <ref name="db.refmiscinfo.class-other.attributes"/>
+ </choice>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>refmiscinfo</db:refname>
+ <db:refpurpose>Meta-information for a reference entry other than the title and volume number</db:refpurpose>
+ <define name="db.refmiscinfo.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.refmiscinfo.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.refmiscinfo.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.refmiscinfo.class.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.refmiscinfo">
+ <element name="refmiscinfo">
+ <ref name="db.refmiscinfo.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>refnamediv</db:refname>
+ <db:refpurpose>The name, purpose, and classification of a reference page</db:refpurpose>
+ <define name="db.refnamediv.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.refnamediv.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.refnamediv.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.refnamediv">
+ <element name="refnamediv">
+ <ref name="db.refnamediv.attlist"/>
+ <optional>
+ <ref name="db.refdescriptor"/>
+ </optional>
+ <oneOrMore>
+ <ref name="db.refname"/>
+ </oneOrMore>
+ <ref name="db.refpurpose"/>
+ <zeroOrMore>
+ <ref name="db.refclass"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>refdescriptor</db:refname>
+ <db:refpurpose>A description of the topic of a reference page</db:refpurpose>
+ <define name="db.refdescriptor.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.refdescriptor.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.refdescriptor.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.refdescriptor">
+ <element name="refdescriptor">
+ <ref name="db.refdescriptor.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>refname</db:refname>
+ <db:refpurpose>The name of (one of) the subject(s) of a reference page</db:refpurpose>
+ <define name="db.refname.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.refname.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.refname.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.refname">
+ <element name="refname">
+ <ref name="db.refname.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>refpurpose</db:refname>
+ <db:refpurpose>A short (one sentence) synopsis of the topic of a reference page</db:refpurpose>
+ <define name="db.refpurpose.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.refpurpose.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.refpurpose.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.refpurpose">
+ <element name="refpurpose">
+ <ref name="db.refpurpose.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>refclass</db:refname>
+ <db:refpurpose>The scope or other indication of applicability of a reference entry</db:refpurpose>
+ <define name="db.refclass.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.refclass.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.refclass.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.refclass">
+ <element name="refclass">
+ <ref name="db.refclass.attlist"/>
+ <zeroOrMore>
+ <choice>
+ <text/>
+ <ref name="db.application"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>refsynopsisdiv</db:refname>
+ <db:refpurpose>A syntactic synopsis of the subject of the reference page</db:refpurpose>
+ <define name="db.refsynopsisdiv.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.refsynopsisdiv.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.refsynopsisdiv.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.refsynopsisdiv.info">
+ <ref name="db._info"/>
+ </define>
+ <define name="db.refsynopsisdiv">
+ <element name="refsynopsisdiv">
+ <ref name="db.refsynopsisdiv.attlist"/>
+ <ref name="db.refsynopsisdiv.info"/>
+ <choice>
+ <group>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ <optional>
+ <ref name="db.secondlevel.refsection"/>
+ </optional>
+ </group>
+ <ref name="db.secondlevel.refsection"/>
+ </choice>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>refsection</db:refname>
+ <db:refpurpose>A recursive section in a refentry</db:refpurpose>
+ <define name="db.refsection.status.attribute">
+ <ref name="db.status.attribute"/>
+ </define>
+ <define name="db.refsection.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.refsection.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.refsection.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.refsection.status.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.label.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.refsection.info">
+ <ref name="db._info.title.req"/>
+ </define>
+ <define name="db.refsection">
+ <element name="refsection">
+ <ref name="db.refsection.attlist"/>
+ <ref name="db.refsection.info"/>
+ <choice>
+ <group>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ <zeroOrMore>
+ <ref name="db.refsection"/>
+ </zeroOrMore>
+ </group>
+ <oneOrMore>
+ <ref name="db.refsection"/>
+ </oneOrMore>
+ </choice>
+ </element>
+ </define>
+ </div>
+</grammar>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/refsect1.rng b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/refsect1.rng
new file mode 100644
index 000000000..fb921b863
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/refsect1.rng
@@ -0,0 +1,192 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: refsect1.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<grammar ns="http://docbook.org/ns/docbook" xmlns:db="http://docbook.org/ns/docbook" xmlns:s="http://purl.oclc.org/dsdl/schematron" xmlns:rng="http://relaxng.org/ns/structure/1.0" xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/" xmlns="http://relaxng.org/ns/structure/1.0">
+ <start combine="choice">
+ <choice>
+ <ref name="db.refsect1"/>
+ <ref name="db.refsect2"/>
+ <ref name="db.refsect3"/>
+ </choice>
+ </start>
+ <define name="db.toplevel.refsection" combine="choice">
+ <oneOrMore>
+ <ref name="db.refsect1"/>
+ </oneOrMore>
+ </define>
+ <define name="db.secondlevel.refsection" combine="choice">
+ <oneOrMore>
+ <ref name="db.refsect2"/>
+ </oneOrMore>
+ </define>
+ <!-- ====================================================================== -->
+ <define name="db.refsect1.sections">
+ <oneOrMore>
+ <ref name="db.refsect2"/>
+ </oneOrMore>
+ </define>
+ <div>
+ <db:refname>refsect1</db:refname>
+ <db:refpurpose>A major subsection of a reference entry</db:refpurpose>
+ <define name="db.refsect1.status.attribute">
+ <ref name="db.status.attribute"/>
+ </define>
+ <define name="db.refsect1.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.refsect1.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.refsect1.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.label.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.refsect1.status.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.refsect1.info">
+ <ref name="db._info.title.req"/>
+ </define>
+ <define name="db.refsect1">
+ <element name="refsect1">
+ <ref name="db.refsect1.attlist"/>
+ <ref name="db.refsect1.info"/>
+ <choice>
+ <group>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ <optional>
+ <ref name="db.refsect1.sections"/>
+ </optional>
+ </group>
+ <ref name="db.refsect1.sections"/>
+ </choice>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <define name="db.refsect2.sections">
+ <oneOrMore>
+ <ref name="db.refsect3"/>
+ </oneOrMore>
+ </define>
+ <div>
+ <db:refname>refsect2</db:refname>
+ <db:refpurpose>A subsection of a <db:tag>refsect1</db:tag>
+ </db:refpurpose>
+ <define name="db.refsect2.status.attribute">
+ <ref name="db.status.attribute"/>
+ </define>
+ <define name="db.refsect2.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.refsect2.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.refsect2.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.label.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.refsect2.status.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.refsect2.info">
+ <ref name="db._info.title.req"/>
+ </define>
+ <define name="db.refsect2">
+ <element name="refsect2">
+ <ref name="db.refsect2.attlist"/>
+ <ref name="db.refsect2.info"/>
+ <choice>
+ <group>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ <optional>
+ <ref name="db.refsect2.sections"/>
+ </optional>
+ </group>
+ <ref name="db.refsect2.sections"/>
+ </choice>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>refsect3</db:refname>
+ <db:refpurpose>A subsection of a <db:tag>refsect2</db:tag>
+ </db:refpurpose>
+ <define name="db.refsect3.status.attribute">
+ <ref name="db.status.attribute"/>
+ </define>
+ <define name="db.refsect3.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.refsect3.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.refsect3.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.label.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.refsect3.status.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.refsect3.info">
+ <ref name="db._info.title.req"/>
+ </define>
+ <define name="db.refsect3">
+ <element name="refsect3">
+ <ref name="db.refsect3.attlist"/>
+ <ref name="db.refsect3.info"/>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+</grammar>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/sect1.rng b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/sect1.rng
new file mode 100644
index 000000000..b5d67e342
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/sect1.rng
@@ -0,0 +1,360 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: sect1.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<grammar ns="http://docbook.org/ns/docbook" xmlns:db="http://docbook.org/ns/docbook" xmlns:s="http://purl.oclc.org/dsdl/schematron" xmlns:rng="http://relaxng.org/ns/structure/1.0" xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/" xmlns="http://relaxng.org/ns/structure/1.0">
+ <start combine="choice">
+ <choice>
+ <ref name="db.sect1"/>
+ <ref name="db.sect2"/>
+ <ref name="db.sect3"/>
+ <ref name="db.sect4"/>
+ <ref name="db.sect5"/>
+ </choice>
+ </start>
+ <define name="db.toplevel.sections" combine="choice">
+ <oneOrMore>
+ <ref name="db.sect1"/>
+ </oneOrMore>
+ <zeroOrMore>
+ <ref name="db.simplesect"/>
+ </zeroOrMore>
+ </define>
+ <!-- ====================================================================== -->
+ <define name="db.sect1.sections">
+ <choice>
+ <group>
+ <oneOrMore>
+ <ref name="db.sect2"/>
+ </oneOrMore>
+ <zeroOrMore>
+ <ref name="db.simplesect"/>
+ </zeroOrMore>
+ </group>
+ <oneOrMore>
+ <ref name="db.simplesect"/>
+ </oneOrMore>
+ </choice>
+ </define>
+ <div>
+ <db:refname>sect1</db:refname>
+ <db:refpurpose>A top-level section of document</db:refpurpose>
+ <define name="db.sect1.status.attribute">
+ <ref name="db.status.attribute"/>
+ </define>
+ <define name="db.sect1.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.sect1.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.sect1.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.label.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.sect1.status.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.sect1.info">
+ <ref name="db._info.title.req"/>
+ </define>
+ <define name="db.sect1">
+ <element name="sect1">
+ <ref name="db.sect1.attlist"/>
+ <ref name="db.sect1.info"/>
+ <choice>
+ <group>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ <optional>
+ <ref name="db.sect1.sections"/>
+ </optional>
+ </group>
+ <ref name="db.sect1.sections"/>
+ </choice>
+ <zeroOrMore>
+ <ref name="db.navigation.components"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <define name="db.sect2.sections">
+ <choice>
+ <group>
+ <oneOrMore>
+ <ref name="db.sect3"/>
+ </oneOrMore>
+ <zeroOrMore>
+ <ref name="db.simplesect"/>
+ </zeroOrMore>
+ </group>
+ <oneOrMore>
+ <ref name="db.simplesect"/>
+ </oneOrMore>
+ </choice>
+ </define>
+ <div>
+ <db:refname>sect2</db:refname>
+ <db:refpurpose>A subsection within a sect1</db:refpurpose>
+ <define name="db.sect2.status.attribute">
+ <ref name="db.status.attribute"/>
+ </define>
+ <define name="db.sect2.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.sect2.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.sect2.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.label.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.sect2.status.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.sect2.info">
+ <ref name="db._info.title.req"/>
+ </define>
+ <define name="db.sect2">
+ <element name="sect2">
+ <ref name="db.sect2.attlist"/>
+ <ref name="db.sect2.info"/>
+ <choice>
+ <group>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ <optional>
+ <ref name="db.sect2.sections"/>
+ </optional>
+ </group>
+ <ref name="db.sect2.sections"/>
+ </choice>
+ <zeroOrMore>
+ <ref name="db.navigation.components"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <define name="db.sect3.sections">
+ <choice>
+ <group>
+ <oneOrMore>
+ <ref name="db.sect4"/>
+ </oneOrMore>
+ <zeroOrMore>
+ <ref name="db.simplesect"/>
+ </zeroOrMore>
+ </group>
+ <oneOrMore>
+ <ref name="db.simplesect"/>
+ </oneOrMore>
+ </choice>
+ </define>
+ <div>
+ <db:refname>sect3</db:refname>
+ <db:refpurpose>A subsection within a sect2</db:refpurpose>
+ <define name="db.sect3.status.attribute">
+ <ref name="db.status.attribute"/>
+ </define>
+ <define name="db.sect3.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.sect3.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.sect3.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.label.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.sect3.status.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.sect3.info">
+ <ref name="db._info.title.req"/>
+ </define>
+ <define name="db.sect3">
+ <element name="sect3">
+ <ref name="db.sect3.attlist"/>
+ <ref name="db.sect3.info"/>
+ <choice>
+ <group>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ <optional>
+ <ref name="db.sect3.sections"/>
+ </optional>
+ </group>
+ <ref name="db.sect3.sections"/>
+ </choice>
+ <zeroOrMore>
+ <ref name="db.navigation.components"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <define name="db.sect4.sections">
+ <choice>
+ <group>
+ <oneOrMore>
+ <ref name="db.sect5"/>
+ </oneOrMore>
+ <zeroOrMore>
+ <ref name="db.simplesect"/>
+ </zeroOrMore>
+ </group>
+ <oneOrMore>
+ <ref name="db.simplesect"/>
+ </oneOrMore>
+ </choice>
+ </define>
+ <div>
+ <db:refname>sect4</db:refname>
+ <db:refpurpose>A subsection within a sect3</db:refpurpose>
+ <define name="db.sect4.status.attribute">
+ <ref name="db.status.attribute"/>
+ </define>
+ <define name="db.sect4.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.sect4.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.sect4.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.label.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.sect4.status.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.sect4.info">
+ <ref name="db._info.title.req"/>
+ </define>
+ <define name="db.sect4">
+ <element name="sect4">
+ <ref name="db.sect4.attlist"/>
+ <ref name="db.sect4.info"/>
+ <choice>
+ <group>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ <optional>
+ <ref name="db.sect4.sections"/>
+ </optional>
+ </group>
+ <ref name="db.sect4.sections"/>
+ </choice>
+ <zeroOrMore>
+ <ref name="db.navigation.components"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <define name="db.sect5.sections">
+ <oneOrMore>
+ <ref name="db.simplesect"/>
+ </oneOrMore>
+ </define>
+ <div>
+ <db:refname>sect5</db:refname>
+ <db:refpurpose>A subsection within a sect4</db:refpurpose>
+ <define name="db.sect5.status.attribute">
+ <ref name="db.status.attribute"/>
+ </define>
+ <define name="db.sect5.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.sect5.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.sect5.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.label.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.sect5.status.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.sect5.info">
+ <ref name="db._info.title.req"/>
+ </define>
+ <define name="db.sect5">
+ <element name="sect5">
+ <ref name="db.sect5.attlist"/>
+ <ref name="db.sect5.info"/>
+ <choice>
+ <group>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ <optional>
+ <ref name="db.sect5.sections"/>
+ </optional>
+ </group>
+ <ref name="db.sect5.sections"/>
+ </choice>
+ <zeroOrMore>
+ <ref name="db.navigation.components"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+</grammar>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/slides.rnc b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/slides.rnc
new file mode 100644
index 000000000..4d37f6f71
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/slides.rnc
@@ -0,0 +1,206 @@
+namespace db = "http://docbook.org/ns/docbook"
+namespace mml = "http://www.w3.org/1998/Math/MathML"
+namespace svg = "http://www.w3.org/2000/svg"
+default namespace dbs = "http://docbook.org/ns/docbook-slides"
+
+# See http://docbook.org/ns/docbook-slides
+
+# This file is part of DocBook Slides V5.0
+#
+# Copyright 2012 Gabor Kovesdan
+#
+# Release: $Id$
+#
+# Permission to use, copy, modify and distribute the DocBook Slides
+# schema and its accompanying documentation for any purpose and without
+# fee is hereby granted in perpetuity, provided that the above copyright
+# notice and this paragraph appear in all copies. The copyright
+# holders make no representation about the suitability of the schema
+# for any purpose. It is provided "as is" without expressed or implied
+# warranty.
+#
+# If you modify the DocBook Slides schema in any way, label your schema
+# as a variant of DocBook Slides. See the reference documentation
+# (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+# for more information.
+#
+# Please direct all questions, bug reports, or suggestions for changes
+# to the docbook@lists.oasis-open.org mailing list. For more
+# information, see http://www.oasis-open.org/docbook/.
+#
+# ======================================================================
+
+include "../../../../docbook/relaxng/docbook/docbook/docbook.rnc" inherit = db {
+ start = dbs.slides
+
+ # Avoid ID clashes
+ db._any.attribute = attribute * - (xml:id | linkend) { text }
+
+ db.common.attributes =
+ db.xml.id.attribute?
+ & db.common.base.attributes
+ & db.annotations.attribute?
+ & dbs.style.attributes?
+
+ # Any element and attribute from the SVG namespace
+ db._any.svg =
+ element svg:* { (dbs._any.attribute | text | db._any)* }
+
+ # Any element and attribute from the MathML namespace
+ db._any.mml =
+ element mml:* { (dbs._any.attribute | text | db._any)* }
+}
+
+# Any attribute from any namespace
+dbs._any.attribute = attribute * { text }
+
+dbs.all.content = db.all.blocks? &
+ dbs.speakernotes &
+ dbs.handoutnotes &
+ db._any.svg? &
+ db._any.mml? &
+ dbs.block?
+
+dbs.block =
+ ## Indicates a formatting block that can have its own styling applied
+ element block { dbs.block.attlist,
+ dbs.all.content*
+}
+
+dbs.block.role.attribute =
+ ## Role attribute for the block element
+ attribute role { text }
+
+dbs.block.status.attribute =
+ ## Status attribute for the block element
+ db.status.attribute
+
+dbs.block.attlist = dbs.block.role.attribute?
+ & db.common.attributes
+ & db.common.linking.attributes
+ & db.label.attribute?
+ & dbs.block.status.attribute?
+
+dbs.slides =
+ ## Root element of a slides document
+ element slides { dbs.slides.attlist,
+ db._info.title.req,
+ dbs.speakernotes?,
+ dbs.handoutnotes?,
+ (
+ dbs.foil? &
+ dbs.foilgroup?
+ )*
+}
+
+dbs.slides.role.attribute =
+ ## Role attribute for the slides element
+ attribute role { text }
+
+dbs.slides.status.attribute =
+ ## Status attribute for the slides element
+ db.status.attribute
+
+dbs.slides.attlist = dbs.slides.role.attribute?
+ & db.common.attributes
+ & db.common.linking.attributes
+ & db.label.attribute?
+ & dbs.slides.status.attribute?
+
+dbs.foilgroup = element foilgroup {
+ dbs.foilgroup.attlist,
+ db._info.title.req,
+ dbs.all.content*,
+ dbs.foil+
+}
+
+dbs.foilgroup.role.attribute =
+ ## Role attribute for the foilgroup element
+ attribute role { text }
+
+dbs.foilgroup.status.attribute =
+ ## Status attribute for the foilgroup element
+ db.status.attribute
+
+dbs.foilgroup.attlist = dbs.foilgroup.role.attribute?
+ & db.common.attributes
+ & db.common.linking.attributes
+ & db.label.attribute?
+ & dbs.slides.status.attribute?
+
+dbs.foil =
+ ## Indicates a foil that may have some info and content
+ element foil { dbs.foil.attlist,
+ db._info.title.req,
+ dbs.all.content*,
+ db.navigation.components*
+}
+
+dbs.foil.role.attribute =
+ ## Role attribute for the foil element
+ attribute role { text }
+
+dbs.foil.status.attribute =
+ ## Status attribute for the foil element
+ db.status.attribute
+
+dbs.foil.attlist = dbs.foil.role.attribute?
+ & db.common.attributes
+ & db.common.linking.attributes
+ & db.label.attribute?
+ & dbs.foil.status.attribute?
+
+dbs.speakernotes =
+ ## Indicates notes for the speaker
+ element speakernotes { dbs.speakernotes.attlist,
+ db.all.blocks+
+}
+
+dbs.speakernotes.role.attribute =
+ ## Role attribute for the speakernotes element
+ attribute role { text }
+
+dbs.speakernotes.attlist = dbs.speakernotes.role.attribute?
+ & db.common.attributes
+ & db.common.linking.attributes
+
+dbs.handoutnotes =
+ ## Indicates notes that are meant for printed copies
+ element handoutnotes { dbs.handoutnotes.attlist,
+ db.all.blocks+
+}
+
+## Role attribute for the handoutnotes element
+dbs.handoutnotes.role.attribute =
+ ## Role attribute for the handoutnotes element
+ attribute role { text }
+
+dbs.handoutnotes.attlist = dbs.handoutnotes.role.attribute?
+ & db.common.attributes
+ & db.common.linking.attributes
+
+dbs.style.attributes = dbs.incremental.attribute?
+ & dbs.collapsible.attribute?
+ & dbs.style.attribute?
+
+dbs.incremental.attribute =
+ ## Attribute indicating an incremental part
+ attribute dbs:incremental {
+ ## disabled
+ "0" |
+ ## enabled
+ "1" }
+
+dbs.collapsible.attribute =
+ ## Attribute indicating a collapsible part
+ attribute dbs:collapsible {
+ ## disabled
+ "0" |
+ ## enabled
+ "1" |
+ ## enabled and expanded by default
+ "expanded" }
+
+dbs.style.attribute =
+ ## Attribute indicating a formatting style class
+ attribute dbs:style { text }
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/slides.rng b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/slides.rng
new file mode 100644
index 000000000..9a38eb150
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/slides.rng
@@ -0,0 +1,362 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<grammar xmlns:dbs="http://docbook.org/ns/docbook-slides" ns="" xmlns:db="http://docbook.org/ns/docbook" xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns="http://relaxng.org/ns/structure/1.0">
+ <!-- See http://docbook.org/ns/docbook-slides -->
+ <!--
+ This file is part of DocBook Slides V5.0
+
+ Copyright 2012 Gabor Kovesdan
+
+ Release: $Id$
+
+ Permission to use, copy, modify and distribute the DocBook Slides
+ schema and its accompanying documentation for any purpose and without
+ fee is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook Slides schema in any way, label your schema
+ as a variant of DocBook Slides. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+ -->
+ <include href="docbook.rng" ns="http://docbook.org/ns/docbook">
+ <start>
+ <ref name="dbs.slides"/>
+ </start>
+ <!-- Avoid ID clashes -->
+ <define name="db._any.attribute">
+ <attribute>
+ <anyName>
+ <except>
+ <name>xml:id</name>
+ <name ns="">linkend</name>
+ </except>
+ </anyName>
+ </attribute>
+ </define>
+ <define name="db.common.attributes">
+ <interleave>
+ <optional>
+ <ref name="db.xml.id.attribute"/>
+ </optional>
+ <ref name="db.common.base.attributes"/>
+ <optional>
+ <ref name="db.annotations.attribute"/>
+ </optional>
+ <optional>
+ <ref name="dbs.style.attributes"/>
+ </optional>
+ </interleave>
+ </define>
+ <!-- Any element and attribute from the SVG namespace -->
+ <define name="db._any.svg">
+ <element>
+ <nsName ns="http://www.w3.org/2000/svg"/>
+ <zeroOrMore>
+ <choice>
+ <ref name="dbs._any.attribute"/>
+ <text/>
+ <ref name="db._any"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+ <!-- Any element and attribute from the MathML namespace -->
+ <define name="db._any.mml">
+ <element>
+ <nsName ns="http://www.w3.org/1998/Math/MathML"/>
+ <zeroOrMore>
+ <choice>
+ <ref name="dbs._any.attribute"/>
+ <text/>
+ <ref name="db._any"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+ </include>
+ <!-- Any attribute from any namespace -->
+ <define name="dbs._any.attribute">
+ <attribute>
+ <anyName/>
+ </attribute>
+ </define>
+ <define name="dbs.all.content">
+ <interleave>
+ <optional>
+ <ref name="db.all.blocks"/>
+ </optional>
+ <ref name="dbs.speakernotes"/>
+ <ref name="dbs.handoutnotes"/>
+ <optional>
+ <ref name="db._any.svg"/>
+ </optional>
+ <optional>
+ <ref name="db._any.mml"/>
+ </optional>
+ <optional>
+ <ref name="dbs.block"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="dbs.block">
+ <element>
+ <a:documentation>Indicates a formatting block that can have its own styling applied</a:documentation>
+ <name ns="http://docbook.org/ns/docbook-slides">block</name>
+ <ref name="dbs.block.attlist"/>
+ <zeroOrMore>
+ <ref name="dbs.all.content"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ <define name="dbs.block.role.attribute">
+ <attribute name="role">
+ <a:documentation>Role attribute for the block element</a:documentation>
+ </attribute>
+ </define>
+ <define name="dbs.block.status.attribute">
+ <ref name="db.status.attribute">
+ <a:documentation>Status attribute for the block element</a:documentation>
+ </ref>
+ </define>
+ <define name="dbs.block.attlist">
+ <interleave>
+ <optional>
+ <ref name="dbs.block.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.label.attribute"/>
+ </optional>
+ <optional>
+ <ref name="dbs.block.status.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="dbs.slides">
+ <element>
+ <a:documentation>Root element of a slides document</a:documentation>
+ <name ns="http://docbook.org/ns/docbook-slides">slides</name>
+ <ref name="dbs.slides.attlist"/>
+ <ref name="db._info.title.req"/>
+ <optional>
+ <ref name="dbs.speakernotes"/>
+ </optional>
+ <optional>
+ <ref name="dbs.handoutnotes"/>
+ </optional>
+ <zeroOrMore>
+ <interleave>
+ <optional>
+ <ref name="dbs.foil"/>
+ </optional>
+ <optional>
+ <ref name="dbs.foilgroup"/>
+ </optional>
+ </interleave>
+ </zeroOrMore>
+ </element>
+ </define>
+ <define name="dbs.slides.role.attribute">
+ <attribute name="role">
+ <a:documentation>Role attribute for the slides element</a:documentation>
+ </attribute>
+ </define>
+ <define name="dbs.slides.status.attribute">
+ <ref name="db.status.attribute">
+ <a:documentation>Status attribute for the slides element</a:documentation>
+ </ref>
+ </define>
+ <define name="dbs.slides.attlist">
+ <interleave>
+ <optional>
+ <ref name="dbs.slides.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.label.attribute"/>
+ </optional>
+ <optional>
+ <ref name="dbs.slides.status.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="dbs.foilgroup">
+ <element>
+ <name ns="http://docbook.org/ns/docbook-slides">foilgroup</name>
+ <ref name="dbs.foilgroup.attlist"/>
+ <ref name="db._info.title.req"/>
+ <zeroOrMore>
+ <ref name="dbs.all.content"/>
+ </zeroOrMore>
+ <oneOrMore>
+ <ref name="dbs.foil"/>
+ </oneOrMore>
+ </element>
+ </define>
+ <define name="dbs.foilgroup.role.attribute">
+ <attribute name="role">
+ <a:documentation>Role attribute for the foilgroup element</a:documentation>
+ </attribute>
+ </define>
+ <define name="dbs.foilgroup.status.attribute">
+ <ref name="db.status.attribute">
+ <a:documentation>Status attribute for the foilgroup element</a:documentation>
+ </ref>
+ </define>
+ <define name="dbs.foilgroup.attlist">
+ <interleave>
+ <optional>
+ <ref name="dbs.foilgroup.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.label.attribute"/>
+ </optional>
+ <optional>
+ <ref name="dbs.slides.status.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="dbs.foil">
+ <element>
+ <a:documentation>Indicates a foil that may have some info and content</a:documentation>
+ <name ns="http://docbook.org/ns/docbook-slides">foil</name>
+ <ref name="dbs.foil.attlist"/>
+ <ref name="db._info.title.req"/>
+ <zeroOrMore>
+ <ref name="dbs.all.content"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="db.navigation.components"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ <define name="dbs.foil.role.attribute">
+ <attribute name="role">
+ <a:documentation>Role attribute for the foil element</a:documentation>
+ </attribute>
+ </define>
+ <define name="dbs.foil.status.attribute">
+ <ref name="db.status.attribute">
+ <a:documentation>Status attribute for the foil element</a:documentation>
+ </ref>
+ </define>
+ <define name="dbs.foil.attlist">
+ <interleave>
+ <optional>
+ <ref name="dbs.foil.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.label.attribute"/>
+ </optional>
+ <optional>
+ <ref name="dbs.foil.status.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="dbs.speakernotes">
+ <element>
+ <a:documentation>Indicates notes for the speaker</a:documentation>
+ <name ns="http://docbook.org/ns/docbook-slides">speakernotes</name>
+ <ref name="dbs.speakernotes.attlist"/>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ </element>
+ </define>
+ <define name="dbs.speakernotes.role.attribute">
+ <attribute name="role">
+ <a:documentation>Role attribute for the speakernotes element</a:documentation>
+ </attribute>
+ </define>
+ <define name="dbs.speakernotes.attlist">
+ <interleave>
+ <optional>
+ <ref name="dbs.speakernotes.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="dbs.handoutnotes">
+ <element>
+ <a:documentation>Indicates notes that are meant for printed copies</a:documentation>
+ <name ns="http://docbook.org/ns/docbook-slides">handoutnotes</name>
+ <ref name="dbs.handoutnotes.attlist"/>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ </element>
+ </define>
+ <define name="dbs.handoutnotes.role.attribute">
+ <a:documentation>Role attribute for the handoutnotes element</a:documentation>
+ <attribute name="role">
+ <a:documentation>Role attribute for the handoutnotes element</a:documentation>
+ </attribute>
+ </define>
+ <define name="dbs.handoutnotes.attlist">
+ <interleave>
+ <optional>
+ <ref name="dbs.handoutnotes.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="dbs.style.attributes">
+ <interleave>
+ <optional>
+ <ref name="dbs.incremental.attribute"/>
+ </optional>
+ <optional>
+ <ref name="dbs.collapsible.attribute"/>
+ </optional>
+ <optional>
+ <ref name="dbs.style.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="dbs.incremental.attribute">
+ <attribute name="dbs:incremental">
+ <a:documentation>Attribute indicating an incremental part</a:documentation>
+ <choice>
+ <value>0</value>
+ <a:documentation>disabled</a:documentation>
+ <value>1</value>
+ <a:documentation>enabled</a:documentation>
+ </choice>
+ </attribute>
+ </define>
+ <define name="dbs.collapsible.attribute">
+ <attribute name="dbs:collapsible">
+ <a:documentation>Attribute indicating a collapsible part</a:documentation>
+ <choice>
+ <value>0</value>
+ <a:documentation>disabled</a:documentation>
+ <value>1</value>
+ <a:documentation>enabled</a:documentation>
+ <value>expanded</value>
+ <a:documentation>enabled and expanded by default</a:documentation>
+ </choice>
+ </attribute>
+ </define>
+ <define name="dbs.style.attribute">
+ <attribute name="dbs:style">
+ <a:documentation>Attribute indicating a formatting style class</a:documentation>
+ </attribute>
+ </define>
+</grammar>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/svg.rng b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/svg.rng
new file mode 100644
index 000000000..c7d830c07
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/svg.rng
@@ -0,0 +1,112 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: svg.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<grammar ns="http://docbook.org/ns/docbook" xmlns:db="http://docbook.org/ns/docbook" xmlns:svg="http://www.w3.org/2000/svg" xmlns:s="http://purl.oclc.org/dsdl/schematron" xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0" xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/" xmlns="http://relaxng.org/ns/structure/1.0">
+ <define name="db.imageobject.content" combine="choice">
+ <ref name="db.imagedata.svg"/>
+ </define>
+ <!-- ============================================================ -->
+ <div>
+ <db:refname>imagedata</db:refname>
+ <db:refpurpose>An SVG drawing in a media object</db:refpurpose>
+ <define name="db.imagedata.svg.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.imagedata.svg.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.imagedata.svg.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <optional>
+ <attribute name="format">
+ <db:refpurpose>Specifies that the format of the data is SVG</db:refpurpose>
+ <value>svg</value>
+ <a:documentation>Specifies SVG.</a:documentation>
+ </attribute>
+ </optional>
+ <optional>
+ <ref name="db.imagedata.align.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.imagedata.valign.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.imagedata.width.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.imagedata.contentwidth.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.imagedata.scalefit.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.imagedata.scale.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.imagedata.depth.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.imagedata.contentdepth.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.imagedata.svg.info">
+ <ref name="db._info.title.forbidden"/>
+ </define>
+ <define name="db.imagedata.svg">
+ <element name="imagedata">
+ <ref name="db.imagedata.svg.attlist"/>
+ <ref name="db.imagedata.svg.info"/>
+ <oneOrMore>
+ <ref name="db._any.svg"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ============================================================ -->
+ <div>
+ <db:refname>svg:*</db:refname>
+ <db:refpurpose>Any element from the SVG namespace</db:refpurpose>
+ <define name="db._any.svg">
+ <element>
+ <nsName ns="http://www.w3.org/2000/svg"/>
+ <zeroOrMore>
+ <choice>
+ <ref name="db._any.attribute"/>
+ <text/>
+ <ref name="db._any"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+</grammar>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/tasks.rng b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/tasks.rng
new file mode 100644
index 000000000..5d5c40ddf
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/tasks.rng
@@ -0,0 +1,170 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: tasks.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<grammar ns="http://docbook.org/ns/docbook" xmlns:db="http://docbook.org/ns/docbook" xmlns:s="http://purl.oclc.org/dsdl/schematron" xmlns:rng="http://relaxng.org/ns/structure/1.0" xmlns="http://relaxng.org/ns/structure/1.0">
+ <start combine="choice">
+ <choice>
+ <ref name="db.task"/>
+ <ref name="db.taskprerequisites"/>
+ <ref name="db.taskrelated"/>
+ <ref name="db.tasksummary"/>
+ </choice>
+ </start>
+ <define name="db.technical.blocks" combine="choice">
+ <ref name="db.task"/>
+ </define>
+ <define name="db.task.info">
+ <ref name="db._info.title.req"/>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>task</db:refname>
+ <db:refpurpose>A task to be completed</db:refpurpose>
+ <define name="db.task.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.task.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.task.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.task">
+ <element name="task">
+ <ref name="db.task.attlist"/>
+ <ref name="db.task.info"/>
+ <optional>
+ <ref name="db.tasksummary"/>
+ </optional>
+ <optional>
+ <ref name="db.taskprerequisites"/>
+ </optional>
+ <ref name="db.procedure"/>
+ <zeroOrMore>
+ <ref name="db.example"/>
+ </zeroOrMore>
+ <optional>
+ <ref name="db.taskrelated"/>
+ </optional>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>tasksummary</db:refname>
+ <db:refpurpose>A summary of a task</db:refpurpose>
+ <define name="db.tasksummary.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.tasksummary.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.tasksummary.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.tasksummary.info">
+ <ref name="db._info.title.only"/>
+ </define>
+ <define name="db.tasksummary">
+ <element name="tasksummary">
+ <ref name="db.tasksummary.attlist"/>
+ <ref name="db.tasksummary.info"/>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>taskprerequisites</db:refname>
+ <db:refpurpose>The prerequisites for a task</db:refpurpose>
+ <define name="db.taskprerequisites.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.taskprerequisites.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.taskprerequisites.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.taskprerequisites.info">
+ <ref name="db._info.title.only"/>
+ </define>
+ <define name="db.taskprerequisites">
+ <element name="taskprerequisites">
+ <ref name="db.taskprerequisites.attlist"/>
+ <ref name="db.taskprerequisites.info"/>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>taskrelated</db:refname>
+ <db:refpurpose>Information related to a task</db:refpurpose>
+ <define name="db.taskrelated.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.taskrelated.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.taskrelated.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.taskrelated.info">
+ <ref name="db._info.title.only"/>
+ </define>
+ <define name="db.taskrelated">
+ <element name="taskrelated">
+ <ref name="db.taskrelated.attlist"/>
+ <ref name="db.taskrelated.info"/>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+</grammar>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/technical.rng b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/technical.rng
new file mode 100644
index 000000000..4925f5968
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/technical.rng
@@ -0,0 +1,220 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: pool.rnc 7466 2007-09-27 14:03:55Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<grammar ns="http://docbook.org/ns/docbook" xmlns:db="http://docbook.org/ns/docbook" xmlns:s="http://purl.oclc.org/dsdl/schematron" xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0" xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
+ <define name="db.technical.inlines" combine="choice">
+ <choice>
+ <ref name="db.systemitem"/>
+ <ref name="db.option"/>
+ <ref name="db.optional"/>
+ <ref name="db.property"/>
+ </choice>
+ </define>
+ <!-- ====================================================================== -->
+ <define name="db.systemitem.inlines">
+ <ref name="db._text"/>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>systemitem</db:refname>
+ <db:refpurpose>A system-related item or term</db:refpurpose>
+ <define name="db.systemitem.class.enumeration">
+ <choice>
+ <value>daemon</value>
+ <a:documentation>A daemon or other system process (syslogd)</a:documentation>
+ <value>domainname</value>
+ <a:documentation>A domain name (example.com)</a:documentation>
+ <value>etheraddress</value>
+ <a:documentation>An ethernet address (00:05:4E:49:FD:8E)</a:documentation>
+ <value>event</value>
+ <a:documentation>An event of some sort (SIGHUP)</a:documentation>
+ <value>eventhandler</value>
+ <a:documentation>An event handler of some sort (hangup)</a:documentation>
+ <value>filesystem</value>
+ <a:documentation>A filesystem (ext3)</a:documentation>
+ <value>fqdomainname</value>
+ <a:documentation>A fully qualified domain name (my.example.com)</a:documentation>
+ <value>groupname</value>
+ <a:documentation>A group name (wheel)</a:documentation>
+ <value>ipaddress</value>
+ <a:documentation>An IP address (127.0.0.1)</a:documentation>
+ <value>library</value>
+ <a:documentation>A library (libncurses)</a:documentation>
+ <value>macro</value>
+ <a:documentation>A macro</a:documentation>
+ <value>netmask</value>
+ <a:documentation>A netmask (255.255.255.192)</a:documentation>
+ <value>newsgroup</value>
+ <a:documentation>A newsgroup (comp.text.xml)</a:documentation>
+ <value>osname</value>
+ <a:documentation>An operating system name (Hurd)</a:documentation>
+ <value>process</value>
+ <a:documentation>A process (gnome-cups-icon)</a:documentation>
+ <value>protocol</value>
+ <a:documentation>A protocol (ftp)</a:documentation>
+ <value>resource</value>
+ <a:documentation>A resource</a:documentation>
+ <value>securitycontext</value>
+ <a:documentation>A security context (a role, permission, or security token, for example)</a:documentation>
+ <value>server</value>
+ <a:documentation>A server (mail.example.com)</a:documentation>
+ <value>service</value>
+ <a:documentation>A service (ppp)</a:documentation>
+ <value>systemname</value>
+ <a:documentation>A system name (hephaistos)</a:documentation>
+ <value>username</value>
+ <a:documentation>A user name (ndw)</a:documentation>
+ </choice>
+ </define>
+ <define name="db.systemitem.class-enum.attribute">
+ <optional>
+ <attribute name="class">
+ <db:refpurpose>Identifies the nature of the system item</db:refpurpose>
+ <ref name="db.systemitem.class.enumeration"/>
+ </attribute>
+ </optional>
+ </define>
+ <define name="db.systemitem.class-other.attribute">
+ <attribute name="otherclass">
+ <db:refpurpose>Identifies the nature of the non-standard system item</db:refpurpose>
+ <data type="NMTOKEN"/>
+ </attribute>
+ </define>
+ <define name="db.systemitem.class-other.attributes">
+ <interleave>
+ <attribute name="class">
+ <db:refpurpose>Identifies the kind of systemitemgraphic identifier</db:refpurpose>
+ <value>other</value>
+ <a:documentation>Indicates that the system item is some 'other' kind.</a:documentation>
+ </attribute>
+ <ref name="db.systemitem.class-other.attribute"/>
+ </interleave>
+ </define>
+ <define name="db.systemitem.class.attribute">
+ <choice>
+ <ref name="db.systemitem.class-enum.attribute"/>
+ <ref name="db.systemitem.class-other.attributes"/>
+ </choice>
+ </define>
+ <define name="db.systemitem.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.systemitem.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.systemitem.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.systemitem.class.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.systemitem">
+ <element name="systemitem">
+ <ref name="db.systemitem.attlist"/>
+ <zeroOrMore>
+ <ref name="db.systemitem.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>option</db:refname>
+ <db:refpurpose>An option for a software command</db:refpurpose>
+ <define name="db.option.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.option.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.option.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.option">
+ <element name="option">
+ <ref name="db.option.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>optional</db:refname>
+ <db:refpurpose>Optional information</db:refpurpose>
+ <define name="db.optional.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.optional.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.optional.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.optional">
+ <element name="optional">
+ <ref name="db.optional.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>property</db:refname>
+ <db:refpurpose>A unit of data associated with some part of a computer system</db:refpurpose>
+ <define name="db.property.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.property.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.property.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.property">
+ <element name="property">
+ <ref name="db.property.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+ </div>
+</grammar>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/toc.rng b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/toc.rng
new file mode 100644
index 000000000..4394b0f2b
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/toc.rng
@@ -0,0 +1,161 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: toc.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<grammar ns="http://docbook.org/ns/docbook" xmlns:db="http://docbook.org/ns/docbook" xmlns:s="http://purl.oclc.org/dsdl/schematron" xmlns:rng="http://relaxng.org/ns/structure/1.0" xmlns="http://relaxng.org/ns/structure/1.0">
+ <start combine="choice">
+ <choice>
+ <ref name="db.toc"/>
+ <ref name="db.tocdiv"/>
+ </choice>
+ </start>
+ <define name="db.navigation.components" combine="choice">
+ <ref name="db.toc"/>
+ </define>
+ <define name="db.toc.components" combine="choice">
+ <ref name="db.toc"/>
+ </define>
+ <define name="db.toc.pagenum.attribute">
+ <attribute name="pagenum">
+ <db:refpurpose>Indicates the page on which this element occurs in some version of the printed document</db:refpurpose>
+ </attribute>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>toc</db:refname>
+ <db:refpurpose>A table of contents</db:refpurpose>
+ <define name="db.toc.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.toc.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.toc.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+ <define name="db.toc.info">
+ <ref name="db._info.title.only"/>
+ </define>
+ <define name="db.toc">
+ <element name="toc">
+ <ref name="db.toc.attlist"/>
+ <ref name="db.toc.info"/>
+ <zeroOrMore>
+ <ref name="db.all.blocks"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <choice>
+ <ref name="db.tocdiv"/>
+ <ref name="db.tocentry"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>tocdiv</db:refname>
+ <db:refpurpose>A division in a table of contents</db:refpurpose>
+ <define name="db.tocdiv.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.tocdiv.pagenum.attribute">
+ <ref name="db.toc.pagenum.attribute"/>
+ </define>
+ <define name="db.tocdiv.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.tocdiv.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <optional>
+ <ref name="db.tocdiv.pagenum.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.linkend.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.tocdiv.info">
+ <ref name="db._info"/>
+ </define>
+ <define name="db.tocdiv">
+ <element name="tocdiv">
+ <ref name="db.tocdiv.attlist"/>
+ <ref name="db.tocdiv.info"/>
+ <zeroOrMore>
+ <ref name="db.all.blocks"/>
+ </zeroOrMore>
+ <oneOrMore>
+ <choice>
+ <ref name="db.tocdiv"/>
+ <ref name="db.tocentry"/>
+ </choice>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>tocentry</db:refname>
+ <db:refpurpose>A component title in a table of contents</db:refpurpose>
+ <define name="db.tocentry.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.tocentry.pagenum.attribute">
+ <ref name="db.toc.pagenum.attribute"/>
+ </define>
+ <define name="db.tocentry.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.tocentry.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <optional>
+ <ref name="db.tocentry.pagenum.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.linkend.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.tocentry">
+ <element name="tocentry">
+ <ref name="db.tocentry.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+</grammar>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/topic.rng b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/topic.rng
new file mode 100644
index 000000000..4e683c18f
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/topic.rng
@@ -0,0 +1,106 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: hier.rnc 8569 2010-01-15 00:23:46Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<grammar ns="http://docbook.org/ns/docbook" xmlns:db="http://docbook.org/ns/docbook" xmlns:s="http://purl.oclc.org/dsdl/schematron" xmlns:rng="http://relaxng.org/ns/structure/1.0" xmlns:dbx="http://sourceforge.net/projects/docbook/defguide/schema/extra-markup" xmlns="http://relaxng.org/ns/structure/1.0">
+ <start combine="choice">
+ <ref name="db.topic"/>
+ </start>
+ <define name="db.book.components" combine="choice">
+ <zeroOrMore>
+ <ref name="db.topic"/>
+ </zeroOrMore>
+ </define>
+ <define name="db.part.contentmodel" combine="choice">
+ <oneOrMore>
+ <ref name="db.topic"/>
+ </oneOrMore>
+ </define>
+ <define name="db.chapter.contentmodel" combine="choice">
+ <oneOrMore>
+ <ref name="db.topic"/>
+ </oneOrMore>
+ </define>
+ <define name="db.appendix.contentmodel" combine="choice">
+ <oneOrMore>
+ <ref name="db.topic"/>
+ </oneOrMore>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>topic</db:refname>
+ <db:refpurpose>A modular unit of documentation not part of any particular narrative flow</db:refpurpose>
+ <define name="db.topic.status.attribute">
+ <ref name="db.status.attribute"/>
+ </define>
+ <define name="db.topic.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.topic.type.attribute">
+ <attribute name="type">
+ <db:refpurpose>Identifies the topic type</db:refpurpose>
+ </attribute>
+ </define>
+ <define name="db.topic.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.topic.role.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.topic.type.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <ref name="db.label.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.topic.status.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.topic.info">
+ <ref name="db._info.title.req"/>
+ </define>
+ <define name="db.topic">
+ <element name="topic">
+ <ref name="db.topic.attlist"/>
+ <ref name="db.topic.info"/>
+ <zeroOrMore>
+ <ref name="db.navigation.components"/>
+ </zeroOrMore>
+ <ref name="db.toplevel.blocks.or.sections"/>
+ <zeroOrMore>
+ <ref name="db.navigation.components"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ </div>
+</grammar>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/xlink.rng b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/xlink.rng
new file mode 100644
index 000000000..3b1240f4c
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/relaxng/xlink.rng
@@ -0,0 +1,182 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: xlink.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<grammar ns="http://docbook.org/ns/docbook" xmlns:db="http://docbook.org/ns/docbook" xmlns:s="http://purl.oclc.org/dsdl/schematron" xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns:rng="http://relaxng.org/ns/structure/1.0" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
+ <define name="db.info.elements" combine="choice">
+ <ref name="db.extendedlink"/>
+ </define>
+ <define name="db.xlink.from.attribute">
+ <attribute name="xlink:from">
+ <db:refpurpose>Specifies the XLink traversal-from</db:refpurpose>
+ <data type="NMTOKEN"/>
+ </attribute>
+ </define>
+ <define name="db.xlink.label.attribute">
+ <attribute name="xlink:label">
+ <db:refpurpose>Specifies the XLink label</db:refpurpose>
+ <data type="NMTOKEN"/>
+ </attribute>
+ </define>
+ <define name="db.xlink.to.attribute">
+ <attribute name="xlink:to">
+ <db:refpurpose>Specifies the XLink traversal-to</db:refpurpose>
+ <data type="NMTOKEN"/>
+ </attribute>
+ </define>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>extendedlink</db:refname>
+ <db:refpurpose>An XLink extended link</db:refpurpose>
+ <define name="db.extendedlink.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.extendedlink.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.extendedlink.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <optional>
+ <attribute name="xlink:type" a:defaultValue="extended">
+ <db:refpurpose>Identifies the XLink link type </db:refpurpose>
+ <value>extended</value>
+ <a:documentation>An XLink extended link</a:documentation>
+ </attribute>
+ </optional>
+ <optional>
+ <ref name="db.xlink.role.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.xlink.title.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.extendedlink">
+ <element name="extendedlink">
+ <ref name="db.extendedlink.attlist"/>
+ <oneOrMore>
+ <choice>
+ <ref name="db.locator"/>
+ <ref name="db.arc"/>
+ </choice>
+ </oneOrMore>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>locator</db:refname>
+ <db:refpurpose>An XLink locator in an <db:tag>extendedlink</db:tag>
+ </db:refpurpose>
+ <define name="db.locator.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.locator.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.locator.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <optional>
+ <attribute name="xlink:type" a:defaultValue="locator">
+ <db:refpurpose>Identifies the XLink link type </db:refpurpose>
+ <value>locator</value>
+ <a:documentation>An XLink locator link</a:documentation>
+ </attribute>
+ </optional>
+ <ref name="db.xlink.href.attribute"/>
+ <optional>
+ <ref name="db.xlink.role.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.xlink.title.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.xlink.label.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.locator">
+ <element name="locator">
+ <ref name="db.locator.attlist"/>
+ <empty/>
+ </element>
+ </define>
+ </div>
+ <!-- ====================================================================== -->
+ <div>
+ <db:refname>arc</db:refname>
+ <db:refpurpose>An XLink arc in an <db:tag>extendedlink</db:tag>
+ </db:refpurpose>
+ <define name="db.arc.role.attribute">
+ <attribute name="role"/>
+ </define>
+ <define name="db.arc.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.arc.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <optional>
+ <attribute name="xlink:type" a:defaultValue="arc">
+ <db:refpurpose>Identifies the XLink link type </db:refpurpose>
+ <value>arc</value>
+ <a:documentation>An XLink arc link</a:documentation>
+ </attribute>
+ </optional>
+ <optional>
+ <ref name="db.xlink.arcrole.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.xlink.title.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.xlink.show.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.xlink.actuate.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.xlink.from.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.xlink.to.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="db.arc">
+ <element name="arc">
+ <ref name="db.arc.attlist"/>
+ <empty/>
+ </element>
+ </define>
+ </div>
+</grammar>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/admonitions.xsd b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/admonitions.xsd
new file mode 100644
index 000000000..7bda3625c
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/admonitions.xsd
@@ -0,0 +1,134 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: pool.rnc 7466 2007-09-27 14:03:55Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://docbook.org/ns/docbook" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <xs:import namespace="http://docbook.org/ns/docbook-slides" schemaLocation="slides.xsd"/>
+ <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <!-- ====================================================================== -->
+ <xs:element name="db.admonition.blocks" abstract="true"/>
+ <xs:complexType name="db.admonition.contentmodel">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.only"/>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ </xs:sequence>
+ </xs:complexType>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.caution.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.caution.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="caution" substitutionGroup="db:db.admonition.blocks">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="db:db.admonition.contentmodel">
+ <xs:attributeGroup ref="db:db.caution.attlist"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.important.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.important.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="important" substitutionGroup="db:db.admonition.blocks">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="db:db.admonition.contentmodel">
+ <xs:attributeGroup ref="db:db.important.attlist"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.note.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.note.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="note" substitutionGroup="db:db.admonition.blocks">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="db:db.admonition.contentmodel">
+ <xs:attributeGroup ref="db:db.note.attlist"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.tip.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.tip.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="tip" substitutionGroup="db:db.admonition.blocks">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="db:db.admonition.contentmodel">
+ <xs:attributeGroup ref="db:db.tip.attlist"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.warning.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.warning.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="warning" substitutionGroup="db:db.admonition.blocks">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="db:db.admonition.contentmodel">
+ <xs:attributeGroup ref="db:db.warning.attlist"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/annotations.xsd b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/annotations.xsd
new file mode 100644
index 000000000..173daeb57
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/annotations.xsd
@@ -0,0 +1,65 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: annotations.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://docbook.org/ns/docbook" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <xs:import namespace="http://docbook.org/ns/docbook-slides" schemaLocation="slides.xsd"/>
+ <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <xs:attributeGroup name="db.annotations.attribute">
+ <xs:attribute name="annotations" use="required"/>
+ </xs:attributeGroup>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.annotation.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.annotation.annotates.attribute">
+ <xs:attribute name="annotates" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.annotation.attlist">
+ <xs:attribute name="role"/>
+ <xs:attribute name="annotates"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.annotation.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.only"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="annotation">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.annotation.info"/>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.annotation.attlist"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/bibliography.xsd b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/bibliography.xsd
new file mode 100644
index 000000000..1a37beff3
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/bibliography.xsd
@@ -0,0 +1,289 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: bibliography.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://docbook.org/ns/docbook" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <xs:import namespace="http://docbook.org/ns/docbook-slides" schemaLocation="slides.xsd"/>
+ <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.relation.attribute">
+ <xs:attribute name="relation" use="required"/>
+ </xs:attributeGroup>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.biblioentry.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.biblioentry.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="biblioentry">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="db:db.bibliographic.elements"/>
+ <xs:attributeGroup ref="db:db.biblioentry.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.bibliomixed.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.bibliomixed.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="bibliomixed">
+ <xs:complexType mixed="true">
+ <xs:choice>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="db:db._text"/>
+ <xs:element ref="db:honorific"/>
+ <xs:element ref="db:firstname"/>
+ <xs:element ref="db:surname"/>
+ <xs:element ref="db:lineage"/>
+ <xs:element ref="db:othername"/>
+ <xs:group ref="db:db.bibliographic.elements"/>
+ </xs:choice>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="db:db._text"/>
+ <xs:element ref="db:honorific"/>
+ <xs:element ref="db:givenname"/>
+ <xs:element ref="db:surname"/>
+ <xs:element ref="db:lineage"/>
+ <xs:element ref="db:othername"/>
+ <xs:group ref="db:db.bibliographic.elements"/>
+ </xs:choice>
+ </xs:choice>
+ <xs:attributeGroup ref="db:db.bibliomixed.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.biblioset.relation.attribute">
+ <xs:attributeGroup ref="db:db.relation.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.biblioset.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.biblioset.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="relation"/>
+ </xs:attributeGroup>
+ <xs:element name="biblioset">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="db:db.bibliographic.elements"/>
+ <xs:attributeGroup ref="db:db.biblioset.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.bibliomset.relation.attribute">
+ <xs:attributeGroup ref="db:db.relation.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.bibliomset.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.bibliomset.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="relation"/>
+ </xs:attributeGroup>
+ <xs:element name="bibliomset">
+ <xs:complexType mixed="true">
+ <xs:choice>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="db:db._text"/>
+ <xs:element ref="db:honorific"/>
+ <xs:element ref="db:firstname"/>
+ <xs:element ref="db:surname"/>
+ <xs:element ref="db:lineage"/>
+ <xs:element ref="db:othername"/>
+ <xs:group ref="db:db.bibliographic.elements"/>
+ </xs:choice>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="db:db._text"/>
+ <xs:element ref="db:honorific"/>
+ <xs:element ref="db:givenname"/>
+ <xs:element ref="db:surname"/>
+ <xs:element ref="db:lineage"/>
+ <xs:element ref="db:othername"/>
+ <xs:group ref="db:db.bibliographic.elements"/>
+ </xs:choice>
+ </xs:choice>
+ <xs:attributeGroup ref="db:db.bibliomset.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.bibliomisc.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.bibliomisc.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="bibliomisc">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.bibliomisc.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.bibliography.status.attrib">
+ <xs:attributeGroup ref="db:db.status.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.bibliography.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.bibliography.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="label"/>
+ <xs:attribute name="status"/>
+ </xs:attributeGroup>
+ <xs:group name="db.bibliography.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="bibliography">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.bibliography.info"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="db:bibliodiv"/>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="db:biblioentry"/>
+ <xs:element ref="db:bibliomixed"/>
+ </xs:choice>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.bibliography.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.bibliodiv.status.attrib">
+ <xs:attributeGroup ref="db:db.status.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.bibliodiv.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.bibliodiv.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="label"/>
+ <xs:attribute name="status"/>
+ </xs:attributeGroup>
+ <xs:group name="db.bibliodiv.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.req"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="bibliodiv">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.bibliodiv.info"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="db:biblioentry"/>
+ <xs:element ref="db:bibliomixed"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.bibliodiv.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.bibliolist.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.bibliolist.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.bibliolist.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.only"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="bibliolist">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group minOccurs="0" ref="db:db.bibliolist.info"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="db:biblioentry"/>
+ <xs:element ref="db:bibliomixed"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.bibliolist.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.biblioref.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.biblioref.xrefstyle.attribute">
+ <xs:attributeGroup ref="db:db.xrefstyle.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.biblioref.endterm.attribute">
+ <xs:attributeGroup ref="db:db.endterm.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.biblioref.units.attribute">
+ <xs:attribute name="units" use="required" type="xs:token"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.biblioref.begin.attribute">
+ <xs:attribute name="begin" use="required" type="xs:token"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.biblioref.end.attribute">
+ <xs:attribute name="end" use="required" type="xs:token"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.biblioref.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.req.linking.attributes"/>
+ <xs:attribute name="xrefstyle"/>
+ <xs:attribute name="endterm" type="xs:IDREF"/>
+ <xs:attribute name="units" type="xs:token"/>
+ <xs:attribute name="begin" type="xs:token"/>
+ <xs:attribute name="end" type="xs:token"/>
+ </xs:attributeGroup>
+ <xs:element name="biblioref">
+ <xs:complexType>
+ <xs:attributeGroup ref="db:db.biblioref.attlist"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/callouts.xsd b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/callouts.xsd
new file mode 100644
index 000000000..2205a3204
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/callouts.xsd
@@ -0,0 +1,406 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: callouts.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://docbook.org/ns/docbook" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <xs:import namespace="http://docbook.org/ns/docbook-slides" schemaLocation="slides.xsd"/>
+ <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <xs:group name="db.computeroutput.inlines">
+ <xs:choice>
+ <xs:element ref="db:co"/>
+ <xs:element ref="db:db.markup.inlines"/>
+ <xs:choice minOccurs="0">
+ <xs:group ref="db:db.ubiq.inlines"/>
+ <xs:element ref="db:db.os.inlines"/>
+ <xs:element ref="db:db.technical.inlines"/>
+ </xs:choice>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="db.prompt.inlines">
+ <xs:choice>
+ <xs:element ref="db:co"/>
+ <xs:group ref="db:db._text"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="db.systemitem.inlines">
+ <xs:choice>
+ <xs:element ref="db:co"/>
+ <xs:group ref="db:db._text"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="db.userinput.inlines">
+ <xs:choice>
+ <xs:element ref="db:co"/>
+ <xs:element ref="db:db.markup.inlines"/>
+ <xs:group ref="db:db.gui.inlines"/>
+ <xs:group ref="db:db.keyboard.inlines"/>
+ <xs:choice minOccurs="0">
+ <xs:group ref="db:db.ubiq.inlines"/>
+ <xs:element ref="db:db.os.inlines"/>
+ <xs:element ref="db:db.technical.inlines"/>
+ </xs:choice>
+ </xs:choice>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:simpleType name="db.area.units.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="calspair">
+ <xs:annotation>
+ <xs:documentation>Coordinates expressed as a pair of CALS graphic coordinates.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="linecolumn">
+ <xs:annotation>
+ <xs:documentation>Coordinates expressed as a line and column.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="linecolumnpair">
+ <xs:annotation>
+ <xs:documentation>Coordinates expressed as a pair of lines and columns.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="linerange">
+ <xs:annotation>
+ <xs:documentation>Coordinates expressed as a line range.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.area.units-enum.attribute">
+ <xs:attribute name="units" type="db:db.area.units.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.area.units-other.attributes">
+ <xs:attribute name="units">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="other">
+ <xs:annotation>
+ <xs:documentation>Coordinates expressed in some non-standard units.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="otherunits" use="required" type="xs:NMTOKEN"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.area.units.attribute">
+ <xs:attribute name="units">
+ <xs:simpleType>
+ <xs:union memberTypes="db:db.area.units.enumeration">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="other">
+ <xs:annotation>
+ <xs:documentation>Coordinates expressed in some non-standard units.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="otherunits" type="xs:NMTOKEN"/>
+ </xs:attributeGroup>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.calloutlist.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.calloutlist.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.calloutlist.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.only"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="calloutlist">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.calloutlist.info"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:element maxOccurs="unbounded" ref="db:callout"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.calloutlist.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.callout.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.callout.arearefs.attribute">
+ <xs:attribute name="arearefs" use="required" type="xs:IDREFS"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.callout.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.callout.arearefs.attribute"/>
+ </xs:attributeGroup>
+ <xs:element name="callout">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:attributeGroup ref="db:db.callout.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.programlistingco.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.programlistingco.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.programlistingco.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.forbidden"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="programlistingco" substitutionGroup="db:db.verbatim.blocks">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.programlistingco.info"/>
+ <xs:element ref="db:areaspec"/>
+ <xs:element ref="db:programlisting"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:calloutlist"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.programlistingco.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.areaspec.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.areaspec.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attributeGroup ref="db:db.area.units.attribute"/>
+ </xs:attributeGroup>
+ <xs:element name="areaspec">
+ <xs:complexType>
+ <xs:choice maxOccurs="unbounded">
+ <xs:group ref="db:db.area"/>
+ <xs:element ref="db:areaset"/>
+ </xs:choice>
+ <xs:attributeGroup ref="db:db.areaspec.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.area.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.area.linkends.attribute">
+ <xs:attribute name="linkends" use="required" type="xs:IDREFS"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.area.label.attribute">
+ <xs:attribute name="label" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.area.coords.attribute">
+ <xs:attribute name="coords" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.area.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="db:db.common.idreq.attributes"/>
+ <xs:attributeGroup ref="db:db.area.units.attribute"/>
+ <xs:attribute name="linkends" type="xs:IDREFS"/>
+ <xs:attribute ref="xlink:href"/>
+ <xs:attributeGroup ref="xlink:type"/>
+ <xs:attribute ref="xlink:role"/>
+ <xs:attribute ref="xlink:arcrole"/>
+ <xs:attribute ref="xlink:title"/>
+ <xs:attribute ref="xlink:show"/>
+ <xs:attribute ref="xlink:actuate"/>
+ <xs:attribute name="label"/>
+ <xs:attributeGroup ref="db:db.area.coords.attribute"/>
+ </xs:attributeGroup>
+ <xs:group name="db.area">
+ <xs:sequence>
+ <xs:element name="area">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="db:alt"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.area.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <!-- The only difference is that xml:id is optional -->
+ <xs:attributeGroup name="db.area.inareaset.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.area.units.attribute"/>
+ <xs:attribute name="linkends" type="xs:IDREFS"/>
+ <xs:attribute ref="xlink:href"/>
+ <xs:attributeGroup ref="xlink:type"/>
+ <xs:attribute ref="xlink:role"/>
+ <xs:attribute ref="xlink:arcrole"/>
+ <xs:attribute ref="xlink:title"/>
+ <xs:attribute ref="xlink:show"/>
+ <xs:attribute ref="xlink:actuate"/>
+ <xs:attribute name="label"/>
+ <xs:attributeGroup ref="db:db.area.coords.attribute"/>
+ </xs:attributeGroup>
+ <xs:group name="db.area.inareaset">
+ <xs:sequence>
+ <xs:element name="area">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="db:alt"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.area.inareaset.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.areaset.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.areaset.linkends.attribute">
+ <xs:attributeGroup ref="db:db.linkends.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.areaset.label.attribute">
+ <xs:attributeGroup ref="db:db.label.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.areaset.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="db:db.common.idreq.attributes"/>
+ <xs:attributeGroup ref="db:db.area.units.attribute"/>
+ <xs:attribute name="linkends" type="xs:IDREFS"/>
+ <xs:attribute ref="xlink:href"/>
+ <xs:attributeGroup ref="xlink:type"/>
+ <xs:attribute ref="xlink:role"/>
+ <xs:attribute ref="xlink:arcrole"/>
+ <xs:attribute ref="xlink:title"/>
+ <xs:attribute ref="xlink:show"/>
+ <xs:attribute ref="xlink:actuate"/>
+ <xs:attribute name="label"/>
+ </xs:attributeGroup>
+ <xs:element name="areaset">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="db:db.area.inareaset"/>
+ <xs:attributeGroup ref="db:db.areaset.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.screenco.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.screenco.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.screenco.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.forbidden"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="screenco" substitutionGroup="db:db.verbatim.blocks">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.screenco.info"/>
+ <xs:element ref="db:areaspec"/>
+ <xs:element ref="db:screen"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:calloutlist"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.screenco.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.imageobjectco.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.imageobjectco.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.imageobjectco.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.forbidden"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="imageobjectco" substitutionGroup="db:db.mediaobject.content">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.imageobjectco.info"/>
+ <xs:element ref="db:areaspec"/>
+ <xs:element maxOccurs="unbounded" ref="db:imageobject"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:calloutlist"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.imageobjectco.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.co.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.co.linkends.attribute">
+ <xs:attributeGroup ref="db:db.linkends.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.co.label.attribute">
+ <xs:attributeGroup ref="db:db.label.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.co.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="db:db.common.idreq.attributes"/>
+ <xs:attribute name="linkends" type="xs:IDREFS"/>
+ <xs:attribute name="label"/>
+ </xs:attributeGroup>
+ <xs:element name="co">
+ <xs:complexType>
+ <xs:attributeGroup ref="db:db.co.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.coref.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.coref.label.attribute">
+ <xs:attributeGroup ref="db:db.label.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.coref.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.linkend.attribute"/>
+ <xs:attribute name="label"/>
+ </xs:attributeGroup>
+ <xs:element name="coref">
+ <xs:complexType>
+ <xs:attributeGroup ref="db:db.coref.attlist"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/calstbl.xsd b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/calstbl.xsd
new file mode 100644
index 000000000..bf1b4477d
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/calstbl.xsd
@@ -0,0 +1,1425 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: calstbl.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://docbook.org/ns/docbook" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <xs:import namespace="http://docbook.org/ns/docbook-slides" schemaLocation="slides.xsd"/>
+ <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <xs:attributeGroup name="db.char.attribute">
+ <xs:attribute name="char" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.charoff.attribute">
+ <xs:attribute name="charoff" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:decimal">
+ <xs:minExclusive value="0"/>
+ <xs:maxExclusive value="100"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.frame.attribute">
+ <xs:attribute name="frame" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="all">
+ <xs:annotation>
+ <xs:documentation>Frame all four sides of the table. In some environments with limited control over table border formatting, such as HTML, this may imply additional borders.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="bottom">
+ <xs:annotation>
+ <xs:documentation>Frame only the bottom of the table.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="none">
+ <xs:annotation>
+ <xs:documentation>Place no border on the table. In some environments with limited control over table border formatting, such as HTML, this may disable other borders as well.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="sides">
+ <xs:annotation>
+ <xs:documentation>Frame the left and right sides of the table.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="top">
+ <xs:annotation>
+ <xs:documentation>Frame the top of the table.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="topbot">
+ <xs:annotation>
+ <xs:documentation>Frame the top and bottom of the table.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.colsep.attribute">
+ <xs:attribute name="colsep" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="0">
+ <xs:annotation>
+ <xs:documentation>No column separator rule.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="1">
+ <xs:annotation>
+ <xs:documentation>Provide a column separator rule on the right</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.rowsep.attribute">
+ <xs:attribute name="rowsep" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="0">
+ <xs:annotation>
+ <xs:documentation>No row separator rule.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="1">
+ <xs:annotation>
+ <xs:documentation>Provide a row separator rule below</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.orient.attribute">
+ <xs:attribute name="orient" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="land">
+ <xs:annotation>
+ <xs:documentation>90 degrees counter-clockwise from the rest of the text flow.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="port">
+ <xs:annotation>
+ <xs:documentation>The same orientation as the rest of the text flow.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.tabstyle.attribute">
+ <xs:attribute name="tabstyle" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.rowheader.attribute">
+ <xs:attribute name="rowheader" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="firstcol">
+ <xs:annotation>
+ <xs:documentation>Indicates that entries in the first column of the table are functionally row headers (analogous to the way that a thead provides column headers).</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="norowheader">
+ <xs:annotation>
+ <xs:documentation>Indicates that entries in the first column have no special significance with respect to column headers.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.align.attribute">
+ <xs:attribute name="align" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="center">
+ <xs:annotation>
+ <xs:documentation>Centered.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="char">
+ <xs:annotation>
+ <xs:documentation>Aligned on a particular character.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="justify">
+ <xs:annotation>
+ <xs:documentation>Left and right justified.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="left">
+ <xs:annotation>
+ <xs:documentation>Left justified.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="right">
+ <xs:annotation>
+ <xs:documentation>Right justified.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.valign.attribute">
+ <xs:attribute name="valign" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="bottom">
+ <xs:annotation>
+ <xs:documentation>Aligned on the bottom of the entry.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="middle">
+ <xs:annotation>
+ <xs:documentation>Aligned in the middle.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="top">
+ <xs:annotation>
+ <xs:documentation>Aligned at the top of the entry.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.specify-col-by-colname.attributes">
+ <xs:attribute name="colname" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.specify-col-by-namest.attributes">
+ <xs:attribute name="namest" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.specify-span-by-spanspec.attributes">
+ <xs:attribute name="spanname" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.specify-span-directly.attributes">
+ <xs:attribute name="namest" use="required"/>
+ <xs:attribute name="nameend" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.column-spec.attributes">
+ <xs:attribute name="colname"/>
+ <xs:attribute name="namest"/>
+ <xs:attribute name="spanname"/>
+ <xs:attribute name="nameend"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.colname.attribute">
+ <xs:attribute name="colname" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.spanname.attribute">
+ <xs:attribute name="spanname" use="required"/>
+ </xs:attributeGroup>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.tgroup.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.tgroup.tgroupstyle.attribute">
+ <xs:attribute name="tgroupstyle" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.tgroup.cols.attribute">
+ <xs:attribute name="cols" use="required" type="xs:positiveInteger"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.tgroup.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="char"/>
+ <xs:attribute name="charoff">
+ <xs:simpleType>
+ <xs:restriction base="xs:decimal">
+ <xs:minExclusive value="0"/>
+ <xs:maxExclusive value="100"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="tgroupstyle"/>
+ <xs:attributeGroup ref="db:db.tgroup.cols.attribute"/>
+ <xs:attribute name="colsep">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="0">
+ <xs:annotation>
+ <xs:documentation>No column separator rule.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="1">
+ <xs:annotation>
+ <xs:documentation>Provide a column separator rule on the right</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="rowsep">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="0">
+ <xs:annotation>
+ <xs:documentation>No row separator rule.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="1">
+ <xs:annotation>
+ <xs:documentation>Provide a row separator rule below</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="align">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="center">
+ <xs:annotation>
+ <xs:documentation>Centered.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="char">
+ <xs:annotation>
+ <xs:documentation>Aligned on a particular character.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="justify">
+ <xs:annotation>
+ <xs:documentation>Left and right justified.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="left">
+ <xs:annotation>
+ <xs:documentation>Left justified.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="right">
+ <xs:annotation>
+ <xs:documentation>Right justified.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:element name="tgroup">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:colspec"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:spanspec"/>
+ <xs:group minOccurs="0" ref="db:db.cals.thead"/>
+ <xs:group minOccurs="0" ref="db:db.cals.tfoot"/>
+ <xs:group ref="db:db.cals.tbody"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.tgroup.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.colspec.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.colspec.colnum.attribute">
+ <xs:attribute name="colnum" use="required" type="xs:positiveInteger"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.colspec.colwidth.attribute">
+ <xs:attribute name="colwidth" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.colspec.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="colnum" type="xs:positiveInteger"/>
+ <xs:attribute name="char"/>
+ <xs:attribute name="colsep">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="0">
+ <xs:annotation>
+ <xs:documentation>No column separator rule.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="1">
+ <xs:annotation>
+ <xs:documentation>Provide a column separator rule on the right</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="colwidth"/>
+ <xs:attribute name="charoff">
+ <xs:simpleType>
+ <xs:restriction base="xs:decimal">
+ <xs:minExclusive value="0"/>
+ <xs:maxExclusive value="100"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="colname"/>
+ <xs:attribute name="rowsep">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="0">
+ <xs:annotation>
+ <xs:documentation>No row separator rule.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="1">
+ <xs:annotation>
+ <xs:documentation>Provide a row separator rule below</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="align">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="center">
+ <xs:annotation>
+ <xs:documentation>Centered.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="char">
+ <xs:annotation>
+ <xs:documentation>Aligned on a particular character.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="justify">
+ <xs:annotation>
+ <xs:documentation>Left and right justified.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="left">
+ <xs:annotation>
+ <xs:documentation>Left justified.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="right">
+ <xs:annotation>
+ <xs:documentation>Right justified.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:element name="colspec">
+ <xs:complexType>
+ <xs:attributeGroup ref="db:db.colspec.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.spanspec.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.spanspec.namest.attribute">
+ <xs:attribute name="namest" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.spanspec.nameend.attribute">
+ <xs:attribute name="nameend" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.spanspec.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attributeGroup ref="db:db.spanname.attribute"/>
+ <xs:attributeGroup ref="db:db.spanspec.namest.attribute"/>
+ <xs:attributeGroup ref="db:db.spanspec.nameend.attribute"/>
+ <xs:attribute name="char"/>
+ <xs:attribute name="colsep">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="0">
+ <xs:annotation>
+ <xs:documentation>No column separator rule.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="1">
+ <xs:annotation>
+ <xs:documentation>Provide a column separator rule on the right</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="charoff">
+ <xs:simpleType>
+ <xs:restriction base="xs:decimal">
+ <xs:minExclusive value="0"/>
+ <xs:maxExclusive value="100"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="rowsep">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="0">
+ <xs:annotation>
+ <xs:documentation>No row separator rule.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="1">
+ <xs:annotation>
+ <xs:documentation>Provide a row separator rule below</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="align">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="center">
+ <xs:annotation>
+ <xs:documentation>Centered.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="char">
+ <xs:annotation>
+ <xs:documentation>Aligned on a particular character.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="justify">
+ <xs:annotation>
+ <xs:documentation>Left and right justified.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="left">
+ <xs:annotation>
+ <xs:documentation>Left justified.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="right">
+ <xs:annotation>
+ <xs:documentation>Right justified.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:element name="spanspec">
+ <xs:complexType>
+ <xs:attributeGroup ref="db:db.spanspec.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.cals.thead.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.cals.thead.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="valign">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="bottom">
+ <xs:annotation>
+ <xs:documentation>Aligned on the bottom of the entry.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="middle">
+ <xs:annotation>
+ <xs:documentation>Aligned in the middle.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="top">
+ <xs:annotation>
+ <xs:documentation>Aligned at the top of the entry.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:group name="db.cals.thead">
+ <xs:sequence>
+ <xs:element name="thead">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:colspec"/>
+ <xs:group maxOccurs="unbounded" ref="db:db.row"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.cals.thead.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.cals.tfoot.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.cals.tfoot.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="valign">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="bottom">
+ <xs:annotation>
+ <xs:documentation>Aligned on the bottom of the entry.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="middle">
+ <xs:annotation>
+ <xs:documentation>Aligned in the middle.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="top">
+ <xs:annotation>
+ <xs:documentation>Aligned at the top of the entry.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:group name="db.cals.tfoot">
+ <xs:sequence>
+ <xs:element name="tfoot">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:colspec"/>
+ <xs:group maxOccurs="unbounded" ref="db:db.row"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.cals.tfoot.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.cals.tbody.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.cals.tbody.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="valign">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="bottom">
+ <xs:annotation>
+ <xs:documentation>Aligned on the bottom of the entry.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="middle">
+ <xs:annotation>
+ <xs:documentation>Aligned in the middle.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="top">
+ <xs:annotation>
+ <xs:documentation>Aligned at the top of the entry.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:group name="db.cals.tbody">
+ <xs:sequence>
+ <xs:element name="tbody">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="db:db.row"/>
+ <xs:attributeGroup ref="db:db.cals.tbody.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.row.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.row.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="rowsep">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="0">
+ <xs:annotation>
+ <xs:documentation>No row separator rule.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="1">
+ <xs:annotation>
+ <xs:documentation>Provide a row separator rule below</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="valign">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="bottom">
+ <xs:annotation>
+ <xs:documentation>Aligned on the bottom of the entry.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="middle">
+ <xs:annotation>
+ <xs:documentation>Aligned in the middle.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="top">
+ <xs:annotation>
+ <xs:documentation>Aligned at the top of the entry.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:group name="db.row">
+ <xs:sequence>
+ <xs:element name="row">
+ <xs:complexType>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="db:entry"/>
+ <xs:element ref="db:entrytbl"/>
+ </xs:choice>
+ <xs:attributeGroup ref="db:db.row.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.entry.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.entry.morerows.attribute">
+ <xs:attribute name="morerows" use="required" type="xs:integer"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.entry.rotate.attribute">
+ <xs:attribute name="rotate" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="0">
+ <xs:annotation>
+ <xs:documentation>Do not rotate the cell.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="1">
+ <xs:annotation>
+ <xs:documentation>Rotate the cell 90 degrees counter-clockwise.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.entry.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="valign">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="bottom">
+ <xs:annotation>
+ <xs:documentation>Aligned on the bottom of the entry.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="middle">
+ <xs:annotation>
+ <xs:documentation>Aligned in the middle.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="top">
+ <xs:annotation>
+ <xs:documentation>Aligned at the top of the entry.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="char"/>
+ <xs:attribute name="colsep">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="0">
+ <xs:annotation>
+ <xs:documentation>No column separator rule.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="1">
+ <xs:annotation>
+ <xs:documentation>Provide a column separator rule on the right</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="charoff">
+ <xs:simpleType>
+ <xs:restriction base="xs:decimal">
+ <xs:minExclusive value="0"/>
+ <xs:maxExclusive value="100"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="morerows" type="xs:integer"/>
+ <xs:attributeGroup ref="db:db.column-spec.attributes"/>
+ <xs:attribute name="rowsep">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="0">
+ <xs:annotation>
+ <xs:documentation>No row separator rule.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="1">
+ <xs:annotation>
+ <xs:documentation>Provide a row separator rule below</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="rotate">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="0">
+ <xs:annotation>
+ <xs:documentation>Do not rotate the cell.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="1">
+ <xs:annotation>
+ <xs:documentation>Rotate the cell 90 degrees counter-clockwise.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="align">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="center">
+ <xs:annotation>
+ <xs:documentation>Centered.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="char">
+ <xs:annotation>
+ <xs:documentation>Aligned on a particular character.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="justify">
+ <xs:annotation>
+ <xs:documentation>Left and right justified.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="left">
+ <xs:annotation>
+ <xs:documentation>Left justified.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="right">
+ <xs:annotation>
+ <xs:documentation>Right justified.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:element name="entry">
+ <xs:complexType mixed="true">
+ <xs:choice>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ </xs:choice>
+ <xs:attributeGroup ref="db:db.entry.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.entrytbl.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.entrytbl.tgroupstyle.attribute">
+ <xs:attribute name="tgroupstyle" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.entrytbl.cols.attribute">
+ <xs:attribute name="cols" use="required" type="xs:positiveInteger"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.entrytbl.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="char"/>
+ <xs:attribute name="charoff">
+ <xs:simpleType>
+ <xs:restriction base="xs:decimal">
+ <xs:minExclusive value="0"/>
+ <xs:maxExclusive value="100"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="db:db.column-spec.attributes"/>
+ <xs:attribute name="tgroupstyle"/>
+ <xs:attribute name="cols" type="xs:positiveInteger"/>
+ <xs:attribute name="colsep">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="0">
+ <xs:annotation>
+ <xs:documentation>No column separator rule.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="1">
+ <xs:annotation>
+ <xs:documentation>Provide a column separator rule on the right</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="rowsep">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="0">
+ <xs:annotation>
+ <xs:documentation>No row separator rule.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="1">
+ <xs:annotation>
+ <xs:documentation>Provide a row separator rule below</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="align">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="center">
+ <xs:annotation>
+ <xs:documentation>Centered.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="char">
+ <xs:annotation>
+ <xs:documentation>Aligned on a particular character.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="justify">
+ <xs:annotation>
+ <xs:documentation>Left and right justified.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="left">
+ <xs:annotation>
+ <xs:documentation>Left justified.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="right">
+ <xs:annotation>
+ <xs:documentation>Right justified.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:element name="entrytbl">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:colspec"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:spanspec"/>
+ <xs:group minOccurs="0" ref="db:db.cals.entrytbl.thead"/>
+ <xs:group ref="db:db.cals.entrytbl.tbody"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.entrytbl.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.cals.entrytbl.thead.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.cals.entrytbl.thead.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="valign">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="bottom">
+ <xs:annotation>
+ <xs:documentation>Aligned on the bottom of the entry.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="middle">
+ <xs:annotation>
+ <xs:documentation>Aligned in the middle.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="top">
+ <xs:annotation>
+ <xs:documentation>Aligned at the top of the entry.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:group name="db.cals.entrytbl.thead">
+ <xs:sequence>
+ <xs:element name="thead">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:colspec"/>
+ <xs:group maxOccurs="unbounded" ref="db:db.entrytbl.row"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.cals.entrytbl.thead.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.cals.entrytbl.tbody.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.cals.entrytbl.tbody.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="valign">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="bottom">
+ <xs:annotation>
+ <xs:documentation>Aligned on the bottom of the entry.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="middle">
+ <xs:annotation>
+ <xs:documentation>Aligned in the middle.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="top">
+ <xs:annotation>
+ <xs:documentation>Aligned at the top of the entry.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:group name="db.cals.entrytbl.tbody">
+ <xs:sequence>
+ <xs:element name="tbody">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="db:db.entrytbl.row"/>
+ <xs:attributeGroup ref="db:db.cals.entrytbl.tbody.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.entrytbl.row.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.entrytbl.row.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="rowsep">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="0">
+ <xs:annotation>
+ <xs:documentation>No row separator rule.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="1">
+ <xs:annotation>
+ <xs:documentation>Provide a row separator rule below</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="valign">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="bottom">
+ <xs:annotation>
+ <xs:documentation>Aligned on the bottom of the entry.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="middle">
+ <xs:annotation>
+ <xs:documentation>Aligned in the middle.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="top">
+ <xs:annotation>
+ <xs:documentation>Aligned at the top of the entry.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:group name="db.entrytbl.row">
+ <xs:sequence>
+ <xs:element name="row">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="db:entry"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.entrytbl.row.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.cals.table.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.cals.table.label.attribute">
+ <xs:attributeGroup ref="db:db.label.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.cals.table.attlist">
+ <xs:attribute name="role"/>
+ <xs:attribute name="label"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="tabstyle"/>
+ <xs:attribute name="floatstyle"/>
+ <xs:attribute name="orient">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="land">
+ <xs:annotation>
+ <xs:documentation>90 degrees counter-clockwise from the rest of the text flow.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="port">
+ <xs:annotation>
+ <xs:documentation>The same orientation as the rest of the text flow.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="colsep">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="0">
+ <xs:annotation>
+ <xs:documentation>No column separator rule.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="1">
+ <xs:annotation>
+ <xs:documentation>Provide a column separator rule on the right</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="rowsep">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="0">
+ <xs:annotation>
+ <xs:documentation>No row separator rule.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="1">
+ <xs:annotation>
+ <xs:documentation>Provide a row separator rule below</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="frame">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="all">
+ <xs:annotation>
+ <xs:documentation>Frame all four sides of the table. In some environments with limited control over table border formatting, such as HTML, this may imply additional borders.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="bottom">
+ <xs:annotation>
+ <xs:documentation>Frame only the bottom of the table.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="none">
+ <xs:annotation>
+ <xs:documentation>Place no border on the table. In some environments with limited control over table border formatting, such as HTML, this may disable other borders as well.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="sides">
+ <xs:annotation>
+ <xs:documentation>Frame the left and right sides of the table.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="top">
+ <xs:annotation>
+ <xs:documentation>Frame the top of the table.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="topbot">
+ <xs:annotation>
+ <xs:documentation>Frame the top and bottom of the table.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="pgwide" type="db:db.pgwide.enumeration"/>
+ <xs:attribute name="shortentry">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="0">
+ <xs:annotation>
+ <xs:documentation>Indicates that the full title should be used.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="1">
+ <xs:annotation>
+ <xs:documentation>Indicates that the short short title (titleabbrev) should be used.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="tocentry">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="0">
+ <xs:annotation>
+ <xs:documentation>Indicates that the table should not occur in the List of Tables.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="1">
+ <xs:annotation>
+ <xs:documentation>Indicates that the table should appear in the List of Tables.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="rowheader">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="firstcol">
+ <xs:annotation>
+ <xs:documentation>Indicates that entries in the first column of the table are functionally row headers (analogous to the way that a thead provides column headers).</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="norowheader">
+ <xs:annotation>
+ <xs:documentation>Indicates that entries in the first column have no special significance with respect to column headers.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:group name="db.cals.table.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.onlyreq"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="db.cals.table">
+ <xs:sequence>
+ <xs:element name="table">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.cals.table.info"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="db:alt"/>
+ <xs:group ref="db:db.indexing.inlines"/>
+ <xs:element ref="db:textobject"/>
+ </xs:choice>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="db:mediaobject"/>
+ <xs:element maxOccurs="unbounded" ref="db:tgroup"/>
+ </xs:choice>
+ <xs:group minOccurs="0" ref="db:db.caption"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.cals.table.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.cals.informaltable.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.cals.informaltable.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="tabstyle"/>
+ <xs:attribute name="floatstyle"/>
+ <xs:attribute name="orient">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="land">
+ <xs:annotation>
+ <xs:documentation>90 degrees counter-clockwise from the rest of the text flow.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="port">
+ <xs:annotation>
+ <xs:documentation>The same orientation as the rest of the text flow.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="colsep">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="0">
+ <xs:annotation>
+ <xs:documentation>No column separator rule.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="1">
+ <xs:annotation>
+ <xs:documentation>Provide a column separator rule on the right</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="rowsep">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="0">
+ <xs:annotation>
+ <xs:documentation>No row separator rule.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="1">
+ <xs:annotation>
+ <xs:documentation>Provide a row separator rule below</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="frame">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="all">
+ <xs:annotation>
+ <xs:documentation>Frame all four sides of the table. In some environments with limited control over table border formatting, such as HTML, this may imply additional borders.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="bottom">
+ <xs:annotation>
+ <xs:documentation>Frame only the bottom of the table.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="none">
+ <xs:annotation>
+ <xs:documentation>Place no border on the table. In some environments with limited control over table border formatting, such as HTML, this may disable other borders as well.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="sides">
+ <xs:annotation>
+ <xs:documentation>Frame the left and right sides of the table.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="top">
+ <xs:annotation>
+ <xs:documentation>Frame the top of the table.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="topbot">
+ <xs:annotation>
+ <xs:documentation>Frame the top and bottom of the table.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="pgwide" type="db:db.pgwide.enumeration"/>
+ <xs:attribute name="rowheader">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="firstcol">
+ <xs:annotation>
+ <xs:documentation>Indicates that entries in the first column of the table are functionally row headers (analogous to the way that a thead provides column headers).</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="norowheader">
+ <xs:annotation>
+ <xs:documentation>Indicates that entries in the first column have no special significance with respect to column headers.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:group name="db.cals.informaltable.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.forbidden"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="db.cals.informaltable">
+ <xs:sequence>
+ <xs:element name="informaltable">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.cals.informaltable.info"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="db:alt"/>
+ <xs:group ref="db:db.indexing.inlines"/>
+ <xs:element ref="db:textobject"/>
+ </xs:choice>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="db:mediaobject"/>
+ <xs:element maxOccurs="unbounded" ref="db:tgroup"/>
+ </xs:choice>
+ <xs:group minOccurs="0" ref="db:db.caption"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.cals.informaltable.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+</xs:schema>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/core.xsd b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/core.xsd
new file mode 100644
index 000000000..12e7d645e
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/core.xsd
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: docbook.rnc 7466 2007-09-27 14:03:55Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://docbook.org/ns/docbook-slides" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <xs:import namespace="http://docbook.org/ns/docbook" schemaLocation="db.xsd"/>
+ <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+</xs:schema>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/db.xsd b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/db.xsd
new file mode 100644
index 000000000..11664053d
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/db.xsd
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://docbook.org/ns/docbook" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <xs:include schemaLocation="pool.xsd"/>
+ <xs:include schemaLocation="hier.xsd"/>
+ <xs:include schemaLocation="annotations.xsd"/>
+ <xs:include schemaLocation="xlink1.xsd"/>
+ <xs:include schemaLocation="sect1.xsd"/>
+ <xs:include schemaLocation="refentry.xsd"/>
+ <xs:include schemaLocation="refsect1.xsd"/>
+ <xs:include schemaLocation="glossary.xsd"/>
+ <xs:include schemaLocation="bibliography.xsd"/>
+ <xs:include schemaLocation="index.xsd"/>
+ <xs:include schemaLocation="toc.xsd"/>
+ <xs:include schemaLocation="tasks.xsd"/>
+ <xs:include schemaLocation="callouts.xsd"/>
+ <xs:include schemaLocation="ebnf.xsd"/>
+ <xs:include schemaLocation="calstbl.xsd"/>
+ <xs:include schemaLocation="htmltbl.xsd"/>
+ <xs:include schemaLocation="msgset.xsd"/>
+ <xs:include schemaLocation="qandaset.xsd"/>
+ <xs:include schemaLocation="math.xsd"/>
+ <xs:include schemaLocation="mathml.xsd"/>
+ <xs:include schemaLocation="svg.xsd"/>
+ <xs:include schemaLocation="markup.xsd"/>
+ <xs:include schemaLocation="product.xsd"/>
+ <xs:include schemaLocation="gui.xsd"/>
+ <xs:include schemaLocation="keyboard.xsd"/>
+ <xs:include schemaLocation="os.xsd"/>
+ <xs:include schemaLocation="programming.xsd"/>
+ <xs:include schemaLocation="admonitions.xsd"/>
+ <xs:include schemaLocation="error.xsd"/>
+ <xs:include schemaLocation="technical.xsd"/>
+ <xs:include schemaLocation="topic.xsd"/>
+ <xs:import namespace="http://docbook.org/ns/docbook-slides" schemaLocation="slides.xsd"/>
+ <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+</xs:schema>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/docbook.xsd b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/docbook.xsd
new file mode 100644
index 000000000..9fe8fad83
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/docbook.xsd
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://docbook.org/ns/docbook-slides" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <xs:include schemaLocation="docbook1.xsd"/>
+ <xs:import namespace="http://docbook.org/ns/docbook" schemaLocation="db.xsd"/>
+ <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: docbook.rnc 7661 2008-02-06 13:52:59Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+ -->
+</xs:schema>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/docbook1.xsd b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/docbook1.xsd
new file mode 100644
index 000000000..50669f707
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/docbook1.xsd
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: docbook.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://docbook.org/ns/docbook-slides" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <xs:include schemaLocation="core.xsd"/>
+ <xs:import namespace="http://docbook.org/ns/docbook" schemaLocation="db.xsd"/>
+ <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+</xs:schema>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/ebnf.xsd b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/ebnf.xsd
new file mode 100644
index 000000000..08a5f144a
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/ebnf.xsd
@@ -0,0 +1,183 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: ebnf.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://docbook.org/ns/docbook" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <xs:import namespace="http://docbook.org/ns/docbook-slides" schemaLocation="slides.xsd"/>
+ <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.productionset.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.productionset.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.productionset.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.only"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="productionset">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.productionset.info"/>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="db:production"/>
+ <xs:element ref="db:productionrecap"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.productionset.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.production.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.production.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="db:db.common.idreq.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="production">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="db:lhs"/>
+ <xs:element ref="db:rhs"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:constraint"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.production.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.lhs.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.lhs.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="lhs">
+ <xs:complexType mixed="true">
+ <xs:attributeGroup ref="db:db.lhs.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.rhs.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.rhs.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="rhs">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="db:nonterminal"/>
+ <xs:element ref="db:lineannotation"/>
+ <xs:element ref="db:sbr"/>
+ </xs:choice>
+ <xs:attributeGroup ref="db:db.rhs.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.nonterminal.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.nonterminal.def.attribute">
+ <xs:attribute name="def" use="required" type="xs:anyURI"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.nonterminal.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attributeGroup ref="db:db.nonterminal.def.attribute"/>
+ </xs:attributeGroup>
+ <xs:element name="nonterminal" substitutionGroup="db:db.technical.inlines">
+ <xs:complexType mixed="true">
+ <xs:attributeGroup ref="db:db.nonterminal.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.constraint.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.constraint.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.req.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="constraint">
+ <xs:complexType>
+ <xs:attributeGroup ref="db:db.constraint.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.productionrecap.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.productionrecap.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.req.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="productionrecap">
+ <xs:complexType>
+ <xs:attributeGroup ref="db:db.productionrecap.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.constraintdef.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.constraintdef.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.constraintdef.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.only"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="constraintdef">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.constraintdef.info"/>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.constraintdef.attlist"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/error.xsd b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/error.xsd
new file mode 100644
index 000000000..3b08196ef
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/error.xsd
@@ -0,0 +1,97 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: pool.rnc 7466 2007-09-27 14:03:55Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://docbook.org/ns/docbook" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <xs:import namespace="http://docbook.org/ns/docbook-slides" schemaLocation="slides.xsd"/>
+ <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <xs:element name="db.error.inlines" abstract="true"/>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.errorcode.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.errorcode.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="errorcode" substitutionGroup="db:db.error.inlines">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.errorcode.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.errorname.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.errorname.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="errorname" substitutionGroup="db:db.error.inlines">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.errorname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.errortext.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.errortext.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="errortext" substitutionGroup="db:db.error.inlines">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.errortext.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.errortype.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.errortype.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="errortype" substitutionGroup="db:db.error.inlines">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.errortype.attlist"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/glossary.xsd b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/glossary.xsd
new file mode 100644
index 000000000..9a11e8404
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/glossary.xsd
@@ -0,0 +1,319 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: glossary.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://docbook.org/ns/docbook" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <xs:import namespace="http://docbook.org/ns/docbook-slides" schemaLocation="slides.xsd"/>
+ <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <xs:group name="db.glossary.inlines">
+ <xs:choice>
+ <xs:group ref="db:db.firstterm"/>
+ <xs:group ref="db:db.glossterm"/>
+ <xs:group ref="db:db._firstterm"/>
+ <xs:group ref="db:db._glossterm"/>
+ </xs:choice>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.baseform.attribute">
+ <xs:attribute name="baseform"/>
+ </xs:attributeGroup>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.glosslist.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.glosslist.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.glosslist.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.only"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="glosslist">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group minOccurs="0" ref="db:db.glosslist.info"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:element maxOccurs="unbounded" ref="db:glossentry"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.glosslist.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.glossentry.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.glossentry.sortas.attribute">
+ <xs:attribute name="sortas" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.glossentry.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="sortas"/>
+ </xs:attributeGroup>
+ <xs:element name="glossentry">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.glossterm"/>
+ <xs:element minOccurs="0" ref="db:acronym"/>
+ <xs:element minOccurs="0" ref="db:abbrev"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.indexterm"/>
+ <xs:choice>
+ <xs:element ref="db:glosssee"/>
+ <xs:element maxOccurs="unbounded" ref="db:glossdef"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.glossentry.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.glossdef.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.glossdef.subject.attribute">
+ <xs:attribute name="subject" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.glossdef.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="subject"/>
+ </xs:attributeGroup>
+ <xs:element name="glossdef">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:glossseealso"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.glossdef.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.glosssee.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.glosssee.otherterm.attribute">
+ <xs:attribute name="otherterm" use="required" type="xs:IDREF"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.glosssee.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="otherterm" type="xs:IDREF"/>
+ </xs:attributeGroup>
+ <xs:element name="glosssee">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:attributeGroup ref="db:db.glosssee.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.glossseealso.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.glossseealso.otherterm.attribute">
+ <xs:attribute name="otherterm" use="required" type="xs:IDREF"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.glossseealso.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="otherterm" type="xs:IDREF"/>
+ </xs:attributeGroup>
+ <xs:element name="glossseealso">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:attributeGroup ref="db:db.glossseealso.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.firstterm.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.firstterm.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attributeGroup ref="db:db.baseform.attribute"/>
+ </xs:attributeGroup>
+ <xs:group name="db.firstterm">
+ <xs:sequence>
+ <xs:element name="firstterm">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:attributeGroup ref="db:db.firstterm.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db._firstterm.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db._firstterm.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attributeGroup ref="db:db.baseform.attribute"/>
+ </xs:attributeGroup>
+ <xs:group name="db._firstterm">
+ <xs:sequence>
+ <xs:element name="firstterm">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db._firstterm.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.glossterm.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.glossterm.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attributeGroup ref="db:db.baseform.attribute"/>
+ </xs:attributeGroup>
+ <xs:group name="db.glossterm">
+ <xs:sequence>
+ <xs:element name="glossterm">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:attributeGroup ref="db:db.glossterm.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db._glossterm.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db._glossterm.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attributeGroup ref="db:db.baseform.attribute"/>
+ </xs:attributeGroup>
+ <xs:group name="db._glossterm">
+ <xs:sequence>
+ <xs:element name="glossterm">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db._glossterm.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.glossary.status.attribute">
+ <xs:attributeGroup ref="db:db.status.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.glossary.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.glossary.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="label"/>
+ <xs:attribute name="status"/>
+ </xs:attributeGroup>
+ <xs:group name="db.glossary.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="glossary">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.glossary.info"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:glossdiv"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:glossentry"/>
+ </xs:choice>
+ <xs:element minOccurs="0" ref="db:bibliography"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.glossary.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.glossdiv.status.attribute">
+ <xs:attributeGroup ref="db:db.status.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.glossdiv.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.glossdiv.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="label"/>
+ <xs:attribute name="status"/>
+ </xs:attributeGroup>
+ <xs:group name="db.glossdiv.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.req"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="glossdiv">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.glossdiv.info"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:element maxOccurs="unbounded" ref="db:glossentry"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.glossdiv.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.termdef.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.termdef.attlist">
+ <xs:attribute name="role"/>
+ <xs:attribute name="sortas"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attributeGroup ref="db:db.baseform.attribute"/>
+ </xs:attributeGroup>
+ <xs:element name="termdef" substitutionGroup="db:db.technical.inlines">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:attributeGroup ref="db:db.termdef.attlist"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/gui.xsd b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/gui.xsd
new file mode 100644
index 000000000..56fdb04ee
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/gui.xsd
@@ -0,0 +1,218 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: pool.rnc 7466 2007-09-27 14:03:55Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://docbook.org/ns/docbook" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <xs:import namespace="http://docbook.org/ns/docbook-slides" schemaLocation="slides.xsd"/>
+ <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <xs:group name="db.keycombination.contentmodel">
+ <xs:choice>
+ <xs:element ref="db:mousebutton"/>
+ <xs:choice>
+ <xs:element ref="db:keycap"/>
+ <xs:element ref="db:keycombo"/>
+ <xs:element ref="db:keysym"/>
+ </xs:choice>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="db.gui.inlines">
+ <xs:choice>
+ <xs:element ref="db:guiicon"/>
+ <xs:element ref="db:guibutton"/>
+ <xs:element ref="db:guimenuitem"/>
+ <xs:element ref="db:guimenu"/>
+ <xs:element ref="db:guisubmenu"/>
+ <xs:element ref="db:guilabel"/>
+ <xs:element ref="db:menuchoice"/>
+ <xs:element ref="db:mousebutton"/>
+ </xs:choice>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.guibutton.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.guibutton.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="guibutton">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="db:db._text"/>
+ <xs:element ref="db:accel"/>
+ <xs:element ref="db:superscript"/>
+ <xs:element ref="db:subscript"/>
+ </xs:choice>
+ <xs:attributeGroup ref="db:db.guibutton.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.guiicon.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.guiicon.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="guiicon">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="db:db._text"/>
+ <xs:element ref="db:accel"/>
+ <xs:element ref="db:superscript"/>
+ <xs:element ref="db:subscript"/>
+ </xs:choice>
+ <xs:attributeGroup ref="db:db.guiicon.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.guilabel.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.guilabel.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="guilabel">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="db:db._text"/>
+ <xs:element ref="db:accel"/>
+ <xs:element ref="db:superscript"/>
+ <xs:element ref="db:subscript"/>
+ </xs:choice>
+ <xs:attributeGroup ref="db:db.guilabel.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.guimenu.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.guimenu.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="guimenu">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="db:db._text"/>
+ <xs:element ref="db:accel"/>
+ <xs:element ref="db:superscript"/>
+ <xs:element ref="db:subscript"/>
+ </xs:choice>
+ <xs:attributeGroup ref="db:db.guimenu.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.guimenuitem.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.guimenuitem.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="guimenuitem">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="db:db._text"/>
+ <xs:element ref="db:accel"/>
+ <xs:element ref="db:superscript"/>
+ <xs:element ref="db:subscript"/>
+ </xs:choice>
+ <xs:attributeGroup ref="db:db.guimenuitem.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.guisubmenu.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.guisubmenu.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="guisubmenu">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="db:db._text"/>
+ <xs:element ref="db:accel"/>
+ <xs:element ref="db:superscript"/>
+ <xs:element ref="db:subscript"/>
+ </xs:choice>
+ <xs:attributeGroup ref="db:db.guisubmenu.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.menuchoice.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.menuchoice.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="menuchoice">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="db:shortcut"/>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="db:guibutton"/>
+ <xs:element ref="db:guiicon"/>
+ <xs:element ref="db:guilabel"/>
+ <xs:element ref="db:guimenu"/>
+ <xs:element ref="db:guimenuitem"/>
+ <xs:element ref="db:guisubmenu"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.menuchoice.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.mousebutton.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.mousebutton.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="mousebutton">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.mousebutton.attlist"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/hier.xsd b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/hier.xsd
new file mode 100644
index 000000000..59a975045
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/hier.xsd
@@ -0,0 +1,606 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: hier.rnc 8994 2011-04-19 20:07:33Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://docbook.org/ns/docbook" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <xs:import namespace="http://docbook.org/ns/docbook-slides" schemaLocation="slides.xsd"/>
+ <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <xs:attributeGroup name="db.status.attribute">
+ <xs:attribute name="status" use="required"/>
+ </xs:attributeGroup>
+ <!-- ====================================================================== -->
+ <xs:group name="db.toplevel.sections">
+ <xs:choice>
+ <xs:choice>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="db:section"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:simplesect"/>
+ </xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="db:simplesect"/>
+ </xs:choice>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="db:sect1"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:simplesect"/>
+ </xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="db:refentry"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="db.toplevel.blocks.or.sections">
+ <xs:choice>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:group minOccurs="0" ref="db:db.toplevel.sections"/>
+ </xs:sequence>
+ <xs:group ref="db:db.toplevel.sections"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="db.recursive.sections">
+ <xs:choice>
+ <xs:choice>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="db:section"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:simplesect"/>
+ </xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="db:simplesect"/>
+ </xs:choice>
+ <xs:element maxOccurs="unbounded" ref="db:refentry"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="db.recursive.blocks.or.sections">
+ <xs:choice>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:group minOccurs="0" ref="db:db.recursive.sections"/>
+ </xs:sequence>
+ <xs:group ref="db:db.recursive.sections"/>
+ </xs:choice>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:element name="db.divisions" abstract="true"/>
+ <xs:element name="db.components" abstract="true"/>
+ <xs:group name="db.navigation.components">
+ <xs:choice>
+ <xs:element ref="db:glossary"/>
+ <xs:element ref="db:bibliography"/>
+ <xs:element ref="db:index"/>
+ <xs:element ref="db:toc"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="db.component.contentmodel">
+ <xs:sequence>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.navigation.components"/>
+ <xs:group ref="db:db.toplevel.blocks.or.sections"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.navigation.components"/>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:element name="db.setindex.components" abstract="true">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.setindex.info"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:indexdiv"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:indexentry"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.setindex.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:group name="db.toc.components">
+ <xs:sequence>
+ <xs:element ref="db:toc"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="db.set.components" abstract="true"/>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.set.status.attribute">
+ <xs:attributeGroup ref="db:db.status.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.set.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.set.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="label"/>
+ <xs:attribute name="status"/>
+ </xs:attributeGroup>
+ <xs:group name="db.set.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.req"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="set" substitutionGroup="db:db.set.components">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.set.info"/>
+ <xs:group minOccurs="0" ref="db:db.toc.components"/>
+ <xs:element maxOccurs="unbounded" ref="db:db.set.components"/>
+ <xs:element minOccurs="0" ref="db:db.setindex.components"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.set.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:group name="db.book.components">
+ <xs:choice>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="db:db.navigation.components"/>
+ <xs:element ref="db:db.components"/>
+ <xs:element ref="db:db.divisions"/>
+ </xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:topic"/>
+ </xs:choice>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.book.status.attribute">
+ <xs:attributeGroup ref="db:db.status.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.book.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.book.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="label"/>
+ <xs:attribute name="status"/>
+ </xs:attributeGroup>
+ <xs:group name="db.book.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="book" substitutionGroup="db:db.set.components">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.book.info"/>
+ <xs:group ref="db:db.book.components"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.book.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.dedication.status.attribute">
+ <xs:attributeGroup ref="db:db.status.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.dedication.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.dedication.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="label"/>
+ <xs:attribute name="status"/>
+ </xs:attributeGroup>
+ <xs:group name="db.dedication.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="dedication" substitutionGroup="db:db.components">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.dedication.info"/>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.dedication.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.acknowledgements.status.attribute">
+ <xs:attributeGroup ref="db:db.status.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.acknowledgements.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.acknowledgements.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="label"/>
+ <xs:attribute name="status"/>
+ </xs:attributeGroup>
+ <xs:group name="db.acknowledgements.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="acknowledgements" substitutionGroup="db:db.components">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.acknowledgements.info"/>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.acknowledgements.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.colophon.status.attribute">
+ <xs:attributeGroup ref="db:db.status.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.colophon.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.colophon.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="label"/>
+ <xs:attribute name="status"/>
+ </xs:attributeGroup>
+ <xs:group name="db.colophon.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="colophon" substitutionGroup="db:db.components">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.colophon.info"/>
+ <xs:choice>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:simplesect"/>
+ </xs:sequence>
+ <xs:sequence>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:element maxOccurs="unbounded" ref="db:simplesect"/>
+ </xs:sequence>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.colophon.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:group name="db.appendix.contentmodel">
+ <xs:choice>
+ <xs:group ref="db:db.component.contentmodel"/>
+ <xs:element maxOccurs="unbounded" ref="db:topic"/>
+ </xs:choice>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.appendix.status.attribute">
+ <xs:attributeGroup ref="db:db.status.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.appendix.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.appendix.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="label"/>
+ <xs:attribute name="status"/>
+ </xs:attributeGroup>
+ <xs:group name="db.appendix.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.req"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="appendix" substitutionGroup="db:db.components">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.appendix.info"/>
+ <xs:group ref="db:db.appendix.contentmodel"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.appendix.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:group name="db.chapter.contentmodel">
+ <xs:choice>
+ <xs:group ref="db:db.component.contentmodel"/>
+ <xs:element maxOccurs="unbounded" ref="db:topic"/>
+ </xs:choice>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.chapter.status.attribute">
+ <xs:attributeGroup ref="db:db.status.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.chapter.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.chapter.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="label"/>
+ <xs:attribute name="status"/>
+ </xs:attributeGroup>
+ <xs:group name="db.chapter.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.req"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="chapter" substitutionGroup="db:db.components">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.chapter.info"/>
+ <xs:group ref="db:db.chapter.contentmodel"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.chapter.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:group name="db.part.components">
+ <xs:choice>
+ <xs:choice>
+ <xs:group ref="db:db.navigation.components"/>
+ <xs:element ref="db:db.components"/>
+ </xs:choice>
+ <xs:choice>
+ <xs:element ref="db:refentry"/>
+ <xs:element ref="db:reference"/>
+ </xs:choice>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="db.part.contentmodel">
+ <xs:choice>
+ <xs:group maxOccurs="unbounded" ref="db:db.part.components"/>
+ <xs:element maxOccurs="unbounded" ref="db:topic"/>
+ </xs:choice>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.part.status.attribute">
+ <xs:attributeGroup ref="db:db.status.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.part.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.part.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="label"/>
+ <xs:attribute name="status"/>
+ </xs:attributeGroup>
+ <xs:group name="db.part.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.req"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="part" substitutionGroup="db:db.divisions">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.part.info"/>
+ <xs:element minOccurs="0" ref="db:partintro"/>
+ <xs:group ref="db:db.part.contentmodel"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.part.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.preface.status.attribute">
+ <xs:attributeGroup ref="db:db.status.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.preface.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.preface.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="label"/>
+ <xs:attribute name="status"/>
+ </xs:attributeGroup>
+ <xs:group name="db.preface.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.req"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="preface" substitutionGroup="db:db.components">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.preface.info"/>
+ <xs:group ref="db:db.component.contentmodel"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.preface.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.partintro.status.attribute">
+ <xs:attributeGroup ref="db:db.status.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.partintro.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.partintro.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="label"/>
+ <xs:attribute name="status"/>
+ </xs:attributeGroup>
+ <xs:group name="db.partintro.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="partintro">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.partintro.info"/>
+ <xs:group ref="db:db.toplevel.blocks.or.sections"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.partintro.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.section.status.attribute">
+ <xs:attributeGroup ref="db:db.status.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.section.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.section.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="label"/>
+ <xs:attribute name="status"/>
+ </xs:attributeGroup>
+ <xs:group name="db.section.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.req"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="section">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.section.info"/>
+ <xs:group ref="db:db.recursive.blocks.or.sections"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.navigation.components"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.section.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.simplesect.status.attribute">
+ <xs:attributeGroup ref="db:db.status.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.simplesect.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.simplesect.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="label"/>
+ <xs:attribute name="status"/>
+ </xs:attributeGroup>
+ <xs:group name="db.simplesect.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.req"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="simplesect">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.simplesect.info"/>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.simplesect.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:group name="db.article.components">
+ <xs:sequence>
+ <xs:group ref="db:db.toplevel.sections"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="db.article.navcomponents">
+ <xs:choice>
+ <xs:group ref="db:db.navigation.components"/>
+ <xs:element ref="db:acknowledgements"/>
+ <xs:element ref="db:dedication"/>
+ <xs:element ref="db:appendix"/>
+ <xs:element ref="db:colophon"/>
+ </xs:choice>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.article.status.attribute">
+ <xs:attributeGroup ref="db:db.status.attribute"/>
+ </xs:attributeGroup>
+ <xs:simpleType name="db.article.class.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="faq">
+ <xs:annotation>
+ <xs:documentation>A collection of frequently asked questions.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="journalarticle">
+ <xs:annotation>
+ <xs:documentation>An article in a journal or other periodical.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="productsheet">
+ <xs:annotation>
+ <xs:documentation>A description of a product.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="specification">
+ <xs:annotation>
+ <xs:documentation>A specification.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="techreport">
+ <xs:annotation>
+ <xs:documentation>A technical report.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="whitepaper">
+ <xs:annotation>
+ <xs:documentation>A white paper.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.article.class.attribute">
+ <xs:attribute name="class" use="required" type="db:db.article.class.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.article.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.article.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="label"/>
+ <xs:attribute name="status"/>
+ <xs:attribute name="class" type="db:db.article.class.enumeration"/>
+ </xs:attributeGroup>
+ <xs:group name="db.article.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.req"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="article" substitutionGroup="db:db.components">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.article.info"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.article.navcomponents"/>
+ <xs:choice>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:group minOccurs="0" ref="db:db.article.components"/>
+ </xs:sequence>
+ <xs:group ref="db:db.article.components"/>
+ </xs:choice>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.article.navcomponents"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.article.attlist"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/htmltbl.xsd b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/htmltbl.xsd
new file mode 100644
index 000000000..61c68a4ec
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/htmltbl.xsd
@@ -0,0 +1,536 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: htmltbl.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://docbook.org/ns/docbook" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <xs:import namespace="http://docbook.org/ns/docbook-slides" schemaLocation="slides.xsd"/>
+ <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <xs:attributeGroup name="db.html.coreattrs">
+ <xs:attribute name="class"/>
+ <xs:attribute name="style"/>
+ <xs:attribute name="title"/>
+ </xs:attributeGroup>
+ <!-- dir isn't listed here because it's already a common attribute -->
+ <xs:attributeGroup name="db.html.i18n">
+ <xs:attribute name="lang"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.html.events">
+ <xs:attribute name="onclick"/>
+ <xs:attribute name="ondblclick"/>
+ <xs:attribute name="onmousedown"/>
+ <xs:attribute name="onmouseup"/>
+ <xs:attribute name="onmouseover"/>
+ <xs:attribute name="onmousemove"/>
+ <xs:attribute name="onmouseout"/>
+ <xs:attribute name="onkeypress"/>
+ <xs:attribute name="onkeydown"/>
+ <xs:attribute name="onkeyup"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.html.attrs">
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.html.coreattrs"/>
+ <xs:attributeGroup ref="db:db.html.i18n"/>
+ <xs:attributeGroup ref="db:db.html.events"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.html.cellhalign">
+ <xs:attribute name="align">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="left">
+ <xs:annotation>
+ <xs:documentation>Left-flush data/Left-justify text. This is the default value for table data.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="center">
+ <xs:annotation>
+ <xs:documentation>Center data/Center-justify text. This is the default value for table headers.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="right">
+ <xs:annotation>
+ <xs:documentation>Right-flush data/Right-justify text.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="justify">
+ <xs:annotation>
+ <xs:documentation>Double-justify text.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="char">
+ <xs:annotation>
+ <xs:documentation>Align text around a specific character. If a user agent doesn't support character alignment, behavior in the presence of this value is unspecified.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="char"/>
+ <xs:attribute name="charoff">
+ <xs:simpleType>
+ <xs:union memberTypes="xs:integer">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:pattern value="[0-9]+%"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.html.cellvalign">
+ <xs:attribute name="valign">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="top">
+ <xs:annotation>
+ <xs:documentation>Cell data is flush with the top of the cell.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="middle">
+ <xs:annotation>
+ <xs:documentation>Cell data is centered vertically within the cell. This is the default value.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="bottom">
+ <xs:annotation>
+ <xs:documentation>Cell data is flush with the bottom of the cell.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="baseline">
+ <xs:annotation>
+ <xs:documentation>All cells in the same row as a cell whose valign attribute has this value should have their textual data positioned so that the first text line occurs on a baseline common to all cells in the row. This constraint does not apply to subsequent text lines in these cells.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.html.table.attributes">
+ <xs:attribute name="summary"/>
+ <xs:attribute name="width">
+ <xs:simpleType>
+ <xs:union memberTypes="xs:integer">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:pattern value="[0-9]+%"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="border" type="xs:nonNegativeInteger"/>
+ <xs:attribute name="frame">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="void">
+ <xs:annotation>
+ <xs:documentation>No sides. This is the default value.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="above">
+ <xs:annotation>
+ <xs:documentation>The top side only.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="below">
+ <xs:annotation>
+ <xs:documentation>The bottom side only.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="hsides">
+ <xs:annotation>
+ <xs:documentation>The top and bottom sides only.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="lhs">
+ <xs:annotation>
+ <xs:documentation>The left-hand side only.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="rhs">
+ <xs:annotation>
+ <xs:documentation>The right-hand side only.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="vsides">
+ <xs:annotation>
+ <xs:documentation>The right and left sides only.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="box">
+ <xs:annotation>
+ <xs:documentation>All four sides.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="border">
+ <xs:annotation>
+ <xs:documentation>All four sides.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="rules">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="none">
+ <xs:annotation>
+ <xs:documentation>No rules. This is the default value.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="groups">
+ <xs:annotation>
+ <xs:documentation>Rules will appear between row groups (see thead, tfoot, and tbody) and column groups (see colgroup and col) only.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="rows">
+ <xs:annotation>
+ <xs:documentation>Rules will appear between rows only.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="cols">
+ <xs:annotation>
+ <xs:documentation>Rules will appear between columns only.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="all">
+ <xs:annotation>
+ <xs:documentation>Rules will appear between all rows and columns.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="cellspacing">
+ <xs:simpleType>
+ <xs:union memberTypes="xs:integer">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:pattern value="[0-9]+%"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="cellpadding">
+ <xs:simpleType>
+ <xs:union memberTypes="xs:integer">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:pattern value="[0-9]+%"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.html.tablecell.attributes">
+ <xs:attribute name="abbr"/>
+ <xs:attribute name="axis"/>
+ <xs:attribute name="headers"/>
+ <xs:attribute name="scope">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="row">
+ <xs:annotation>
+ <xs:documentation>The current cell provides header information for the rest of the row that contains it</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="col">
+ <xs:annotation>
+ <xs:documentation>The current cell provides header information for the rest of the column that contains it.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="rowgroup">
+ <xs:annotation>
+ <xs:documentation>The header cell provides header information for the rest of the row group that contains it.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="colgroup">
+ <xs:annotation>
+ <xs:documentation>The header cell provides header information for the rest of the column group that contains it.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="rowspan" type="xs:nonNegativeInteger"/>
+ <xs:attribute name="colspan" type="xs:nonNegativeInteger"/>
+ </xs:attributeGroup>
+ <xs:group name="db.html.table.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.forbidden"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:complexType name="db.html.table.model">
+ <xs:sequence>
+ <xs:group minOccurs="0" ref="db:db.html.table.info"/>
+ <xs:group ref="db:db.html.caption"/>
+ <xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:col"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:colgroup"/>
+ </xs:choice>
+ <xs:group minOccurs="0" ref="db:db.html.thead"/>
+ <xs:group minOccurs="0" ref="db:db.html.tfoot"/>
+ <xs:choice>
+ <xs:group maxOccurs="unbounded" ref="db:db.html.tbody"/>
+ <xs:element maxOccurs="unbounded" ref="db:tr"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:group name="db.html.informaltable.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.forbidden"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:complexType name="db.html.informaltable.model">
+ <xs:sequence>
+ <xs:group minOccurs="0" ref="db:db.html.informaltable.info"/>
+ <xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:col"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:colgroup"/>
+ </xs:choice>
+ <xs:group minOccurs="0" ref="db:db.html.thead"/>
+ <xs:group minOccurs="0" ref="db:db.html.tfoot"/>
+ <xs:choice>
+ <xs:group maxOccurs="unbounded" ref="db:db.html.tbody"/>
+ <xs:element maxOccurs="unbounded" ref="db:tr"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:complexType>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.html.table.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.html.table.label.attribute">
+ <xs:attributeGroup ref="db:db.label.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.html.table.attlist">
+ <xs:attributeGroup ref="db:db.html.attrs"/>
+ <xs:attributeGroup ref="db:db.html.table.attributes"/>
+ <xs:attribute name="role"/>
+ <xs:attribute name="label"/>
+ <xs:attribute name="orient">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="land">
+ <xs:annotation>
+ <xs:documentation>90 degrees counter-clockwise from the rest of the text flow.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="port">
+ <xs:annotation>
+ <xs:documentation>The same orientation as the rest of the text flow.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="pgwide" type="db:db.pgwide.enumeration"/>
+ <xs:attribute name="tabstyle"/>
+ <xs:attribute name="floatstyle"/>
+ </xs:attributeGroup>
+ <xs:group name="db.html.table">
+ <xs:sequence>
+ <xs:element name="table">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="db:db.html.table.model">
+ <xs:attributeGroup ref="db:db.html.table.attlist"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.html.informaltable.attlist">
+ <xs:attributeGroup ref="db:db.html.attrs"/>
+ <xs:attributeGroup ref="db:db.html.table.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.html.informaltable">
+ <xs:sequence>
+ <xs:element name="informaltable">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="db:db.html.informaltable.model">
+ <xs:attributeGroup ref="db:db.html.informaltable.attlist"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.html.caption.attlist">
+ <xs:attributeGroup ref="db:db.html.attrs"/>
+ </xs:attributeGroup>
+ <xs:group name="db.html.caption">
+ <xs:sequence>
+ <xs:element name="caption">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:attributeGroup ref="db:db.html.caption.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.html.col.attlist">
+ <xs:attributeGroup ref="db:db.html.attrs"/>
+ <xs:attribute name="span" type="xs:nonNegativeInteger"/>
+ <xs:attribute name="width"/>
+ <xs:attributeGroup ref="db:db.html.cellhalign"/>
+ <xs:attributeGroup ref="db:db.html.cellvalign"/>
+ </xs:attributeGroup>
+ <xs:element name="col">
+ <xs:complexType>
+ <xs:attributeGroup ref="db:db.html.col.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.html.colgroup.attlist">
+ <xs:attributeGroup ref="db:db.html.attrs"/>
+ <xs:attribute name="span" type="xs:nonNegativeInteger"/>
+ <xs:attribute name="width"/>
+ <xs:attributeGroup ref="db:db.html.cellhalign"/>
+ <xs:attributeGroup ref="db:db.html.cellvalign"/>
+ </xs:attributeGroup>
+ <xs:element name="colgroup">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:col"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.html.colgroup.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.html.thead.attlist">
+ <xs:attributeGroup ref="db:db.html.attrs"/>
+ <xs:attributeGroup ref="db:db.html.cellhalign"/>
+ <xs:attributeGroup ref="db:db.html.cellvalign"/>
+ </xs:attributeGroup>
+ <xs:group name="db.html.thead">
+ <xs:sequence>
+ <xs:element name="thead">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="db:tr"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.html.thead.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.html.tfoot.attlist">
+ <xs:attributeGroup ref="db:db.html.attrs"/>
+ <xs:attributeGroup ref="db:db.html.cellhalign"/>
+ <xs:attributeGroup ref="db:db.html.cellvalign"/>
+ </xs:attributeGroup>
+ <xs:group name="db.html.tfoot">
+ <xs:sequence>
+ <xs:element name="tfoot">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="db:tr"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.html.tfoot.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.html.tbody.attlist">
+ <xs:attributeGroup ref="db:db.html.attrs"/>
+ <xs:attributeGroup ref="db:db.html.cellhalign"/>
+ <xs:attributeGroup ref="db:db.html.cellvalign"/>
+ </xs:attributeGroup>
+ <xs:group name="db.html.tbody">
+ <xs:sequence>
+ <xs:element name="tbody">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="db:tr"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.html.tbody.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.html.tr.attlist">
+ <xs:attributeGroup ref="db:db.html.attrs"/>
+ <xs:attributeGroup ref="db:db.html.cellhalign"/>
+ <xs:attributeGroup ref="db:db.html.cellvalign"/>
+ </xs:attributeGroup>
+ <xs:element name="tr">
+ <xs:complexType>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="db:th"/>
+ <xs:element ref="db:td"/>
+ </xs:choice>
+ <xs:attributeGroup ref="db:db.html.tr.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.html.th.attlist">
+ <xs:attributeGroup ref="db:db.html.attrs"/>
+ <xs:attributeGroup ref="db:db.html.tablecell.attributes"/>
+ <xs:attributeGroup ref="db:db.html.cellhalign"/>
+ <xs:attributeGroup ref="db:db.html.cellvalign"/>
+ </xs:attributeGroup>
+ <xs:element name="th">
+ <xs:complexType mixed="true">
+ <xs:choice>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ </xs:choice>
+ <xs:attributeGroup ref="db:db.html.th.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.html.td.attlist">
+ <xs:attributeGroup ref="db:db.html.attrs"/>
+ <xs:attributeGroup ref="db:db.html.tablecell.attributes"/>
+ <xs:attributeGroup ref="db:db.html.cellhalign"/>
+ <xs:attributeGroup ref="db:db.html.cellvalign"/>
+ </xs:attributeGroup>
+ <xs:element name="td">
+ <xs:complexType mixed="true">
+ <xs:choice>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ </xs:choice>
+ <xs:attributeGroup ref="db:db.html.td.attlist"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/index.xsd b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/index.xsd
new file mode 100644
index 000000000..3635f952f
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/index.xsd
@@ -0,0 +1,537 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: index.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://docbook.org/ns/docbook" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <xs:import namespace="http://docbook.org/ns/docbook-slides" schemaLocation="slides.xsd"/>
+ <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <!-- ====================================================================== -->
+ <xs:simpleType name="db.significance.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="normal">
+ <xs:annotation>
+ <xs:documentation>Normal</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="preferred">
+ <xs:annotation>
+ <xs:documentation>Preferred</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.significance.attribute">
+ <xs:attribute name="significance" use="required" type="db:db.significance.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.zone.attribute">
+ <xs:attribute name="zone" use="required" type="xs:IDREFS"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.indexterm.pagenum.attribute">
+ <xs:attribute name="pagenum" use="required"/>
+ </xs:attributeGroup>
+ <xs:simpleType name="db.scope.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="all">
+ <xs:annotation>
+ <xs:documentation>All indexes</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="global">
+ <xs:annotation>
+ <xs:documentation>The global index (as for a combined index of a set of books)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="local">
+ <xs:annotation>
+ <xs:documentation>The local index (the index for this document only)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.scope.attribute">
+ <xs:attribute name="scope" use="required" type="db:db.scope.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.sortas.attribute">
+ <xs:attribute name="sortas" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.index.type.attribute">
+ <xs:attribute name="type" use="required"/>
+ </xs:attributeGroup>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.itermset.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.itermset.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="itermset">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="db:db.indexterm.singular"/>
+ <xs:attributeGroup ref="db:db.itermset.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:complexType name="db.indexterm.contentmodel">
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="db:primary"/>
+ <xs:choice minOccurs="0">
+ <xs:sequence>
+ <xs:element ref="db:secondary"/>
+ <xs:choice minOccurs="0">
+ <xs:sequence>
+ <xs:element ref="db:tertiary"/>
+ <xs:choice minOccurs="0">
+ <xs:element ref="db:see"/>
+ <xs:element maxOccurs="unbounded" ref="db:seealso"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:element ref="db:see"/>
+ <xs:element maxOccurs="unbounded" ref="db:seealso"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:element ref="db:see"/>
+ <xs:element maxOccurs="unbounded" ref="db:seealso"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:complexType>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.indexterm.singular.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.indexterm.singular.class.attribute">
+ <xs:attribute name="class" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="singular">
+ <xs:annotation>
+ <xs:documentation>A singular index term</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.indexterm.singular.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="significance" type="db:db.significance.enumeration"/>
+ <xs:attribute name="zone" type="xs:IDREFS"/>
+ <xs:attribute name="pagenum"/>
+ <xs:attribute name="scope" type="db:db.scope.enumeration"/>
+ <xs:attribute name="type"/>
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="singular">
+ <xs:annotation>
+ <xs:documentation>A singular index term</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:group name="db.indexterm.singular">
+ <xs:sequence>
+ <xs:element name="indexterm">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="db:db.indexterm.contentmodel">
+ <xs:attributeGroup ref="db:db.indexterm.singular.attlist"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.indexterm.startofrange.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.indexterm.startofrange.class.attribute">
+ <xs:attribute name="class" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="startofrange">
+ <xs:annotation>
+ <xs:documentation>The start of a range</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.indexterm.startofrange.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="significance" type="db:db.significance.enumeration"/>
+ <xs:attribute name="zone" type="xs:IDREFS"/>
+ <xs:attribute name="pagenum"/>
+ <xs:attribute name="scope" type="db:db.scope.enumeration"/>
+ <xs:attribute name="type"/>
+ <xs:attributeGroup ref="db:db.indexterm.startofrange.class.attribute"/>
+ </xs:attributeGroup>
+ <xs:group name="db.indexterm.startofrange">
+ <xs:sequence>
+ <xs:element name="indexterm">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="db:db.indexterm.contentmodel">
+ <xs:attributeGroup ref="db:db.indexterm.startofrange.attlist"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.indexterm.endofrange.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.indexterm.endofrange.class.attribute">
+ <xs:attribute name="class" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="endofrange">
+ <xs:annotation>
+ <xs:documentation>The end of a range</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.indexterm.endofrange.startref.attribute">
+ <xs:attribute name="startref" use="required" type="xs:IDREF"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.indexterm.endofrange.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attributeGroup ref="db:db.indexterm.endofrange.class.attribute"/>
+ <xs:attributeGroup ref="db:db.indexterm.endofrange.startref.attribute"/>
+ </xs:attributeGroup>
+ <xs:group name="db.indexterm.endofrange">
+ <xs:sequence>
+ <xs:element name="indexterm">
+ <xs:complexType>
+ <xs:attributeGroup ref="db:db.indexterm.endofrange.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:group name="db.indexterm">
+ <xs:choice>
+ <xs:group ref="db:db.indexterm.singular"/>
+ <xs:group ref="db:db.indexterm.startofrange"/>
+ <xs:group ref="db:db.indexterm.endofrange"/>
+ </xs:choice>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.primary.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.primary.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="sortas"/>
+ </xs:attributeGroup>
+ <xs:element name="primary">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:attributeGroup ref="db:db.primary.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.secondary.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.secondary.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="sortas"/>
+ </xs:attributeGroup>
+ <xs:element name="secondary">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:attributeGroup ref="db:db.secondary.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.tertiary.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.tertiary.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="sortas"/>
+ </xs:attributeGroup>
+ <xs:element name="tertiary">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:attributeGroup ref="db:db.tertiary.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.see.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.see.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="see">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:attributeGroup ref="db:db.see.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.seealso.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.seealso.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="seealso">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:attributeGroup ref="db:db.seealso.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.index.status.attribute">
+ <xs:attributeGroup ref="db:db.status.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.index.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.index.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="label"/>
+ <xs:attribute name="status"/>
+ <xs:attribute name="type"/>
+ </xs:attributeGroup>
+ <xs:group name="db.index.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info"/>
+ </xs:sequence>
+ </xs:group>
+ <!--
+ Yes, db.indexdiv* and db.indexentry*; that way an <index/> is valid.
+ Authors can use an empty index to indicate where a generated index should
+ appear.
+ -->
+ <xs:element name="index">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.index.info"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:indexdiv"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:indexentry"/>
+ <xs:element ref="db:segmentedlist"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.index.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.setindex.status.attribute">
+ <xs:attributeGroup ref="db:db.status.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.setindex.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.setindex.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="label"/>
+ <xs:attribute name="status"/>
+ <xs:attribute name="type"/>
+ </xs:attributeGroup>
+ <xs:group name="db.setindex.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="setindex" substitutionGroup="db:db.setindex.components"/>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.indexdiv.status.attribute">
+ <xs:attributeGroup ref="db:db.status.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.indexdiv.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.indexdiv.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="label"/>
+ <xs:attribute name="status"/>
+ </xs:attributeGroup>
+ <xs:group name="db.indexdiv.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.req"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="indexdiv">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.indexdiv.info"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="db:indexentry"/>
+ <xs:element ref="db:segmentedlist"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.indexdiv.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.indexentry.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.indexentry.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="indexentry">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="db:primaryie"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="db:seeie"/>
+ <xs:element ref="db:seealsoie"/>
+ </xs:choice>
+ <xs:sequence minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="db:secondaryie"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="db:seeie"/>
+ <xs:element ref="db:seealsoie"/>
+ <xs:element ref="db:tertiaryie"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.indexentry.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.primaryie.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.primaryie.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attribute name="linkends" type="xs:IDREFS"/>
+ </xs:attributeGroup>
+ <xs:element name="primaryie">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:attributeGroup ref="db:db.primaryie.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.secondaryie.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.secondaryie.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attribute name="linkends" type="xs:IDREFS"/>
+ </xs:attributeGroup>
+ <xs:element name="secondaryie">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:attributeGroup ref="db:db.secondaryie.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.tertiaryie.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.tertiaryie.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attribute name="linkends" type="xs:IDREFS"/>
+ </xs:attributeGroup>
+ <xs:element name="tertiaryie">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:attributeGroup ref="db:db.tertiaryie.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.seeie.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.seeie.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attribute name="linkend" type="xs:IDREF"/>
+ </xs:attributeGroup>
+ <xs:element name="seeie">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:attributeGroup ref="db:db.seeie.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.seealsoie.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.seealsoie.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attribute name="linkends" type="xs:IDREFS"/>
+ </xs:attributeGroup>
+ <xs:element name="seealsoie">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:attributeGroup ref="db:db.seealsoie.attlist"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/keyboard.xsd b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/keyboard.xsd
new file mode 100644
index 000000000..26ca4d79a
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/keyboard.xsd
@@ -0,0 +1,350 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: pool.rnc 7466 2007-09-27 14:03:55Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://docbook.org/ns/docbook" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <xs:import namespace="http://docbook.org/ns/docbook-slides" schemaLocation="slides.xsd"/>
+ <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <xs:group name="db.keyboard.inlines">
+ <xs:choice>
+ <xs:element ref="db:keycombo"/>
+ <xs:element ref="db:keycap"/>
+ <xs:element ref="db:keycode"/>
+ <xs:element ref="db:keysym"/>
+ <xs:element ref="db:shortcut"/>
+ <xs:element ref="db:accel"/>
+ </xs:choice>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:simpleType name="db.keycap.function.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="alt">
+ <xs:annotation>
+ <xs:documentation>The "Alt" key</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="backspace">
+ <xs:annotation>
+ <xs:documentation>The "Backspace" key</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="command">
+ <xs:annotation>
+ <xs:documentation>The "Command" key</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="control">
+ <xs:annotation>
+ <xs:documentation>The "Control" key</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="delete">
+ <xs:annotation>
+ <xs:documentation>The "Delete" key</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="down">
+ <xs:annotation>
+ <xs:documentation>The down arrow</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="end">
+ <xs:annotation>
+ <xs:documentation>The "End" key</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="enter">
+ <xs:annotation>
+ <xs:documentation>The "Enter" or "Return" key</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="escape">
+ <xs:annotation>
+ <xs:documentation>The "Escape" key</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="home">
+ <xs:annotation>
+ <xs:documentation>The "Home" key</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="insert">
+ <xs:annotation>
+ <xs:documentation>The "Insert" key</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="left">
+ <xs:annotation>
+ <xs:documentation>The left arrow</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="meta">
+ <xs:annotation>
+ <xs:documentation>The "Meta" key</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="option">
+ <xs:annotation>
+ <xs:documentation>The "Option" key</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="pagedown">
+ <xs:annotation>
+ <xs:documentation>The page down key</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="pageup">
+ <xs:annotation>
+ <xs:documentation>The page up key</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="right">
+ <xs:annotation>
+ <xs:documentation>The right arrow</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="shift">
+ <xs:annotation>
+ <xs:documentation>The "Shift" key</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="space">
+ <xs:annotation>
+ <xs:documentation>The spacebar</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="tab">
+ <xs:annotation>
+ <xs:documentation>The "Tab" key</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="up">
+ <xs:annotation>
+ <xs:documentation>The up arrow</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.keycap.function-enum.attribute">
+ <xs:attribute name="function" type="db:db.keycap.function.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.keycap.function-other.attributes">
+ <xs:attribute name="function">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="other">
+ <xs:annotation>
+ <xs:documentation>Indicates a non-standard function key</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="otherfunction" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.keycap.function.attrib">
+ <xs:attribute name="function">
+ <xs:simpleType>
+ <xs:union memberTypes="db:db.keycap.function.enumeration">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="other">
+ <xs:annotation>
+ <xs:documentation>Indicates a non-standard function key</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="otherfunction"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.keycap.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.keycap.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attributeGroup ref="db:db.keycap.function.attrib"/>
+ </xs:attributeGroup>
+ <xs:element name="keycap">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.keycap.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.keycode.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.keycode.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="keycode">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.keycode.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:simpleType name="db.keycombo.action.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="click">
+ <xs:annotation>
+ <xs:documentation>A (single) mouse click.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="double-click">
+ <xs:annotation>
+ <xs:documentation>A double mouse click.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="press">
+ <xs:annotation>
+ <xs:documentation>A mouse or key press.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="seq">
+ <xs:annotation>
+ <xs:documentation>Sequential clicks or presses.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="simul">
+ <xs:annotation>
+ <xs:documentation>Simultaneous clicks or presses.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.keycombo.action-enum.attribute">
+ <xs:attribute name="action" type="db:db.keycombo.action.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.keycombo.action-other.attributes">
+ <xs:attribute name="action">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="other">
+ <xs:annotation>
+ <xs:documentation>Indicates a non-standard action</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="otheraction" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.keycombo.action.attrib">
+ <xs:attribute name="action">
+ <xs:simpleType>
+ <xs:union memberTypes="db:db.keycombo.action.enumeration">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="other">
+ <xs:annotation>
+ <xs:documentation>Indicates a non-standard action</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="otheraction"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.keycombo.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.keycombo.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attributeGroup ref="db:db.keycombo.action.attrib"/>
+ </xs:attributeGroup>
+ <xs:element name="keycombo">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="db:db.keycombination.contentmodel"/>
+ <xs:attributeGroup ref="db:db.keycombo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.keysym.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.keysym.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="keysym">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.keysym.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.accel.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.accel.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="accel">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.accel.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.shortcut.action.attrib">
+ <xs:attributeGroup ref="db:db.keycombo.action.attrib"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.shortcut.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.shortcut.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attributeGroup ref="db:db.shortcut.action.attrib"/>
+ </xs:attributeGroup>
+ <xs:element name="shortcut">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="db:db.keycombination.contentmodel"/>
+ <xs:attributeGroup ref="db:db.shortcut.attlist"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/markup.xsd b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/markup.xsd
new file mode 100644
index 000000000..d550bd5d3
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/markup.xsd
@@ -0,0 +1,284 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: pool.rnc 7466 2007-09-27 14:03:55Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://docbook.org/ns/docbook" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <xs:import namespace="http://docbook.org/ns/docbook-slides" schemaLocation="slides.xsd"/>
+ <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <xs:element name="db.markup.inlines" abstract="true"/>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.markup.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.markup.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="markup" substitutionGroup="db:db.markup.inlines">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.markup.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.tag.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:simpleType name="db.tag.class.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="attribute">
+ <xs:annotation>
+ <xs:documentation>An attribute</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="attvalue">
+ <xs:annotation>
+ <xs:documentation>An attribute value</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="element">
+ <xs:annotation>
+ <xs:documentation>An element</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="emptytag">
+ <xs:annotation>
+ <xs:documentation>An empty element tag</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="endtag">
+ <xs:annotation>
+ <xs:documentation>An end tag</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="genentity">
+ <xs:annotation>
+ <xs:documentation>A general entity</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="localname">
+ <xs:annotation>
+ <xs:documentation>The local name part of a qualified name</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="namespace">
+ <xs:annotation>
+ <xs:documentation>A namespace</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="numcharref">
+ <xs:annotation>
+ <xs:documentation>A numeric character reference</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="paramentity">
+ <xs:annotation>
+ <xs:documentation>A parameter entity</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="pi">
+ <xs:annotation>
+ <xs:documentation>A processing instruction</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="prefix">
+ <xs:annotation>
+ <xs:documentation>The prefix part of a qualified name</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="comment">
+ <xs:annotation>
+ <xs:documentation>An SGML comment</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="starttag">
+ <xs:annotation>
+ <xs:documentation>A start tag</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="xmlpi">
+ <xs:annotation>
+ <xs:documentation>An XML processing instruction</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.tag.class.attribute">
+ <xs:attribute name="class" use="required" type="db:db.tag.class.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.tag.namespace.attribute">
+ <xs:attribute name="namespace" use="required" type="xs:anyURI"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.tag.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="class" type="db:db.tag.class.enumeration"/>
+ <xs:attribute name="namespace" type="xs:anyURI"/>
+ </xs:attributeGroup>
+ <xs:element name="tag" substitutionGroup="db:db.markup.inlines">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.tag.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.symbol.class.attribute">
+ <xs:attribute name="class" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="limit">
+ <xs:annotation>
+ <xs:documentation>The value is a limit of some kind</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.symbol.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.symbol.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="limit">
+ <xs:annotation>
+ <xs:documentation>The value is a limit of some kind</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:element name="symbol" substitutionGroup="db:db.markup.inlines">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.symbol.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.token.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.token.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="token" substitutionGroup="db:db.markup.inlines">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.token.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.literal.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.literal.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="literal" substitutionGroup="db:db.markup.inlines">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.literal.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="code.language.attribute">
+ <xs:attribute name="language" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.code.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.code.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="language"/>
+ </xs:attributeGroup>
+ <xs:element name="code" substitutionGroup="db:db.markup.inlines">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="db:db.programming.inlines"/>
+ <xs:group ref="db:db._text"/>
+ </xs:choice>
+ <xs:attributeGroup ref="db:db.code.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.constant.class.attribute">
+ <xs:attribute name="class" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="limit">
+ <xs:annotation>
+ <xs:documentation>The value is a limit of some kind</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.constant.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.constant.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="limit">
+ <xs:annotation>
+ <xs:documentation>The value is a limit of some kind</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:element name="constant" substitutionGroup="db:db.markup.inlines">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.constant.attlist"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/math.xsd b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/math.xsd
new file mode 100644
index 000000000..032568a99
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/math.xsd
@@ -0,0 +1,156 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: math.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://docbook.org/ns/docbook" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <xs:import namespace="http://docbook.org/ns/docbook-slides" schemaLocation="slides.xsd"/>
+ <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <xs:element name="db.math.inlines" abstract="true">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="db:alt"/>
+ <xs:group ref="db:db.inlineequation.content"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.inlineequation.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:group name="db.initializer.inlines">
+ <xs:choice>
+ <xs:element ref="db:mathphrase"/>
+ <xs:element ref="db:db.markup.inlines"/>
+ <xs:group ref="db:db._text"/>
+ </xs:choice>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:group name="db.equation.content">
+ <xs:choice>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="db:mediaobject"/>
+ <xs:element maxOccurs="unbounded" ref="db:mathphrase"/>
+ </xs:choice>
+ <xs:group maxOccurs="unbounded" ref="dbs:db._any.mml"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="db.inlineequation.content">
+ <xs:choice>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="db:inlinemediaobject"/>
+ <xs:element maxOccurs="unbounded" ref="db:mathphrase"/>
+ </xs:choice>
+ <xs:group maxOccurs="unbounded" ref="dbs:db._any.mml"/>
+ </xs:choice>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.equation.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.equation.label.attribute">
+ <xs:attributeGroup ref="db:db.label.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.equation.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="label"/>
+ <xs:attribute name="pgwide" type="db:db.pgwide.enumeration"/>
+ <xs:attribute name="floatstyle"/>
+ </xs:attributeGroup>
+ <xs:group name="db.equation.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.only"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="equation">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.equation.info"/>
+ <xs:element minOccurs="0" ref="db:alt"/>
+ <xs:group ref="db:db.equation.content"/>
+ <xs:group minOccurs="0" ref="db:db.caption"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.equation.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.informalequation.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.informalequation.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.informalequation.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.forbidden"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="informalequation">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.informalequation.info"/>
+ <xs:element minOccurs="0" ref="db:alt"/>
+ <xs:group ref="db:db.equation.content"/>
+ <xs:group minOccurs="0" ref="db:db.caption"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.informalequation.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.inlineequation.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.inlineequation.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="inlineequation" substitutionGroup="db:db.math.inlines"/>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.mathphrase.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.mathphrase.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="mathphrase">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="db:db._text"/>
+ <xs:group ref="db:db.ubiq.inlines"/>
+ <xs:group ref="db:db._emphasis"/>
+ </xs:choice>
+ <xs:attributeGroup ref="db:db.mathphrase.attlist"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/mathml.xsd b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/mathml.xsd
new file mode 100644
index 000000000..9814b90a9
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/mathml.xsd
@@ -0,0 +1,82 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: mathml.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://docbook.org/ns/docbook" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <xs:import namespace="http://docbook.org/ns/docbook-slides" schemaLocation="slides.xsd"/>
+ <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <!-- ============================================================ -->
+ <xs:attributeGroup name="db.imagedata.mathml.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.imagedata.mathml.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attribute name="format">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="mathml">
+ <xs:annotation>
+ <xs:documentation>Specifies MathML.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="align" type="db:db.imagedata.align.enumeration"/>
+ <xs:attribute name="valign" type="db:db.imagedata.valign.enumeration"/>
+ <xs:attribute name="width"/>
+ <xs:attribute name="contentwidth"/>
+ <xs:attribute name="scalefit" type="db:db.imagedata.scalefit.enumeration"/>
+ <xs:attribute name="scale" type="xs:positiveInteger"/>
+ <xs:attribute name="depth"/>
+ <xs:attribute name="contentdepth"/>
+ </xs:attributeGroup>
+ <xs:group name="db.imagedata.mathml.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.forbidden"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="db.imagedata.mathml">
+ <xs:sequence>
+ <xs:element name="imagedata">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.imagedata.mathml.info"/>
+ <xs:group maxOccurs="unbounded" ref="dbs:db._any.mml"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.imagedata.mathml.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ============================================================ -->
+</xs:schema>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/msgset.xsd b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/msgset.xsd
new file mode 100644
index 000000000..c7f8bb0c9
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/msgset.xsd
@@ -0,0 +1,309 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: msgset.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://docbook.org/ns/docbook" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <xs:import namespace="http://docbook.org/ns/docbook-slides" schemaLocation="slides.xsd"/>
+ <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.msgset.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.msgset.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.msgset.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.only"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="msgset">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.msgset.info"/>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="db:msgentry"/>
+ <xs:element maxOccurs="unbounded" ref="db:simplemsgentry"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.msgset.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.msgentry.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.msgentry.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="msgentry">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="db:msg"/>
+ <xs:element minOccurs="0" ref="db:msginfo"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:msgexplan"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.msgentry.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.simplemsgentry.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.simplemsgentry.msgaud.attribute">
+ <xs:attribute name="msgaud" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.simplemsgentry.msgorig.attribute">
+ <xs:attribute name="msgorig" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.simplemsgentry.msglevel.attribute">
+ <xs:attribute name="msglevel" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.simplemsgentry.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="msgaud"/>
+ <xs:attribute name="msgorig"/>
+ <xs:attribute name="msglevel"/>
+ </xs:attributeGroup>
+ <xs:element name="simplemsgentry">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="db:msgtext"/>
+ <xs:element maxOccurs="unbounded" ref="db:msgexplan"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.simplemsgentry.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.msg.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.msg.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.msg.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.only"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="msg">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.msg.info"/>
+ <xs:element ref="db:msgmain"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="db:msgsub"/>
+ <xs:element ref="db:msgrel"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.msg.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.msgmain.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.msgmain.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.msgmain.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.only"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="msgmain">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.msgmain.info"/>
+ <xs:element ref="db:msgtext"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.msgmain.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.msgsub.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.msgsub.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.msgsub.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.only"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="msgsub">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.msgsub.info"/>
+ <xs:element ref="db:msgtext"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.msgsub.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.msgrel.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.msgrel.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.msgrel.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.only"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="msgrel">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.msgrel.info"/>
+ <xs:element ref="db:msgtext"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.msgrel.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.msgtext.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.msgtext.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="msgtext">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:attributeGroup ref="db:db.msgtext.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.msginfo.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.msginfo.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="msginfo">
+ <xs:complexType>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="db:msglevel"/>
+ <xs:element ref="db:msgorig"/>
+ <xs:element ref="db:msgaud"/>
+ </xs:choice>
+ <xs:attributeGroup ref="db:db.msginfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.msglevel.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.msglevel.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="msglevel">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.msglevel.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.msgorig.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.msgorig.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="msgorig">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.msgorig.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.msgaud.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.msgaud.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="msgaud">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.msgaud.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.msgexplan.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.msgexplan.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.msgexplan.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.only"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="msgexplan">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.msgexplan.info"/>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.msgexplan.attlist"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/os.xsd b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/os.xsd
new file mode 100644
index 000000000..8bd46d0aa
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/os.xsd
@@ -0,0 +1,369 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: pool.rnc 7466 2007-09-27 14:03:55Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://docbook.org/ns/docbook" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <xs:import namespace="http://docbook.org/ns/docbook-slides" schemaLocation="slides.xsd"/>
+ <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <xs:element name="db.synopsis.blocks" abstract="true"/>
+ <xs:element name="db.os.inlines" abstract="true"/>
+ <!-- ====================================================================== -->
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.prompt.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.prompt.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="prompt" substitutionGroup="db:db.os.inlines">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.prompt.inlines"/>
+ <xs:attributeGroup ref="db:db.prompt.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.envar.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.envar.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="envar" substitutionGroup="db:db.os.inlines">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.envar.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:simpleType name="db.filename.class.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="devicefile">
+ <xs:annotation>
+ <xs:documentation>A device</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="directory">
+ <xs:annotation>
+ <xs:documentation>A directory</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="extension">
+ <xs:annotation>
+ <xs:documentation>A filename extension</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="headerfile">
+ <xs:annotation>
+ <xs:documentation>A header file (as for a programming language)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="libraryfile">
+ <xs:annotation>
+ <xs:documentation>A library file</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="partition">
+ <xs:annotation>
+ <xs:documentation>A partition (as of a hard disk)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="symlink">
+ <xs:annotation>
+ <xs:documentation>A symbolic link</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.filename.class.attribute">
+ <xs:attribute name="class" use="required" type="db:db.filename.class.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.filename.path.attribute">
+ <xs:attribute name="path" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.filename.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.filename.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="path"/>
+ <xs:attribute name="class" type="db:db.filename.class.enumeration"/>
+ </xs:attributeGroup>
+ <xs:element name="filename" substitutionGroup="db:db.os.inlines">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.filename.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.command.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.command.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="command" substitutionGroup="db:db.os.inlines">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.command.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.computeroutput.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.computeroutput.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="computeroutput" substitutionGroup="db:db.os.inlines">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.computeroutput.inlines"/>
+ <xs:attributeGroup ref="db:db.computeroutput.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.userinput.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.userinput.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="userinput" substitutionGroup="db:db.os.inlines">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.userinput.inlines"/>
+ <xs:attributeGroup ref="db:db.userinput.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.cmdsynopsis.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.cmdsynopsis.sepchar.attribute">
+ <xs:attribute name="sepchar" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.cmdsynopsis.cmdlength.attribute">
+ <xs:attribute name="cmdlength" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.cmdsynopsis.label.attribute">
+ <xs:attributeGroup ref="db:db.label.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.cmdsynopsis.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="sepchar"/>
+ <xs:attribute name="cmdlength"/>
+ <xs:attribute name="label"/>
+ </xs:attributeGroup>
+ <xs:group name="db.cmdsynopsis.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.forbidden"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="cmdsynopsis" substitutionGroup="db:db.synopsis.blocks">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.cmdsynopsis.info"/>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="db:command"/>
+ <xs:element ref="db:arg"/>
+ <xs:group ref="db:db.group"/>
+ <xs:element ref="db:sbr"/>
+ </xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:synopfragment"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.cmdsynopsis.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:simpleType name="db.rep.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="norepeat">
+ <xs:annotation>
+ <xs:documentation>Can not be repeated.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="repeat">
+ <xs:annotation>
+ <xs:documentation>Can be repeated.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.rep.attribute">
+ <xs:attribute name="rep" use="required" type="db:db.rep.enumeration"/>
+ </xs:attributeGroup>
+ <xs:simpleType name="db.choice.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="opt">
+ <xs:annotation>
+ <xs:documentation>Formatted to indicate that it is optional.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="plain">
+ <xs:annotation>
+ <xs:documentation>Formatted without indication.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="req">
+ <xs:annotation>
+ <xs:documentation>Formatted to indicate that it is required.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.choice.opt.attribute">
+ <xs:attribute name="choice" use="required" type="db:db.choice.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.choice.req.attribute">
+ <xs:attribute name="choice" use="required" type="db:db.choice.enumeration"/>
+ </xs:attributeGroup>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.arg.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.arg.rep.attribute">
+ <xs:attributeGroup ref="db:db.rep.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.arg.choice.attribute">
+ <xs:attributeGroup ref="db:db.choice.opt.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.arg.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="rep" type="db:db.rep.enumeration"/>
+ <xs:attribute name="choice" type="db:db.choice.enumeration"/>
+ </xs:attributeGroup>
+ <xs:element name="arg">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="db:db._text"/>
+ <xs:element ref="db:arg"/>
+ <xs:group ref="db:db.group"/>
+ <xs:element ref="db:option"/>
+ <xs:element ref="db:synopfragmentref"/>
+ <xs:element ref="db:sbr"/>
+ </xs:choice>
+ <xs:attributeGroup ref="db:db.arg.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.group.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.group.rep.attribute">
+ <xs:attributeGroup ref="db:db.rep.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.group.choice.attribute">
+ <xs:attributeGroup ref="db:db.choice.opt.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.group.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="rep" type="db:db.rep.enumeration"/>
+ <xs:attribute name="choice" type="db:db.choice.enumeration"/>
+ </xs:attributeGroup>
+ <xs:group name="db.group">
+ <xs:sequence>
+ <xs:element name="group">
+ <xs:complexType>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="db:arg"/>
+ <xs:group ref="db:db.group"/>
+ <xs:element ref="db:option"/>
+ <xs:element ref="db:synopfragmentref"/>
+ <xs:element ref="db:replaceable"/>
+ <xs:element ref="db:sbr"/>
+ </xs:choice>
+ <xs:attributeGroup ref="db:db.group.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.sbr.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.sbr.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="sbr">
+ <xs:complexType>
+ <xs:attributeGroup ref="db:db.sbr.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.synopfragment.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.synopfragment.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="synopfragment">
+ <xs:complexType>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="db:arg"/>
+ <xs:group ref="db:db.group"/>
+ </xs:choice>
+ <xs:attributeGroup ref="db:db.synopfragment.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.synopfragmentref.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.synopfragmentref.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.linkend.attribute"/>
+ </xs:attributeGroup>
+ <xs:element name="synopfragmentref">
+ <xs:complexType mixed="true">
+ <xs:attributeGroup ref="db:db.synopfragmentref.attlist"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/pool.xsd b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/pool.xsd
new file mode 100644
index 000000000..c0ecb6ec5
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/pool.xsd
@@ -0,0 +1,4834 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: pool.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://docbook.org/ns/docbook" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <xs:import namespace="http://docbook.org/ns/docbook-slides" schemaLocation="slides.xsd"/>
+ <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <!-- ====================================================================== -->
+ <!--
+ The start tokens are somewhat arbitrary. To resolve RFE #1899655, the
+ TC concluded that anything with an info element was a reasonable start
+ element. That's mostly what has been done, with a few extra elements
+ where the patterns seemed to warrant it. If you need more, just ask.
+ -->
+ <!-- ====================================================================== -->
+ <xs:group name="db._any">
+ <xs:sequence>
+ <xs:any processContents="skip"/>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.arch.attribute">
+ <xs:attribute name="arch" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.audience.attribute">
+ <xs:attribute name="audience" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.condition.attribute">
+ <xs:attribute name="condition" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.conformance.attribute">
+ <xs:attribute name="conformance" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.os.attribute">
+ <xs:attribute name="os" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.revision.attribute">
+ <xs:attribute name="revision" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.security.attribute">
+ <xs:attribute name="security" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.userlevel.attribute">
+ <xs:attribute name="userlevel" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.vendor.attribute">
+ <xs:attribute name="vendor" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.wordsize.attribute">
+ <xs:attribute name="wordsize" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.effectivity.attributes">
+ <xs:attribute name="arch"/>
+ <xs:attribute name="audience"/>
+ <xs:attribute name="condition"/>
+ <xs:attribute name="conformance"/>
+ <xs:attribute name="os"/>
+ <xs:attribute name="revision"/>
+ <xs:attribute name="security"/>
+ <xs:attribute name="userlevel"/>
+ <xs:attribute name="vendor"/>
+ <xs:attribute name="wordsize"/>
+ </xs:attributeGroup>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.endterm.attribute">
+ <xs:attribute name="endterm" use="required" type="xs:IDREF"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.linkend.attribute">
+ <xs:attribute name="linkend" use="required" type="xs:IDREF"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.linkends.attribute">
+ <xs:attribute name="linkends" use="required" type="xs:IDREFS"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.xlink.href.attribute">
+ <xs:attribute ref="xlink:href" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.xlink.type.attribute">
+ <xs:attributeGroup ref="xlink:type"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.xlink.role.attribute">
+ <xs:attribute ref="xlink:role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.xlink.arcrole.attribute">
+ <xs:attribute ref="xlink:arcrole" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.xlink.title.attribute">
+ <xs:attribute ref="xlink:title" use="required"/>
+ </xs:attributeGroup>
+ <xs:simpleType name="db.xlink.show.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="new">
+ <xs:annotation>
+ <xs:documentation>An application traversing to the ending resource should load it in a new window, frame, pane, or other relevant presentation context.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="replace">
+ <xs:annotation>
+ <xs:documentation>An application traversing to the ending resource should load the resource in the same window, frame, pane, or other relevant presentation context in which the starting resource was loaded.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="embed">
+ <xs:annotation>
+ <xs:documentation>An application traversing to the ending resource should load its presentation in place of the presentation of the starting resource.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="other">
+ <xs:annotation>
+ <xs:documentation>The behavior of an application traversing to the ending resource is unconstrained by XLink. The application should look for other markup present in the link to determine the appropriate behavior.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="none">
+ <xs:annotation>
+ <xs:documentation>The behavior of an application traversing to the ending resource is unconstrained by this specification. No other markup is present to help the application determine the appropriate behavior.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.xlink.show.attribute">
+ <xs:attribute ref="xlink:show" use="required"/>
+ </xs:attributeGroup>
+ <xs:simpleType name="db.xlink.actuate.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="onLoad">
+ <xs:annotation>
+ <xs:documentation>An application should traverse to the ending resource immediately on loading the starting resource.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="onRequest">
+ <xs:annotation>
+ <xs:documentation>An application should traverse from the starting resource to the ending resource only on a post-loading event triggered for the purpose of traversal.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="other">
+ <xs:annotation>
+ <xs:documentation>The behavior of an application traversing to the ending resource is unconstrained by this specification. The application should look for other markup present in the link to determine the appropriate behavior.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="none">
+ <xs:annotation>
+ <xs:documentation>The behavior of an application traversing to the ending resource is unconstrained by this specification. No other markup is present to help the application determine the appropriate behavior.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.xlink.actuate.attribute">
+ <xs:attribute ref="xlink:actuate" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.href.attributes">
+ <xs:attributeGroup ref="db:db.xlink.href.attribute"/>
+ <xs:attributeGroup ref="xlink:type"/>
+ <xs:attribute ref="xlink:role"/>
+ <xs:attribute ref="xlink:arcrole"/>
+ <xs:attribute ref="xlink:title"/>
+ <xs:attribute ref="xlink:show"/>
+ <xs:attribute ref="xlink:actuate"/>
+ </xs:attributeGroup>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.xml.id.attribute">
+ <xs:attribute ref="xml:id" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.version.attribute">
+ <xs:attribute name="version" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.xml.lang.attribute">
+ <xs:attribute ref="xml:lang" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.xml.base.attribute">
+ <xs:attribute ref="xml:base" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.remap.attribute">
+ <xs:attribute name="remap" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.xreflabel.attribute">
+ <xs:attribute name="xreflabel" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.xrefstyle.attribute">
+ <xs:attribute name="xrefstyle" use="required"/>
+ </xs:attributeGroup>
+ <xs:simpleType name="db.revisionflag.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="changed">
+ <xs:annotation>
+ <xs:documentation>The element has been changed.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="added">
+ <xs:annotation>
+ <xs:documentation>The element is new (has been added to the document).</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="deleted">
+ <xs:annotation>
+ <xs:documentation>The element has been deleted.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="off">
+ <xs:annotation>
+ <xs:documentation>Explicitly turns off revision markup for this element.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.revisionflag.attribute">
+ <xs:attribute name="revisionflag" use="required" type="db:db.revisionflag.enumeration"/>
+ </xs:attributeGroup>
+ <xs:simpleType name="db.dir.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="ltr">
+ <xs:annotation>
+ <xs:documentation>Left-to-right text</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="rtl">
+ <xs:annotation>
+ <xs:documentation>Right-to-left text</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="lro">
+ <xs:annotation>
+ <xs:documentation>Left-to-right override</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="rlo">
+ <xs:annotation>
+ <xs:documentation>Right-to-left override</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.dir.attribute">
+ <xs:attribute name="dir" use="required" type="db:db.dir.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.common.base.attributes">
+ <xs:attribute name="version"/>
+ <xs:attribute ref="xml:lang"/>
+ <xs:attribute ref="xml:base"/>
+ <xs:attribute name="remap"/>
+ <xs:attribute name="xreflabel"/>
+ <xs:attribute name="revisionflag" type="db:db.revisionflag.enumeration"/>
+ <xs:attribute name="dir" type="db:db.dir.enumeration"/>
+ <xs:attributeGroup ref="db:db.effectivity.attributes"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.common.idreq.attributes">
+ <xs:attributeGroup ref="db:db.xml.id.attribute"/>
+ <xs:attributeGroup ref="db:db.common.base.attributes"/>
+ <xs:attribute name="annotations"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.common.linking.attributes">
+ <xs:attribute name="linkend" type="xs:IDREF"/>
+ <xs:attribute ref="xlink:href"/>
+ <xs:attributeGroup ref="xlink:type"/>
+ <xs:attribute ref="xlink:role"/>
+ <xs:attribute ref="xlink:arcrole"/>
+ <xs:attribute ref="xlink:title"/>
+ <xs:attribute ref="xlink:show"/>
+ <xs:attribute ref="xlink:actuate"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.common.req.linking.attributes">
+ <xs:attribute name="linkend" type="xs:IDREF"/>
+ <xs:attribute ref="xlink:href"/>
+ <xs:attributeGroup ref="xlink:type"/>
+ <xs:attribute ref="xlink:role"/>
+ <xs:attribute ref="xlink:arcrole"/>
+ <xs:attribute ref="xlink:title"/>
+ <xs:attribute ref="xlink:show"/>
+ <xs:attribute ref="xlink:actuate"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.common.data.attributes">
+ <xs:attribute name="format"/>
+ <xs:attribute name="fileref" type="xs:anyURI"/>
+ <xs:attribute name="entityref" type="xs:ENTITY"/>
+ </xs:attributeGroup>
+ <!-- ====================================================================== -->
+ <xs:simpleType name="db.verbatim.continuation.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="continues">
+ <xs:annotation>
+ <xs:documentation>Line numbering continues from the immediately preceding element with the same name.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="restarts">
+ <xs:annotation>
+ <xs:documentation>Line numbering restarts (begins at 1, usually).</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.verbatim.continuation.attribute">
+ <xs:attribute name="continuation" use="required" type="db:db.verbatim.continuation.enumeration"/>
+ </xs:attributeGroup>
+ <xs:simpleType name="db.verbatim.linenumbering.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="numbered">
+ <xs:annotation>
+ <xs:documentation>Lines are numbered.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="unnumbered">
+ <xs:annotation>
+ <xs:documentation>Lines are not numbered.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.verbatim.linenumbering.attribute">
+ <xs:attribute name="linenumbering" use="required" type="db:db.verbatim.linenumbering.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.verbatim.startinglinenumber.attribute">
+ <xs:attribute name="startinglinenumber" use="required" type="xs:integer"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.verbatim.language.attribute">
+ <xs:attribute name="language" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.verbatim.xml.space.attribute">
+ <xs:attributeGroup ref="xml:space"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.verbatim.attributes">
+ <xs:attribute name="continuation" type="db:db.verbatim.continuation.enumeration"/>
+ <xs:attribute name="linenumbering" type="db:db.verbatim.linenumbering.enumeration"/>
+ <xs:attribute name="startinglinenumber" type="xs:integer"/>
+ <xs:attribute name="language"/>
+ <xs:attributeGroup ref="xml:space"/>
+ </xs:attributeGroup>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.label.attribute">
+ <xs:attribute name="label" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.width.characters.attribute">
+ <xs:attribute name="width" use="required" type="xs:nonNegativeInteger"/>
+ </xs:attributeGroup>
+ <xs:simpleType name="db.spacing.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="compact">
+ <xs:annotation>
+ <xs:documentation>The spacing should be "compact".</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="normal">
+ <xs:annotation>
+ <xs:documentation>The spacing should be "normal".</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.spacing.attribute">
+ <xs:attribute name="spacing" use="required" type="db:db.spacing.enumeration"/>
+ </xs:attributeGroup>
+ <xs:simpleType name="db.pgwide.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="0">
+ <xs:annotation>
+ <xs:documentation>The element should be rendered in the current text flow (with the flow column width).</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="1">
+ <xs:annotation>
+ <xs:documentation>The element should be rendered across the full text page.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.pgwide.attribute">
+ <xs:attribute name="pgwide" use="required" type="db:db.pgwide.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.language.attribute">
+ <xs:attribute name="language" use="required"/>
+ </xs:attributeGroup>
+ <xs:simpleType name="db.performance.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="optional">
+ <xs:annotation>
+ <xs:documentation>The content describes an optional step or steps.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="required">
+ <xs:annotation>
+ <xs:documentation>The content describes a required step or steps.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.performance.attribute">
+ <xs:attribute name="performance" use="required" type="db:db.performance.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.floatstyle.attribute">
+ <xs:attribute name="floatstyle" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.width.attribute">
+ <xs:attribute name="width" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.depth.attribute">
+ <xs:attribute name="depth" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.contentwidth.attribute">
+ <xs:attribute name="contentwidth" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.contentdepth.attribute">
+ <xs:attribute name="contentdepth" use="required"/>
+ </xs:attributeGroup>
+ <xs:simpleType name="db.scalefit.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="0">
+ <xs:annotation>
+ <xs:documentation>False (do not scale-to-fit; anamorphic scaling may occur)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="1">
+ <xs:annotation>
+ <xs:documentation>True (scale-to-fit; anamorphic scaling is forbidden)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.scale.attribute">
+ <xs:attribute name="scale" use="required" type="xs:positiveInteger"/>
+ </xs:attributeGroup>
+ <!-- ====================================================================== -->
+ <xs:simpleType name="db.halign.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="center">
+ <xs:annotation>
+ <xs:documentation>Centered horizontally</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="char">
+ <xs:annotation>
+ <xs:documentation>Aligned horizontally on the specified character</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="justify">
+ <xs:annotation>
+ <xs:documentation>Fully justified (left and right margins or edges)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="left">
+ <xs:annotation>
+ <xs:documentation>Left aligned</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="right">
+ <xs:annotation>
+ <xs:documentation>Right aligned</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="db.valign.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="bottom">
+ <xs:annotation>
+ <xs:documentation>Aligned on the bottom of the region</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="middle">
+ <xs:annotation>
+ <xs:documentation>Centered vertically</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="top">
+ <xs:annotation>
+ <xs:documentation>Aligned on the top of the region</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <!-- ====================================================================== -->
+ <xs:simpleType name="db.biblio.class.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="doi">
+ <xs:annotation>
+ <xs:documentation>A digital object identifier.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="isbn">
+ <xs:annotation>
+ <xs:documentation>An international standard book number.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="isrn">
+ <xs:annotation>
+ <xs:documentation>An international standard technical report number (ISO 10444).</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="issn">
+ <xs:annotation>
+ <xs:documentation>An international standard serial number.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="libraryofcongress">
+ <xs:annotation>
+ <xs:documentation>A Library of Congress reference number.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="pubsnumber">
+ <xs:annotation>
+ <xs:documentation>A publication number (an internal number or possibly organizational standard).</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="uri">
+ <xs:annotation>
+ <xs:documentation>A Uniform Resource Identifier</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.biblio.class-enum.attribute">
+ <xs:attribute name="class" type="db:db.biblio.class.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.biblio.class-other.attribute">
+ <xs:attribute name="otherclass" use="required" type="xs:NMTOKEN"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.biblio.class-other.attributes">
+ <xs:attribute name="class" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="other">
+ <xs:annotation>
+ <xs:documentation>Indicates that the identifier is some 'other' kind.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="db:db.biblio.class-other.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.biblio.class.attribute">
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:union memberTypes="db:db.biblio.class.enumeration">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="other">
+ <xs:annotation>
+ <xs:documentation>Indicates that the identifier is some 'other' kind.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="otherclass" type="xs:NMTOKEN"/>
+ </xs:attributeGroup>
+ <!-- ====================================================================== -->
+ <xs:group name="db.ubiq.inlines">
+ <xs:choice>
+ <xs:choice>
+ <xs:element ref="db:inlinemediaobject"/>
+ <xs:element ref="db:remark"/>
+ <xs:group ref="db:db.link.inlines"/>
+ <xs:element ref="db:alt"/>
+ <xs:element ref="db:trademark"/>
+ <xs:element ref="db:abbrev"/>
+ <xs:element ref="db:acronym"/>
+ <xs:element ref="db:date"/>
+ <xs:group ref="db:db._emphasis"/>
+ <xs:element ref="db:footnote"/>
+ <xs:element ref="db:footnoteref"/>
+ <xs:group ref="db:db._foreignphrase"/>
+ <xs:group ref="db:db._phrase"/>
+ <xs:group ref="db:db._quote"/>
+ <xs:element ref="db:subscript"/>
+ <xs:element ref="db:superscript"/>
+ <xs:element ref="db:wordasword"/>
+ </xs:choice>
+ <xs:element ref="db:annotation"/>
+ <xs:choice>
+ <xs:group ref="db:db._firstterm"/>
+ <xs:group ref="db:db._glossterm"/>
+ </xs:choice>
+ <xs:group ref="db:db.indexterm"/>
+ <xs:element ref="db:coref"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="db._text">
+ <xs:sequence>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="db:db.ubiq.inlines"/>
+ <xs:group ref="db:db._phrase"/>
+ <xs:element ref="db:replaceable"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="db._title">
+ <xs:sequence>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="db:title"/>
+ <xs:element ref="db:titleabbrev"/>
+ <xs:element ref="db:subtitle"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="db._title.req">
+ <xs:sequence>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="db:title"/>
+ <xs:element ref="db:titleabbrev"/>
+ <xs:element ref="db:subtitle"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="db._title.only">
+ <xs:sequence>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="db:title"/>
+ <xs:element ref="db:titleabbrev"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="db._title.onlyreq">
+ <xs:sequence>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="db:title"/>
+ <xs:element ref="db:titleabbrev"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="db._info">
+ <xs:choice>
+ <xs:sequence>
+ <xs:group ref="db:db._title"/>
+ <xs:group minOccurs="0" ref="db:db.titleforbidden.info"/>
+ </xs:sequence>
+ <xs:group minOccurs="0" ref="db:db.info"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="db._info.title.req">
+ <xs:choice>
+ <xs:sequence>
+ <xs:group ref="db:db._title.req"/>
+ <xs:group minOccurs="0" ref="db:db.titleforbidden.info"/>
+ </xs:sequence>
+ <xs:group ref="db:db.titlereq.info"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="db._info.title.only">
+ <xs:choice>
+ <xs:sequence>
+ <xs:group ref="db:db._title.only"/>
+ <xs:group minOccurs="0" ref="db:db.titleforbidden.info"/>
+ </xs:sequence>
+ <xs:group ref="db:db.titleonly.info"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="db._info.title.onlyreq">
+ <xs:choice>
+ <xs:sequence>
+ <xs:group ref="db:db._title.onlyreq"/>
+ <xs:group minOccurs="0" ref="db:db.titleforbidden.info"/>
+ </xs:sequence>
+ <xs:group ref="db:db.titleonlyreq.info"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="db._info.title.forbidden">
+ <xs:sequence>
+ <xs:group minOccurs="0" ref="db:db.titleforbidden.info"/>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:group name="db.all.inlines">
+ <xs:sequence>
+ <xs:choice minOccurs="0">
+ <xs:group ref="db:db.ubiq.inlines"/>
+ <xs:group ref="db:db.general.inlines"/>
+ <xs:group ref="db:db.domain.inlines"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="db.general.inlines">
+ <xs:choice>
+ <xs:group ref="db:db.publishing.inlines"/>
+ <xs:element ref="db:db.product.inlines"/>
+ <xs:element ref="db:db.bibliography.inlines"/>
+ <xs:element ref="db:db.graphic.inlines"/>
+ <xs:group ref="db:db.indexing.inlines"/>
+ <xs:group ref="db:db.link.inlines"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="db.domain.inlines">
+ <xs:choice>
+ <xs:element ref="db:db.technical.inlines"/>
+ <xs:element ref="db:db.math.inlines"/>
+ <xs:element ref="db:db.markup.inlines"/>
+ <xs:group ref="db:db.gui.inlines"/>
+ <xs:group ref="db:db.keyboard.inlines"/>
+ <xs:element ref="db:db.os.inlines"/>
+ <xs:group ref="db:db.programming.inlines"/>
+ <xs:element ref="db:db.error.inlines"/>
+ </xs:choice>
+ </xs:group>
+ <xs:element name="db.technical.inlines" abstract="true"/>
+ <xs:element name="db.product.inlines" abstract="true"/>
+ <xs:element name="db.bibliography.inlines" abstract="true"/>
+ <xs:group name="db.publishing.inlines">
+ <xs:choice>
+ <xs:choice>
+ <xs:element ref="db:abbrev"/>
+ <xs:element ref="db:acronym"/>
+ <xs:element ref="db:date"/>
+ <xs:group ref="db:db.emphasis"/>
+ <xs:element ref="db:footnote"/>
+ <xs:element ref="db:footnoteref"/>
+ <xs:group ref="db:db.foreignphrase"/>
+ <xs:group ref="db:db.phrase"/>
+ <xs:group ref="db:db.quote"/>
+ <xs:element ref="db:subscript"/>
+ <xs:element ref="db:superscript"/>
+ <xs:element ref="db:wordasword"/>
+ </xs:choice>
+ <xs:group ref="db:db.glossary.inlines"/>
+ <xs:element ref="db:coref"/>
+ </xs:choice>
+ </xs:group>
+ <xs:element name="db.graphic.inlines" abstract="true">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.inlinemediaobject.info"/>
+ <xs:element minOccurs="0" ref="db:alt"/>
+ <xs:element maxOccurs="unbounded" ref="db:db.mediaobject.content"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.inlinemediaobject.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:group name="db.indexing.inlines">
+ <xs:sequence>
+ <xs:group ref="db:db.indexterm"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="db.link.inlines">
+ <xs:choice>
+ <xs:choice>
+ <xs:element ref="db:xref"/>
+ <xs:element ref="db:link"/>
+ <xs:element ref="db:olink"/>
+ <xs:element ref="db:anchor"/>
+ </xs:choice>
+ <xs:element ref="db:biblioref"/>
+ </xs:choice>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:group name="db.nopara.blocks">
+ <xs:choice>
+ <xs:choice>
+ <xs:group ref="db:db.list.blocks"/>
+ <xs:group ref="db:db.formal.blocks"/>
+ <xs:group ref="db:db.informal.blocks"/>
+ <xs:element ref="db:db.publishing.blocks"/>
+ <xs:element ref="db:db.graphic.blocks"/>
+ <xs:group ref="db:db.technical.blocks"/>
+ <xs:element ref="db:db.verbatim.blocks"/>
+ <xs:element ref="db:bridgehead"/>
+ <xs:element ref="db:remark"/>
+ <xs:element ref="db:revhistory"/>
+ </xs:choice>
+ <xs:group ref="db:db.indexterm"/>
+ <xs:element ref="db:db.synopsis.blocks"/>
+ <xs:element ref="db:db.admonition.blocks"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="db.para.blocks">
+ <xs:choice>
+ <xs:element ref="db:anchor"/>
+ <xs:element ref="db:para"/>
+ <xs:element ref="db:formalpara"/>
+ <xs:element ref="db:simpara"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="db.all.blocks">
+ <xs:choice>
+ <xs:choice>
+ <xs:group ref="db:db.nopara.blocks"/>
+ <xs:group ref="db:db.para.blocks"/>
+ </xs:choice>
+ <xs:element ref="db:annotation"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="db.formal.blocks">
+ <xs:choice>
+ <xs:choice>
+ <xs:element ref="db:example"/>
+ <xs:element ref="db:figure"/>
+ <xs:group ref="db:db.table"/>
+ </xs:choice>
+ <xs:element ref="db:equation"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="db.informal.blocks">
+ <xs:choice>
+ <xs:choice>
+ <xs:element ref="db:informalexample"/>
+ <xs:element ref="db:informalfigure"/>
+ <xs:group ref="db:db.informaltable"/>
+ </xs:choice>
+ <xs:element ref="db:informalequation"/>
+ </xs:choice>
+ </xs:group>
+ <xs:element name="db.publishing.blocks" abstract="true"/>
+ <xs:element name="db.graphic.blocks" abstract="true"/>
+ <xs:group name="db.technical.blocks">
+ <xs:choice>
+ <xs:element ref="db:procedure"/>
+ <xs:element ref="db:task"/>
+ <xs:choice>
+ <xs:element ref="db:productionset"/>
+ <xs:element ref="db:constraintdef"/>
+ </xs:choice>
+ <xs:element ref="db:msgset"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="db.list.blocks">
+ <xs:choice>
+ <xs:choice>
+ <xs:element ref="db:itemizedlist"/>
+ <xs:element ref="db:orderedlist"/>
+ <xs:element ref="db:procedure"/>
+ <xs:element ref="db:simplelist"/>
+ <xs:element ref="db:variablelist"/>
+ <xs:element ref="db:segmentedlist"/>
+ </xs:choice>
+ <xs:element ref="db:glosslist"/>
+ <xs:element ref="db:bibliolist"/>
+ <xs:element ref="db:calloutlist"/>
+ <xs:element ref="db:qandaset"/>
+ </xs:choice>
+ </xs:group>
+ <xs:element name="db.verbatim.blocks" abstract="true"/>
+ <!-- ====================================================================== -->
+ <xs:group name="db.info.extension">
+ <xs:sequence>
+ <xs:group ref="db:db._any"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="db.info.elements">
+ <xs:choice>
+ <xs:choice>
+ <xs:element ref="db:abstract"/>
+ <xs:element ref="db:address"/>
+ <xs:element ref="db:artpagenums"/>
+ <xs:element ref="db:author"/>
+ <xs:element ref="db:authorgroup"/>
+ <xs:element ref="db:authorinitials"/>
+ <xs:element ref="db:bibliocoverage"/>
+ <xs:element ref="db:biblioid"/>
+ <xs:element ref="db:bibliosource"/>
+ <xs:element ref="db:collab"/>
+ <xs:element ref="db:confgroup"/>
+ <xs:element ref="db:contractsponsor"/>
+ <xs:element ref="db:contractnum"/>
+ <xs:element ref="db:copyright"/>
+ <xs:element ref="db:cover"/>
+ <xs:element ref="db:date"/>
+ <xs:element ref="db:edition"/>
+ <xs:element ref="db:editor"/>
+ <xs:element ref="db:issuenum"/>
+ <xs:element ref="db:keywordset"/>
+ <xs:element ref="db:legalnotice"/>
+ <xs:element ref="db:mediaobject"/>
+ <xs:element ref="db:org"/>
+ <xs:element ref="db:orgname"/>
+ <xs:element ref="db:othercredit"/>
+ <xs:element ref="db:pagenums"/>
+ <xs:element ref="db:printhistory"/>
+ <xs:element ref="db:pubdate"/>
+ <xs:element ref="db:publisher"/>
+ <xs:element ref="db:publishername"/>
+ <xs:element ref="db:releaseinfo"/>
+ <xs:element ref="db:revhistory"/>
+ <xs:element ref="db:seriesvolnums"/>
+ <xs:element ref="db:subjectset"/>
+ <xs:element ref="db:volumenum"/>
+ <xs:group ref="db:db.info.extension"/>
+ </xs:choice>
+ <xs:element ref="db:annotation"/>
+ <xs:element ref="db:extendedlink"/>
+ <xs:choice>
+ <xs:element ref="db:bibliomisc"/>
+ <xs:element ref="db:bibliomset"/>
+ <xs:element ref="db:bibliorelation"/>
+ <xs:element ref="db:biblioset"/>
+ </xs:choice>
+ <xs:element ref="db:itermset"/>
+ <xs:choice>
+ <xs:element ref="db:productname"/>
+ <xs:element ref="db:productnumber"/>
+ </xs:choice>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="db.bibliographic.elements">
+ <xs:choice>
+ <xs:group ref="db:db.info.elements"/>
+ <xs:group ref="db:db.publishing.inlines"/>
+ <xs:element ref="db:citerefentry"/>
+ <xs:element ref="db:citetitle"/>
+ <xs:element ref="db:citebiblioid"/>
+ <xs:element ref="db:person"/>
+ <xs:element ref="db:personblurb"/>
+ <xs:element ref="db:personname"/>
+ <xs:element ref="db:subtitle"/>
+ <xs:element ref="db:title"/>
+ <xs:element ref="db:titleabbrev"/>
+ </xs:choice>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.title.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.title.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="title">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:attributeGroup ref="db:db.title.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.titleabbrev.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.titleabbrev.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="titleabbrev">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:attributeGroup ref="db:db.titleabbrev.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.subtitle.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.subtitle.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="subtitle">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:attributeGroup ref="db:db.subtitle.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.info.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.info.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.info">
+ <xs:sequence>
+ <xs:element name="info">
+ <xs:complexType>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="db:db._title"/>
+ <xs:group ref="db:db.info.elements"/>
+ </xs:choice>
+ <xs:attributeGroup ref="db:db.info.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.titlereq.info.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.titlereq.info.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.titlereq.info">
+ <xs:sequence>
+ <xs:element name="info">
+ <xs:complexType>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="db:db._title.req"/>
+ <xs:group ref="db:db.info.elements"/>
+ </xs:choice>
+ <xs:attributeGroup ref="db:db.titlereq.info.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.titleonly.info.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.titleonly.info.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.titleonly.info">
+ <xs:sequence>
+ <xs:element name="info">
+ <xs:complexType>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="db:db._title.only"/>
+ <xs:group ref="db:db.info.elements"/>
+ </xs:choice>
+ <xs:attributeGroup ref="db:db.titleonly.info.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.titleonlyreq.info.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.titleonlyreq.info.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.titleonlyreq.info">
+ <xs:sequence>
+ <xs:element name="info">
+ <xs:complexType>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="db:db._title.onlyreq"/>
+ <xs:group ref="db:db.info.elements"/>
+ </xs:choice>
+ <xs:attributeGroup ref="db:db.titleonlyreq.info.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.titleforbidden.info.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.titleforbidden.info.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.titleforbidden.info">
+ <xs:sequence>
+ <xs:element name="info">
+ <xs:complexType>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.info.elements"/>
+ <xs:attributeGroup ref="db:db.titleforbidden.info.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.subjectset.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.subjectset.scheme.attribute">
+ <xs:attribute name="scheme" use="required" type="xs:NMTOKEN"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.subjectset.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="scheme" type="xs:NMTOKEN"/>
+ </xs:attributeGroup>
+ <xs:element name="subjectset">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="db:subject"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.subjectset.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.subject.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.subject.weight.attribute">
+ <xs:attribute name="weight" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.subject.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="weight"/>
+ </xs:attributeGroup>
+ <xs:element name="subject">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="db:subjectterm"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.subject.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.subjectterm.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.subjectterm.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="subjectterm">
+ <xs:complexType mixed="true">
+ <xs:attributeGroup ref="db:db.subjectterm.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.keywordset.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.keywordset.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="keywordset">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="db:keyword"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.keywordset.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.keyword.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.keyword.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="keyword">
+ <xs:complexType mixed="true">
+ <xs:attributeGroup ref="db:db.keyword.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:group name="db.table.choice">
+ <xs:choice>
+ <xs:group ref="db:db.cals.table"/>
+ <xs:group ref="db:db.html.table"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="db.informaltable.choice">
+ <xs:choice>
+ <xs:group ref="db:db.cals.informaltable"/>
+ <xs:group ref="db:db.html.informaltable"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="db.table">
+ <xs:sequence>
+ <xs:group ref="db:db.table.choice"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="db.informaltable">
+ <xs:sequence>
+ <xs:group ref="db:db.informaltable.choice"/>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.procedure.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.procedure.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.procedure.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.only"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="procedure">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.procedure.info"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:element maxOccurs="unbounded" ref="db:step"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.procedure.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.step.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.step.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="performance" type="db:db.performance.enumeration"/>
+ </xs:attributeGroup>
+ <xs:group name="db.step.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.only"/>
+ </xs:sequence>
+ </xs:group>
+ <!--
+ This content model is blocks*, step|stepalternatives, blocks* but
+ expressed this way it avoids UPA issues in XSD and DTD versions
+ -->
+ <xs:element name="step">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.step.info"/>
+ <xs:choice>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:sequence minOccurs="0">
+ <xs:choice>
+ <xs:element ref="db:substeps"/>
+ <xs:element ref="db:stepalternatives"/>
+ </xs:choice>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ </xs:sequence>
+ </xs:sequence>
+ <xs:sequence>
+ <xs:choice>
+ <xs:element ref="db:substeps"/>
+ <xs:element ref="db:stepalternatives"/>
+ </xs:choice>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ </xs:sequence>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.step.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.stepalternatives.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.stepalternatives.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="performance" type="db:db.performance.enumeration"/>
+ </xs:attributeGroup>
+ <xs:group name="db.stepalternatives.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.forbidden"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="stepalternatives">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.stepalternatives.info"/>
+ <xs:element maxOccurs="unbounded" ref="db:step"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.stepalternatives.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.substeps.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.substeps.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="performance" type="db:db.performance.enumeration"/>
+ </xs:attributeGroup>
+ <xs:element name="substeps">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="db:step"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.substeps.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.sidebar.floatstyle.attribute">
+ <xs:attributeGroup ref="db:db.floatstyle.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.sidebar.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.sidebar.attlist">
+ <xs:attribute name="role"/>
+ <xs:attribute name="floatstyle"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.sidebar.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="sidebar" substitutionGroup="db:db.publishing.blocks">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.sidebar.info"/>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.sidebar.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.abstract.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.abstract.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.abstract.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.only"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="abstract">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.abstract.info"/>
+ <xs:group maxOccurs="unbounded" ref="db:db.para.blocks"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.abstract.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.personblurb.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.personblurb.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.personblurb.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.only"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="personblurb">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.personblurb.info"/>
+ <xs:group maxOccurs="unbounded" ref="db:db.para.blocks"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.personblurb.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.blockquote.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.blockquote.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.blockquote.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.only"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="blockquote" substitutionGroup="db:db.publishing.blocks">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.blockquote.info"/>
+ <xs:element minOccurs="0" ref="db:attribution"/>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.blockquote.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.attribution.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.attribution.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="attribution">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="db:db._text"/>
+ <xs:element ref="db:person"/>
+ <xs:element ref="db:personname"/>
+ <xs:element ref="db:citetitle"/>
+ <xs:element ref="db:citation"/>
+ </xs:choice>
+ <xs:attributeGroup ref="db:db.attribution.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:simpleType name="db.bridgehead.renderas.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="sect1">
+ <xs:annotation>
+ <xs:documentation>Render as a first-level section</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="sect2">
+ <xs:annotation>
+ <xs:documentation>Render as a second-level section</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="sect3">
+ <xs:annotation>
+ <xs:documentation>Render as a third-level section</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="sect4">
+ <xs:annotation>
+ <xs:documentation>Render as a fourth-level section</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="sect5">
+ <xs:annotation>
+ <xs:documentation>Render as a fifth-level section</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.bridgehead.renderas-enum.attribute">
+ <xs:attribute name="renderas" type="db:db.bridgehead.renderas.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.bridgehead.renderas-other.attribute">
+ <xs:attribute name="otherrenderas" use="required" type="xs:NMTOKEN"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.bridgehead.renderas-other.attributes">
+ <xs:attribute name="renderas" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="other">
+ <xs:annotation>
+ <xs:documentation>Identifies a non-standard rendering</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="db:db.bridgehead.renderas-other.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.bridgehead.renderas.attribute">
+ <xs:attribute name="renderas">
+ <xs:simpleType>
+ <xs:union memberTypes="db:db.bridgehead.renderas.enumeration">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="other">
+ <xs:annotation>
+ <xs:documentation>Identifies a non-standard rendering</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="otherrenderas" type="xs:NMTOKEN"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.bridgehead.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.bridgehead.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attributeGroup ref="db:db.bridgehead.renderas.attribute"/>
+ </xs:attributeGroup>
+ <xs:element name="bridgehead">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:attributeGroup ref="db:db.bridgehead.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.remark.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.remark.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="remark">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:attributeGroup ref="db:db.remark.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.epigraph.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.epigraph.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.epigraph.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.forbidden"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="epigraph" substitutionGroup="db:db.publishing.blocks">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.epigraph.info"/>
+ <xs:element minOccurs="0" ref="db:attribution"/>
+ <xs:choice maxOccurs="unbounded">
+ <xs:group ref="db:db.para.blocks"/>
+ <xs:element ref="db:literallayout"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.epigraph.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.footnote.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.footnote.label.attribute">
+ <xs:attribute name="label" use="required" type="xs:NMTOKEN"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.footnote.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="label" type="xs:NMTOKEN"/>
+ </xs:attributeGroup>
+ <xs:element name="footnote">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:attributeGroup ref="db:db.footnote.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.formalpara.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.formalpara.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.formalpara.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.onlyreq"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="formalpara">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.formalpara.info"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.indexing.inlines"/>
+ <xs:element ref="db:para"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.formalpara.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.para.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.para.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.para.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.forbidden"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="para">
+ <xs:complexType mixed="true">
+ <xs:sequence>
+ <xs:group ref="db:db.para.info"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="db:db.all.inlines"/>
+ <xs:group ref="db:db.nopara.blocks"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.para.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.simpara.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.simpara.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.simpara.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.forbidden"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="simpara">
+ <xs:complexType mixed="true">
+ <xs:sequence>
+ <xs:group ref="db:db.simpara.info"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.simpara.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.itemizedlist.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.itemizedlist.mark.attribute">
+ <xs:attribute name="mark" use="required" type="xs:NMTOKEN"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.itemizedlist.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="spacing" type="db:db.spacing.enumeration"/>
+ <xs:attribute name="mark" type="xs:NMTOKEN"/>
+ </xs:attributeGroup>
+ <xs:group name="db.itemizedlist.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.only"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="itemizedlist">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.itemizedlist.info"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:element maxOccurs="unbounded" ref="db:listitem"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.itemizedlist.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.orderedlist.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:simpleType name="db.orderedlist.continuation.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="continues">
+ <xs:annotation>
+ <xs:documentation>Specifies that numbering should begin where the preceding list left off</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="restarts">
+ <xs:annotation>
+ <xs:documentation>Specifies that numbering should begin again at 1</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.orderedlist.continuation.attribute">
+ <xs:attribute name="continuation" use="required" type="db:db.orderedlist.continuation.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.orderedlist.startingnumber.attribute">
+ <xs:attribute name="startingnumber" use="required" type="xs:integer"/>
+ </xs:attributeGroup>
+ <xs:simpleType name="db.orderedlist.inheritnum.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="ignore">
+ <xs:annotation>
+ <xs:documentation>Specifies that numbering should ignore list nesting</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="inherit">
+ <xs:annotation>
+ <xs:documentation>Specifies that numbering should inherit from outer-level lists</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.orderedlist.inheritnum.attribute">
+ <xs:attribute name="inheritnum" use="required" type="db:db.orderedlist.inheritnum.enumeration"/>
+ </xs:attributeGroup>
+ <xs:simpleType name="db.orderedlist.numeration.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="arabic">
+ <xs:annotation>
+ <xs:documentation>Specifies Arabic numeration (1, 2, 3, …)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="upperalpha">
+ <xs:annotation>
+ <xs:documentation>Specifies upper-case alphabetic numeration (A, B, C, …)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="loweralpha">
+ <xs:annotation>
+ <xs:documentation>Specifies lower-case alphabetic numeration (a, b, c, …)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="upperroman">
+ <xs:annotation>
+ <xs:documentation>Specifies upper-case Roman numeration (I, II, III, …)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="lowerroman">
+ <xs:annotation>
+ <xs:documentation>Specifies lower-case Roman numeration (i, ii, iii …)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.orderedlist.numeration.attribute">
+ <xs:attribute name="numeration" use="required" type="db:db.orderedlist.numeration.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.orderedlist.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="spacing" type="db:db.spacing.enumeration"/>
+ <xs:attribute name="continuation" type="db:db.orderedlist.continuation.enumeration"/>
+ <xs:attribute name="startingnumber" type="xs:integer"/>
+ <xs:attribute name="inheritnum" type="db:db.orderedlist.inheritnum.enumeration"/>
+ <xs:attribute name="numeration" type="db:db.orderedlist.numeration.enumeration"/>
+ </xs:attributeGroup>
+ <xs:group name="db.orderedlist.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.only"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="orderedlist">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.orderedlist.info"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:element maxOccurs="unbounded" ref="db:listitem"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.orderedlist.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.listitem.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.listitem.override.attribute">
+ <xs:attribute name="override" use="required" type="xs:NMTOKEN"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.listitem.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="override" type="xs:NMTOKEN"/>
+ </xs:attributeGroup>
+ <xs:element name="listitem">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:attributeGroup ref="db:db.listitem.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.segmentedlist.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.segmentedlist.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.segmentedlist.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.only"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="segmentedlist">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.segmentedlist.info"/>
+ <xs:element maxOccurs="unbounded" ref="db:segtitle"/>
+ <xs:element maxOccurs="unbounded" ref="db:seglistitem"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.segmentedlist.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.segtitle.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.segtitle.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="segtitle">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:attributeGroup ref="db:db.segtitle.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.seglistitem.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.seglistitem.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="seglistitem">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="db:seg"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.seglistitem.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.seg.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.seg.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="seg">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:attributeGroup ref="db:db.seg.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.simplelist.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:simpleType name="db.simplelist.type.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="horiz">
+ <xs:annotation>
+ <xs:documentation>A tabular presentation in row-major order.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="vert">
+ <xs:annotation>
+ <xs:documentation>A tabular presentation in column-major order.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="inline">
+ <xs:annotation>
+ <xs:documentation>An inline presentation, usually a comma-delimited list.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.simplelist.type.attribute">
+ <xs:attribute name="type" use="required" type="db:db.simplelist.type.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.simplelist.columns.attribute">
+ <xs:attribute name="columns" use="required" type="xs:integer"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.simplelist.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="type" type="db:db.simplelist.type.enumeration"/>
+ <xs:attribute name="columns" type="xs:integer"/>
+ </xs:attributeGroup>
+ <xs:element name="simplelist">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="db:member"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.simplelist.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.member.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.member.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="member">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:attributeGroup ref="db:db.member.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.variablelist.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.variablelist.termlength.attribute">
+ <xs:attribute name="termlength" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.variablelist.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="spacing" type="db:db.spacing.enumeration"/>
+ <xs:attribute name="termlength"/>
+ </xs:attributeGroup>
+ <xs:group name="db.variablelist.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.only"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="variablelist">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.variablelist.info"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:element maxOccurs="unbounded" ref="db:varlistentry"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.variablelist.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.varlistentry.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.varlistentry.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="varlistentry">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="db:term"/>
+ <xs:element ref="db:listitem"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.varlistentry.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.term.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.term.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="term">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:attributeGroup ref="db:db.term.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.example.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.example.label.attribute">
+ <xs:attributeGroup ref="db:db.label.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.example.width.attribute">
+ <xs:attributeGroup ref="db:db.width.characters.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.example.pgwide.attribute">
+ <xs:attributeGroup ref="db:db.pgwide.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.example.floatstyle.attribute">
+ <xs:attributeGroup ref="db:db.floatstyle.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.example.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="label"/>
+ <xs:attribute name="floatstyle"/>
+ <xs:attribute name="width" type="xs:nonNegativeInteger"/>
+ <xs:attribute name="pgwide" type="db:db.pgwide.enumeration"/>
+ </xs:attributeGroup>
+ <xs:group name="db.example.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.onlyreq"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="example">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.example.info"/>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:group minOccurs="0" ref="db:db.caption"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.example.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.informalexample.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.informalexample.width.attribute">
+ <xs:attributeGroup ref="db:db.width.characters.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.informalexample.floatstyle.attribute">
+ <xs:attributeGroup ref="db:db.floatstyle.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.informalexample.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="floatstyle"/>
+ <xs:attribute name="width" type="xs:nonNegativeInteger"/>
+ </xs:attributeGroup>
+ <xs:group name="db.informalexample.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.forbidden"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="informalexample">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.informalexample.info"/>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:group minOccurs="0" ref="db:db.caption"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.informalexample.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:group name="db.verbatim.inlines">
+ <xs:choice>
+ <xs:choice>
+ <xs:group ref="db:db.all.inlines"/>
+ <xs:element ref="db:lineannotation"/>
+ </xs:choice>
+ <xs:element ref="db:co"/>
+ </xs:choice>
+ </xs:group>
+ <xs:complexType name="db.verbatim.contentmodel" mixed="true">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.forbidden"/>
+ <xs:choice>
+ <xs:element ref="db:textobject"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.verbatim.inlines"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:complexType>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.literallayout.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:simpleType name="db.literallayout.class.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="monospaced">
+ <xs:annotation>
+ <xs:documentation>The literal layout should be formatted with a monospaced font</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="normal">
+ <xs:annotation>
+ <xs:documentation>The literal layout should be formatted with the current font</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.literallayout.class.attribute">
+ <xs:attribute name="class" use="required" type="db:db.literallayout.class.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.literallayout.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attributeGroup ref="db:db.verbatim.attributes"/>
+ <xs:attribute name="class" type="db:db.literallayout.class.enumeration"/>
+ </xs:attributeGroup>
+ <xs:element name="literallayout" substitutionGroup="db:db.verbatim.blocks">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="db:db.verbatim.contentmodel">
+ <xs:attributeGroup ref="db:db.literallayout.attlist"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.screen.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.screen.width.attribute">
+ <xs:attributeGroup ref="db:db.width.characters.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.screen.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attributeGroup ref="db:db.verbatim.attributes"/>
+ <xs:attribute name="width" type="xs:nonNegativeInteger"/>
+ </xs:attributeGroup>
+ <xs:element name="screen" substitutionGroup="db:db.verbatim.blocks">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="db:db.verbatim.contentmodel">
+ <xs:attributeGroup ref="db:db.screen.attlist"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.screenshot.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.screenshot.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.screenshot.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="screenshot" substitutionGroup="db:db.graphic.blocks">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.screenshot.info"/>
+ <xs:element ref="db:mediaobject"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.screenshot.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.figure.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.figure.label.attribute">
+ <xs:attributeGroup ref="db:db.label.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.figure.pgwide.attribute">
+ <xs:attributeGroup ref="db:db.pgwide.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.figure.floatstyle.attribute">
+ <xs:attributeGroup ref="db:db.floatstyle.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.figure.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="label"/>
+ <xs:attribute name="pgwide" type="db:db.pgwide.enumeration"/>
+ <xs:attribute name="floatstyle"/>
+ </xs:attributeGroup>
+ <xs:group name="db.figure.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.onlyreq"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="figure">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.figure.info"/>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:group minOccurs="0" ref="db:db.caption"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.figure.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.informalfigure.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.informalfigure.label.attribute">
+ <xs:attributeGroup ref="db:db.label.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.informalfigure.pgwide.attribute">
+ <xs:attributeGroup ref="db:db.pgwide.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.informalfigure.floatstyle.attribute">
+ <xs:attributeGroup ref="db:db.floatstyle.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.informalfigure.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="label"/>
+ <xs:attribute name="pgwide" type="db:db.pgwide.enumeration"/>
+ <xs:attribute name="floatstyle"/>
+ </xs:attributeGroup>
+ <xs:group name="db.informalfigure.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.forbidden"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="informalfigure">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.informalfigure.info"/>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:group minOccurs="0" ref="db:db.caption"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.informalfigure.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:element name="db.mediaobject.content" abstract="true"/>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.mediaobject.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.mediaobject.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.mediaobject.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.forbidden"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="mediaobject" substitutionGroup="db:db.graphic.blocks">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.mediaobject.info"/>
+ <xs:element minOccurs="0" ref="db:alt"/>
+ <xs:element maxOccurs="unbounded" ref="db:db.mediaobject.content"/>
+ <xs:group minOccurs="0" ref="db:db.caption"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.mediaobject.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.inlinemediaobject.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.inlinemediaobject.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.inlinemediaobject.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.forbidden"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="inlinemediaobject" substitutionGroup="db:db.graphic.inlines"/>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.videoobject.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.videoobject.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.videoobject.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.forbidden"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="videoobject" substitutionGroup="db:db.mediaobject.content">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.videoobject.info"/>
+ <xs:element ref="db:videodata"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.videoobject.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.audioobject.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.audioobject.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.audioobject.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.forbidden"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="audioobject" substitutionGroup="db:db.mediaobject.content">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.audioobject.info"/>
+ <xs:element ref="db:audiodata"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.audioobject.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:group name="db.imageobject.content">
+ <xs:choice>
+ <xs:group ref="db:db.imagedata"/>
+ <xs:group ref="db:db.imagedata.mathml"/>
+ <xs:group ref="db:db.imagedata.svg"/>
+ </xs:choice>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.imageobject.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.imageobject.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.imageobject.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.forbidden"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="imageobject" substitutionGroup="db:db.mediaobject.content">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.imageobject.info"/>
+ <xs:group ref="db:db.imageobject.content"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.imageobject.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.textobject.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.textobject.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.textobject.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.forbidden"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="textobject" substitutionGroup="db:db.mediaobject.content">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.textobject.info"/>
+ <xs:choice>
+ <xs:group ref="db:db.phrase"/>
+ <xs:element ref="db:textdata"/>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.textobject.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.videodata.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:simpleType name="db.videodata.align.enumeration">
+ <xs:restriction base="db:db.halign.enumeration"/>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.videodata.align.attribute">
+ <xs:attribute name="align" use="required" type="db:db.videodata.align.enumeration"/>
+ </xs:attributeGroup>
+ <xs:simpleType name="db.videodata.valign.enumeration">
+ <xs:restriction base="db:db.valign.enumeration"/>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.videodata.valign.attribute">
+ <xs:attribute name="valign" use="required" type="db:db.videodata.valign.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.videodata.width.attribute">
+ <xs:attributeGroup ref="db:db.width.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.videodata.depth.attribute">
+ <xs:attributeGroup ref="db:db.depth.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.videodata.contentwidth.attribute">
+ <xs:attributeGroup ref="db:db.contentwidth.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.videodata.contentdepth.attribute">
+ <xs:attributeGroup ref="db:db.contentdepth.attribute"/>
+ </xs:attributeGroup>
+ <xs:simpleType name="db.videodata.scalefit.enumeration">
+ <xs:restriction base="db:db.scalefit.enumeration"/>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.videodata.scalefit.attribute">
+ <xs:attribute name="scalefit" use="required" type="db:db.videodata.scalefit.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.videodata.scale.attribute">
+ <xs:attributeGroup ref="db:db.scale.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.videodata.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.data.attributes"/>
+ <xs:attribute name="align" type="db:db.videodata.align.enumeration"/>
+ <xs:attribute name="valign" type="db:db.videodata.valign.enumeration"/>
+ <xs:attribute name="width"/>
+ <xs:attribute name="contentwidth"/>
+ <xs:attribute name="scalefit" type="db:db.videodata.scalefit.enumeration"/>
+ <xs:attribute name="scale" type="xs:positiveInteger"/>
+ <xs:attribute name="depth"/>
+ <xs:attribute name="contentdepth"/>
+ </xs:attributeGroup>
+ <xs:complexType name="db.videodata.info">
+ <xs:group ref="db:db._info.title.forbidden"/>
+ </xs:complexType>
+ <xs:element name="videodata">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="db:db.videodata.info">
+ <xs:attributeGroup ref="db:db.videodata.attlist"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.audiodata.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.audiodata.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.data.attributes"/>
+ </xs:attributeGroup>
+ <xs:complexType name="db.audiodata.info">
+ <xs:group ref="db:db._info.title.forbidden"/>
+ </xs:complexType>
+ <xs:element name="audiodata">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="db:db.audiodata.info">
+ <xs:attributeGroup ref="db:db.audiodata.attlist"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.imagedata.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:simpleType name="db.imagedata.align.enumeration">
+ <xs:restriction base="db:db.halign.enumeration"/>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.imagedata.align.attribute">
+ <xs:attribute name="align" use="required" type="db:db.imagedata.align.enumeration"/>
+ </xs:attributeGroup>
+ <xs:simpleType name="db.imagedata.valign.enumeration">
+ <xs:restriction base="db:db.valign.enumeration"/>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.imagedata.valign.attribute">
+ <xs:attribute name="valign" use="required" type="db:db.imagedata.valign.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.imagedata.width.attribute">
+ <xs:attributeGroup ref="db:db.width.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.imagedata.depth.attribute">
+ <xs:attributeGroup ref="db:db.depth.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.imagedata.contentwidth.attribute">
+ <xs:attributeGroup ref="db:db.contentwidth.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.imagedata.contentdepth.attribute">
+ <xs:attributeGroup ref="db:db.contentdepth.attribute"/>
+ </xs:attributeGroup>
+ <xs:simpleType name="db.imagedata.scalefit.enumeration">
+ <xs:restriction base="db:db.scalefit.enumeration"/>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.imagedata.scalefit.attribute">
+ <xs:attribute name="scalefit" use="required" type="db:db.imagedata.scalefit.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.imagedata.scale.attribute">
+ <xs:attributeGroup ref="db:db.scale.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.imagedata.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.data.attributes"/>
+ <xs:attribute name="align" type="db:db.imagedata.align.enumeration"/>
+ <xs:attribute name="valign" type="db:db.imagedata.valign.enumeration"/>
+ <xs:attribute name="width"/>
+ <xs:attribute name="contentwidth"/>
+ <xs:attribute name="scalefit" type="db:db.imagedata.scalefit.enumeration"/>
+ <xs:attribute name="scale" type="xs:positiveInteger"/>
+ <xs:attribute name="depth"/>
+ <xs:attribute name="contentdepth"/>
+ </xs:attributeGroup>
+ <xs:complexType name="db.imagedata.info">
+ <xs:group ref="db:db._info.title.forbidden"/>
+ </xs:complexType>
+ <xs:group name="db.imagedata">
+ <xs:sequence>
+ <xs:element name="imagedata">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="db:db.imagedata.info">
+ <xs:attributeGroup ref="db:db.imagedata.attlist"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.textdata.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.textdata.encoding.attribute">
+ <xs:attribute name="encoding" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.textdata.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.data.attributes"/>
+ <xs:attribute name="encoding"/>
+ </xs:attributeGroup>
+ <xs:complexType name="db.textdata.info">
+ <xs:group ref="db:db._info.title.forbidden"/>
+ </xs:complexType>
+ <xs:element name="textdata">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="db:db.textdata.info">
+ <xs:attributeGroup ref="db:db.textdata.attlist"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.caption.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.caption.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.caption.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.forbidden"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="db.caption">
+ <xs:sequence>
+ <xs:element name="caption">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.caption.info"/>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.caption.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.address.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.address.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attributeGroup ref="db:db.verbatim.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="address" substitutionGroup="db:db.publishing.blocks">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="db:db._text"/>
+ <xs:element ref="db:personname"/>
+ <xs:element ref="db:orgname"/>
+ <xs:element ref="db:pob"/>
+ <xs:element ref="db:street"/>
+ <xs:element ref="db:city"/>
+ <xs:element ref="db:state"/>
+ <xs:element ref="db:postcode"/>
+ <xs:element ref="db:country"/>
+ <xs:element ref="db:phone"/>
+ <xs:element ref="db:fax"/>
+ <xs:element ref="db:email"/>
+ <xs:element ref="db:uri"/>
+ <xs:element ref="db:otheraddr"/>
+ </xs:choice>
+ <xs:attributeGroup ref="db:db.address.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.street.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.street.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="street">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.street.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.pob.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.pob.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="pob">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.pob.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.postcode.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.postcode.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="postcode">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.postcode.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.city.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.city.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="city">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.city.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.state.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.state.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="state">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.state.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.country.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.country.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="country">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.country.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.phone.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.phone.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="phone">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.phone.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.fax.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.fax.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="fax">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.fax.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.otheraddr.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.otheraddr.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="otheraddr">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.otheraddr.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.affiliation.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.affiliation.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="affiliation">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="db:shortaffil"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:jobtitle"/>
+ <xs:choice>
+ <xs:element minOccurs="0" ref="db:org"/>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="db:orgname"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:orgdiv"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:address"/>
+ </xs:sequence>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.affiliation.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.shortaffil.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.shortaffil.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="shortaffil">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.shortaffil.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.jobtitle.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.jobtitle.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="jobtitle" substitutionGroup="db:db.bibliography.inlines">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.jobtitle.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:simpleType name="db.orgname.class.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="consortium">
+ <xs:annotation>
+ <xs:documentation>A consortium</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="corporation">
+ <xs:annotation>
+ <xs:documentation>A corporation</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="informal">
+ <xs:annotation>
+ <xs:documentation>An informal organization</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="nonprofit">
+ <xs:annotation>
+ <xs:documentation>A non-profit organization</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.orgname.class-enum.attribute">
+ <xs:attribute name="class" use="required" type="db:db.orgname.class.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.orgname.class-other.attributes">
+ <xs:attribute name="class" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="other">
+ <xs:annotation>
+ <xs:documentation>Indicates a non-standard organization class</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="otherclass" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.orgname.class.attribute">
+ <xs:attribute name="class" use="required">
+ <xs:simpleType>
+ <xs:union memberTypes="db:db.orgname.class.enumeration">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="other">
+ <xs:annotation>
+ <xs:documentation>Indicates a non-standard organization class</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="otherclass"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.orgname.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.orgname.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:union memberTypes="db:db.orgname.class.enumeration">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="other">
+ <xs:annotation>
+ <xs:documentation>Indicates a non-standard organization class</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="otherclass"/>
+ </xs:attributeGroup>
+ <xs:element name="orgname" substitutionGroup="db:db.bibliography.inlines">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.orgname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.orgdiv.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.orgdiv.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="orgdiv">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:attributeGroup ref="db:db.orgdiv.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.artpagenums.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.artpagenums.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="artpagenums">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.artpagenums.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.personname.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.personname.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="personname" substitutionGroup="db:db.bibliography.inlines">
+ <xs:complexType mixed="true">
+ <xs:choice>
+ <xs:group ref="db:db._text"/>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="db:honorific"/>
+ <xs:element ref="db:firstname"/>
+ <xs:element ref="db:surname"/>
+ <xs:element ref="db:lineage"/>
+ <xs:element ref="db:othername"/>
+ </xs:choice>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="db:honorific"/>
+ <xs:element ref="db:givenname"/>
+ <xs:element ref="db:surname"/>
+ <xs:element ref="db:lineage"/>
+ <xs:element ref="db:othername"/>
+ </xs:choice>
+ </xs:choice>
+ <xs:attributeGroup ref="db:db.personname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:group name="db.person.author.contentmodel">
+ <xs:sequence>
+ <xs:element ref="db:personname"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="db:personblurb"/>
+ <xs:element ref="db:affiliation"/>
+ <xs:element ref="db:email"/>
+ <xs:element ref="db:uri"/>
+ <xs:element ref="db:address"/>
+ <xs:element ref="db:contrib"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="db.org.author.contentmodel">
+ <xs:sequence>
+ <xs:element ref="db:orgname"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="db:orgdiv"/>
+ <xs:element ref="db:affiliation"/>
+ <xs:element ref="db:email"/>
+ <xs:element ref="db:uri"/>
+ <xs:element ref="db:address"/>
+ <xs:element ref="db:contrib"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:group>
+ <xs:complexType name="db.credit.contentmodel">
+ <xs:choice>
+ <xs:group ref="db:db.person.author.contentmodel"/>
+ <xs:group ref="db:db.org.author.contentmodel"/>
+ </xs:choice>
+ </xs:complexType>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.author.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.author.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="author" substitutionGroup="db:db.bibliography.inlines">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="db:db.credit.contentmodel">
+ <xs:attributeGroup ref="db:db.author.attlist"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.authorgroup.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.authorgroup.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="authorgroup">
+ <xs:complexType>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="db:author"/>
+ <xs:element ref="db:editor"/>
+ <xs:element ref="db:othercredit"/>
+ </xs:choice>
+ <xs:attributeGroup ref="db:db.authorgroup.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.collab.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.collab.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="collab">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="db:person"/>
+ <xs:element ref="db:personname"/>
+ <xs:element ref="db:org"/>
+ <xs:element ref="db:orgname"/>
+ </xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:affiliation"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.collab.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.authorinitials.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.authorinitials.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="authorinitials">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.authorinitials.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.person.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.person.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="person" substitutionGroup="db:db.bibliography.inlines">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="db:personname"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="db:address"/>
+ <xs:element ref="db:affiliation"/>
+ <xs:element ref="db:email"/>
+ <xs:element ref="db:uri"/>
+ <xs:element ref="db:personblurb"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.person.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.org.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.org.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="org" substitutionGroup="db:db.bibliography.inlines">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="db:orgname"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="db:address"/>
+ <xs:element ref="db:affiliation"/>
+ <xs:element ref="db:email"/>
+ <xs:element ref="db:uri"/>
+ <xs:element ref="db:orgdiv"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.org.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.confgroup.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.confgroup.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="confgroup">
+ <xs:complexType>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="db:confdates"/>
+ <xs:element ref="db:conftitle"/>
+ <xs:element ref="db:confnum"/>
+ <xs:element ref="db:confsponsor"/>
+ <xs:element ref="db:address"/>
+ </xs:choice>
+ <xs:attributeGroup ref="db:db.confgroup.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.confdates.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.confdates.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="confdates">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.confdates.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.conftitle.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.conftitle.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="conftitle">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.conftitle.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.confnum.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.confnum.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="confnum">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.confnum.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.confsponsor.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.confsponsor.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="confsponsor">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.confsponsor.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.contractnum.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.contractnum.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="contractnum">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.contractnum.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.contractsponsor.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.contractsponsor.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="contractsponsor">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.contractsponsor.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.copyright.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.copyright.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="copyright">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="db:year"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:holder"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.copyright.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.year.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.year.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="year">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.year.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.holder.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.holder.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="holder">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.holder.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:group name="db.cover.contentmodel">
+ <xs:choice>
+ <xs:choice>
+ <xs:group ref="db:db.para.blocks"/>
+ <xs:group ref="db:db.list.blocks"/>
+ <xs:group ref="db:db.informal.blocks"/>
+ <xs:element ref="db:db.publishing.blocks"/>
+ <xs:element ref="db:db.graphic.blocks"/>
+ <xs:group ref="db:db.technical.blocks"/>
+ <xs:element ref="db:db.verbatim.blocks"/>
+ <xs:element ref="db:bridgehead"/>
+ <xs:element ref="db:remark"/>
+ <xs:element ref="db:revhistory"/>
+ </xs:choice>
+ <xs:element ref="db:db.synopsis.blocks"/>
+ </xs:choice>
+ </xs:group>
+ <xs:attributeGroup name="db.cover.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.cover.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="cover">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="db:db.cover.contentmodel"/>
+ <xs:attributeGroup ref="db:db.cover.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.date.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.date.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="date">
+ <xs:complexType mixed="true">
+ <xs:attributeGroup ref="db:db.date.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.edition.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.edition.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="edition">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.edition.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.editor.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.editor.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="editor" substitutionGroup="db:db.bibliography.inlines">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="db:db.credit.contentmodel">
+ <xs:attributeGroup ref="db:db.editor.attlist"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.biblioid.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.biblioid.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attributeGroup ref="db:db.biblio.class.attribute"/>
+ </xs:attributeGroup>
+ <xs:element name="biblioid">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.biblioid.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.citebiblioid.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.citebiblioid.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attributeGroup ref="db:db.biblio.class.attribute"/>
+ </xs:attributeGroup>
+ <xs:element name="citebiblioid" substitutionGroup="db:db.bibliography.inlines">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.citebiblioid.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.bibliosource.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.bibliosource.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attributeGroup ref="db:db.biblio.class.attribute"/>
+ </xs:attributeGroup>
+ <xs:element name="bibliosource">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.bibliosource.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:simpleType name="db.bibliorelation.type.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="hasformat">
+ <xs:annotation>
+ <xs:documentation>The described resource pre-existed the referenced resource, which is essentially the same intellectual content presented in another format</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="haspart">
+ <xs:annotation>
+ <xs:documentation>The described resource includes the referenced resource either physically or logically</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="hasversion">
+ <xs:annotation>
+ <xs:documentation>The described resource has a version, edition, or adaptation, namely, the referenced resource</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="isformatof">
+ <xs:annotation>
+ <xs:documentation>The described resource is the same intellectual content of the referenced resource, but presented in another format</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="ispartof">
+ <xs:annotation>
+ <xs:documentation>The described resource is a physical or logical part of the referenced resource</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="isreferencedby">
+ <xs:annotation>
+ <xs:documentation>The described resource is referenced, cited, or otherwise pointed to by the referenced resource</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="isreplacedby">
+ <xs:annotation>
+ <xs:documentation>The described resource is supplanted, displaced, or superceded by the referenced resource</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="isrequiredby">
+ <xs:annotation>
+ <xs:documentation>The described resource is required by the referenced resource, either physically or logically</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="isversionof">
+ <xs:annotation>
+ <xs:documentation>The described resource is a version, edition, or adaptation of the referenced resource; changes in version imply substantive changes in content rather than differences in format</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="references">
+ <xs:annotation>
+ <xs:documentation>The described resource references, cites, or otherwise points to the referenced resource</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="replaces">
+ <xs:annotation>
+ <xs:documentation>The described resource supplants, displaces, or supersedes the referenced resource</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="requires">
+ <xs:annotation>
+ <xs:documentation>The described resource requires the referenced resource to support its function, delivery, or coherence of content</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.bibliorelation.type-enum.attribute">
+ <xs:attribute name="type" type="db:db.bibliorelation.type.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.bibliorelation.type-other.attributes">
+ <xs:attribute name="type">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="othertype">
+ <xs:annotation>
+ <xs:documentation>The described resource has a non-standard relationship with the referenced resource</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="othertype" use="required" type="xs:NMTOKEN"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.bibliorelation.type.attribute">
+ <xs:attribute name="type">
+ <xs:simpleType>
+ <xs:union memberTypes="db:db.bibliorelation.type.enumeration">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="othertype">
+ <xs:annotation>
+ <xs:documentation>The described resource has a non-standard relationship with the referenced resource</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="othertype" type="xs:NMTOKEN"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.bibliorelation.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.bibliorelation.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attributeGroup ref="db:db.biblio.class.attribute"/>
+ <xs:attributeGroup ref="db:db.bibliorelation.type.attribute"/>
+ </xs:attributeGroup>
+ <xs:element name="bibliorelation">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.bibliorelation.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:simpleType name="db.bibliocoverage.spacial.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="dcmipoint">
+ <xs:annotation>
+ <xs:documentation>The DCMI Point identifies a point in space using its geographic coordinates</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="iso3166">
+ <xs:annotation>
+ <xs:documentation>ISO 3166 Codes for the representation of names of countries</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="dcmibox">
+ <xs:annotation>
+ <xs:documentation>The DCMI Box identifies a region of space using its geographic limits</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="tgn">
+ <xs:annotation>
+ <xs:documentation>The Getty Thesaurus of Geographic Names</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.bibliocoverage.spatial-enum.attribute">
+ <xs:attribute name="spatial" type="db:db.bibliocoverage.spacial.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.bibliocoverage.spatial-other.attributes">
+ <xs:attribute name="spatial">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="otherspatial">
+ <xs:annotation>
+ <xs:documentation>Identifies a non-standard type of coverage</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="otherspatial" use="required" type="xs:NMTOKEN"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.bibliocoverage.spatial.attribute">
+ <xs:attribute name="spatial">
+ <xs:simpleType>
+ <xs:union memberTypes="db:db.bibliocoverage.spacial.enumeration">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="otherspatial">
+ <xs:annotation>
+ <xs:documentation>Identifies a non-standard type of coverage</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="otherspatial" type="xs:NMTOKEN"/>
+ </xs:attributeGroup>
+ <xs:simpleType name="db.bibliocoverage.temporal.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="dcmiperiod">
+ <xs:annotation>
+ <xs:documentation>A specification of the limits of a time interval</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="w3c-dtf">
+ <xs:annotation>
+ <xs:documentation>W3C Encoding rules for dates and times—a profile based on ISO 8601</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.bibliocoverage.temporal-enum.attribute">
+ <xs:attribute name="temporal" type="db:db.bibliocoverage.temporal.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.bibliocoverage.temporal-other.attributes">
+ <xs:attribute name="temporal">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="othertemporal">
+ <xs:annotation>
+ <xs:documentation>Specifies a non-standard type of coverage</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="othertemporal" use="required" type="xs:NMTOKEN"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.bibliocoverage.temporal.attribute">
+ <xs:attribute name="temporal">
+ <xs:simpleType>
+ <xs:union memberTypes="db:db.bibliocoverage.temporal.enumeration">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="othertemporal">
+ <xs:annotation>
+ <xs:documentation>Specifies a non-standard type of coverage</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="othertemporal" type="xs:NMTOKEN"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.bibliocoverage.coverage.attrib">
+ <xs:attributeGroup ref="db:db.bibliocoverage.spatial.attribute"/>
+ <xs:attributeGroup ref="db:db.bibliocoverage.temporal.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.bibliocoverage.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.bibliocoverage.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attributeGroup ref="db:db.bibliocoverage.coverage.attrib"/>
+ </xs:attributeGroup>
+ <xs:element name="bibliocoverage">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.bibliocoverage.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.legalnotice.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.legalnotice.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.legalnotice.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.only"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="legalnotice">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.legalnotice.info"/>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.legalnotice.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:simpleType name="db.othercredit.class.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="copyeditor">
+ <xs:annotation>
+ <xs:documentation>A copy editor</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="graphicdesigner">
+ <xs:annotation>
+ <xs:documentation>A graphic designer</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="other">
+ <xs:annotation>
+ <xs:documentation>Some other contributor</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="productioneditor">
+ <xs:annotation>
+ <xs:documentation>A production editor</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="technicaleditor">
+ <xs:annotation>
+ <xs:documentation>A technical editor</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="translator">
+ <xs:annotation>
+ <xs:documentation>A translator</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="indexer">
+ <xs:annotation>
+ <xs:documentation>An indexer</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="proofreader">
+ <xs:annotation>
+ <xs:documentation>A proof-reader</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="coverdesigner">
+ <xs:annotation>
+ <xs:documentation>A cover designer</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="interiordesigner">
+ <xs:annotation>
+ <xs:documentation>An interior designer</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="illustrator">
+ <xs:annotation>
+ <xs:documentation>An illustrator</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="reviewer">
+ <xs:annotation>
+ <xs:documentation>A reviewer</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="typesetter">
+ <xs:annotation>
+ <xs:documentation>A typesetter</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="conversion">
+ <xs:annotation>
+ <xs:documentation>A converter (a persons responsible for conversion, not an application)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.othercredit.class-enum.attribute">
+ <xs:attribute name="class" type="db:db.othercredit.class.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.othercredit.class-other.attribute">
+ <xs:attribute name="otherclass" use="required" type="xs:NMTOKEN"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.othercredit.class-other.attributes">
+ <xs:attribute name="class" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="other">
+ <xs:annotation>
+ <xs:documentation>Identifies a non-standard contribution</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="db:db.othercredit.class-other.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.othercredit.class.attribute">
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:union memberTypes="db:db.othercredit.class.enumeration">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="other">
+ <xs:annotation>
+ <xs:documentation>Identifies a non-standard contribution</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="otherclass" type="xs:NMTOKEN"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.othercredit.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.othercredit.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attributeGroup ref="db:db.othercredit.class.attribute"/>
+ </xs:attributeGroup>
+ <xs:element name="othercredit">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="db:db.credit.contentmodel">
+ <xs:attributeGroup ref="db:db.othercredit.attlist"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.pagenums.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.pagenums.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="pagenums">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.pagenums.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.contrib.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.contrib.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="contrib">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.contrib.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.honorific.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.honorific.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="honorific">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.honorific.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.firstname.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.firstname.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="firstname">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.firstname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.givenname.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.givenname.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="givenname">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.givenname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.surname.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.surname.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="surname">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.surname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.lineage.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.lineage.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="lineage">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.lineage.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.othername.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.othername.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="othername">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.othername.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.printhistory.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.printhistory.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="printhistory">
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="db:db.para.blocks"/>
+ <xs:attributeGroup ref="db:db.printhistory.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.pubdate.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.pubdate.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="pubdate">
+ <xs:complexType mixed="true">
+ <xs:attributeGroup ref="db:db.pubdate.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.publisher.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.publisher.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="publisher">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="db:publishername"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:address"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.publisher.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.publishername.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.publishername.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="publishername">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.publishername.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.releaseinfo.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.releaseinfo.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="releaseinfo">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.releaseinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.revhistory.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.revhistory.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.revhistory.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.only"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="revhistory">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.revhistory.info"/>
+ <xs:element maxOccurs="unbounded" ref="db:revision"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.revhistory.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.revision.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.revision.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="revision">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="db:revnumber"/>
+ <xs:element ref="db:date"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="db:authorinitials"/>
+ <xs:element ref="db:author"/>
+ </xs:choice>
+ <xs:choice minOccurs="0">
+ <xs:element ref="db:revremark"/>
+ <xs:element ref="db:revdescription"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.revision.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.revnumber.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.revnumber.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="revnumber">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.revnumber.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.revremark.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.revremark.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="revremark">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.revremark.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.revdescription.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.revdescription.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="revdescription">
+ <xs:complexType>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:attributeGroup ref="db:db.revdescription.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.seriesvolnums.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.seriesvolnums.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="seriesvolnums">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.seriesvolnums.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.volumenum.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.volumenum.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="volumenum">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.volumenum.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.issuenum.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.issuenum.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="issuenum">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.issuenum.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.package.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.package.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="package" substitutionGroup="db:db.technical.inlines">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.package.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.email.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.email.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="email" substitutionGroup="db:db.markup.inlines">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.email.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.lineannotation.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.lineannotation.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="lineannotation">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.lineannotation.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:simpleType name="db.parameter.class.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="command">
+ <xs:annotation>
+ <xs:documentation>A command</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="function">
+ <xs:annotation>
+ <xs:documentation>A function</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="option">
+ <xs:annotation>
+ <xs:documentation>An option</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.parameter.class.attribute">
+ <xs:attribute name="class" use="required" type="db:db.parameter.class.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.parameter.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.parameter.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="class" type="db:db.parameter.class.enumeration"/>
+ </xs:attributeGroup>
+ <xs:element name="parameter" substitutionGroup="db:db.technical.inlines">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.parameter.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:group name="db.replaceable.inlines">
+ <xs:choice>
+ <xs:group ref="db:db._text"/>
+ <xs:element ref="db:co"/>
+ </xs:choice>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:simpleType name="db.replaceable.class.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="command">
+ <xs:annotation>
+ <xs:documentation>A command</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="function">
+ <xs:annotation>
+ <xs:documentation>A function</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="option">
+ <xs:annotation>
+ <xs:documentation>An option</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="parameter">
+ <xs:annotation>
+ <xs:documentation>A parameter</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.replaceable.class.attribute">
+ <xs:attribute name="class" use="required" type="db:db.replaceable.class.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.replaceable.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.replaceable.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="class" type="db:db.replaceable.class.enumeration"/>
+ </xs:attributeGroup>
+ <xs:element name="replaceable" substitutionGroup="db:db.technical.inlines">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.replaceable.inlines"/>
+ <xs:attributeGroup ref="db:db.replaceable.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.uri.type.attribute">
+ <xs:attribute name="type"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.uri.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.uri.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attributeGroup ref="db:db.uri.type.attribute"/>
+ </xs:attributeGroup>
+ <xs:element name="uri" substitutionGroup="db:db.markup.inlines">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.uri.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.abbrev.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.abbrev.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="abbrev">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="db:db._text"/>
+ <xs:element ref="db:superscript"/>
+ <xs:element ref="db:subscript"/>
+ <xs:element ref="db:trademark"/>
+ </xs:choice>
+ <xs:attributeGroup ref="db:db.abbrev.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.acronym.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.acronym.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="acronym">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="db:db._text"/>
+ <xs:element ref="db:superscript"/>
+ <xs:element ref="db:subscript"/>
+ <xs:element ref="db:trademark"/>
+ </xs:choice>
+ <xs:attributeGroup ref="db:db.acronym.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.citation.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.citation.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="citation" substitutionGroup="db:db.bibliography.inlines">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:attributeGroup ref="db:db.citation.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.citerefentry.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.citerefentry.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="citerefentry" substitutionGroup="db:db.bibliography.inlines">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="db:refentrytitle"/>
+ <xs:element minOccurs="0" ref="db:manvolnum"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.citerefentry.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.refentrytitle.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.refentrytitle.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="refentrytitle">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:attributeGroup ref="db:db.refentrytitle.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.manvolnum.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.manvolnum.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="manvolnum">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.manvolnum.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:simpleType name="db.citetitle.pubwork.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="article">
+ <xs:annotation>
+ <xs:documentation>An article</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="bbs">
+ <xs:annotation>
+ <xs:documentation>A bulletin board system</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="book">
+ <xs:annotation>
+ <xs:documentation>A book</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="cdrom">
+ <xs:annotation>
+ <xs:documentation>A CD-ROM</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="chapter">
+ <xs:annotation>
+ <xs:documentation>A chapter (as of a book)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="dvd">
+ <xs:annotation>
+ <xs:documentation>A DVD</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="emailmessage">
+ <xs:annotation>
+ <xs:documentation>An email message</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="gopher">
+ <xs:annotation>
+ <xs:documentation>A gopher page</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="journal">
+ <xs:annotation>
+ <xs:documentation>A journal</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="manuscript">
+ <xs:annotation>
+ <xs:documentation>A manuscript</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="newsposting">
+ <xs:annotation>
+ <xs:documentation>A posting to a newsgroup</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="part">
+ <xs:annotation>
+ <xs:documentation>A part (as of a book)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="refentry">
+ <xs:annotation>
+ <xs:documentation>A reference entry</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="section">
+ <xs:annotation>
+ <xs:documentation>A section (as of a book or article)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="series">
+ <xs:annotation>
+ <xs:documentation>A series</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="set">
+ <xs:annotation>
+ <xs:documentation>A set (as of books)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="webpage">
+ <xs:annotation>
+ <xs:documentation>A web page</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="wiki">
+ <xs:annotation>
+ <xs:documentation>A wiki page</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.citetitle.pubwork.attribute">
+ <xs:attribute name="pubwork" use="required" type="db:db.citetitle.pubwork.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.citetitle.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.citetitle.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="pubwork" type="db:db.citetitle.pubwork.enumeration"/>
+ </xs:attributeGroup>
+ <xs:element name="citetitle" substitutionGroup="db:db.bibliography.inlines">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:attributeGroup ref="db:db.citetitle.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.emphasis.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.emphasis.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.emphasis">
+ <xs:sequence>
+ <xs:element name="emphasis">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:attributeGroup ref="db:db.emphasis.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:group name="db._emphasis">
+ <xs:sequence>
+ <xs:element name="emphasis">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.emphasis.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.foreignphrase.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.foreignphrase.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.foreignphrase">
+ <xs:sequence>
+ <xs:element name="foreignphrase">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.general.inlines"/>
+ <xs:attributeGroup ref="db:db.foreignphrase.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db._foreignphrase.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db._foreignphrase.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db._foreignphrase">
+ <xs:sequence>
+ <xs:element name="foreignphrase">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db._foreignphrase.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.phrase.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.phrase.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.phrase">
+ <xs:sequence>
+ <xs:element name="phrase">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:attributeGroup ref="db:db.phrase.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:group name="db._phrase">
+ <xs:sequence>
+ <xs:element name="phrase">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.phrase.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.quote.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.quote.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.quote">
+ <xs:sequence>
+ <xs:element name="quote">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:attributeGroup ref="db:db.quote.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db._quote.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db._quote.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db._quote">
+ <xs:sequence>
+ <xs:element name="quote">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db._quote.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.subscript.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.subscript.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="subscript">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.subscript.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.superscript.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.superscript.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="superscript">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.superscript.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:simpleType name="db.trademark.class.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="copyright">
+ <xs:annotation>
+ <xs:documentation>A copyright</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="registered">
+ <xs:annotation>
+ <xs:documentation>A registered copyright</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="service">
+ <xs:annotation>
+ <xs:documentation>A service</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="trade">
+ <xs:annotation>
+ <xs:documentation>A trademark</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.trademark.class.attribute">
+ <xs:attribute name="class" use="required" type="db:db.trademark.class.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.trademark.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.trademark.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="class" type="db:db.trademark.class.enumeration"/>
+ </xs:attributeGroup>
+ <xs:element name="trademark" substitutionGroup="db:db.product.inlines">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.trademark.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.wordasword.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.wordasword.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="wordasword">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.wordasword.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.footnoteref.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.footnoteref.label.attribute">
+ <xs:attributeGroup ref="db:db.label.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.footnoteref.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.linkend.attribute"/>
+ <xs:attribute name="label"/>
+ </xs:attributeGroup>
+ <xs:element name="footnoteref">
+ <xs:complexType>
+ <xs:attributeGroup ref="db:db.footnoteref.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.xref.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.xref.xrefstyle.attribute">
+ <xs:attributeGroup ref="db:db.xrefstyle.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.xref.endterm.attribute">
+ <xs:attributeGroup ref="db:db.endterm.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.xref.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.req.linking.attributes"/>
+ <xs:attribute name="xrefstyle"/>
+ <xs:attribute name="endterm" type="xs:IDREF"/>
+ </xs:attributeGroup>
+ <xs:element name="xref">
+ <xs:complexType>
+ <xs:attributeGroup ref="db:db.xref.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.link.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.link.xrefstyle.attribute">
+ <xs:attributeGroup ref="db:db.xrefstyle.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.link.endterm.attribute">
+ <xs:attributeGroup ref="db:db.endterm.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.link.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.req.linking.attributes"/>
+ <xs:attribute name="xrefstyle"/>
+ <xs:attribute name="endterm" type="xs:IDREF"/>
+ </xs:attributeGroup>
+ <xs:element name="link">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:attributeGroup ref="db:db.link.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.olink.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.olink.xrefstyle.attribute">
+ <xs:attributeGroup ref="db:db.xrefstyle.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.olink.localinfo.attribute">
+ <xs:attribute name="localinfo" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.olink.targetdoc.attribute">
+ <xs:attribute name="targetdoc" use="required" type="xs:anyURI"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.olink.targetptr.attribute">
+ <xs:attribute name="targetptr" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.olink.type.attribute">
+ <xs:attribute name="type" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.olink.attlist">
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attribute name="targetdoc" type="xs:anyURI"/>
+ <xs:attribute name="role"/>
+ <xs:attribute name="xrefstyle"/>
+ <xs:attribute name="localinfo"/>
+ <xs:attribute name="targetptr"/>
+ <xs:attribute name="type"/>
+ </xs:attributeGroup>
+ <xs:element name="olink">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:attributeGroup ref="db:db.olink.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.anchor.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.anchor.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="db:db.common.idreq.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="anchor">
+ <xs:complexType>
+ <xs:attributeGroup ref="db:db.anchor.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.alt.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.alt.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="alt">
+ <xs:complexType mixed="true">
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:inlinemediaobject"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.alt.attlist"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/product.xsd b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/product.xsd
new file mode 100644
index 000000000..097f3e7c1
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/product.xsd
@@ -0,0 +1,255 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: pool.rnc 7466 2007-09-27 14:03:55Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://docbook.org/ns/docbook" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <xs:import namespace="http://docbook.org/ns/docbook-slides" schemaLocation="slides.xsd"/>
+ <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.productname.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:simpleType name="db.productname.class.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="copyright">
+ <xs:annotation>
+ <xs:documentation>A name with a copyright</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="registered">
+ <xs:annotation>
+ <xs:documentation>A name with a registered copyright</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="service">
+ <xs:annotation>
+ <xs:documentation>A name of a service</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="trade">
+ <xs:annotation>
+ <xs:documentation>A name which is trademarked</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.productname.class.attribute">
+ <xs:attribute name="class" use="required" type="db:db.productname.class.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.productname.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="class" type="db:db.productname.class.enumeration"/>
+ </xs:attributeGroup>
+ <xs:element name="productname" substitutionGroup="db:db.product.inlines">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.productname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.productnumber.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.productnumber.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="productnumber" substitutionGroup="db:db.product.inlines">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.productnumber.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:simpleType name="db.database.class.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="altkey">
+ <xs:annotation>
+ <xs:documentation>An alternate or secondary key</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="constraint">
+ <xs:annotation>
+ <xs:documentation>A constraint</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="datatype">
+ <xs:annotation>
+ <xs:documentation>A data type</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="field">
+ <xs:annotation>
+ <xs:documentation>A field</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="foreignkey">
+ <xs:annotation>
+ <xs:documentation>A foreign key</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="group">
+ <xs:annotation>
+ <xs:documentation>A group</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="index">
+ <xs:annotation>
+ <xs:documentation>An index</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="key1">
+ <xs:annotation>
+ <xs:documentation>The first or primary key</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="key2">
+ <xs:annotation>
+ <xs:documentation>An alternate or secondary key</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="name">
+ <xs:annotation>
+ <xs:documentation>A name</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="primarykey">
+ <xs:annotation>
+ <xs:documentation>The primary key</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="procedure">
+ <xs:annotation>
+ <xs:documentation>A (stored) procedure</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="record">
+ <xs:annotation>
+ <xs:documentation>A record</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="rule">
+ <xs:annotation>
+ <xs:documentation>A rule</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="secondarykey">
+ <xs:annotation>
+ <xs:documentation>The secondary key</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="table">
+ <xs:annotation>
+ <xs:documentation>A table</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="user">
+ <xs:annotation>
+ <xs:documentation>A user</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="view">
+ <xs:annotation>
+ <xs:documentation>A view</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.database.class.attribute">
+ <xs:attribute name="class" use="required" type="db:db.database.class.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.database.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.database.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="class" type="db:db.database.class.enumeration"/>
+ </xs:attributeGroup>
+ <xs:element name="database" substitutionGroup="db:db.product.inlines">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.database.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:simpleType name="db.application.class.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="hardware">
+ <xs:annotation>
+ <xs:documentation>A hardware application</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="software">
+ <xs:annotation>
+ <xs:documentation>A software application</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.application.class.attribute">
+ <xs:attribute name="class" use="required" type="db:db.application.class.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.application.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.application.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="class" type="db:db.application.class.enumeration"/>
+ </xs:attributeGroup>
+ <xs:element name="application" substitutionGroup="db:db.product.inlines">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.application.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.hardware.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.hardware.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="hardware" substitutionGroup="db:db.product.inlines">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.hardware.attlist"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/programming.xsd b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/programming.xsd
new file mode 100644
index 000000000..225920c85
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/programming.xsd
@@ -0,0 +1,749 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: pool.rnc 7466 2007-09-27 14:03:55Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://docbook.org/ns/docbook" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <xs:import namespace="http://docbook.org/ns/docbook-slides" schemaLocation="slides.xsd"/>
+ <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <xs:group name="db.programming.inlines">
+ <xs:choice>
+ <xs:element ref="db:function"/>
+ <xs:element ref="db:parameter"/>
+ <xs:element ref="db:varname"/>
+ <xs:element ref="db:returnvalue"/>
+ <xs:element ref="db:type"/>
+ <xs:element ref="db:classname"/>
+ <xs:element ref="db:exceptionname"/>
+ <xs:element ref="db:interfacename"/>
+ <xs:element ref="db:methodname"/>
+ <xs:element ref="db:modifier"/>
+ <xs:element ref="db:initializer"/>
+ <xs:element ref="db:db.oo.inlines"/>
+ </xs:choice>
+ </xs:group>
+ <xs:element name="db.oo.inlines" abstract="true"/>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.synopsis.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.synopsis.label.attribute">
+ <xs:attributeGroup ref="db:db.label.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.synopsis.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attributeGroup ref="db:db.verbatim.attributes"/>
+ <xs:attribute name="label"/>
+ </xs:attributeGroup>
+ <xs:element name="synopsis" substitutionGroup="db:db.verbatim.blocks">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="db:db.verbatim.contentmodel">
+ <xs:attributeGroup ref="db:db.synopsis.attlist"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.funcsynopsis.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.funcsynopsis.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="language"/>
+ </xs:attributeGroup>
+ <xs:group name="db.funcsynopsis.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.forbidden"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="funcsynopsis" substitutionGroup="db:db.synopsis.blocks">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.funcsynopsis.info"/>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="db:funcsynopsisinfo"/>
+ <xs:element ref="db:funcprototype"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.funcsynopsis.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.funcsynopsisinfo.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.funcsynopsisinfo.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attributeGroup ref="db:db.verbatim.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="funcsynopsisinfo">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="db:db.verbatim.contentmodel">
+ <xs:attributeGroup ref="db:db.funcsynopsisinfo.attlist"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.funcprototype.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.funcprototype.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="funcprototype">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:modifier"/>
+ <xs:element ref="db:funcdef"/>
+ <xs:choice>
+ <xs:element ref="db:void"/>
+ <xs:element ref="db:varargs"/>
+ <xs:sequence>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="db:paramdef"/>
+ <xs:group ref="db:db.group.paramdef"/>
+ </xs:choice>
+ <xs:element minOccurs="0" ref="db:varargs"/>
+ </xs:sequence>
+ </xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:modifier"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.funcprototype.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.funcdef.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.funcdef.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="funcdef">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="db:db._text"/>
+ <xs:element ref="db:type"/>
+ <xs:element ref="db:function"/>
+ </xs:choice>
+ <xs:attributeGroup ref="db:db.funcdef.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.function.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.function.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="function">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.function.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.void.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.void.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="void">
+ <xs:complexType>
+ <xs:attributeGroup ref="db:db.void.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.varargs.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.varargs.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="varargs">
+ <xs:complexType>
+ <xs:attributeGroup ref="db:db.varargs.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.group.paramdef.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.group.paramdef.choice.attribute">
+ <xs:attributeGroup ref="db:db.choice.opt.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.group.paramdef.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="choice" type="db:db.choice.enumeration"/>
+ </xs:attributeGroup>
+ <xs:group name="db.group.paramdef">
+ <xs:sequence>
+ <xs:element name="group">
+ <xs:complexType>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="db:paramdef"/>
+ <xs:group ref="db:db.group.paramdef"/>
+ </xs:choice>
+ <xs:attributeGroup ref="db:db.group.paramdef.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.paramdef.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:simpleType name="db.paramdef.choice.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="opt">
+ <xs:annotation>
+ <xs:documentation>Formatted to indicate that it is optional.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="req">
+ <xs:annotation>
+ <xs:documentation>Formatted to indicate that it is required.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.paramdef.choice.attribute">
+ <xs:attribute name="choice" use="required" type="db:db.paramdef.choice.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.paramdef.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="choice" type="db:db.paramdef.choice.enumeration"/>
+ </xs:attributeGroup>
+ <xs:element name="paramdef">
+ <xs:complexType mixed="true">
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="db:db._text"/>
+ <xs:element ref="db:initializer"/>
+ <xs:element ref="db:type"/>
+ <xs:element ref="db:parameter"/>
+ <xs:element ref="db:funcparams"/>
+ </xs:choice>
+ <xs:attributeGroup ref="db:db.paramdef.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.funcparams.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.funcparams.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="funcparams">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.funcparams.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.classsynopsis.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:simpleType name="db.classsynopsis.class.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="class">
+ <xs:annotation>
+ <xs:documentation>This is the synopsis of a class</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="interface">
+ <xs:annotation>
+ <xs:documentation>This is the synopsis of an interface</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.classsynopsis.class.attribute">
+ <xs:attribute name="class" use="required" type="db:db.classsynopsis.class.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.classsynopsis.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="language"/>
+ <xs:attribute name="class" type="db:db.classsynopsis.class.enumeration"/>
+ </xs:attributeGroup>
+ <xs:element name="classsynopsis" substitutionGroup="db:db.synopsis.blocks">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="db:db.oo.inlines"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="db:classsynopsisinfo"/>
+ <xs:element ref="db:methodsynopsis"/>
+ <xs:element ref="db:constructorsynopsis"/>
+ <xs:element ref="db:destructorsynopsis"/>
+ <xs:element ref="db:fieldsynopsis"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.classsynopsis.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.classsynopsisinfo.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.classsynopsisinfo.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attributeGroup ref="db:db.verbatim.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="classsynopsisinfo">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="db:db.verbatim.contentmodel">
+ <xs:attributeGroup ref="db:db.classsynopsisinfo.attlist"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.ooclass.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.ooclass.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="ooclass" substitutionGroup="db:db.oo.inlines">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="db:package"/>
+ <xs:element ref="db:modifier"/>
+ </xs:choice>
+ <xs:element ref="db:classname"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.ooclass.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.oointerface.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.oointerface.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="oointerface" substitutionGroup="db:db.oo.inlines">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="db:package"/>
+ <xs:element ref="db:modifier"/>
+ </xs:choice>
+ <xs:element ref="db:interfacename"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.oointerface.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.ooexception.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.ooexception.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="ooexception" substitutionGroup="db:db.oo.inlines">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="db:package"/>
+ <xs:element ref="db:modifier"/>
+ </xs:choice>
+ <xs:element ref="db:exceptionname"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.ooexception.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.modifier.xml.space.attribute">
+ <xs:attributeGroup ref="xml:space1"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.modifier.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.modifier.attlist">
+ <xs:attributeGroup ref="xml:space1"/>
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="modifier">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.modifier.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.interfacename.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.interfacename.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="interfacename">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.interfacename.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.exceptionname.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.exceptionname.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="exceptionname">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.exceptionname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.fieldsynopsis.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.fieldsynopsis.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="language"/>
+ </xs:attributeGroup>
+ <xs:element name="fieldsynopsis" substitutionGroup="db:db.synopsis.blocks">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:modifier"/>
+ <xs:element minOccurs="0" ref="db:type"/>
+ <xs:element ref="db:varname"/>
+ <xs:element minOccurs="0" ref="db:initializer"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.fieldsynopsis.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.initializer.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.initializer.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="initializer">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.initializer.inlines"/>
+ <xs:attributeGroup ref="db:db.initializer.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.constructorsynopsis.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.constructorsynopsis.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="language"/>
+ </xs:attributeGroup>
+ <xs:element name="constructorsynopsis" substitutionGroup="db:db.synopsis.blocks">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:modifier"/>
+ <xs:element minOccurs="0" ref="db:methodname"/>
+ <xs:choice>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="db:methodparam"/>
+ <xs:group ref="db:db.group.methodparam"/>
+ </xs:choice>
+ <xs:element minOccurs="0" ref="db:void"/>
+ </xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:exceptionname"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.constructorsynopsis.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.destructorsynopsis.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.destructorsynopsis.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="language"/>
+ </xs:attributeGroup>
+ <xs:element name="destructorsynopsis" substitutionGroup="db:db.synopsis.blocks">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:modifier"/>
+ <xs:element minOccurs="0" ref="db:methodname"/>
+ <xs:choice>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="db:methodparam"/>
+ <xs:group ref="db:db.group.methodparam"/>
+ </xs:choice>
+ <xs:element minOccurs="0" ref="db:void"/>
+ </xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:exceptionname"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.destructorsynopsis.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.methodsynopsis.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.methodsynopsis.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="language"/>
+ </xs:attributeGroup>
+ <xs:element name="methodsynopsis" substitutionGroup="db:db.synopsis.blocks">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:modifier"/>
+ <xs:choice minOccurs="0">
+ <xs:element ref="db:type"/>
+ <xs:element ref="db:void"/>
+ </xs:choice>
+ <xs:element ref="db:methodname"/>
+ <xs:choice>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="db:methodparam"/>
+ <xs:group ref="db:db.group.methodparam"/>
+ </xs:choice>
+ <xs:element ref="db:void"/>
+ </xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:exceptionname"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:modifier"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.methodsynopsis.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.methodname.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.methodname.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="methodname">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.methodname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.methodparam.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.methodparam.rep.attribute">
+ <xs:attributeGroup ref="db:db.rep.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.methodparam.choice.attribute">
+ <xs:attributeGroup ref="db:db.choice.req.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.methodparam.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="rep" type="db:db.rep.enumeration"/>
+ <xs:attribute name="choice" type="db:db.choice.enumeration"/>
+ </xs:attributeGroup>
+ <xs:element name="methodparam">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:modifier"/>
+ <xs:element minOccurs="0" ref="db:type"/>
+ <xs:choice>
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:modifier"/>
+ <xs:element ref="db:parameter"/>
+ <xs:element minOccurs="0" ref="db:initializer"/>
+ </xs:sequence>
+ <xs:element ref="db:funcparams"/>
+ </xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:modifier"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.methodparam.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.group.methodparam.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.group.methodparam.choice.attribute">
+ <xs:attributeGroup ref="db:db.choice.opt.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.group.methodparam.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="choice" type="db:db.choice.enumeration"/>
+ </xs:attributeGroup>
+ <xs:group name="db.group.methodparam">
+ <xs:sequence>
+ <xs:element name="group">
+ <xs:complexType>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="db:methodparam"/>
+ <xs:group ref="db:db.group.methodparam"/>
+ </xs:choice>
+ <xs:attributeGroup ref="db:db.group.methodparam.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.varname.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.varname.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="varname">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.varname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.returnvalue.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.returnvalue.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="returnvalue">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.returnvalue.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.type.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.type.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="type">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.type.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.classname.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.classname.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="classname">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.classname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.programlisting.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.programlisting.width.attribute">
+ <xs:attributeGroup ref="db:db.width.characters.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.programlisting.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attributeGroup ref="db:db.verbatim.attributes"/>
+ <xs:attribute name="width" type="xs:nonNegativeInteger"/>
+ </xs:attributeGroup>
+ <xs:element name="programlisting" substitutionGroup="db:db.verbatim.blocks">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="db:db.verbatim.contentmodel">
+ <xs:attributeGroup ref="db:db.programlisting.attlist"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/qandaset.xsd b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/qandaset.xsd
new file mode 100644
index 000000000..6bb9ee2aa
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/qandaset.xsd
@@ -0,0 +1,188 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: qandaset.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://docbook.org/ns/docbook" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <xs:import namespace="http://docbook.org/ns/docbook-slides" schemaLocation="slides.xsd"/>
+ <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.qandaset.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:simpleType name="db.qandaset.defaultlabel.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="none">
+ <xs:annotation>
+ <xs:documentation>No labels</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="number">
+ <xs:annotation>
+ <xs:documentation>Numeric labels</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="qanda">
+ <xs:annotation>
+ <xs:documentation>"Q:" and "A:" labels</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.qandaset.defaultlabel.attribute">
+ <xs:attribute name="defaultlabel" use="required" type="db:db.qandaset.defaultlabel.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.qandaset.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="defaultlabel" type="db:db.qandaset.defaultlabel.enumeration"/>
+ </xs:attributeGroup>
+ <xs:group name="db.qandaset.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.only"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="qandaset">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.qandaset.info"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="db:qandadiv"/>
+ <xs:element maxOccurs="unbounded" ref="db:qandaentry"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.qandaset.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.qandadiv.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.qandadiv.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.qandadiv.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.only"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="qandadiv">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.qandadiv.info"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="db:qandadiv"/>
+ <xs:element maxOccurs="unbounded" ref="db:qandaentry"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.qandadiv.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.qandaentry.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.qandaentry.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.qandaentry.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.only"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="qandaentry">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.qandaentry.info"/>
+ <xs:element ref="db:question"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:answer"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.qandaentry.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.question.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.question.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="question">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="db:label"/>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.question.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.answer.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.answer.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="answer">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="db:label"/>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.answer.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.label.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.label.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="label">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.label.attlist"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/refentry.xsd b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/refentry.xsd
new file mode 100644
index 000000000..4c0aa838a
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/refentry.xsd
@@ -0,0 +1,361 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: refentry.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://docbook.org/ns/docbook" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <xs:import namespace="http://docbook.org/ns/docbook-slides" schemaLocation="slides.xsd"/>
+ <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <xs:group name="db.toplevel.refsection">
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="db:refsection"/>
+ <xs:element maxOccurs="unbounded" ref="db:refsect1"/>
+ </xs:choice>
+ </xs:group>
+ <xs:group name="db.secondlevel.refsection">
+ <xs:choice>
+ <xs:element maxOccurs="unbounded" ref="db:refsection"/>
+ <xs:element maxOccurs="unbounded" ref="db:refsect2"/>
+ </xs:choice>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:element name="db.reference.components" abstract="true">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.indexterm"/>
+ <xs:group ref="db:db.refentry.info"/>
+ <xs:element minOccurs="0" ref="db:refmeta"/>
+ <xs:element maxOccurs="unbounded" ref="db:refnamediv"/>
+ <xs:element minOccurs="0" ref="db:refsynopsisdiv"/>
+ <xs:group ref="db:db.toplevel.refsection"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.refentry.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.reference.status.attribute">
+ <xs:attributeGroup ref="db:db.status.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.reference.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.reference.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="status"/>
+ <xs:attribute name="label"/>
+ </xs:attributeGroup>
+ <xs:group name="db.reference.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.req"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="reference" substitutionGroup="db:db.divisions">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.reference.info"/>
+ <xs:element minOccurs="0" ref="db:partintro"/>
+ <xs:element maxOccurs="unbounded" ref="db:db.reference.components"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.reference.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.refentry.status.attribute">
+ <xs:attributeGroup ref="db:db.status.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.refentry.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.refentry.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="status"/>
+ <xs:attribute name="label"/>
+ </xs:attributeGroup>
+ <xs:group name="db.refentry.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.forbidden"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="refentry" substitutionGroup="db:db.reference.components"/>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.refmeta.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.refmeta.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="refmeta">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.indexterm"/>
+ <xs:element ref="db:refentrytitle"/>
+ <xs:element minOccurs="0" ref="db:manvolnum"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:refmiscinfo"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.indexterm"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.refmeta.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:simpleType name="db.refmiscinfo.class.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="source">
+ <xs:annotation>
+ <xs:documentation>The name of the software product or component to which this topic applies</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="version">
+ <xs:annotation>
+ <xs:documentation>The version of the software product or component to which this topic applies</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="manual">
+ <xs:annotation>
+ <xs:documentation>The section title of the reference page (e.g., User Commands)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="sectdesc">
+ <xs:annotation>
+ <xs:documentation>The section title of the reference page (believed synonymous with "manual" but in wide use)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="software">
+ <xs:annotation>
+ <xs:documentation>The name of the software product or component to which this topic applies (e.g., SunOS x.y; believed synonymous with "source" but in wide use)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.refmiscinfo.class-enum.attribute">
+ <xs:attribute name="class" type="db:db.refmiscinfo.class.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.refmiscinfo.class-other.attribute">
+ <xs:attribute name="otherclass" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.refmiscinfo.class-other.attributes">
+ <xs:attribute name="class" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="other">
+ <xs:annotation>
+ <xs:documentation>Indicates that the information is some 'other' kind.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="db:db.refmiscinfo.class-other.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.refmiscinfo.class.attribute">
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:union memberTypes="db:db.refmiscinfo.class.enumeration">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="other">
+ <xs:annotation>
+ <xs:documentation>Indicates that the information is some 'other' kind.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="otherclass"/>
+ </xs:attributeGroup>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.refmiscinfo.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.refmiscinfo.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attributeGroup ref="db:db.refmiscinfo.class.attribute"/>
+ </xs:attributeGroup>
+ <xs:element name="refmiscinfo">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.refmiscinfo.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.refnamediv.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.refnamediv.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="refnamediv">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="db:refdescriptor"/>
+ <xs:element maxOccurs="unbounded" ref="db:refname"/>
+ <xs:element ref="db:refpurpose"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:refclass"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.refnamediv.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.refdescriptor.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.refdescriptor.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="refdescriptor">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:attributeGroup ref="db:db.refdescriptor.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.refname.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.refname.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="refname">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:attributeGroup ref="db:db.refname.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.refpurpose.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.refpurpose.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="refpurpose">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:attributeGroup ref="db:db.refpurpose.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.refclass.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.refclass.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="refclass">
+ <xs:complexType mixed="true">
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:application"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.refclass.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.refsynopsisdiv.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.refsynopsisdiv.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.refsynopsisdiv.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="refsynopsisdiv">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.refsynopsisdiv.info"/>
+ <xs:choice>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:group minOccurs="0" ref="db:db.secondlevel.refsection"/>
+ </xs:sequence>
+ <xs:group ref="db:db.secondlevel.refsection"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.refsynopsisdiv.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.refsection.status.attribute">
+ <xs:attributeGroup ref="db:db.status.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.refsection.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.refsection.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="status"/>
+ <xs:attribute name="label"/>
+ </xs:attributeGroup>
+ <xs:group name="db.refsection.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.req"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="refsection">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.refsection.info"/>
+ <xs:choice>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:refsection"/>
+ </xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="db:refsection"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.refsection.attlist"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/refsect1.xsd b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/refsect1.xsd
new file mode 100644
index 000000000..f0d984c0a
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/refsect1.xsd
@@ -0,0 +1,142 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: refsect1.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://docbook.org/ns/docbook" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <xs:import namespace="http://docbook.org/ns/docbook-slides" schemaLocation="slides.xsd"/>
+ <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <!-- ====================================================================== -->
+ <xs:group name="db.refsect1.sections">
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="db:refsect2"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:attributeGroup name="db.refsect1.status.attribute">
+ <xs:attributeGroup ref="db:db.status.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.refsect1.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.refsect1.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="label"/>
+ <xs:attribute name="status"/>
+ </xs:attributeGroup>
+ <xs:group name="db.refsect1.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.req"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="refsect1">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.refsect1.info"/>
+ <xs:choice>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:group minOccurs="0" ref="db:db.refsect1.sections"/>
+ </xs:sequence>
+ <xs:group ref="db:db.refsect1.sections"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.refsect1.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:group name="db.refsect2.sections">
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="db:refsect3"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:attributeGroup name="db.refsect2.status.attribute">
+ <xs:attributeGroup ref="db:db.status.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.refsect2.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.refsect2.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="label"/>
+ <xs:attribute name="status"/>
+ </xs:attributeGroup>
+ <xs:group name="db.refsect2.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.req"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="refsect2">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.refsect2.info"/>
+ <xs:choice>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:group minOccurs="0" ref="db:db.refsect2.sections"/>
+ </xs:sequence>
+ <xs:group ref="db:db.refsect2.sections"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.refsect2.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.refsect3.status.attribute">
+ <xs:attributeGroup ref="db:db.status.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.refsect3.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.refsect3.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="label"/>
+ <xs:attribute name="status"/>
+ </xs:attributeGroup>
+ <xs:group name="db.refsect3.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.req"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="refsect3">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.refsect3.info"/>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.refsect3.attlist"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/sect1.xsd b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/sect1.xsd
new file mode 100644
index 000000000..2fbff4d13
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/sect1.xsd
@@ -0,0 +1,252 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: sect1.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://docbook.org/ns/docbook" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <xs:import namespace="http://docbook.org/ns/docbook-slides" schemaLocation="slides.xsd"/>
+ <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <!-- ====================================================================== -->
+ <xs:group name="db.sect1.sections">
+ <xs:choice>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="db:sect2"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:simplesect"/>
+ </xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="db:simplesect"/>
+ </xs:choice>
+ </xs:group>
+ <xs:attributeGroup name="db.sect1.status.attribute">
+ <xs:attributeGroup ref="db:db.status.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.sect1.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.sect1.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="label"/>
+ <xs:attribute name="status"/>
+ </xs:attributeGroup>
+ <xs:group name="db.sect1.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.req"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="sect1">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.sect1.info"/>
+ <xs:choice>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:group minOccurs="0" ref="db:db.sect1.sections"/>
+ </xs:sequence>
+ <xs:group ref="db:db.sect1.sections"/>
+ </xs:choice>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.navigation.components"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.sect1.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:group name="db.sect2.sections">
+ <xs:choice>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="db:sect3"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:simplesect"/>
+ </xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="db:simplesect"/>
+ </xs:choice>
+ </xs:group>
+ <xs:attributeGroup name="db.sect2.status.attribute">
+ <xs:attributeGroup ref="db:db.status.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.sect2.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.sect2.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="label"/>
+ <xs:attribute name="status"/>
+ </xs:attributeGroup>
+ <xs:group name="db.sect2.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.req"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="sect2">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.sect2.info"/>
+ <xs:choice>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:group minOccurs="0" ref="db:db.sect2.sections"/>
+ </xs:sequence>
+ <xs:group ref="db:db.sect2.sections"/>
+ </xs:choice>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.navigation.components"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.sect2.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:group name="db.sect3.sections">
+ <xs:choice>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="db:sect4"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:simplesect"/>
+ </xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="db:simplesect"/>
+ </xs:choice>
+ </xs:group>
+ <xs:attributeGroup name="db.sect3.status.attribute">
+ <xs:attributeGroup ref="db:db.status.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.sect3.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.sect3.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="label"/>
+ <xs:attribute name="status"/>
+ </xs:attributeGroup>
+ <xs:group name="db.sect3.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.req"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="sect3">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.sect3.info"/>
+ <xs:choice>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:group minOccurs="0" ref="db:db.sect3.sections"/>
+ </xs:sequence>
+ <xs:group ref="db:db.sect3.sections"/>
+ </xs:choice>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.navigation.components"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.sect3.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:group name="db.sect4.sections">
+ <xs:choice>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="db:sect5"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:simplesect"/>
+ </xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="db:simplesect"/>
+ </xs:choice>
+ </xs:group>
+ <xs:attributeGroup name="db.sect4.status.attribute">
+ <xs:attributeGroup ref="db:db.status.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.sect4.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.sect4.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="label"/>
+ <xs:attribute name="status"/>
+ </xs:attributeGroup>
+ <xs:group name="db.sect4.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.req"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="sect4">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.sect4.info"/>
+ <xs:choice>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:group minOccurs="0" ref="db:db.sect4.sections"/>
+ </xs:sequence>
+ <xs:group ref="db:db.sect4.sections"/>
+ </xs:choice>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.navigation.components"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.sect4.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:group name="db.sect5.sections">
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" ref="db:simplesect"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:attributeGroup name="db.sect5.status.attribute">
+ <xs:attributeGroup ref="db:db.status.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.sect5.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.sect5.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="label"/>
+ <xs:attribute name="status"/>
+ </xs:attributeGroup>
+ <xs:group name="db.sect5.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.req"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="sect5">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.sect5.info"/>
+ <xs:choice>
+ <xs:sequence>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:group minOccurs="0" ref="db:db.sect5.sections"/>
+ </xs:sequence>
+ <xs:group ref="db:db.sect5.sections"/>
+ </xs:choice>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.navigation.components"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.sect5.attlist"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/slides.xsd b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/slides.xsd
new file mode 100644
index 000000000..01f819e8b
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/slides.xsd
@@ -0,0 +1,362 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://docbook.org/ns/docbook-slides" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <xs:include schemaLocation="docbook.xsd"/>
+ <xs:import namespace="http://docbook.org/ns/docbook" schemaLocation="db.xsd"/>
+ <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <!-- See http://docbook.org/ns/docbook-slides -->
+ <!--
+ This file is part of DocBook Slides V5.0
+
+ Copyright 2012 Gabor Kovesdan
+
+ Release: $Id$
+
+ Permission to use, copy, modify and distribute the DocBook Slides
+ schema and its accompanying documentation for any purpose and without
+ fee is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook Slides schema in any way, label your schema
+ as a variant of DocBook Slides. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+ -->
+ <!-- Avoid ID clashes -->
+ <xs:attributeGroup name="db._any.attribute">
+ <xs:anyAttribute processContents="skip"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.common.attributes">
+ <xs:attribute ref="xml:id"/>
+ <xs:attributeGroup ref="db:db.common.base.attributes"/>
+ <xs:attribute name="annotations"/>
+ <xs:attributeGroup ref="dbs:dbs.style.attributes"/>
+ </xs:attributeGroup>
+ <!-- Any element and attribute from the SVG namespace -->
+ <xs:group name="db._any.svg">
+ <xs:sequence>
+ <xs:any namespace="http://www.w3.org/2000/svg" processContents="skip"/>
+ </xs:sequence>
+ </xs:group>
+ <!-- Any element and attribute from the MathML namespace -->
+ <xs:group name="db._any.mml">
+ <xs:sequence>
+ <xs:any namespace="http://www.w3.org/1998/Math/MathML" processContents="skip"/>
+ </xs:sequence>
+ </xs:group>
+ <!-- Any attribute from any namespace -->
+ <xs:attributeGroup name="dbs._any.attribute">
+ <xs:anyAttribute processContents="skip"/>
+ </xs:attributeGroup>
+ <xs:group name="dbs.all.content">
+ <xs:sequence>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="db:db.all.blocks"/>
+ <xs:element ref="dbs:speakernotes"/>
+ <xs:element ref="dbs:handoutnotes"/>
+ <xs:group ref="dbs:db._any.svg"/>
+ <xs:group ref="dbs:db._any.mml"/>
+ <xs:element ref="dbs:block"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="block">
+ <xs:annotation>
+ <xs:documentation>Indicates a formatting block that can have its own styling applied</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="dbs:dbs.all.content"/>
+ <xs:attributeGroup ref="dbs:dbs.block.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:attributeGroup name="dbs.block.role.attribute">
+ <xs:attribute name="role" use="required">
+ <xs:annotation>
+ <xs:documentation>Role attribute for the block element</xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="dbs.block.status.attribute">
+ <xs:attributeGroup ref="db:db.status.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="dbs.block.attlist">
+ <xs:attribute name="role">
+ <xs:annotation>
+ <xs:documentation>Role attribute for the block element</xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="label"/>
+ <xs:attribute name="status"/>
+ </xs:attributeGroup>
+ <xs:element name="slides">
+ <xs:annotation>
+ <xs:documentation>Root element of a slides document</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.req"/>
+ <xs:element minOccurs="0" ref="dbs:speakernotes"/>
+ <xs:element minOccurs="0" ref="dbs:handoutnotes"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="dbs:foil"/>
+ <xs:element ref="dbs:foilgroup"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="dbs:dbs.slides.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:attributeGroup name="dbs.slides.role.attribute">
+ <xs:attribute name="role" use="required">
+ <xs:annotation>
+ <xs:documentation>Role attribute for the slides element</xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="dbs.slides.status.attribute">
+ <xs:attributeGroup ref="db:db.status.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="dbs.slides.attlist">
+ <xs:attribute name="role">
+ <xs:annotation>
+ <xs:documentation>Role attribute for the slides element</xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="label"/>
+ <xs:attribute name="status"/>
+ </xs:attributeGroup>
+ <xs:element name="foilgroup">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.req"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="dbs:dbs.all.content"/>
+ <xs:element maxOccurs="unbounded" ref="dbs:foil"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="dbs:dbs.foilgroup.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:attributeGroup name="dbs.foilgroup.role.attribute">
+ <xs:attribute name="role" use="required">
+ <xs:annotation>
+ <xs:documentation>Role attribute for the foilgroup element</xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="dbs.foilgroup.status.attribute">
+ <xs:attributeGroup ref="db:db.status.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="dbs.foilgroup.attlist">
+ <xs:attribute name="role">
+ <xs:annotation>
+ <xs:documentation>Role attribute for the foilgroup element</xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="label"/>
+ <xs:attribute name="status"/>
+ </xs:attributeGroup>
+ <xs:element name="foil">
+ <xs:annotation>
+ <xs:documentation>Indicates a foil that may have some info and content</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.req"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="dbs:dbs.all.content"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.navigation.components"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="dbs:dbs.foil.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:attributeGroup name="dbs.foil.role.attribute">
+ <xs:attribute name="role" use="required">
+ <xs:annotation>
+ <xs:documentation>Role attribute for the foil element</xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="dbs.foil.status.attribute">
+ <xs:attributeGroup ref="db:db.status.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="dbs.foil.attlist">
+ <xs:attribute name="role">
+ <xs:annotation>
+ <xs:documentation>Role attribute for the foil element</xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="label"/>
+ <xs:attribute name="status"/>
+ </xs:attributeGroup>
+ <xs:element name="speakernotes">
+ <xs:annotation>
+ <xs:documentation>Indicates notes for the speaker</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:attributeGroup ref="dbs:dbs.speakernotes.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:attributeGroup name="dbs.speakernotes.role.attribute">
+ <xs:attribute name="role" use="required">
+ <xs:annotation>
+ <xs:documentation>Role attribute for the speakernotes element</xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="dbs.speakernotes.attlist">
+ <xs:attribute name="role">
+ <xs:annotation>
+ <xs:documentation>Role attribute for the speakernotes element</xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="handoutnotes">
+ <xs:annotation>
+ <xs:documentation>Indicates notes that are meant for printed copies</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:attributeGroup ref="dbs:dbs.handoutnotes.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <xs:attributeGroup name="dbs.handoutnotes.role.attribute">
+ <xs:annotation>
+ <xs:documentation>Role attribute for the handoutnotes element</xs:documentation>
+ </xs:annotation>
+ <xs:attribute name="role" use="required">
+ <xs:annotation>
+ <xs:documentation>Role attribute for the handoutnotes element</xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="dbs.handoutnotes.attlist">
+ <xs:attribute name="role">
+ <xs:annotation>
+ <xs:documentation>Role attribute for the handoutnotes element</xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="dbs.style.attributes">
+ <xs:attribute name="incremental" form="qualified">
+ <xs:annotation>
+ <xs:documentation>Attribute indicating an incremental part</xs:documentation>
+ </xs:annotation>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="0">
+ <xs:annotation>
+ <xs:documentation>disabled</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="1">
+ <xs:annotation>
+ <xs:documentation>enabled</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="collapsible" form="qualified">
+ <xs:annotation>
+ <xs:documentation>Attribute indicating a collapsible part</xs:documentation>
+ </xs:annotation>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="0">
+ <xs:annotation>
+ <xs:documentation>disabled</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="1">
+ <xs:annotation>
+ <xs:documentation>enabled</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="expanded">
+ <xs:annotation>
+ <xs:documentation>enabled and expanded by default</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="style" form="qualified">
+ <xs:annotation>
+ <xs:documentation>Attribute indicating a formatting style class</xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="dbs.incremental.attribute">
+ <xs:attribute name="incremental" use="required" form="qualified">
+ <xs:annotation>
+ <xs:documentation>Attribute indicating an incremental part</xs:documentation>
+ </xs:annotation>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="0">
+ <xs:annotation>
+ <xs:documentation>disabled</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="1">
+ <xs:annotation>
+ <xs:documentation>enabled</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="dbs.collapsible.attribute">
+ <xs:attribute name="collapsible" use="required" form="qualified">
+ <xs:annotation>
+ <xs:documentation>Attribute indicating a collapsible part</xs:documentation>
+ </xs:annotation>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="0">
+ <xs:annotation>
+ <xs:documentation>disabled</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="1">
+ <xs:annotation>
+ <xs:documentation>enabled</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="expanded">
+ <xs:annotation>
+ <xs:documentation>enabled and expanded by default</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="dbs.style.attribute">
+ <xs:attribute name="style" use="required" form="qualified">
+ <xs:annotation>
+ <xs:documentation>Attribute indicating a formatting style class</xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ </xs:attributeGroup>
+</xs:schema>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/svg.xsd b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/svg.xsd
new file mode 100644
index 000000000..d6dfbf6e1
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/svg.xsd
@@ -0,0 +1,82 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: svg.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://docbook.org/ns/docbook" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <xs:import namespace="http://docbook.org/ns/docbook-slides" schemaLocation="slides.xsd"/>
+ <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <!-- ============================================================ -->
+ <xs:attributeGroup name="db.imagedata.svg.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.imagedata.svg.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attribute name="format">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="svg">
+ <xs:annotation>
+ <xs:documentation>Specifies SVG.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="align" type="db:db.imagedata.align.enumeration"/>
+ <xs:attribute name="valign" type="db:db.imagedata.valign.enumeration"/>
+ <xs:attribute name="width"/>
+ <xs:attribute name="contentwidth"/>
+ <xs:attribute name="scalefit" type="db:db.imagedata.scalefit.enumeration"/>
+ <xs:attribute name="scale" type="xs:positiveInteger"/>
+ <xs:attribute name="depth"/>
+ <xs:attribute name="contentdepth"/>
+ </xs:attributeGroup>
+ <xs:group name="db.imagedata.svg.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.forbidden"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:group name="db.imagedata.svg">
+ <xs:sequence>
+ <xs:element name="imagedata">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.imagedata.svg.info"/>
+ <xs:group maxOccurs="unbounded" ref="dbs:db._any.svg"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.imagedata.svg.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:group>
+ <!-- ============================================================ -->
+</xs:schema>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/tasks.xsd b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/tasks.xsd
new file mode 100644
index 000000000..beb1996e8
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/tasks.xsd
@@ -0,0 +1,132 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: tasks.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://docbook.org/ns/docbook" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <xs:import namespace="http://docbook.org/ns/docbook-slides" schemaLocation="slides.xsd"/>
+ <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <xs:group name="db.task.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.req"/>
+ </xs:sequence>
+ </xs:group>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.task.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.task.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="task">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.task.info"/>
+ <xs:element minOccurs="0" ref="db:tasksummary"/>
+ <xs:element minOccurs="0" ref="db:taskprerequisites"/>
+ <xs:element ref="db:procedure"/>
+ <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:example"/>
+ <xs:element minOccurs="0" ref="db:taskrelated"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.task.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.tasksummary.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.tasksummary.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.tasksummary.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.only"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="tasksummary">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.tasksummary.info"/>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.tasksummary.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.taskprerequisites.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.taskprerequisites.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.taskprerequisites.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.only"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="taskprerequisites">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.taskprerequisites.info"/>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.taskprerequisites.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.taskrelated.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.taskrelated.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.taskrelated.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.only"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="taskrelated">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.taskrelated.info"/>
+ <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.taskrelated.attlist"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/technical.xsd b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/technical.xsd
new file mode 100644
index 000000000..51cf9307c
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/technical.xsd
@@ -0,0 +1,250 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: pool.rnc 7466 2007-09-27 14:03:55Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://docbook.org/ns/docbook" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <xs:import namespace="http://docbook.org/ns/docbook-slides" schemaLocation="slides.xsd"/>
+ <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <!-- ====================================================================== -->
+ <!-- ====================================================================== -->
+ <xs:simpleType name="db.systemitem.class.enumeration">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="daemon">
+ <xs:annotation>
+ <xs:documentation>A daemon or other system process (syslogd)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="domainname">
+ <xs:annotation>
+ <xs:documentation>A domain name (example.com)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="etheraddress">
+ <xs:annotation>
+ <xs:documentation>An ethernet address (00:05:4E:49:FD:8E)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="event">
+ <xs:annotation>
+ <xs:documentation>An event of some sort (SIGHUP)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="eventhandler">
+ <xs:annotation>
+ <xs:documentation>An event handler of some sort (hangup)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="filesystem">
+ <xs:annotation>
+ <xs:documentation>A filesystem (ext3)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="fqdomainname">
+ <xs:annotation>
+ <xs:documentation>A fully qualified domain name (my.example.com)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="groupname">
+ <xs:annotation>
+ <xs:documentation>A group name (wheel)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="ipaddress">
+ <xs:annotation>
+ <xs:documentation>An IP address (127.0.0.1)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="library">
+ <xs:annotation>
+ <xs:documentation>A library (libncurses)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="macro">
+ <xs:annotation>
+ <xs:documentation>A macro</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="netmask">
+ <xs:annotation>
+ <xs:documentation>A netmask (255.255.255.192)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="newsgroup">
+ <xs:annotation>
+ <xs:documentation>A newsgroup (comp.text.xml)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="osname">
+ <xs:annotation>
+ <xs:documentation>An operating system name (Hurd)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="process">
+ <xs:annotation>
+ <xs:documentation>A process (gnome-cups-icon)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="protocol">
+ <xs:annotation>
+ <xs:documentation>A protocol (ftp)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="resource">
+ <xs:annotation>
+ <xs:documentation>A resource</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="securitycontext">
+ <xs:annotation>
+ <xs:documentation>A security context (a role, permission, or security token, for example)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="server">
+ <xs:annotation>
+ <xs:documentation>A server (mail.example.com)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="service">
+ <xs:annotation>
+ <xs:documentation>A service (ppp)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="systemname">
+ <xs:annotation>
+ <xs:documentation>A system name (hephaistos)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ <xs:enumeration value="username">
+ <xs:annotation>
+ <xs:documentation>A user name (ndw)</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:attributeGroup name="db.systemitem.class-enum.attribute">
+ <xs:attribute name="class" type="db:db.systemitem.class.enumeration"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.systemitem.class-other.attribute">
+ <xs:attribute name="otherclass" use="required" type="xs:NMTOKEN"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.systemitem.class-other.attributes">
+ <xs:attribute name="class" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="other">
+ <xs:annotation>
+ <xs:documentation>Indicates that the system item is some 'other' kind.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="db:db.systemitem.class-other.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.systemitem.class.attribute">
+ <xs:attribute name="class">
+ <xs:simpleType>
+ <xs:union memberTypes="db:db.systemitem.class.enumeration">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="other">
+ <xs:annotation>
+ <xs:documentation>Indicates that the system item is some 'other' kind.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="otherclass" type="xs:NMTOKEN"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.systemitem.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.systemitem.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attributeGroup ref="db:db.systemitem.class.attribute"/>
+ </xs:attributeGroup>
+ <xs:element name="systemitem" substitutionGroup="db:db.technical.inlines">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.systemitem.inlines"/>
+ <xs:attributeGroup ref="db:db.systemitem.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.option.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.option.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="option" substitutionGroup="db:db.technical.inlines">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.option.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.optional.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.optional.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="optional" substitutionGroup="db:db.technical.inlines">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.optional.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.property.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.property.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:element name="property" substitutionGroup="db:db.technical.inlines">
+ <xs:complexType mixed="true">
+ <xs:group ref="db:db._text"/>
+ <xs:attributeGroup ref="db:db.property.attlist"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/toc.xsd b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/toc.xsd
new file mode 100644
index 000000000..630a3fac4
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/toc.xsd
@@ -0,0 +1,116 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: toc.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://docbook.org/ns/docbook" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <xs:import namespace="http://docbook.org/ns/docbook-slides" schemaLocation="slides.xsd"/>
+ <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <xs:attributeGroup name="db.toc.pagenum.attribute">
+ <xs:attribute name="pagenum" use="required"/>
+ </xs:attributeGroup>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.toc.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.toc.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ </xs:attributeGroup>
+ <xs:group name="db.toc.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.only"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="toc">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.toc.info"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="db:tocdiv"/>
+ <xs:element ref="db:tocentry"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.toc.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.tocdiv.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.tocdiv.pagenum.attribute">
+ <xs:attributeGroup ref="db:db.toc.pagenum.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.tocdiv.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attribute name="pagenum"/>
+ <xs:attribute name="linkend" type="xs:IDREF"/>
+ </xs:attributeGroup>
+ <xs:group name="db.tocdiv.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="tocdiv">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.tocdiv.info"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.blocks"/>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="db:tocdiv"/>
+ <xs:element ref="db:tocentry"/>
+ </xs:choice>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.tocdiv.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.tocentry.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.tocentry.pagenum.attribute">
+ <xs:attributeGroup ref="db:db.toc.pagenum.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.tocentry.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attribute name="pagenum"/>
+ <xs:attribute name="linkend" type="xs:IDREF"/>
+ </xs:attributeGroup>
+ <xs:element name="tocentry">
+ <xs:complexType mixed="true">
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.inlines"/>
+ <xs:attributeGroup ref="db:db.tocentry.attlist"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/topic.xsd b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/topic.xsd
new file mode 100644
index 000000000..f20c894d3
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/topic.xsd
@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: hier.rnc 8569 2010-01-15 00:23:46Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://docbook.org/ns/docbook" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <xs:import namespace="http://docbook.org/ns/docbook-slides" schemaLocation="slides.xsd"/>
+ <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.topic.status.attribute">
+ <xs:attributeGroup ref="db:db.status.attribute"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.topic.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.topic.type.attribute">
+ <xs:attribute name="type" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.topic.attlist">
+ <xs:attribute name="role"/>
+ <xs:attribute name="type"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="db:db.common.linking.attributes"/>
+ <xs:attribute name="label"/>
+ <xs:attribute name="status"/>
+ </xs:attributeGroup>
+ <xs:group name="db.topic.info">
+ <xs:sequence>
+ <xs:group ref="db:db._info.title.req"/>
+ </xs:sequence>
+ </xs:group>
+ <xs:element name="topic">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:group ref="db:db.topic.info"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.navigation.components"/>
+ <xs:group ref="db:db.toplevel.blocks.or.sections"/>
+ <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.navigation.components"/>
+ </xs:sequence>
+ <xs:attributeGroup ref="db:db.topic.attlist"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/xlink.xsd b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/xlink.xsd
new file mode 100644
index 000000000..28558d32c
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/xlink.xsd
@@ -0,0 +1,67 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://www.w3.org/1999/xlink" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <xs:import namespace="http://docbook.org/ns/docbook" schemaLocation="db.xsd"/>
+ <xs:import namespace="http://docbook.org/ns/docbook-slides" schemaLocation="slides.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <xs:attribute name="href" type="xs:anyURI"/>
+ <xs:attributeGroup name="type">
+ <xs:attribute name="type" use="required" form="qualified">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="simple">
+ <xs:annotation>
+ <xs:documentation>An XLink simple link</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:attribute name="role" type="xs:anyURI"/>
+ <xs:attribute name="arcrole" type="xs:anyURI"/>
+ <xs:attribute name="title"/>
+ <xs:attribute name="show" type="db:db.xlink.show.enumeration"/>
+ <xs:attribute name="actuate" type="db:db.xlink.actuate.enumeration"/>
+ <xs:attribute name="from" type="xs:NMTOKEN"/>
+ <xs:attribute name="label" type="xs:NMTOKEN"/>
+ <xs:attribute name="to" type="xs:NMTOKEN"/>
+ <xs:attributeGroup name="type1">
+ <xs:attribute name="type" use="required" form="qualified">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="extended">
+ <xs:annotation>
+ <xs:documentation>An XLink extended link</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="type2">
+ <xs:attribute name="type" use="required" form="qualified">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="locator">
+ <xs:annotation>
+ <xs:documentation>An XLink locator link</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="type3">
+ <xs:attribute name="type" use="required" form="qualified">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="arc">
+ <xs:annotation>
+ <xs:documentation>An XLink arc link</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+</xs:schema>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/xlink1.xsd b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/xlink1.xsd
new file mode 100644
index 000000000..100eff8dc
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/xlink1.xsd
@@ -0,0 +1,103 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ This file is part of DocBook V5.0
+
+ Copyright 1992-2008 HaL Computer Systems, Inc.,
+ O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software
+ Corporation, Norman Walsh, Sun Microsystems, Inc., and the
+ Organization for the Advancement of Structured Information
+ Standards (OASIS).
+
+ Release: $Id: xlink.rnc 8931 2010-10-20 13:29:20Z nwalsh $
+
+ Permission to use, copy, modify and distribute the DocBook schema
+ and its accompanying documentation for any purpose and without fee
+ is hereby granted in perpetuity, provided that the above copyright
+ notice and this paragraph appear in all copies. The copyright
+ holders make no representation about the suitability of the schema
+ for any purpose. It is provided "as is" without expressed or implied
+ warranty.
+
+ If you modify the DocBook schema in any way, label your schema as a
+ variant of DocBook. See the reference documentation
+ (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook)
+ for more information.
+
+ Please direct all questions, bug reports, or suggestions for changes
+ to the docbook@lists.oasis-open.org mailing list. For more
+ information, see http://www.oasis-open.org/docbook/.
+
+ ======================================================================
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://docbook.org/ns/docbook" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <xs:import namespace="http://docbook.org/ns/docbook-slides" schemaLocation="slides.xsd"/>
+ <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
+ <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
+ <xs:attributeGroup name="db.xlink.from.attribute">
+ <xs:attribute ref="xlink:from" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.xlink.label.attribute">
+ <xs:attribute ref="xlink:label" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.xlink.to.attribute">
+ <xs:attribute ref="xlink:to" use="required"/>
+ </xs:attributeGroup>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.extendedlink.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.extendedlink.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="xlink:type1"/>
+ <xs:attribute ref="xlink:role"/>
+ <xs:attribute ref="xlink:title"/>
+ </xs:attributeGroup>
+ <xs:element name="extendedlink">
+ <xs:complexType>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="db:locator"/>
+ <xs:element ref="db:arc"/>
+ </xs:choice>
+ <xs:attributeGroup ref="db:db.extendedlink.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.locator.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.locator.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="xlink:type2"/>
+ <xs:attributeGroup ref="db:db.xlink.href.attribute"/>
+ <xs:attribute ref="xlink:role"/>
+ <xs:attribute ref="xlink:title"/>
+ <xs:attribute ref="xlink:label"/>
+ </xs:attributeGroup>
+ <xs:element name="locator">
+ <xs:complexType>
+ <xs:attributeGroup ref="db:db.locator.attlist"/>
+ </xs:complexType>
+ </xs:element>
+ <!-- ====================================================================== -->
+ <xs:attributeGroup name="db.arc.role.attribute">
+ <xs:attribute name="role" use="required"/>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="db.arc.attlist">
+ <xs:attribute name="role"/>
+ <xs:attributeGroup ref="dbs:db.common.attributes"/>
+ <xs:attributeGroup ref="xlink:type3"/>
+ <xs:attribute ref="xlink:arcrole"/>
+ <xs:attribute ref="xlink:title"/>
+ <xs:attribute ref="xlink:show"/>
+ <xs:attribute ref="xlink:actuate"/>
+ <xs:attribute ref="xlink:from"/>
+ <xs:attribute ref="xlink:to"/>
+ </xs:attributeGroup>
+ <xs:element name="arc">
+ <xs:complexType>
+ <xs:attributeGroup ref="db:db.arc.attlist"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/xml.xsd b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/xml.xsd
new file mode 100644
index 000000000..24c87a9fb
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/schema/xsd/xml.xsd
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://www.w3.org/XML/1998/namespace" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <xs:import namespace="http://docbook.org/ns/docbook" schemaLocation="db.xsd"/>
+ <xs:import namespace="http://docbook.org/ns/docbook-slides" schemaLocation="slides.xsd"/>
+ <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/>
+ <xs:attribute name="id" type="xs:ID"/>
+ <xs:attribute name="lang"/>
+ <xs:attribute name="base" type="xs:anyURI"/>
+ <xs:attributeGroup name="space">
+ <xs:attribute name="space" use="required" form="qualified">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="preserve">
+ <xs:annotation>
+ <xs:documentation>Whitespace must be preserved.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+ <xs:attributeGroup name="space1">
+ <xs:attribute name="space" use="required" form="qualified">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="preserve">
+ <xs:annotation>
+ <xs:documentation>Extra whitespace and line breaks must be preserved.</xs:documentation>
+ </xs:annotation>
+ </xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+</xs:schema>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/.htaccess b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/.htaccess
new file mode 100755
index 000000000..d395348ae
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/.htaccess
@@ -0,0 +1,28 @@
+Options +MultiViews
+LanguagePriority en
+AddLanguage pt-br .pt-br
+
+<Files ~ "*.html">
+
+ForceType 'text/html; charset=utf-8'
+
+</Files>
+
+<Files ~ "*.xhtml">
+
+ForceType 'application/xhtml+xml; charset=utf-8'
+
+</Files>
+
+<Files ~ *.css">
+
+ForceType 'text/css; charset=utf-8'
+
+</Files>
+
+<Files ~ "*.js">
+
+ForceType 'text/javascript; charset=utf-8'
+
+</Files>
+mkdir
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/Overview.html b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/Overview.html
new file mode 100755
index 000000000..69f72f635
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/Overview.html
@@ -0,0 +1,911 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html lang="en-US">
+<head>
+<meta name="generator" content=
+"HTML Tidy for Linux/x86 (vers 1st November 2003), see www.w3.org" />
+<title>HTML Slidy</title>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="copyright" content=
+"Copyright &#169; 2005-2010 W3C (MIT, ERCIM, Keio)" />
+<meta name="duration" content="5" />
+<meta name="font-size-adjustment" content="-2" />
+<link rel="stylesheet" href="styles/slidy.css" type="text/css" />
+<link rel="stylesheet" href="styles/w3c-blue.css" type="text/css" />
+<script src="scripts/slidy.js" charset="utf-8" type="text/javascript">
+</script>
+</head>
+<body>
+<div class="background"><img alt="" id="head-icon"
+src="graphics/icon-blue.png" /><object id="head-logo"
+data="graphics/w3c-logo-white.svg" type="image/svg+xml"
+title="W3C logo"><a href="http://www.w3.org/"><img
+alt="W3C logo" id="head-logo-fallback"
+src="graphics/w3c-logo-white.gif" /></a></object></div>
+
+<div class="background slanty">
+<img src="graphics/w3c-logo-slanted.jpg" alt="slanted W3C logo" />
+</div>
+<div class="slide cover title">
+ <!-- hidden style graphics to ensure they are saved with other content -->
+ <img class="hidden" src="graphics/bullet.png" alt="" />
+ <img class="hidden" src="graphics/fold.gif" alt="" />
+ <img class="hidden" src="graphics/unfold.gif" alt="" />
+ <img class="hidden" src="graphics/fold-dim.gif" alt="" />
+ <img class="hidden" src="graphics/nofold-dim.gif" alt="" />
+ <img class="hidden" src="graphics/unfold-dim.gif" alt="" />
+ <img class="hidden" src="graphics/bullet-fold.gif" alt="" />
+ <img class="hidden" src="graphics/bullet-unfold.gif" alt="" />
+ <img class="hidden" src="graphics/bullet-fold-dim.gif" alt="" />
+ <img class="hidden" src="graphics/bullet-nofold-dim.gif" alt="" />
+ <img class="hidden" src="graphics/bullet-unfold-dim.gif" alt="" />
+
+<img src="graphics/keys2.jpg" alt="Cover page images (keys)"
+ class="cover" /><br clear="all" />
+<h1>HTML Slidy: Slide Shows in HTML and XHTML</h1>
+
+<p><a href="http://www.w3.org/People/Raggett/">Dave Raggett</a>,
+&lt;<a href="mailto:dsr@w3.org">dsr@w3.org</a>&gt;<br />
+<br />
+<br />
+<br />
+<br /><em>Hit the space bar or swipe left for next slide</em></p>
+</div>
+
+<div class="slide">
+<h1>Slide Shows in HTML and XHTML</h1>
+
+<ul>
+<li>You can now create accessible slide shows with ease</li>
+
+<li>Works across browsers and is operated like PowerPoint
+
+<ul>
+<li>Advance to next slide with mouse click, space bar or swipe left</li>
+
+<li>Move forward/backward between slides with Cursor Left,
+Cursor Right, <strong>Pg Up</strong> and <strong>Pg Dn</strong>
+keys, or swipe left or right</li>
+
+<li><strong>Home</strong> key for first slide, <strong>End</strong>
+ key for last slide</li>
+
+<li>The "<strong>C</strong>" key for an automatically generated
+table of contents, or click on "contents" on the toolbar or
+swipe up or down</li>
+
+<li>Function <strong>F11</strong> to go full screen and back</li>
+
+<li>The "<strong>F</strong>" key toggles the display of the footer</li>
+
+<li>The "<strong>A</strong>" key toggles display of current vs all
+slides
+
+<ul>
+<li>Try it now to see how to include notes for handouts (this is
+explained in the notes following this slide)</li>
+</ul>
+</li>
+
+<li>Font sizes automatically adapt to browser window size
+
+<ul>
+<li>use <strong>S</strong> and <strong>B</strong> keys for
+manual control (or &lt; and &gt;, or the <strong>-</strong> and
+<strong>+</strong> keys on the number pad</li>
+<li>Use CSS to set a relative font size on a given slide to make
+the content bigger or smaller than on other slides</li>
+</ul>
+</li>
+
+<li>Switching off JavaScript reveals all slides</li>
+</ul>
+</li>
+
+<li><em>Now move to next slide to see how it works</em></li>
+</ul>
+
+<p class="copyright"><a rel="Copyright" href=
+"http://www.w3.org/Consortium/Legal/ipr-notice#Copyright" shape=
+"rect">Copyright</a> &copy; 2005-2010 <a href="/"><acronym title=
+"World Wide Web Consortium">W3C</acronym></a> <sup>&reg;</sup>
+(<a href="http://www.csail.mit.edu/"><acronym title=
+"Massachusetts Institute of Technology">MIT</acronym></a>, <a href=
+"http://www.ercim.org/"><acronym title=
+"European Research Consortium for Informatics and Mathematics">ERCIM</acronym></a>,
+<a href="http://www.keio.ac.jp/">Keio</a>), All Rights
+Reserved.</p>
+</div>
+
+<div class="handout">
+<p>For handouts, its often useful to include extra notes using a
+div element with class="handout" following each slide, as in:</p>
+
+<pre>
+&lt;div class="slide"&gt;
+ <em>... your slide content ...</em>
+&lt;/div&gt;
+
+&lt;div class="handout"&gt;
+ <em>... stuff that only appears in the handouts ...</em>
+&lt;/div&gt;
+</pre>
+</div>
+
+<div class="slide">
+<h1>What you need to do</h1>
+
+<ul>
+<li>Each presentation is a single XHTML file</li>
+
+<li>Each slide is enclosed in <em>&lt;div class="slide"&gt; ...
+&lt;/div&gt;</em>
+
+<ul>
+<li>The div element will be created automatically for h1
+elements that are direct children of the body element.</li>
+</ul>
+
+</li>
+
+<li>Use regular markup within each slide</li>
+
+<li>The document head includes two links:
+<ul>
+<li>The slide show style sheet:
+<a href=
+"http://www.w3.org/Talks/Tools/Slidy2/styles/slidy.css">http://www.w3.org/Talks/Tools/Slidy2/styles/slidy.css</a></li>
+
+<li>The slide show script: <a href=
+"http://www.w3.org/Talks/Tools/Slidy2/scripts/slidy.js">http://www.w3.org/Talks/Tools/Slidy2/scripts/slidy.js</a></li>
+
+<li>Or you can link to the compressed version of the script which is about
+one seventh the size, see <a href=
+"http://www.w3.org/Talks/Tools/Slidy2/scripts/slidy.js.gz">http://www.w3.org/Talks/Tools/Slidy2/scripts/slidy.js.gz</a></li>
+<li>If you are using XHTML, remember to use &lt;/script&gt; and
+&lt;/style&gt; as per <a
+href="http://www.w3.org/TR/xhtml1/#C_3">Appendix C.3</a></li>
+</ul>
+</li>
+</ul>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"&gt;
+&lt;html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"&gt;
+&lt;head&gt;
+ &lt;title&gt;Slide Shows in XHTML&lt;/title&gt;
+ &lt;meta name="copyright"
+ content="Copyright &amp;#169; 2005 your copyright notice" /&gt;
+ &lt;link rel="stylesheet" type="text/css" media="screen, projection, print"
+ href="http://www.w3.org/Talks/Tools/Slidy2/styles/slidy.css" /&gt;
+ &lt;script src="http://www.w3.org/Talks/Tools/Slidy2/scripts/slidy.js"
+ charset="utf-8" type="text/javascript"&gt;&lt;/script&gt;
+ &lt;style type="text/css"&gt;
+ &lt;!-- your custom style rules --&gt;
+ &lt;/style&gt;
+&lt;/head&gt;
+&lt;body&gt;
+ ... your slides marked up in XHTML ...
+&lt;/body&gt;
+&lt;/html&gt;
+</pre>
+</div>
+
+<div class="slide">
+<h1>To get the W3C Blue Style</h1>
+
+<p>The head element should include the following link to the style
+sheet:</p>
+
+<pre>
+&lt;link rel="stylesheet" type="text/css" media="screen, projection, print"
+ href="http://www.w3.org/Talks/Tools/Slidy2/styles/w3c-blue.css" /&gt;
+</pre>
+
+<p>The body element's content should start with the following
+markup:</p>
+
+<pre>
+&lt;div class="background"&gt;
+ &lt;img id="head-icon" alt="graphic with four colored squares"
+ src="http://www.w3.org/Talks/Tools/Slidy2/graphics/icon-blue.png" /&gt;
+ &lt;object id="head-logo" title="W3C logo" type="image/svg+xml"
+ data="http://www.w3.org/Talks/Tools/Slidy2/graphics/w3c-logo-white.svg"&gt;&lt;img
+ src="http://www.w3.org/Talks/Tools/Slidy2/graphics/w3c-logo-white.gif"
+ alt="W3C logo" id="head-logo-fallback" /&gt;&lt;/object&gt;
+&lt;/div&gt;
+</pre>
+
+<p>This adds the logos on the top left and right corners of the
+slide.</p>
+
+<p>You are of course welcome to create your own slide designs.
+You can provide different styles and backgrounds for
+different slides (more details later).</p>
+
+<p>Use the <em>meta element</em> with <em>name="copyright"</em>
+for use in the slide show footer:</p>
+
+<pre>
+&lt;meta name="copyright"
+content="Copyright &amp;#169; 2005-2009 W3C (MIT, ERCIM, Keio)" /&gt;
+</pre>
+</div>
+
+<div class="slide">
+<h1>Upgrading from previous versions of Slidy</h1>
+
+<ul>
+<li>This uses a new version of the HTML Slidy script</li>
+<li>It is designed to work better with other scripts,
+e.g. for UI controls within your slides
+<ul>
+<li>Only adds one global name "w3c_slidy"</li>
+<li>Doesn't interfere with other scripts that set event handers
+such as onload on body element</li>
+</ul>
+</li>
+<li>Works for slides delivered as text/html and application/xhtml+xml</li>
+<li>New presentation timer feature</li>
+<li>Initial prompt on first slide to help newcomers to Slidy</li>
+<li>Better support for styling slides and printing them</li>
+<li>Requires additional style rules, so new script won't work
+with old presentations without changes to their style sheets
+<ul>
+<li>See <a href="styles/slidy.css">slidy.css</a>, and
+<a href="styles/w3c-blue.css">w3c-blue.css</a></li>
+</ul>
+</li>
+<li>But old presentations will work unchanged as they refer to
+the old script!</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>To use it off-line</h1>
+
+<ul>
+<li>You can download <a href="slidy.zip">slidy.zip</a> and unzip
+it to create a Slidy directory on your machine</li>
+
+<li>If you have cvs access to the W3C site you can check out the Slidy
+directory</li>
+
+<li>Remember to periodically check for updates</li>
+
+<li>You then have two choices:
+
+<ol>
+<li>Use relative URIs depending on your local setup to access the
+appropriate files. Use the same directory structure as on the W3C
+server, ie, ".../2005/Talks/...".</li>
+
+<li>Run a Web server on your machine so that the directory above
+can be accessed via <code>http://localhost/Talks/Tools/Slidy2</code>
+and use the URIs of the form "/Talks/Tools/Slidy2/styles/slidy.css",
+"/Talks/Tools/Slidy2/scripts/slidy.js".</li>
+</ol></li>
+
+<li>In both cases you can then publish your files on the W3C server
+unchanged.</li>
+
+<li><strong>NOTE</strong> Internet Explorer on Windows XP now disables
+scripting for web pages loaded directly from the local file system,
+a work around is to use another browser, e.g. Firefox or Opera</li>
+
+<li>Please feel free to create your own designs, and help us to build
+a gallery of Slidy styles.</li>
+
+<li>My <a href="/2006/02/woa/">Google TechTalk</a> (1st Feb 2006)
+uses a notebook themed style</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Timing Your Presentation</h1>
+
+<ul>
+<li>Sometimes it is handy to know just how much time you have to
+left to finish your presentation</li>
+<li>To get this feature, add the following markup to the
+content of the head element, replacing 5 by the duration
+of your presentation in minutes
+<pre>&lt;meta name="duration" content="5" /&gt;</pre>
+</li>
+<li>The time left in minutes and seconds is shown in the footer
+next to the slide number</li>
+<li>The clock starts to run when you move away from the first slide</li>
+<li>Moving back to the first slide pauses the clock</li>
+</ul>
+
+
+</div>
+
+<div class="slide slanty">
+<h1>Generate a Title Page</h1>
+
+<p>If you want a separate title page with the W3C blue style, the
+first slide should be as follows:</p>
+
+<pre>
+&lt;div class="slide cover"&gt;
+ &lt;img src="http://www.w3.org/Talks/Tools/Slidy2/graphics/keys.jpg"
+ alt="Cover page images (keys)" class="cover" /&gt;
+ &lt;br clear="all" /&gt;
+ &lt;h1&gt;HTML Slidy: Slide Shows in XHTML&lt;/h1&gt;
+ &lt;p&gt;&lt;a href="http://www.w3.org/People/Raggett/"&gt;Dave Raggett,&lt;/a&gt;
+ &lt;a href="mailto:dsr@w3.org"&gt;dsr@w3.org&lt;/a&gt;&lt;/p&gt;
+&lt;/div&gt;
+</pre>
+
+<p>The <a
+href="http://www.w3.org/Talks/Tools/Slidy2/graphics/w3c-blue.css">w3c-blue.css</a>
+style sheet looks for the classes "slide" and "cover" on div
+and img elements using the CSS selector <em>div.slide.cover</em></p>
+
+<p>This technique can be used to assign your slides to different
+classes with a different appearence for each such class.</p>
+
+<p>Slidy also allows you to use different background markup for
+different slides, based upon shared class names, as in "foo" below.
+Backgrounds without additional class names are always shown except
+when the slide isn't transparent. You may need to tweak your
+custom style sheet.</p>
+
+<pre>
+&lt;div class="background foo"&gt;
+ ... background content ...
+&lt;div&gt;
+
+...
+
+&lt;div class="slide foo"&gt;
+ ... slide content ...
+&lt;div&gt;
+</pre>
+</div>
+
+<div class="slide">
+<h1>Incremental display of slide contents</h1>
+
+<p>For incremental display, use class="incremental", for
+instance:</p>
+
+<ul class="incremental">
+<li>First bullet point</li>
+
+<li>Second bullet point</li>
+
+<li>Third bullet point</li>
+</ul>
+
+<p class="incremental">which is marked up as follows:</p>
+
+<pre class="incremental">
+&lt;ul class="incremental"&gt;
+ &lt;li&gt;First bullet point&lt;/li&gt;
+ &lt;li&gt;Second bullet point&lt;/li&gt;
+ &lt;li&gt;Third bullet point&lt;/li&gt;
+&lt;/ul&gt;
+
+&lt;p class="incremental"&gt;which is marked up as follows:&lt;/p&gt;
+
+&lt;pre class="incremental"&gt;
+ ...
+&lt;/pre&gt;
+</pre>
+
+<div class="footnote">
+<p>An element is incrementally revealed if its parent element has
+class="incremental" or if itself has that attribute. Text nodes are
+not elements and are revealed when their parent element is revealed.
+You can use class="incremental" on any element except for &lt;br /&gt;.
+Use class="non-incremental" to override the effect of setting the
+parent element's class to incremental.</p>
+
+<p>Note: you will see a red asterisk on the left of the toolbar
+when there is still something more to reveal.</p>
+</div>
+</div>
+
+<div class="slide">
+<h1>Create outline lists with hidden content</h1>
+
+<p>You can make your bullet points or numbered list items
+into outlines that you can expand or collapse</p>
+
+<ul class="outline">
+<li>Just add <em>class="outline"</em> to the ul or ol
+element. Click on this list item for more details.
+
+<ul>
+<li>The Slidy script will then treat the list
+as an outline list.</li>
+<li>Clicking on outline list items will expand/collapse
+block-level elements within that list item.</li>
+<li>Click on the above to make this list item
+collapse again.</li>
+</ul>
+</li>
+<li>Users will then see expand/collapse icons as appropriate
+and may click anywhere on the list item to change its state.
+This particular list item can't be expanded or collapsed.</li>
+<li class="expand">Add class="expand" to any li elements that
+you want to start in an expanded state.
+
+<ul>
+<li>By default Slidy hides all the block level elements within the
+outline list items unless you have specified class="expand".</li>
+<li>Such pre-expanded items can be collapsed by clicking on them.</li>
+</ul>
+</li>
+<li>Note expand/collapse icon highlighting requires browser
+support for :hover which isn't supported by IE6.
+
+<ul>
+<li>Microsoft says it will be supported by IE7 along with
+many fixes for other CSS woes in IE6.</li>
+</ul>
+</li>
+</ul>
+
+<pre>
+&lt;ol class='outline'&gt;
+ &lt;!-- topic 1 starts collapsed --&gt;
+ &lt;li&gt;Topic 1
+ &lt;ol&gt;
+ &lt;li&gt;subtopic a&lt;/li&gt;
+ &lt;li&gt;subtopic b&lt;/li&gt;
+ &lt;/ol&gt;
+ &lt;/li&gt;
+ &lt;!-- topic 2 starts expanded --&gt;
+ &lt;li class="expand"&gt;Topic 2
+ &lt;ol&gt;
+ &lt;li&gt;subtopic c&lt;/li&gt;
+ &lt;li&gt;subtopic d&lt;/li&gt;
+ &lt;/ol&gt;
+ &lt;/li&gt;
+&lt;/ol&gt;
+</pre>
+</div>
+
+<!-- useful info at http://www.howtocreate.co.uk/wrongWithIE/ -->
+<div class="slide">
+<h1>Make your images scale with the browser window size</h1>
+
+<p>For adaptive layout, use percentage widths on images, together
+with CSS positioning:</p>
+
+<ul>
+<li>CSS positioning is simpler and more reliable than using
+tables</li>
+</ul>
+
+<pre>
+&lt;div class="slide"&gt;
+ &lt;h1&gt;Analysts - "Open standards programming will become
+ mainstream, focused around VoiceXML"&lt;/h1&gt;
+ &lt;!-- use CSS positioning and scaling for adaptive layout --&gt;
+ &lt;img src="trends.png" width="50%" style="float:left"
+ alt="projected growth of VoiceXML" /&gt;
+
+ &lt;blockquote style="float:right;width: 35%"&gt;
+ VoiceXML will dominate the voice environment, due to its
+ flexibility and eventual multimodal capabilities
+ &lt;/blockquote&gt;&lt;br clear="all" /&gt;
+
+ &lt;p style="text-align:center"&gt;Source Data Monitor, March
+ 2004&lt;/p&gt;
+&lt;/div&gt;
+</pre>
+
+<p>To work around a CSS rendering bug in IE relating
+to margins, you can set display:inline on floated elements.</p>
+</div>
+
+<div class="slide">
+<h1>Incremental display of layered images</h1>
+
+<p>These can be marked up using CSS relative positioning, e.g.</p>
+
+<pre>
+&lt;div class="incremental"
+ style="margin-left: 4em; position: relative"&gt;
+ &lt;img src="graphics/face1.gif" alt="face"
+ style="position: static; vertical-align: bottom"/&gt;
+ &lt;img src="graphics/face2.gif" alt="eyes"
+ style="position: absolute; left: 0; top: 0" /&gt;
+ &lt;img src="graphics/face3.gif" alt="nose"
+ style="position: absolute; left: 0; top: 0" /&gt;
+ &lt;img src="graphics/face4.gif" alt="mouth"
+ style="position: absolute; left: 0; top: 0" /&gt;
+&lt;/div&gt;
+</pre>
+
+<p style="font-size: smaller;">You should also use transparent GIF
+images to avoid the IE/Win bug for alpha channel in PNG. A fix is
+expected in IE 7. A <a href=
+"http://www.skyzyx.com/scripts/sleight.php">work around</a> is
+available on skyzyx.com. My thanks to <a href=
+"http://www.webstandards.org/act/acid2/">ACID2</a> for the
+graphics.</p>
+
+<div class="incremental" style=
+"margin-left: 4em; position: relative;"><img src="graphics/face1.gif" alt=
+"face" style="position: static; vertical-align: bottom;" />
+<img src="graphics/face2.gif" alt="eyes" style=
+"position: absolute; left: 0pt; top: 0pt;" /> <img src="graphics/face3.gif"
+alt="nose" style="position: absolute; left: 0pt; top: 0pt;" />
+<img src="graphics/face4.gif" alt="mouth" style=
+"position: absolute; left: 0pt; top: 0pt;" /></div>
+</div>
+
+<div class="slide">
+<h1>How to center content vertically and horizontally</h1>
+<div class="vbox"></div>
+<div class="hbox">
+<p>Within the div element for your slide:</p>
+<pre>
+&lt;div class="vbox"&gt;&lt;/div&gt;
+&lt;div class="hbox"&gt;
+Place the content here
+&lt;/div&gt;
+</pre>
+<p>and style it with the following:</p>
+<pre>
+div.vbox {
+ float: left;
+ height: 40%; width: 50%;
+ margin-top: -220px;
+}
+div.hbox {
+ width:60%; margin-top: 0;
+ margin-left:auto; margin-right:auto;
+ height: 60%;
+ border:1px solid silver;
+ background:#F0F0F0;
+ overflow:auto;
+ text-align:left;
+ clear:both;
+}
+</pre>
+
+<p>The above styling is included in <a href="styles/w3c-blue.css">w3c-blue.css</a>,
+which is designed to be used with <a href="styles/slidy.css">slidy.css</a>, but you
+are encouraged to develop your own style sheet with your own look and feel.</p>
+</div>
+</div>
+
+<div class="slide">
+<h1>Include SVG Content</h1>
+
+<p>Inclusion of SVG content can be done using the object element,
+for example:</p>
+
+<div style="text-align: center;"><object data="graphics/example.svg" type=
+"image/svg+xml" title="Indian Office logo" height="10%" width=
+"50%"><img src="graphics/example.png" alt="Indian Office logo" width=
+"50%" /></object></div>
+
+<p>has been achieved by:</p>
+
+<pre>
+&lt;object data="graphics/example.svg" type="image/svg+xml"
+ width="50%" height="10%" title="Indian Office logo"&gt;
+ &lt;img src="graphics/example.png" width="50%"
+ alt="Indian Office logo" /&gt;
+&lt;/object&gt;
+</pre>
+
+<p>This ensures that the enclosed png is displayed when the browser
+has no plugin installed or can't display SVG directly. Providing
+such a fall back is very important! Don't forget the alt text for
+people who can't see the image.</p>
+
+<p>However, there are caveats, see the next slide!</p>
+</div>
+
+<div class="slide">
+<h1>Caveats with SVG+object</h1>
+
+<p>Adobe has recently withdrawn support for its SVG Viewer, so you are
+recommended to consider <a
+href="http://wiki.svg.org/Viewer_Implementations">alternatives</a>.
+If you still using the Adobe SVG viewer you should be aware of bugs
+when using the it with IE, Namely:</p>
+
+<ul>
+<li>Most modern browsers generally support SVG SVG Tiny 1.1 or better
+natively without the need for a plugin</li>
+
+<li>If you need to use Internet Explorer you are advised to upgrade
+to IE9 which includes native support for SVG.</li>
+
+<li>Patches to Internet Explorer mean that the Adobe SVG Viewer
+version 3.03 no longer works with IE6. You are therefore recommended
+to uninstall version 3.03 and instead install <a
+href="http://www.adobe.com/svg/viewer/install/beta.html">Adobe SVG Viewer
+6.0 preview</a> if this is available to to you.</li>
+
+<li>IE6 makes a <em>copy</em> of the SVG file on the local disc
+when displaying it; but doesn't pass the original URI to the plugin</li>
+
+<li>As a result relative references from within the SVG to external
+resources (scripts, CSS, images, other SVG) will break.</li>
+
+<li>The work around is to use absolute references within your SVG.</li>
+
+<li>On Windows, the Adobe SVG plugin doesn't respect the CSS z-index
+property, and if used on backgrounds will always show through other
+content</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Additional Remarks</h1>
+
+<ul>
+<li>Slides are auto-numbered on the slide show footer</li>
+
+<li>You can link into the <a href="#(2)">middle</a> of a slide
+show:
+
+<ul>
+<li>It works out which slide you want and hides the rest</li>
+
+<li>You can even link between slides in the same slide show</li>
+
+<li>Individual sides can be addressed with the syntax #(<em>slide
+number</em>),<br />
+e.g. slide 3 of this presentation is: <a href=
+"#(3)">http://www.w3.org/Talks/Tools/Slidy#(3)</a>
+<ul>
+<li>Previous versions of Slidy used square brackets, which will
+also work.</li>
+</ul></li>
+<li>Note that the browser's back/forward buttons may not work as
+you might expect due to browser problems.</li>
+</ul>
+</li>
+
+<li>Adding "title" to the list of classes for div elements that serve
+as title pages will render the corresponding entry in the table of
+contents in bold italic text (press "C" now for an example)</li>
+
+<li>If your slides have more content than normal, use a <em>meta
+element</em> to request a smaller font
+
+<ul>
+<li>the following requests fonts to be one step smaller than
+the Slidy default for the current window width, and positive
+integers will make the fonts correspondingly larger</li>
+</ul>
+
+<pre>
+&lt;meta name="font-size-adjustment" content="-1" /&gt;
+</pre>
+
+<ul>
+<li>Slidy uses JavaScript to dynamically set the font size on the
+body element, but it is okay to specify relative font changes on
+other elements within your own style sheet, e.g.</li>
+</ul>
+<pre>div.slide.large { font-size: 200% }</pre>
+</li>
+
+<li>You are encouraged to ensure your markup is valid. <a href=
+"http://www.w3.org/People/Raggett/tidy/">HTML Tidy</a> can be used
+to find and correct common markup problems</li>
+
+<li>The slide show script and style sheet can be used freely under
+W3C's <a href=
+"http://www.w3.org/Consortium/Legal/copyright-software">software
+licensing</a> and <a href=
+"http://www.w3.org/Consortium/Legal/copyright-documents">document
+use</a> policies</li>
+<li>At <a href="http://xtech06.usefulinc.com/">XTech2006</a>
+I gave this <a href="http://www.w3.org/2006/05/Slidy-XTech/">presentation</a>
+on Slidy
+(<a href="http://www.w3.org/2006/05/Slidy-XTech/slidy-xtech06-dsr.pdf">Paper</a>).</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Localization and automatic translation</h1>
+
+<p>Slidy now includes support for localization</p>
+
+ "es":this.strings_es,
+ "ca":this.strings_ca,
+ "cs":this.strings_cs,
+ "nl":this.strings_nl,
+ "de":this.strings_de,
+ "pl":this.strings_pl,
+ "fr":this.strings_fr,
+ "hu":this.strings_hu,
+ "it":this.strings_it,
+ "el":this.strings_el,
+ "jp":this.strings_ja,
+ "zh":this.strings_zh,
+ "ru":this.strings_ru,
+ "sv":this.strings_sv
+
+<ul>
+<li>The tool bar is localized according to the language of the presentation</li>
+<li>This is taken from the xml:lang or lang attributes on the html element</li>
+<li>The <a href="http://www.w3.org/Talks/Tools/Slidy2/help/help.html">help file</a> is
+selected based upon your browser's language preferences</li>
+<li>As of 29th July 2010, the languages supported are: English,
+Spanish, Catalonian, Czech, Dutch, German, Polish, French,
+Hungarian, Italian, Greek, Japanese, Chinese, Russian and
+Swedish</li>
+<li>If you would like to contribute localizations for other languages,
+please get in touch with Dave Raggett &lt;dsr@w3.org&gt;</li>
+<li>The following illustrates what was used for Spanish</li>
+</ul>
+<pre>
+// for each language there is an associative array
+ strings_es: {
+ "slide":"pág.",
+ "help?":"Ayuda",
+ "contents?":"Ãndice",
+ "table of contents":"tabla de contenidos",
+ "Table of Contents":"Tabla de Contenidos",
+ "restart presentation":"Reiniciar presentación",
+ "restart?":"Inicio"
+ },
+ help_es:
+ "Utilice el ratón, barra espaciadora, teclas Izda/Dcha, " +
+ "o Re pág y Av pág. Use S y B para cambiar el tamaño de fuente.",
+</pre>
+
+<p><strong>Note:</strong> Slidy now works with <a
+href="http://translate.google.com/translate?js=n&amp;prev=_t&amp;hl=en&amp;ie=UTF-8&amp;u=http%3A%2F%2Fwww.w3.org%2FTalks%2FTools%2FSlidy2%2F&amp;sl=en&amp;tl=fr&amp;history_state0=">current slides translated into French</a>. Use
+right mouse button to open frame without Google header. To disable
+automatic translation of the content of particular elements add
+<code>class="notranslate"</code>, see <a href="http://googlewebmastercentral.blogspot.com/2008/10/helping-you-break-language-barrier.html">breaking the language barrier</a>.</p>
+</div>
+
+<div class="slide">
+<h1>Future Plans</h1>
+
+<p>Recent additions have included a table of contents, and a way to
+hide and reveal content in the spirit of outline lists. The
+script has been rewritten to make it easier to combine with other
+scripts, e.g. for UI controls, and support swipes for navigation on
+touch screen devices. Further work is anticipated on the
+following:</p>
+
+<ul>
+<li>Collecting a gallery of good looking slide themes
+<ul>
+<li>Opportunities for graphics designers!</li>
+</ul>
+</li>
+<li>Bob Ferris has worked on <a
+href="https://github.com/zazi/slidy_tud/blob/master/README.md">a
+number of UI extensions</a> which could be incorporated into the
+W3C slidy script.</li>
+<li>Getting SVG Tiny to work on IE without need for SVG plugin
+<ul>
+<li>Using scripts to dynamically convert SVG Tiny to VML</li>
+<li>Note that IE9 introduces native SVG support, so it may
+no longer be worth working on SVG to VML for rendering of SVG</li>
+</ul>
+</li>
+<li>Pre-alpha version of wysiwyg slide editor (see <a
+href="editor/editor-screenshot1.png">screenshot</a>)
+<ul>
+<li>Using contentEditable when available, otherwise
+falling back to textarea and plain text conventions</li>
+<li>Using XMLHttpRequest to dynamically reflect changes to server</li>
+</ul>
+</li>
+<li>Mechanism for remotely driving Slidy as part of distributed meetings
+<ul>
+<li>Using XMLHttpRequest to listen for navigation commands</li>
+<li>Using VoIP for accompanying audio and teleconferencing</li>
+<li>Synchronizing recorded spoken presentation with currently viewed slide</li>
+</ul>
+</li>
+<li>Filters from PowerPoint and Open Office
+<ul>
+<li>and export to PDF via <a href="http://www.princexml.com/">PrinceXML</a></li>
+</ul>
+</li>
+</ul>
+
+<p>If you have comments, suggestions for improvements, or would
+like to volunteer your help with further work on Slidy,
+please contact <a href=
+"http://www.w3.org/People/Raggett/">Dave Raggett</a> &lt;<a href=
+"mailto:dsr@w3.org">dsr@w3.org</a>&gt;</p>
+</div>
+
+<div class="slide">
+<h1>Acknowledgements</h1>
+
+<ul>
+<li>My thanks to everyone who sent in bug reports and feature
+requests</li>
+<li>Opera Software for implementing CSS @media projection and
+promoting the idea of using the Web for presentations with
+<a href="http://www.opera.com/support/tutorials/operashow/">Opera
+Show</a></li>
+<li><a href="http://tantek.com/">Tantek &Ccedil;elik</a> for his
+pioneering work on applying JavaScript for slide presentations on
+other browsers</li>
+<li>Eric Meyer for taking this further with the excellent <a
+href="http://www.meyerweb.com/eric/tools/s5/s5-intro.html">S5</a></li>
+<li>W3C's <a href="http://dev.w3.org/cvsweb/slidemaker/">slidemaker
+tool</a>, which uses a perl script to split an html file up into
+one file per slide with navigation buttons</li>
+<li>Early versions of <a href="http://www.w3.org/People/Raggett/tidy/">HTML
+Tidy</a> which supported a means to create presentations via splitting
+html files on h2 elements</li>
+<li>Many sites with advice on JavaScript work arounds for browser
+variations</li>
+<li>Microsoft for pioneering contentEditable and XMLHTTP which
+both provide tremendous opportunities for Web applications</li>
+<li>Microsoft Office which provided the impetus for creating
+Slidy as a Web-based alternative to the ubiquitous use of PowerPoint</li>
+</ul>
+
+<p class="smaller"><strong>Note</strong> that while Slidy and
+S5 were developed independently, both support the use of the
+class values "slide" and "handout" for div elements. Slidy doesn't
+support the "layout" class featured in S5 and Opera Show, but
+instead provides a more flexible alternative with the "background"
+class, which enables different backgrounds on different slides.</p>
+</div>
+
+<div class="slide">
+<h1>Acknowledgements</h1>
+
+<p>The following people have contributed localizations:</p>
+
+<ul>
+<li>Emmanuelle Gutiérrez y Restrepo, Spanish</li>
+<li>Joan V. Baz, Catalan</li>
+<li>Jakub Vrána, Czech</li>
+<li>Ruud Steltenpool, Dutch</li>
+<li>Beat Vontobel, German</li>
+<li>Krzysztof Kotowicz, Polish</li>
+<li>Tamas Horvath, Hungarian</li>
+<li>Creso Moraes, Brazilian Portuguese</li>
+<li>Giuseppe Scollo, Italian</li>
+<li>Konstantinos Koukopoulos, Greek</li>
+<li>Yoshikazu Sawa (澤 義和), Japanese</li>
+<li>Shelley Shyan, Chinese</li>
+<li>Andrew Pantyukhin, Russian</li>
+<li>Saasha Metsärantala, Swedish</li>
+</ul>
+
+<p>The following people have contributed bug reports:</p>
+
+<ul>
+<li>Ivan Herman</li>
+<li>Steve Bratt</li>
+<li>Peter Patel-Schneider</li>
+<li>Matthew Coller</li>
+<li>Rune Heggtveit</li>
+<li>Gopal Venkatesan</li>
+<li>Cay Horstmann</li>
+<li>Schuyler Duveen</li>
+<li>Matteo Nannini</li>
+<li>Ralph Swick</li>
+<li>Jakub Vrána</li>
+<li>Philip Bolt</li>
+<li>Jon Frost</li>
+<li>Jonathan Chetwynd</li>
+<li>Nicolas Frisby</li>
+</ul>
+
+<p>Douglas Crockford for <a
+href="http://www.crockford.com/javascript/jsmin.html">jsmin</a>
+which was used to minify the script before compressing it with gzip.</p>
+</div>
+</body>
+</html>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/Overview.xhtml b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/Overview.xhtml
new file mode 100755
index 000000000..69f72f635
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/Overview.xhtml
@@ -0,0 +1,911 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html lang="en-US">
+<head>
+<meta name="generator" content=
+"HTML Tidy for Linux/x86 (vers 1st November 2003), see www.w3.org" />
+<title>HTML Slidy</title>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="copyright" content=
+"Copyright &#169; 2005-2010 W3C (MIT, ERCIM, Keio)" />
+<meta name="duration" content="5" />
+<meta name="font-size-adjustment" content="-2" />
+<link rel="stylesheet" href="styles/slidy.css" type="text/css" />
+<link rel="stylesheet" href="styles/w3c-blue.css" type="text/css" />
+<script src="scripts/slidy.js" charset="utf-8" type="text/javascript">
+</script>
+</head>
+<body>
+<div class="background"><img alt="" id="head-icon"
+src="graphics/icon-blue.png" /><object id="head-logo"
+data="graphics/w3c-logo-white.svg" type="image/svg+xml"
+title="W3C logo"><a href="http://www.w3.org/"><img
+alt="W3C logo" id="head-logo-fallback"
+src="graphics/w3c-logo-white.gif" /></a></object></div>
+
+<div class="background slanty">
+<img src="graphics/w3c-logo-slanted.jpg" alt="slanted W3C logo" />
+</div>
+<div class="slide cover title">
+ <!-- hidden style graphics to ensure they are saved with other content -->
+ <img class="hidden" src="graphics/bullet.png" alt="" />
+ <img class="hidden" src="graphics/fold.gif" alt="" />
+ <img class="hidden" src="graphics/unfold.gif" alt="" />
+ <img class="hidden" src="graphics/fold-dim.gif" alt="" />
+ <img class="hidden" src="graphics/nofold-dim.gif" alt="" />
+ <img class="hidden" src="graphics/unfold-dim.gif" alt="" />
+ <img class="hidden" src="graphics/bullet-fold.gif" alt="" />
+ <img class="hidden" src="graphics/bullet-unfold.gif" alt="" />
+ <img class="hidden" src="graphics/bullet-fold-dim.gif" alt="" />
+ <img class="hidden" src="graphics/bullet-nofold-dim.gif" alt="" />
+ <img class="hidden" src="graphics/bullet-unfold-dim.gif" alt="" />
+
+<img src="graphics/keys2.jpg" alt="Cover page images (keys)"
+ class="cover" /><br clear="all" />
+<h1>HTML Slidy: Slide Shows in HTML and XHTML</h1>
+
+<p><a href="http://www.w3.org/People/Raggett/">Dave Raggett</a>,
+&lt;<a href="mailto:dsr@w3.org">dsr@w3.org</a>&gt;<br />
+<br />
+<br />
+<br />
+<br /><em>Hit the space bar or swipe left for next slide</em></p>
+</div>
+
+<div class="slide">
+<h1>Slide Shows in HTML and XHTML</h1>
+
+<ul>
+<li>You can now create accessible slide shows with ease</li>
+
+<li>Works across browsers and is operated like PowerPoint
+
+<ul>
+<li>Advance to next slide with mouse click, space bar or swipe left</li>
+
+<li>Move forward/backward between slides with Cursor Left,
+Cursor Right, <strong>Pg Up</strong> and <strong>Pg Dn</strong>
+keys, or swipe left or right</li>
+
+<li><strong>Home</strong> key for first slide, <strong>End</strong>
+ key for last slide</li>
+
+<li>The "<strong>C</strong>" key for an automatically generated
+table of contents, or click on "contents" on the toolbar or
+swipe up or down</li>
+
+<li>Function <strong>F11</strong> to go full screen and back</li>
+
+<li>The "<strong>F</strong>" key toggles the display of the footer</li>
+
+<li>The "<strong>A</strong>" key toggles display of current vs all
+slides
+
+<ul>
+<li>Try it now to see how to include notes for handouts (this is
+explained in the notes following this slide)</li>
+</ul>
+</li>
+
+<li>Font sizes automatically adapt to browser window size
+
+<ul>
+<li>use <strong>S</strong> and <strong>B</strong> keys for
+manual control (or &lt; and &gt;, or the <strong>-</strong> and
+<strong>+</strong> keys on the number pad</li>
+<li>Use CSS to set a relative font size on a given slide to make
+the content bigger or smaller than on other slides</li>
+</ul>
+</li>
+
+<li>Switching off JavaScript reveals all slides</li>
+</ul>
+</li>
+
+<li><em>Now move to next slide to see how it works</em></li>
+</ul>
+
+<p class="copyright"><a rel="Copyright" href=
+"http://www.w3.org/Consortium/Legal/ipr-notice#Copyright" shape=
+"rect">Copyright</a> &copy; 2005-2010 <a href="/"><acronym title=
+"World Wide Web Consortium">W3C</acronym></a> <sup>&reg;</sup>
+(<a href="http://www.csail.mit.edu/"><acronym title=
+"Massachusetts Institute of Technology">MIT</acronym></a>, <a href=
+"http://www.ercim.org/"><acronym title=
+"European Research Consortium for Informatics and Mathematics">ERCIM</acronym></a>,
+<a href="http://www.keio.ac.jp/">Keio</a>), All Rights
+Reserved.</p>
+</div>
+
+<div class="handout">
+<p>For handouts, its often useful to include extra notes using a
+div element with class="handout" following each slide, as in:</p>
+
+<pre>
+&lt;div class="slide"&gt;
+ <em>... your slide content ...</em>
+&lt;/div&gt;
+
+&lt;div class="handout"&gt;
+ <em>... stuff that only appears in the handouts ...</em>
+&lt;/div&gt;
+</pre>
+</div>
+
+<div class="slide">
+<h1>What you need to do</h1>
+
+<ul>
+<li>Each presentation is a single XHTML file</li>
+
+<li>Each slide is enclosed in <em>&lt;div class="slide"&gt; ...
+&lt;/div&gt;</em>
+
+<ul>
+<li>The div element will be created automatically for h1
+elements that are direct children of the body element.</li>
+</ul>
+
+</li>
+
+<li>Use regular markup within each slide</li>
+
+<li>The document head includes two links:
+<ul>
+<li>The slide show style sheet:
+<a href=
+"http://www.w3.org/Talks/Tools/Slidy2/styles/slidy.css">http://www.w3.org/Talks/Tools/Slidy2/styles/slidy.css</a></li>
+
+<li>The slide show script: <a href=
+"http://www.w3.org/Talks/Tools/Slidy2/scripts/slidy.js">http://www.w3.org/Talks/Tools/Slidy2/scripts/slidy.js</a></li>
+
+<li>Or you can link to the compressed version of the script which is about
+one seventh the size, see <a href=
+"http://www.w3.org/Talks/Tools/Slidy2/scripts/slidy.js.gz">http://www.w3.org/Talks/Tools/Slidy2/scripts/slidy.js.gz</a></li>
+<li>If you are using XHTML, remember to use &lt;/script&gt; and
+&lt;/style&gt; as per <a
+href="http://www.w3.org/TR/xhtml1/#C_3">Appendix C.3</a></li>
+</ul>
+</li>
+</ul>
+
+<pre>
+&lt;?xml version="1.0" encoding="utf-8"?&gt;
+&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"&gt;
+&lt;html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"&gt;
+&lt;head&gt;
+ &lt;title&gt;Slide Shows in XHTML&lt;/title&gt;
+ &lt;meta name="copyright"
+ content="Copyright &amp;#169; 2005 your copyright notice" /&gt;
+ &lt;link rel="stylesheet" type="text/css" media="screen, projection, print"
+ href="http://www.w3.org/Talks/Tools/Slidy2/styles/slidy.css" /&gt;
+ &lt;script src="http://www.w3.org/Talks/Tools/Slidy2/scripts/slidy.js"
+ charset="utf-8" type="text/javascript"&gt;&lt;/script&gt;
+ &lt;style type="text/css"&gt;
+ &lt;!-- your custom style rules --&gt;
+ &lt;/style&gt;
+&lt;/head&gt;
+&lt;body&gt;
+ ... your slides marked up in XHTML ...
+&lt;/body&gt;
+&lt;/html&gt;
+</pre>
+</div>
+
+<div class="slide">
+<h1>To get the W3C Blue Style</h1>
+
+<p>The head element should include the following link to the style
+sheet:</p>
+
+<pre>
+&lt;link rel="stylesheet" type="text/css" media="screen, projection, print"
+ href="http://www.w3.org/Talks/Tools/Slidy2/styles/w3c-blue.css" /&gt;
+</pre>
+
+<p>The body element's content should start with the following
+markup:</p>
+
+<pre>
+&lt;div class="background"&gt;
+ &lt;img id="head-icon" alt="graphic with four colored squares"
+ src="http://www.w3.org/Talks/Tools/Slidy2/graphics/icon-blue.png" /&gt;
+ &lt;object id="head-logo" title="W3C logo" type="image/svg+xml"
+ data="http://www.w3.org/Talks/Tools/Slidy2/graphics/w3c-logo-white.svg"&gt;&lt;img
+ src="http://www.w3.org/Talks/Tools/Slidy2/graphics/w3c-logo-white.gif"
+ alt="W3C logo" id="head-logo-fallback" /&gt;&lt;/object&gt;
+&lt;/div&gt;
+</pre>
+
+<p>This adds the logos on the top left and right corners of the
+slide.</p>
+
+<p>You are of course welcome to create your own slide designs.
+You can provide different styles and backgrounds for
+different slides (more details later).</p>
+
+<p>Use the <em>meta element</em> with <em>name="copyright"</em>
+for use in the slide show footer:</p>
+
+<pre>
+&lt;meta name="copyright"
+content="Copyright &amp;#169; 2005-2009 W3C (MIT, ERCIM, Keio)" /&gt;
+</pre>
+</div>
+
+<div class="slide">
+<h1>Upgrading from previous versions of Slidy</h1>
+
+<ul>
+<li>This uses a new version of the HTML Slidy script</li>
+<li>It is designed to work better with other scripts,
+e.g. for UI controls within your slides
+<ul>
+<li>Only adds one global name "w3c_slidy"</li>
+<li>Doesn't interfere with other scripts that set event handers
+such as onload on body element</li>
+</ul>
+</li>
+<li>Works for slides delivered as text/html and application/xhtml+xml</li>
+<li>New presentation timer feature</li>
+<li>Initial prompt on first slide to help newcomers to Slidy</li>
+<li>Better support for styling slides and printing them</li>
+<li>Requires additional style rules, so new script won't work
+with old presentations without changes to their style sheets
+<ul>
+<li>See <a href="styles/slidy.css">slidy.css</a>, and
+<a href="styles/w3c-blue.css">w3c-blue.css</a></li>
+</ul>
+</li>
+<li>But old presentations will work unchanged as they refer to
+the old script!</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>To use it off-line</h1>
+
+<ul>
+<li>You can download <a href="slidy.zip">slidy.zip</a> and unzip
+it to create a Slidy directory on your machine</li>
+
+<li>If you have cvs access to the W3C site you can check out the Slidy
+directory</li>
+
+<li>Remember to periodically check for updates</li>
+
+<li>You then have two choices:
+
+<ol>
+<li>Use relative URIs depending on your local setup to access the
+appropriate files. Use the same directory structure as on the W3C
+server, ie, ".../2005/Talks/...".</li>
+
+<li>Run a Web server on your machine so that the directory above
+can be accessed via <code>http://localhost/Talks/Tools/Slidy2</code>
+and use the URIs of the form "/Talks/Tools/Slidy2/styles/slidy.css",
+"/Talks/Tools/Slidy2/scripts/slidy.js".</li>
+</ol></li>
+
+<li>In both cases you can then publish your files on the W3C server
+unchanged.</li>
+
+<li><strong>NOTE</strong> Internet Explorer on Windows XP now disables
+scripting for web pages loaded directly from the local file system,
+a work around is to use another browser, e.g. Firefox or Opera</li>
+
+<li>Please feel free to create your own designs, and help us to build
+a gallery of Slidy styles.</li>
+
+<li>My <a href="/2006/02/woa/">Google TechTalk</a> (1st Feb 2006)
+uses a notebook themed style</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Timing Your Presentation</h1>
+
+<ul>
+<li>Sometimes it is handy to know just how much time you have to
+left to finish your presentation</li>
+<li>To get this feature, add the following markup to the
+content of the head element, replacing 5 by the duration
+of your presentation in minutes
+<pre>&lt;meta name="duration" content="5" /&gt;</pre>
+</li>
+<li>The time left in minutes and seconds is shown in the footer
+next to the slide number</li>
+<li>The clock starts to run when you move away from the first slide</li>
+<li>Moving back to the first slide pauses the clock</li>
+</ul>
+
+
+</div>
+
+<div class="slide slanty">
+<h1>Generate a Title Page</h1>
+
+<p>If you want a separate title page with the W3C blue style, the
+first slide should be as follows:</p>
+
+<pre>
+&lt;div class="slide cover"&gt;
+ &lt;img src="http://www.w3.org/Talks/Tools/Slidy2/graphics/keys.jpg"
+ alt="Cover page images (keys)" class="cover" /&gt;
+ &lt;br clear="all" /&gt;
+ &lt;h1&gt;HTML Slidy: Slide Shows in XHTML&lt;/h1&gt;
+ &lt;p&gt;&lt;a href="http://www.w3.org/People/Raggett/"&gt;Dave Raggett,&lt;/a&gt;
+ &lt;a href="mailto:dsr@w3.org"&gt;dsr@w3.org&lt;/a&gt;&lt;/p&gt;
+&lt;/div&gt;
+</pre>
+
+<p>The <a
+href="http://www.w3.org/Talks/Tools/Slidy2/graphics/w3c-blue.css">w3c-blue.css</a>
+style sheet looks for the classes "slide" and "cover" on div
+and img elements using the CSS selector <em>div.slide.cover</em></p>
+
+<p>This technique can be used to assign your slides to different
+classes with a different appearence for each such class.</p>
+
+<p>Slidy also allows you to use different background markup for
+different slides, based upon shared class names, as in "foo" below.
+Backgrounds without additional class names are always shown except
+when the slide isn't transparent. You may need to tweak your
+custom style sheet.</p>
+
+<pre>
+&lt;div class="background foo"&gt;
+ ... background content ...
+&lt;div&gt;
+
+...
+
+&lt;div class="slide foo"&gt;
+ ... slide content ...
+&lt;div&gt;
+</pre>
+</div>
+
+<div class="slide">
+<h1>Incremental display of slide contents</h1>
+
+<p>For incremental display, use class="incremental", for
+instance:</p>
+
+<ul class="incremental">
+<li>First bullet point</li>
+
+<li>Second bullet point</li>
+
+<li>Third bullet point</li>
+</ul>
+
+<p class="incremental">which is marked up as follows:</p>
+
+<pre class="incremental">
+&lt;ul class="incremental"&gt;
+ &lt;li&gt;First bullet point&lt;/li&gt;
+ &lt;li&gt;Second bullet point&lt;/li&gt;
+ &lt;li&gt;Third bullet point&lt;/li&gt;
+&lt;/ul&gt;
+
+&lt;p class="incremental"&gt;which is marked up as follows:&lt;/p&gt;
+
+&lt;pre class="incremental"&gt;
+ ...
+&lt;/pre&gt;
+</pre>
+
+<div class="footnote">
+<p>An element is incrementally revealed if its parent element has
+class="incremental" or if itself has that attribute. Text nodes are
+not elements and are revealed when their parent element is revealed.
+You can use class="incremental" on any element except for &lt;br /&gt;.
+Use class="non-incremental" to override the effect of setting the
+parent element's class to incremental.</p>
+
+<p>Note: you will see a red asterisk on the left of the toolbar
+when there is still something more to reveal.</p>
+</div>
+</div>
+
+<div class="slide">
+<h1>Create outline lists with hidden content</h1>
+
+<p>You can make your bullet points or numbered list items
+into outlines that you can expand or collapse</p>
+
+<ul class="outline">
+<li>Just add <em>class="outline"</em> to the ul or ol
+element. Click on this list item for more details.
+
+<ul>
+<li>The Slidy script will then treat the list
+as an outline list.</li>
+<li>Clicking on outline list items will expand/collapse
+block-level elements within that list item.</li>
+<li>Click on the above to make this list item
+collapse again.</li>
+</ul>
+</li>
+<li>Users will then see expand/collapse icons as appropriate
+and may click anywhere on the list item to change its state.
+This particular list item can't be expanded or collapsed.</li>
+<li class="expand">Add class="expand" to any li elements that
+you want to start in an expanded state.
+
+<ul>
+<li>By default Slidy hides all the block level elements within the
+outline list items unless you have specified class="expand".</li>
+<li>Such pre-expanded items can be collapsed by clicking on them.</li>
+</ul>
+</li>
+<li>Note expand/collapse icon highlighting requires browser
+support for :hover which isn't supported by IE6.
+
+<ul>
+<li>Microsoft says it will be supported by IE7 along with
+many fixes for other CSS woes in IE6.</li>
+</ul>
+</li>
+</ul>
+
+<pre>
+&lt;ol class='outline'&gt;
+ &lt;!-- topic 1 starts collapsed --&gt;
+ &lt;li&gt;Topic 1
+ &lt;ol&gt;
+ &lt;li&gt;subtopic a&lt;/li&gt;
+ &lt;li&gt;subtopic b&lt;/li&gt;
+ &lt;/ol&gt;
+ &lt;/li&gt;
+ &lt;!-- topic 2 starts expanded --&gt;
+ &lt;li class="expand"&gt;Topic 2
+ &lt;ol&gt;
+ &lt;li&gt;subtopic c&lt;/li&gt;
+ &lt;li&gt;subtopic d&lt;/li&gt;
+ &lt;/ol&gt;
+ &lt;/li&gt;
+&lt;/ol&gt;
+</pre>
+</div>
+
+<!-- useful info at http://www.howtocreate.co.uk/wrongWithIE/ -->
+<div class="slide">
+<h1>Make your images scale with the browser window size</h1>
+
+<p>For adaptive layout, use percentage widths on images, together
+with CSS positioning:</p>
+
+<ul>
+<li>CSS positioning is simpler and more reliable than using
+tables</li>
+</ul>
+
+<pre>
+&lt;div class="slide"&gt;
+ &lt;h1&gt;Analysts - "Open standards programming will become
+ mainstream, focused around VoiceXML"&lt;/h1&gt;
+ &lt;!-- use CSS positioning and scaling for adaptive layout --&gt;
+ &lt;img src="trends.png" width="50%" style="float:left"
+ alt="projected growth of VoiceXML" /&gt;
+
+ &lt;blockquote style="float:right;width: 35%"&gt;
+ VoiceXML will dominate the voice environment, due to its
+ flexibility and eventual multimodal capabilities
+ &lt;/blockquote&gt;&lt;br clear="all" /&gt;
+
+ &lt;p style="text-align:center"&gt;Source Data Monitor, March
+ 2004&lt;/p&gt;
+&lt;/div&gt;
+</pre>
+
+<p>To work around a CSS rendering bug in IE relating
+to margins, you can set display:inline on floated elements.</p>
+</div>
+
+<div class="slide">
+<h1>Incremental display of layered images</h1>
+
+<p>These can be marked up using CSS relative positioning, e.g.</p>
+
+<pre>
+&lt;div class="incremental"
+ style="margin-left: 4em; position: relative"&gt;
+ &lt;img src="graphics/face1.gif" alt="face"
+ style="position: static; vertical-align: bottom"/&gt;
+ &lt;img src="graphics/face2.gif" alt="eyes"
+ style="position: absolute; left: 0; top: 0" /&gt;
+ &lt;img src="graphics/face3.gif" alt="nose"
+ style="position: absolute; left: 0; top: 0" /&gt;
+ &lt;img src="graphics/face4.gif" alt="mouth"
+ style="position: absolute; left: 0; top: 0" /&gt;
+&lt;/div&gt;
+</pre>
+
+<p style="font-size: smaller;">You should also use transparent GIF
+images to avoid the IE/Win bug for alpha channel in PNG. A fix is
+expected in IE 7. A <a href=
+"http://www.skyzyx.com/scripts/sleight.php">work around</a> is
+available on skyzyx.com. My thanks to <a href=
+"http://www.webstandards.org/act/acid2/">ACID2</a> for the
+graphics.</p>
+
+<div class="incremental" style=
+"margin-left: 4em; position: relative;"><img src="graphics/face1.gif" alt=
+"face" style="position: static; vertical-align: bottom;" />
+<img src="graphics/face2.gif" alt="eyes" style=
+"position: absolute; left: 0pt; top: 0pt;" /> <img src="graphics/face3.gif"
+alt="nose" style="position: absolute; left: 0pt; top: 0pt;" />
+<img src="graphics/face4.gif" alt="mouth" style=
+"position: absolute; left: 0pt; top: 0pt;" /></div>
+</div>
+
+<div class="slide">
+<h1>How to center content vertically and horizontally</h1>
+<div class="vbox"></div>
+<div class="hbox">
+<p>Within the div element for your slide:</p>
+<pre>
+&lt;div class="vbox"&gt;&lt;/div&gt;
+&lt;div class="hbox"&gt;
+Place the content here
+&lt;/div&gt;
+</pre>
+<p>and style it with the following:</p>
+<pre>
+div.vbox {
+ float: left;
+ height: 40%; width: 50%;
+ margin-top: -220px;
+}
+div.hbox {
+ width:60%; margin-top: 0;
+ margin-left:auto; margin-right:auto;
+ height: 60%;
+ border:1px solid silver;
+ background:#F0F0F0;
+ overflow:auto;
+ text-align:left;
+ clear:both;
+}
+</pre>
+
+<p>The above styling is included in <a href="styles/w3c-blue.css">w3c-blue.css</a>,
+which is designed to be used with <a href="styles/slidy.css">slidy.css</a>, but you
+are encouraged to develop your own style sheet with your own look and feel.</p>
+</div>
+</div>
+
+<div class="slide">
+<h1>Include SVG Content</h1>
+
+<p>Inclusion of SVG content can be done using the object element,
+for example:</p>
+
+<div style="text-align: center;"><object data="graphics/example.svg" type=
+"image/svg+xml" title="Indian Office logo" height="10%" width=
+"50%"><img src="graphics/example.png" alt="Indian Office logo" width=
+"50%" /></object></div>
+
+<p>has been achieved by:</p>
+
+<pre>
+&lt;object data="graphics/example.svg" type="image/svg+xml"
+ width="50%" height="10%" title="Indian Office logo"&gt;
+ &lt;img src="graphics/example.png" width="50%"
+ alt="Indian Office logo" /&gt;
+&lt;/object&gt;
+</pre>
+
+<p>This ensures that the enclosed png is displayed when the browser
+has no plugin installed or can't display SVG directly. Providing
+such a fall back is very important! Don't forget the alt text for
+people who can't see the image.</p>
+
+<p>However, there are caveats, see the next slide!</p>
+</div>
+
+<div class="slide">
+<h1>Caveats with SVG+object</h1>
+
+<p>Adobe has recently withdrawn support for its SVG Viewer, so you are
+recommended to consider <a
+href="http://wiki.svg.org/Viewer_Implementations">alternatives</a>.
+If you still using the Adobe SVG viewer you should be aware of bugs
+when using the it with IE, Namely:</p>
+
+<ul>
+<li>Most modern browsers generally support SVG SVG Tiny 1.1 or better
+natively without the need for a plugin</li>
+
+<li>If you need to use Internet Explorer you are advised to upgrade
+to IE9 which includes native support for SVG.</li>
+
+<li>Patches to Internet Explorer mean that the Adobe SVG Viewer
+version 3.03 no longer works with IE6. You are therefore recommended
+to uninstall version 3.03 and instead install <a
+href="http://www.adobe.com/svg/viewer/install/beta.html">Adobe SVG Viewer
+6.0 preview</a> if this is available to to you.</li>
+
+<li>IE6 makes a <em>copy</em> of the SVG file on the local disc
+when displaying it; but doesn't pass the original URI to the plugin</li>
+
+<li>As a result relative references from within the SVG to external
+resources (scripts, CSS, images, other SVG) will break.</li>
+
+<li>The work around is to use absolute references within your SVG.</li>
+
+<li>On Windows, the Adobe SVG plugin doesn't respect the CSS z-index
+property, and if used on backgrounds will always show through other
+content</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Additional Remarks</h1>
+
+<ul>
+<li>Slides are auto-numbered on the slide show footer</li>
+
+<li>You can link into the <a href="#(2)">middle</a> of a slide
+show:
+
+<ul>
+<li>It works out which slide you want and hides the rest</li>
+
+<li>You can even link between slides in the same slide show</li>
+
+<li>Individual sides can be addressed with the syntax #(<em>slide
+number</em>),<br />
+e.g. slide 3 of this presentation is: <a href=
+"#(3)">http://www.w3.org/Talks/Tools/Slidy#(3)</a>
+<ul>
+<li>Previous versions of Slidy used square brackets, which will
+also work.</li>
+</ul></li>
+<li>Note that the browser's back/forward buttons may not work as
+you might expect due to browser problems.</li>
+</ul>
+</li>
+
+<li>Adding "title" to the list of classes for div elements that serve
+as title pages will render the corresponding entry in the table of
+contents in bold italic text (press "C" now for an example)</li>
+
+<li>If your slides have more content than normal, use a <em>meta
+element</em> to request a smaller font
+
+<ul>
+<li>the following requests fonts to be one step smaller than
+the Slidy default for the current window width, and positive
+integers will make the fonts correspondingly larger</li>
+</ul>
+
+<pre>
+&lt;meta name="font-size-adjustment" content="-1" /&gt;
+</pre>
+
+<ul>
+<li>Slidy uses JavaScript to dynamically set the font size on the
+body element, but it is okay to specify relative font changes on
+other elements within your own style sheet, e.g.</li>
+</ul>
+<pre>div.slide.large { font-size: 200% }</pre>
+</li>
+
+<li>You are encouraged to ensure your markup is valid. <a href=
+"http://www.w3.org/People/Raggett/tidy/">HTML Tidy</a> can be used
+to find and correct common markup problems</li>
+
+<li>The slide show script and style sheet can be used freely under
+W3C's <a href=
+"http://www.w3.org/Consortium/Legal/copyright-software">software
+licensing</a> and <a href=
+"http://www.w3.org/Consortium/Legal/copyright-documents">document
+use</a> policies</li>
+<li>At <a href="http://xtech06.usefulinc.com/">XTech2006</a>
+I gave this <a href="http://www.w3.org/2006/05/Slidy-XTech/">presentation</a>
+on Slidy
+(<a href="http://www.w3.org/2006/05/Slidy-XTech/slidy-xtech06-dsr.pdf">Paper</a>).</li>
+</ul>
+</div>
+
+<div class="slide">
+<h1>Localization and automatic translation</h1>
+
+<p>Slidy now includes support for localization</p>
+
+ "es":this.strings_es,
+ "ca":this.strings_ca,
+ "cs":this.strings_cs,
+ "nl":this.strings_nl,
+ "de":this.strings_de,
+ "pl":this.strings_pl,
+ "fr":this.strings_fr,
+ "hu":this.strings_hu,
+ "it":this.strings_it,
+ "el":this.strings_el,
+ "jp":this.strings_ja,
+ "zh":this.strings_zh,
+ "ru":this.strings_ru,
+ "sv":this.strings_sv
+
+<ul>
+<li>The tool bar is localized according to the language of the presentation</li>
+<li>This is taken from the xml:lang or lang attributes on the html element</li>
+<li>The <a href="http://www.w3.org/Talks/Tools/Slidy2/help/help.html">help file</a> is
+selected based upon your browser's language preferences</li>
+<li>As of 29th July 2010, the languages supported are: English,
+Spanish, Catalonian, Czech, Dutch, German, Polish, French,
+Hungarian, Italian, Greek, Japanese, Chinese, Russian and
+Swedish</li>
+<li>If you would like to contribute localizations for other languages,
+please get in touch with Dave Raggett &lt;dsr@w3.org&gt;</li>
+<li>The following illustrates what was used for Spanish</li>
+</ul>
+<pre>
+// for each language there is an associative array
+ strings_es: {
+ "slide":"pág.",
+ "help?":"Ayuda",
+ "contents?":"Ãndice",
+ "table of contents":"tabla de contenidos",
+ "Table of Contents":"Tabla de Contenidos",
+ "restart presentation":"Reiniciar presentación",
+ "restart?":"Inicio"
+ },
+ help_es:
+ "Utilice el ratón, barra espaciadora, teclas Izda/Dcha, " +
+ "o Re pág y Av pág. Use S y B para cambiar el tamaño de fuente.",
+</pre>
+
+<p><strong>Note:</strong> Slidy now works with <a
+href="http://translate.google.com/translate?js=n&amp;prev=_t&amp;hl=en&amp;ie=UTF-8&amp;u=http%3A%2F%2Fwww.w3.org%2FTalks%2FTools%2FSlidy2%2F&amp;sl=en&amp;tl=fr&amp;history_state0=">current slides translated into French</a>. Use
+right mouse button to open frame without Google header. To disable
+automatic translation of the content of particular elements add
+<code>class="notranslate"</code>, see <a href="http://googlewebmastercentral.blogspot.com/2008/10/helping-you-break-language-barrier.html">breaking the language barrier</a>.</p>
+</div>
+
+<div class="slide">
+<h1>Future Plans</h1>
+
+<p>Recent additions have included a table of contents, and a way to
+hide and reveal content in the spirit of outline lists. The
+script has been rewritten to make it easier to combine with other
+scripts, e.g. for UI controls, and support swipes for navigation on
+touch screen devices. Further work is anticipated on the
+following:</p>
+
+<ul>
+<li>Collecting a gallery of good looking slide themes
+<ul>
+<li>Opportunities for graphics designers!</li>
+</ul>
+</li>
+<li>Bob Ferris has worked on <a
+href="https://github.com/zazi/slidy_tud/blob/master/README.md">a
+number of UI extensions</a> which could be incorporated into the
+W3C slidy script.</li>
+<li>Getting SVG Tiny to work on IE without need for SVG plugin
+<ul>
+<li>Using scripts to dynamically convert SVG Tiny to VML</li>
+<li>Note that IE9 introduces native SVG support, so it may
+no longer be worth working on SVG to VML for rendering of SVG</li>
+</ul>
+</li>
+<li>Pre-alpha version of wysiwyg slide editor (see <a
+href="editor/editor-screenshot1.png">screenshot</a>)
+<ul>
+<li>Using contentEditable when available, otherwise
+falling back to textarea and plain text conventions</li>
+<li>Using XMLHttpRequest to dynamically reflect changes to server</li>
+</ul>
+</li>
+<li>Mechanism for remotely driving Slidy as part of distributed meetings
+<ul>
+<li>Using XMLHttpRequest to listen for navigation commands</li>
+<li>Using VoIP for accompanying audio and teleconferencing</li>
+<li>Synchronizing recorded spoken presentation with currently viewed slide</li>
+</ul>
+</li>
+<li>Filters from PowerPoint and Open Office
+<ul>
+<li>and export to PDF via <a href="http://www.princexml.com/">PrinceXML</a></li>
+</ul>
+</li>
+</ul>
+
+<p>If you have comments, suggestions for improvements, or would
+like to volunteer your help with further work on Slidy,
+please contact <a href=
+"http://www.w3.org/People/Raggett/">Dave Raggett</a> &lt;<a href=
+"mailto:dsr@w3.org">dsr@w3.org</a>&gt;</p>
+</div>
+
+<div class="slide">
+<h1>Acknowledgements</h1>
+
+<ul>
+<li>My thanks to everyone who sent in bug reports and feature
+requests</li>
+<li>Opera Software for implementing CSS @media projection and
+promoting the idea of using the Web for presentations with
+<a href="http://www.opera.com/support/tutorials/operashow/">Opera
+Show</a></li>
+<li><a href="http://tantek.com/">Tantek &Ccedil;elik</a> for his
+pioneering work on applying JavaScript for slide presentations on
+other browsers</li>
+<li>Eric Meyer for taking this further with the excellent <a
+href="http://www.meyerweb.com/eric/tools/s5/s5-intro.html">S5</a></li>
+<li>W3C's <a href="http://dev.w3.org/cvsweb/slidemaker/">slidemaker
+tool</a>, which uses a perl script to split an html file up into
+one file per slide with navigation buttons</li>
+<li>Early versions of <a href="http://www.w3.org/People/Raggett/tidy/">HTML
+Tidy</a> which supported a means to create presentations via splitting
+html files on h2 elements</li>
+<li>Many sites with advice on JavaScript work arounds for browser
+variations</li>
+<li>Microsoft for pioneering contentEditable and XMLHTTP which
+both provide tremendous opportunities for Web applications</li>
+<li>Microsoft Office which provided the impetus for creating
+Slidy as a Web-based alternative to the ubiquitous use of PowerPoint</li>
+</ul>
+
+<p class="smaller"><strong>Note</strong> that while Slidy and
+S5 were developed independently, both support the use of the
+class values "slide" and "handout" for div elements. Slidy doesn't
+support the "layout" class featured in S5 and Opera Show, but
+instead provides a more flexible alternative with the "background"
+class, which enables different backgrounds on different slides.</p>
+</div>
+
+<div class="slide">
+<h1>Acknowledgements</h1>
+
+<p>The following people have contributed localizations:</p>
+
+<ul>
+<li>Emmanuelle Gutiérrez y Restrepo, Spanish</li>
+<li>Joan V. Baz, Catalan</li>
+<li>Jakub Vrána, Czech</li>
+<li>Ruud Steltenpool, Dutch</li>
+<li>Beat Vontobel, German</li>
+<li>Krzysztof Kotowicz, Polish</li>
+<li>Tamas Horvath, Hungarian</li>
+<li>Creso Moraes, Brazilian Portuguese</li>
+<li>Giuseppe Scollo, Italian</li>
+<li>Konstantinos Koukopoulos, Greek</li>
+<li>Yoshikazu Sawa (澤 義和), Japanese</li>
+<li>Shelley Shyan, Chinese</li>
+<li>Andrew Pantyukhin, Russian</li>
+<li>Saasha Metsärantala, Swedish</li>
+</ul>
+
+<p>The following people have contributed bug reports:</p>
+
+<ul>
+<li>Ivan Herman</li>
+<li>Steve Bratt</li>
+<li>Peter Patel-Schneider</li>
+<li>Matthew Coller</li>
+<li>Rune Heggtveit</li>
+<li>Gopal Venkatesan</li>
+<li>Cay Horstmann</li>
+<li>Schuyler Duveen</li>
+<li>Matteo Nannini</li>
+<li>Ralph Swick</li>
+<li>Jakub Vrána</li>
+<li>Philip Bolt</li>
+<li>Jon Frost</li>
+<li>Jonathan Chetwynd</li>
+<li>Nicolas Frisby</li>
+</ul>
+
+<p>Douglas Crockford for <a
+href="http://www.crockford.com/javascript/jsmin.html">jsmin</a>
+which was used to minify the script before compressing it with gzip.</p>
+</div>
+</body>
+</html>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/blank.html b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/blank.html
new file mode 100755
index 000000000..c9081ebcc
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/blank.html
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en-US">
+<head>
+<meta name="generator" content=
+"HTML Tidy for Linux/x86 (vers 1st November 2003), see www.w3.org" />
+<title>HTML Slidy - template for basic presentations</title>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="copyright" content=
+"Copyright &#169; 2005-2010 W3C (MIT, ERCIM, Keio)" />
+<meta name="duration" content="20" />
+<link rel="stylesheet" href="http://www.w3.org/Talks/Tools/Slidy2/styles/slidy.css" type="text/css" />
+<script src="http://www.w3.org/Talks/Tools/Slidy2/scripts/slidy.js" charset="utf-8" type="text/javascript">
+</script>
+</head>
+<body>
+<div class="slide">
+<h1>Sample heading</h1>
+
+<p>This is a template file you can copy and edit on your own server.</p>
+
+<ul>
+<li>point 1</li>
+<li>point 2</li>
+<li>. . .</li>
+</ul>
+</div>
+</body>
+</html>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-fold-dim.gif b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-fold-dim.gif
new file mode 100755
index 000000000..bce1a2a11
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-fold-dim.gif
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-fold-dim.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-fold-dim.png
new file mode 100755
index 000000000..4e28cfa8c
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-fold-dim.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-fold.gif b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-fold.gif
new file mode 100755
index 000000000..d4b063c91
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-fold.gif
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-fold.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-fold.png
new file mode 100755
index 000000000..b5334f376
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-fold.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-nofold-dim.gif b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-nofold-dim.gif
new file mode 100755
index 000000000..98a4c39f0
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-nofold-dim.gif
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-nofold-dim.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-nofold-dim.png
new file mode 100755
index 000000000..27bccb2dd
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-nofold-dim.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-nofold.gif b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-nofold.gif
new file mode 100755
index 000000000..76102a371
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-nofold.gif
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-nofold.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-nofold.png
new file mode 100755
index 000000000..28215ecd4
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-nofold.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-unfold-dim.gif b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-unfold-dim.gif
new file mode 100755
index 000000000..b758cbedc
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-unfold-dim.gif
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-unfold-dim.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-unfold-dim.png
new file mode 100755
index 000000000..1dec59d8f
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-unfold-dim.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-unfold.gif b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-unfold.gif
new file mode 100755
index 000000000..e5ecd5bab
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-unfold.gif
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-unfold.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-unfold.png
new file mode 100755
index 000000000..ce9de9683
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet-unfold.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet.png
new file mode 100755
index 000000000..14ebd9510
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/bullet.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/example.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/example.png
new file mode 100755
index 000000000..7ce9b3ffe
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/example.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/example.svg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/example.svg
new file mode 100755
index 000000000..581358e4a
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/example.svg
@@ -0,0 +1,223 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 11.0, SVG Export Plug-In -->
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:a="http://ns.adobe.com/AdobeSVGViewerExtensions/3.0/"
+ viewBox="-0.724 -0.46 279 52" xml:space="preserve">
+ <desc>W3C Indian Office logo</desc>
+ <defs>
+ </defs>
+ <g>
+ <rect x="107.669" y="15.986" style="fill:#0C479D" width="163.338" height="13.73"/>
+ <path style="fill:#FFFFFF" d="M117.042,25.062c-0.6,0.853-1.279,1.812-2.692,1.812c-0.879,0-1.985-0.574-1.985-2.052
+ c0-2.039,1.919-4.277,3.758-4.277c1.053,0,1.532,0.586,1.532,1.172c0,0.6-0.333,0.96-0.839,0.96c-0.36,0-0.759-0.239-0.759-0.693
+ c0-0.372,0.28-0.586,0.28-0.772c0-0.174-0.187-0.227-0.307-0.227c-1.16,0-1.959,2.799-1.959,3.745
+ c0,1.065,0.587,1.293,0.973,1.293c0.6,0,1.093-0.428,1.626-1.201L117.042,25.062z"/>
+ <path style="fill:#FFFFFF" d="M134.227,22.596c0,1.985-1.652,4.278-3.784,4.278c-1.093,0-2.132-0.705-2.132-1.986
+ c0-2.053,1.719-4.344,3.825-4.344C132.641,20.544,134.227,20.81,134.227,22.596z M129.896,25.554c0,0.268,0,0.934,0.693,0.934
+ c1.279,0,2.052-3.705,2.052-4.705c0-0.666-0.293-0.852-0.64-0.852C130.562,20.931,129.896,24.702,129.896,25.554z"/>
+ <path style="fill:#FFFFFF" d="M151.587,25.076c-0.426,0.718-1.053,1.746-2.092,1.746c-0.213,0-0.934,0-0.934-0.867
+ c0-0.946,1.174-3.864,1.174-4.157c0-0.161-0.16-0.294-0.334-0.294c-0.333,0-1.679,0.666-2.852,5.197h-1.612
+ c0.679-2.544,1.359-4.744,1.359-5.077c0-0.347-0.36-0.347-0.72-0.347v-0.36c0.293,0,1.612-0.119,2.665-0.359l-0.8,2.479
+ l0.04,0.027c0.96-1.412,1.679-2.519,2.839-2.519c0.32,0,1.013,0.025,1.013,1.052c0,0.866-1.159,3.692-1.159,4.079
+ c0,0.119,0.053,0.24,0.199,0.24c0.268,0,0.574-0.48,0.92-1.013L151.587,25.076z"/>
+ <path style="fill:#FFFFFF" d="M166.562,22.596l-0.36-0.026c-0.106-0.666-0.387-1.586-1.173-1.586c-0.706,0-0.706,0.652-0.706,0.72
+ c0,0.839,1.825,2.013,1.825,3.385c0,1.292-1.146,1.786-1.998,1.786c-0.587,0-0.92-0.266-1.227-0.266
+ c-0.053,0-0.32,0.039-0.387,0.266h-0.359l0.293-2.211l0.36,0.039c0.199,1.772,1.159,1.772,1.278,1.772
+ c0.507,0,0.76-0.398,0.76-0.732c0-0.346-0.319-0.879-0.746-1.373c-0.693-0.799-1.066-1.346-1.066-2.158
+ c0-1.187,0.92-1.666,1.786-1.666c0.666,0,0.826,0.293,1.267,0.293c0.199,0,0.239-0.054,0.373-0.28h0.386L166.562,22.596z"/>
+ <path style="fill:#FFFFFF" d="M183.493,22.596c0,1.985-1.653,4.278-3.785,4.278c-1.093,0-2.132-0.705-2.132-1.986
+ c0-2.053,1.719-4.344,3.824-4.344C181.907,20.544,183.493,20.81,183.493,22.596z M179.161,25.554c0,0.268,0,0.934,0.694,0.934
+ c1.278,0,2.052-3.705,2.052-4.705c0-0.666-0.293-0.852-0.64-0.852C179.828,20.931,179.161,24.702,179.161,25.554z"/>
+ <path style="fill:#FFFFFF" d="M194.643,20.917c1.359-0.119,1.772-0.146,2.665-0.372l-0.746,2.372l0.066,0.026
+ c0.4-0.8,1.188-2.398,2.066-2.398c0.053,0,0.772,0,0.772,0.879c0,0.613-0.373,0.973-0.786,0.973c-0.466,0-0.613-0.506-0.8-0.506
+ c-0.373,0-1.065,1.333-1.359,2.039c-0.347,0.893-0.479,1.532-0.906,2.771h-1.612c0.707-2.398,1.359-4.636,1.359-5.064
+ c0-0.333-0.24-0.346-0.72-0.359V20.917z"/>
+ <path style="fill:#FFFFFF" d="M213.214,21.277h-1.105c-0.44,1.626-1.16,3.958-1.16,4.412c0,0.16,0.187,0.199,0.2,0.199
+ c0.333,0,0.853-0.786,1.026-1.066l0.293,0.187c-0.494,0.774-1.146,1.813-2.187,1.813c-0.959,0-0.959-0.799-0.959-0.893
+ c0-0.547,0.64-2.546,1.227-4.652h-0.681V20.81c0.521-0.199,1.533-0.612,2.439-2.024h0.467l-0.52,1.932h0.959V21.277z"/>
+ <path style="fill:#FFFFFF" d="M226.346,25.008c-0.68,1.04-1.239,1.813-2.226,1.813c-0.773,0-0.92-0.574-0.92-0.893
+ c0-0.586,1.04-3.918,1.04-4.225c0-0.427-0.4-0.439-0.787-0.427v-0.36c0.534-0.039,1.786-0.159,2.692-0.372
+ c-0.52,1.905-1.333,4.717-1.333,5.144c0,0.133,0.121,0.199,0.201,0.199c0.319,0,0.771-0.666,1.039-1.066L226.346,25.008z
+ M225.759,17.585c0.507,0,0.92,0.413,0.92,0.906c0,0.479-0.399,0.88-0.92,0.88c-0.626,0-0.879-0.56-0.879-0.906
+ C224.88,18.145,225.159,17.585,225.759,17.585z"/>
+ <path style="fill:#FFFFFF" d="M243.436,25.102c-0.254,0.452-0.999,1.719-2.119,1.719c-0.2,0-0.893,0-0.893-0.746
+ c0-0.574,0.16-1.027,0.293-1.427l-0.026-0.013c-1.014,1.413-1.572,2.186-2.586,2.186c-1.025,0-1.025-0.732-1.025-1.039
+ c0-0.92,0.999-3.345,0.999-4.119c0-0.347-0.293-0.36-0.746-0.387v-0.36c1.186-0.053,2.599-0.359,2.785-0.372l-1.253,4.104
+ c-0.16,0.507-0.199,0.654-0.199,0.894c0,0.252,0.133,0.318,0.307,0.318c0.532,0,1.345-1.265,1.519-1.584
+ c0.6-1.08,0.906-2.133,1.319-3.559h1.573c-0.268,0.934-1.374,4.518-1.374,4.944c0,0.227,0.134,0.254,0.2,0.254
+ c0.32,0,0.826-0.8,0.946-0.987L243.436,25.102z"/>
+ <path style="fill:#FFFFFF" d="M254.745,20.917c1.412-0.119,1.745-0.146,2.665-0.359l-0.8,2.479l0.04,0.027
+ c0.772-1.187,1.64-2.519,2.825-2.519c0.066,0,0.879,0,0.879,0.893c0,0.52-0.187,0.973-0.307,1.279l0.014,0.027
+ c0.68-1.08,1.466-2.199,2.559-2.199c0.733,0,1.054,0.466,1.054,1.052c0,0.88-1.187,3.599-1.187,4.118
+ c0,0.16,0.146,0.201,0.227,0.201c0.254,0,0.68-0.667,0.906-1.013l0.293,0.174c-0.413,0.707-1.026,1.746-2.092,1.746
+ c-0.227,0-0.934,0-0.934-0.867c0-0.972,1.173-3.811,1.173-4.13c0-0.16-0.106-0.307-0.319-0.307c-0.561,0-1.266,1.159-1.479,1.546
+ c-0.493,0.853-0.68,1.453-1.346,3.637h-1.6c1.026-3.318,1.466-4.49,1.466-4.864c0-0.253-0.159-0.319-0.253-0.319
+ c-0.093,0-1.572,0.333-2.812,5.183h-1.612c0.759-2.785,1.359-4.636,1.359-5.077c0-0.386-0.521-0.359-0.72-0.347V20.917z"/>
+ <path d="M123.286,1.771h2.012l-4.572,15.43h-0.206l-2.858-9.555l-2.857,9.555h-0.183l-4.572-15.43h2.012l2.743,9.396l1.874-6.332
+ l-0.914-3.063h2.012l2.743,9.396L123.286,1.771z"/>
+ <path d="M189.955,1.453h2.012l-4.572,15.43h-0.206l-2.856-9.555l-2.857,9.555h-0.184l-4.572-15.43h2.013l2.743,9.396l1.874-6.333
+ l-0.914-3.063h2.012l2.742,9.396L189.955,1.453z"/>
+ <path d="M244.878,1.453h2.012l-4.572,15.43h-0.205l-2.858-9.555l-2.857,9.555h-0.183l-4.572-15.43h2.012l2.743,9.396l1.874-6.333
+ l-0.914-3.063h2.012l2.744,9.396L244.878,1.453z"/>
+ <path d="M248.27,3.238h6.096v2.024h-4.048v2.438h4.048v2.048h-4.048v3.658h4.048v2.024h-6.096V3.238z"/>
+ <path d="M257.815,3.238h4.268c1.805,0,3.268,1.463,3.268,3.243c0,0.829-0.268,1.463-0.707,2.024
+ c0.927,0.707,1.512,1.731,1.512,3.072c0,2.122-1.73,3.853-3.853,3.853c-0.22,0-4.487,0-4.487,0V3.238z M259.863,7.701h2.22
+ c0.683,0,1.219-0.537,1.219-1.22c0-0.658-0.536-1.219-1.219-1.219c-0.171,0-2.22,0-2.22,0V7.701z M259.863,13.407h2.439
+ c0.999,0,1.829-0.829,1.829-1.829c0-1.024-0.83-1.829-1.829-1.829c-0.391,0-2.439,0-2.439,0V13.407z"/>
+ <path d="M130.116,3.042c2.756,0,4.268,2.829,4.268,6.292s-1.512,6.291-4.268,6.291c-2.731,0-4.268-2.828-4.268-6.291
+ S127.385,3.042,130.116,3.042z M130.116,13.602c1.17,0,2.122-1.926,2.122-4.267c0-2.341-0.951-4.268-2.122-4.268
+ c-1.146,0-2.122,1.926-2.122,4.268C127.994,11.675,128.97,13.602,130.116,13.602z"/>
+ <path d="M146.575,15.431h-2.487l-2.927-4.072c-0.487,0-1.487,0-1.487,0v4.072h-2.049V3.238h3.878c2.219,0,4.048,1.829,4.048,4.072
+ c0,1.561-0.878,2.926-2.194,3.609L146.575,15.431z M143.526,7.31c0-1.122-0.902-2.048-2.023-2.048c-0.22,0-1.829,0-1.829,0v4.072
+ h1.829C142.624,9.334,143.526,8.407,143.526,7.31z"/>
+ <path d="M151.256,13.407h4.048v2.024h-6.096V3.238h2.048V13.407z"/>
+ <path d="M156.724,3.238h2.853c3.024,0,5.487,2.731,5.487,6.097c0,3.365-2.463,6.096-5.487,6.096c-0.269,0-2.853,0-2.853,0V3.238z
+ M158.771,13.407h0.805c1.78,0,3.243-1.829,3.243-4.072c0-2.244-1.463-4.072-3.243-4.072c-0.316,0-0.805,0-0.805,0V13.407z"/>
+ <path d="M200.331,3.238h2.854c3.023,0,5.487,2.731,5.487,6.097c0,3.365-2.464,6.096-5.487,6.096c-0.269,0-2.854,0-2.854,0V3.238z
+ M202.38,13.407h0.805c1.78,0,3.243-1.829,3.243-4.072c0-2.244-1.463-4.072-3.243-4.072c-0.316,0-0.805,0-0.805,0V13.407z"/>
+ <path d="M211.913,3.238h6.097v2.024h-4.048v2.438h4.048v2.048h-4.048v3.658h4.048v2.024h-6.097V3.238z"/>
+ <rect x="194.518" y="3.188" width="1.786" height="12.203"/>
+ <path style="fill-rule:evenodd;clip-rule:evenodd" d="M274.845,25.169c-0.659,0-1.251,0.238-1.699,0.693c-0.477,0.482-0.741,1.109-0.741,1.754
+ c0,0.646,0.252,1.244,0.714,1.713c0.469,0.477,1.074,0.734,1.727,0.734c0.639,0,1.258-0.258,1.74-0.729
+ c0.463-0.447,0.714-1.045,0.714-1.719c0-0.652-0.259-1.264-0.707-1.719C276.122,25.42,275.511,25.169,274.845,25.169z
+ M276.973,27.638c0,0.564-0.218,1.086-0.619,1.475c-0.421,0.408-0.944,0.625-1.522,0.625c-0.544,0-1.081-0.225-1.481-0.633
+ c-0.401-0.408-0.626-0.932-0.626-1.488s0.231-1.102,0.646-1.521c0.389-0.395,0.911-0.606,1.482-0.606
+ c0.585,0,1.107,0.217,1.517,0.633C276.762,26.515,276.973,27.046,276.973,27.638z M274.913,26.183h-1.047v2.773h0.522v-1.184
+ h0.518l0.563,1.184h0.585l-0.618-1.264c0.4-0.082,0.632-0.355,0.632-0.75C276.068,26.44,275.688,26.183,274.913,26.183z
+ M274.817,26.522c0.49,0,0.713,0.135,0.713,0.475c0,0.326-0.223,0.443-0.699,0.443h-0.442v-0.918H274.817z"/>
+ <path d="M93.451,0l1.056,6.42l-3.738,7.152c0,0-1.436-3.034-3.82-4.714c-2.009-1.416-3.318-1.723-5.364-1.301
+ c-2.628,0.542-5.608,3.685-6.908,7.559c-1.556,4.636-1.571,6.879-1.625,8.94c-0.087,3.304,0.434,5.256,0.434,5.256
+ s-2.27-4.199-2.249-10.349c0.015-4.389,0.704-8.371,2.736-12.299c1.787-3.454,4.443-5.526,6.8-5.77
+ c2.437-0.252,4.363,0.923,5.852,2.194c1.562,1.334,3.143,4.253,3.143,4.253L93.451,0z"/>
+ <path d="M93.911,36.329c0,0-1.653,2.953-2.682,4.091c-1.03,1.138-2.872,3.143-5.147,4.146c-2.275,1.001-3.468,1.191-5.716,0.975
+ c-2.246-0.216-4.334-1.517-5.066-2.06c-0.731-0.541-2.601-2.14-3.657-3.629c-1.057-1.49-2.709-4.471-2.709-4.471
+ s0.921,2.986,1.497,4.254c0.332,0.729,1.351,2.96,2.797,4.902c1.349,1.813,3.969,4.932,7.951,5.635
+ c3.982,0.705,6.719-1.083,7.396-1.517c0.677-0.433,2.104-1.628,3.007-2.594c0.943-1.009,1.835-2.296,2.33-3.067
+ c0.361-0.564,0.948-1.707,0.948-1.707L93.911,36.329z"/>
+ <path style="fill:#0C479D" d="M25.146,0.284l9.003,30.611l9.003-30.611h6.519L34.771,50.576h-0.621l-9.313-31.168l-9.314,31.168h-0.621
+ L0,0.284h6.519l9.003,30.611l6.085-20.614l-2.98-9.997H25.146z"/>
+ <path style="fill:#0C479D" d="M68.184,34.434c0,4.554-1.211,8.383-3.632,11.487c-2.422,3.104-5.558,4.655-9.407,4.655
+ c-2.898,0-5.423-0.921-7.576-2.763c-2.152-1.842-3.746-4.335-4.781-7.481l5.091-2.11c0.746,1.904,1.729,3.405,2.95,4.501
+ c1.221,1.097,2.659,1.645,4.315,1.645c1.738,0,3.208-0.972,4.409-2.917s1.801-4.284,1.801-7.017c0-3.022-0.642-5.36-1.925-7.017
+ c-1.491-1.945-3.83-2.918-7.017-2.918h-2.483v-2.98l8.693-15.026H48.128l-2.918,4.967h-1.862V0.284h24.215v3.042l-9.19,15.833
+ c3.229,1.036,5.671,2.919,7.326,5.652C67.354,27.542,68.184,30.749,68.184,34.434z"/>
+ <g>
+ <g>
+ <g>
+ <path d="M135.359,42.137h-4.523v1.736c0.018,0.145,0.018,0.249,0,0.313c-0.075,0.21-0.261,0.314-0.558,0.314
+ c-0.299,0-0.909-0.407-1.831-1.219c-0.922-0.814-1.382-1.357-1.382-1.631c0-0.146,0.093-0.272,0.278-0.385
+ c0.186-0.113,0.324-0.17,0.418-0.17h1.671v-3.802c0-0.337-0.105-0.602-0.318-0.794c-0.212-0.192-0.567-0.29-1.064-0.29
+ c-0.388,0-0.692,0.104-0.914,0.313s-0.332,0.503-0.332,0.886c0,0.271,0.067,0.552,0.202,0.838
+ c0.039,0.095,0.115,0.217,0.231,0.361h-1.27c-0.094-0.163-0.16-0.293-0.197-0.389c-0.151-0.323-0.226-0.59-0.226-0.799
+ c0-0.728,0.246-1.267,0.738-1.621c0.491-0.355,1.118-0.534,1.879-0.534c0.743,0,1.375,0.194,1.894,0.582
+ c0.52,0.387,0.78,0.887,0.78,1.499v3.75h4.523V42.137z M133.104,36.527h-1.116v-0.945h1.116V36.527z"/>
+ </g>
+ <g>
+ <path d="M139.753,36.527h-3.214v11.124h-1.404V36.527h-2.376v-0.945h6.995V36.527z"/>
+ </g>
+ <g>
+ <path d="M145.448,36.527h-3.215v11.124h-1.403V36.527h-2.376v-0.945h6.995V36.527z"/>
+ </g>
+ <g>
+ <path d="M156.204,36.527h-3.776v3.074c0,0.388-0.101,0.75-0.303,1.09c-0.205,0.34-0.556,0.614-1.056,0.822
+ c-0.259,0.114-0.514,0.198-0.763,0.253c-0.25,0.058-0.522,0.088-0.819,0.088c-0.352,0-0.646-0.042-0.888-0.128
+ c0.166,0.211,0.296,0.381,0.388,0.509c0.59,0.774,1.097,1.413,1.521,1.913c0.369,0.403,0.94,0.977,1.714,1.719
+ c0.24,0.227,0.572,0.541,0.996,0.945l-1.01,0.849c-0.628-0.6-1.307-1.285-2.036-2.061c-0.729-0.776-1.399-1.535-2.008-2.28
+ c-0.776-0.984-1.451-1.904-2.023-2.763c-0.203-0.289-0.434-0.653-0.692-1.092l1.082-0.701l1.082,1.649
+ c0.092,0.145,0.287,0.273,0.583,0.388c0.295,0.112,0.619,0.17,0.971,0.17c0.61,0,1.072-0.138,1.388-0.412
+ c0.313-0.273,0.471-0.634,0.471-1.087v-2.945h-6.875v-0.945h12.055V36.527z"/>
+ </g>
+ <g>
+ <path d="M163.116,36.527h-7.771v-0.945h7.771V36.527z M165.354,40.09h-5.216c-0.663,0-1.141,0.116-1.436,0.348
+ c-0.295,0.234-0.441,0.552-0.441,0.954c0,1.125,0.615,2.34,1.848,3.643c0.401,0.434,1.028,0.98,1.873,1.64l-0.886,0.796
+ c-0.939-0.708-1.642-1.304-2.101-1.789c-1.401-1.464-2.102-2.857-2.102-4.179c0-0.742,0.233-1.309,0.705-1.705
+ c0.47-0.393,1.092-0.592,1.866-0.592h5.889V40.09z"/>
+ </g>
+ <g>
+ <path d="M169.777,36.527h-3.214v11.124h-1.404V36.527h-2.377v-0.945h6.995V36.527z"/>
+ </g>
+ <g>
+ <path d="M175.486,36.527h-3.192v11.124h-1.404V36.527h-2.411v-0.945h2.391c-0.35-0.916-0.671-1.6-0.964-2.049
+ c-0.921-1.365-2.052-2.05-3.395-2.05c-0.625,0-1.09,0.17-1.393,0.507c-0.304,0.337-0.456,0.785-0.456,1.347
+ c0,0.546,0.145,1.099,0.432,1.66c0.091,0.177,0.235,0.4,0.433,0.674h-1.267c-0.221-0.291-0.378-0.533-0.47-0.727
+ c-0.33-0.612-0.495-1.154-0.495-1.622c0-0.921,0.284-1.613,0.856-2.08c0.571-0.468,1.345-0.704,2.321-0.704
+ c1.825,0,3.32,0.841,4.479,2.522c0.369,0.549,0.765,1.389,1.19,2.521h3.344V36.527z"/>
+ </g>
+ <g>
+ <path d="M184.403,44.03c-0.333,0.241-0.628,0.419-0.885,0.533c-0.776,0.357-1.635,0.537-2.574,0.537
+ c-1.551,0-2.755-0.447-3.613-1.342c-0.857-0.895-1.287-1.896-1.287-3.008c0.075,0.029,0.133,0.045,0.171,0.045
+ c0.316,0.074,0.57,0.112,0.758,0.112c0.729,0,1.29-0.145,1.684-0.438c0.466-0.337,0.701-0.861,0.701-1.571
+ c0-0.485-0.223-1.025-0.669-1.621c-0.148-0.194-0.371-0.444-0.669-0.751h-3.846v-0.945h8.172v0.945h-2.672
+ c0.242,0.322,0.419,0.589,0.531,0.798c0.371,0.646,0.555,1.196,0.555,1.646c0,1.066-0.514,1.856-1.545,2.372
+ c-0.334,0.161-0.858,0.322-1.577,0.484c0.185,0.531,0.378,0.926,0.579,1.182c0.627,0.806,1.539,1.208,2.737,1.208
+ c0.755,0,1.444-0.18,2.07-0.534c0.753-0.436,1.212-0.864,1.379-1.284V44.03z"/>
+ </g>
+ <g>
+ <path d="M188.993,36.527h-3.216v11.124h-1.404V36.527h-2.375v-0.945h6.995V36.527z"/>
+ </g>
+ <g>
+ <path d="M215.396,36.527h-8.921v3.529c0.221-0.279,0.424-0.483,0.607-0.614c0.57-0.41,1.252-0.614,2.041-0.614
+ c1.087,0,1.96,0.281,2.622,0.847c0.662,0.566,0.994,1.285,0.994,2.155c0,0.791-0.451,1.729-1.352,2.81
+ c-0.293,0.356-0.753,0.824-1.379,1.405l-1.158-0.73c0.549-0.468,0.95-0.858,1.206-1.166c0.804-0.924,1.207-1.742,1.207-2.456
+ c0-0.582-0.171-1.049-0.509-1.397c-0.341-0.349-0.831-0.521-1.473-0.521c-0.753,0-1.408,0.324-1.967,0.972
+ c-0.562,0.649-0.841,1.249-0.841,1.801v5.105h-1.403v-3.497c-0.238,0.191-0.442,0.333-0.605,0.429
+ c-0.57,0.303-1.179,0.453-1.818,0.453c-1.049,0-1.944-0.318-2.688-0.956c-0.744-0.634-1.115-1.405-1.115-2.308
+ s0.361-1.654,1.083-2.259c0.724-0.604,1.597-0.905,2.622-0.905c0.273,0,0.566,0.034,0.878,0.109
+ c0.092,0.015,0.22,0.051,0.385,0.11v1.07c-0.129-0.07-0.231-0.123-0.305-0.159c-0.294-0.124-0.57-0.187-0.829-0.187
+ c-0.664,0-1.232,0.21-1.713,0.632c-0.479,0.421-0.718,0.93-0.718,1.527c0,0.648,0.213,1.206,0.637,1.674
+ c0.426,0.472,0.98,0.704,1.665,0.704c0.628,0,1.164-0.168,1.606-0.507c0.61-0.469,0.916-0.886,0.916-1.259v-5.797h-8.172
+ v-0.945h18.496V36.527z"/>
+ </g>
+ <g>
+ <path d="M220.87,36.527h-3.216v11.124h-1.404V36.527h-2.375v-0.945h6.995V36.527z"/>
+ </g>
+ <g>
+ <path d="M229.798,44.03c-0.33,0.241-0.626,0.419-0.885,0.533c-0.773,0.357-1.633,0.537-2.572,0.537
+ c-1.551,0-2.755-0.447-3.611-1.342c-0.858-0.895-1.287-1.896-1.287-3.008c0.075,0.029,0.13,0.045,0.167,0.045
+ c0.32,0.074,0.572,0.112,0.76,0.112c0.729,0,1.29-0.145,1.684-0.438c0.468-0.337,0.701-0.861,0.701-1.571
+ c0-0.485-0.223-1.025-0.669-1.621c-0.15-0.194-0.371-0.444-0.668-0.751h-3.847v-0.945h8.172v0.945h-2.67
+ c0.242,0.322,0.417,0.589,0.527,0.798c0.371,0.646,0.559,1.196,0.559,1.646c0,1.066-0.518,1.856-1.549,2.372
+ c-0.33,0.161-0.856,0.322-1.577,0.484c0.186,0.531,0.378,0.926,0.583,1.182c0.626,0.806,1.539,1.208,2.735,1.208
+ c0.755,0,1.444-0.18,2.068-0.534c0.756-0.436,1.216-0.864,1.379-1.284V44.03z"/>
+ </g>
+ <g>
+ <path d="M234.388,36.527h-3.214v11.124h-1.404V36.527h-2.375v-0.945h6.993V36.527z"/>
+ </g>
+ <g>
+ <path d="M240.085,36.527h-3.216v11.124h-1.405V36.527h-2.375v-0.945h6.996V36.527z"/>
+ </g>
+ <g>
+ <path d="M238.137,31.033c-0.146-0.065-0.275-0.104-0.386-0.122c-0.331-0.081-0.68-0.119-1.048-0.119
+ c-0.514,0-0.931,0.135-1.253,0.402c-0.321,0.268-0.483,0.671-0.483,1.208c0,0.668,0.307,1.418,0.916,2.246
+ c0.203,0.263,0.508,0.604,0.913,1.028h-1.078c-0.148-0.05-0.497-0.455-1.051-1.215c-0.664-0.925-0.994-1.742-0.994-2.454
+ c0-0.794,0.304-1.368,0.909-1.727c0.496-0.291,1.158-0.436,1.983-0.436c0.403,0,0.79,0.046,1.156,0.141
+ c0.112,0.034,0.248,0.08,0.415,0.145V31.033z"/>
+ </g>
+ <g>
+ <path d="M251.558,36.527H239.78v-0.945h11.777V36.527z M252.608,40.539c-0.313,0.048-0.572,0.097-0.773,0.146
+ c-0.593,0.176-1.104,0.457-1.537,0.844c-0.435,0.384-0.807,0.842-1.122,1.37c-0.238,0.403-0.367,0.684-0.385,0.844
+ l-1.164-0.533l0.395-0.896l0.508-0.752c-0.13-0.274-0.518-0.572-1.161-0.897c-0.518-0.258-1.053-0.388-1.605-0.388
+ c-0.756,0-1.378,0.206-1.866,0.619c-0.488,0.411-0.733,0.965-0.733,1.659c0,1.099,0.756,2.115,2.263,3.052
+ c0.495,0.307,1.249,0.662,2.261,1.067l-0.664,1.04c-0.867,0-2.065-0.692-3.594-2.08c-1.09-0.984-1.633-2.033-1.633-3.146
+ c0-1.017,0.349-1.808,1.05-2.371c0.702-0.565,1.658-0.847,2.878-0.847c0.699,0,1.389,0.157,2.073,0.474
+ c0.681,0.319,1.171,0.665,1.466,1.037c0.184-0.145,0.332-0.25,0.44-0.313c0.37-0.243,0.664-0.411,0.886-0.51
+ c0.388-0.161,0.839-0.289,1.355-0.388c0.167-0.031,0.388-0.063,0.664-0.096V40.539z"/>
+ </g>
+ <g>
+ <path d="M257.114,36.527h-3.216v11.124h-1.402V36.527h-2.377v-0.945h6.995V36.527z"/>
+ </g>
+ <g>
+ <path d="M266.044,44.03c-0.332,0.241-0.627,0.419-0.886,0.533c-0.774,0.357-1.634,0.537-2.573,0.537
+ c-1.55,0-2.755-0.447-3.611-1.342c-0.858-0.895-1.287-1.896-1.287-3.008c0.075,0.029,0.131,0.045,0.169,0.045
+ c0.318,0.074,0.571,0.112,0.759,0.112c0.729,0,1.291-0.145,1.683-0.438c0.468-0.337,0.701-0.861,0.701-1.571
+ c0-0.485-0.222-1.025-0.668-1.621c-0.149-0.194-0.371-0.444-0.669-0.751h-3.846v-0.945h8.172v0.945h-2.669
+ c0.239,0.322,0.417,0.589,0.527,0.798c0.371,0.646,0.559,1.196,0.559,1.646c0,1.066-0.518,1.856-1.55,2.372
+ c-0.332,0.161-0.857,0.322-1.576,0.484c0.184,0.531,0.378,0.926,0.58,1.182c0.629,0.806,1.539,1.208,2.736,1.208
+ c0.756,0,1.443-0.18,2.07-0.534c0.754-0.436,1.214-0.864,1.379-1.284V44.03z"/>
+ </g>
+ <g>
+ <path d="M270.634,36.527h-3.214v11.124h-1.405V36.527h-2.376v-0.945h6.995V36.527z"/>
+ </g>
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/face1.gif b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/face1.gif
new file mode 100755
index 000000000..04e50cd79
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/face1.gif
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/face2.gif b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/face2.gif
new file mode 100755
index 000000000..12d824003
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/face2.gif
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/face3.gif b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/face3.gif
new file mode 100755
index 000000000..ac6e5e440
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/face3.gif
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/face4.gif b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/face4.gif
new file mode 100755
index 000000000..3f687402a
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/face4.gif
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/fold-bright.gif b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/fold-bright.gif
new file mode 100755
index 000000000..7e38faa8b
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/fold-bright.gif
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/fold-dim.bmp b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/fold-dim.bmp
new file mode 100755
index 000000000..117f91a91
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/fold-dim.bmp
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/fold-dim.gif b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/fold-dim.gif
new file mode 100755
index 000000000..346fcbf3e
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/fold-dim.gif
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/fold.bmp b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/fold.bmp
new file mode 100755
index 000000000..6ba9e5627
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/fold.bmp
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/fold.gif b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/fold.gif
new file mode 100755
index 000000000..133e594fd
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/fold.gif
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/icon-blue.png b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/icon-blue.png
new file mode 100755
index 000000000..58bf969ed
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/icon-blue.png
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/keys2.jpg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/keys2.jpg
new file mode 100755
index 000000000..4739be00a
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/keys2.jpg
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/nofold-dim.bmp b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/nofold-dim.bmp
new file mode 100755
index 000000000..8a12826b1
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/nofold-dim.bmp
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/nofold-dim.gif b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/nofold-dim.gif
new file mode 100755
index 000000000..996fb5eda
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/nofold-dim.gif
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/nofold.bmp b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/nofold.bmp
new file mode 100755
index 000000000..0937d324b
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/nofold.bmp
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/unfold-bright.gif b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/unfold-bright.gif
new file mode 100755
index 000000000..2748131a4
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/unfold-bright.gif
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/unfold-dim.bmp b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/unfold-dim.bmp
new file mode 100755
index 000000000..c2a6bafa2
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/unfold-dim.bmp
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/unfold-dim.gif b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/unfold-dim.gif
new file mode 100755
index 000000000..bee567117
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/unfold-dim.gif
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/unfold.bmp b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/unfold.bmp
new file mode 100755
index 000000000..30af625e2
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/unfold.bmp
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/unfold.gif b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/unfold.gif
new file mode 100755
index 000000000..0753ae4d2
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/unfold.gif
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/w3c-logo-blue.gif b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/w3c-logo-blue.gif
new file mode 100755
index 000000000..890bc97e0
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/w3c-logo-blue.gif
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/w3c-logo-blue.svg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/w3c-logo-blue.svg
new file mode 100755
index 000000000..6595d0195
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/w3c-logo-blue.svg
@@ -0,0 +1,14 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 93 45" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <a xlink:href="http://www.w3.org">
+ <desc>W3C logo</desc>
+ <rect width="103" height="65" fill="#90A7D0" x="-10" y="-10"/>
+ <g transform="translate(2,2)">
+ <path d="M74.5,.2l0.8,5.1l-3,5.6c0,0-1.13-2.39-3-3.7 c-1.6-1.1-2.6-1.4-4.2-1 c-2.1,0.4-4.4,2.9-5.4,5.9 c-1.2,3.6-1.2,5.4-1.3,7c-0.07,2.6,0.3,4.14,0.3,4.1 s-1.8-3.3-1.8-8.1c0.01-3.5,0.6-6.6,2.2-9.7 c1.41-2.7,3.5-4.4,5.4-4.5 c1.9-0.2,3.4,0.7,4.6,1.7 c1.2,1,2.5,3.3,2.5,3.4z"/>
+ <path d="M74.9,28.8c0,0-1.3,2.3-2.1,3.2c-.8.9-2.3,2.5-4.1,3.3 c-1.8.8-2.7.9-4.5,0.8 c-1.8-.2-3.4-1.2-4-1.6s-2-1.7-2.9-2.9 c-.8-1.2-2.1-3.5-2.1-3.5 s.7,2.4,1.2,3.3c.3.6,1.1,2.3,2.2,3.9c1.1,1.4,3.1,3.9,6.3,4.4 c3.1,.6,5.3-.9,5.8-1.2c.5-.3,1.7-1.3,2.4-2.1 c.7-.8,1.4-1.8,1.8-2.4c.3-.4,0.7-1.3.7-1.3z"/>
+ <path fill="#0C479D" d="M20.7,0.43l7.1,24.1l7.1-24.1 h5.1l-11.7,39.6h-.5l-7.35-24.5l-7.35,24.5h-.5l-11.7-39.6h5.1l7.1,24.1l4.8-16.2l-2.3-7.9z"/>
+ <path fill="#0C479D" d="M54.6,27.3c0,3.6-1,6.6-2.9,9 c-1.9,2.4-4.4,3.7-7.4,3.7 c-2.3,0-4.3-0.7-5.9-2.2 c-1.7-1.4-2.9-3.4-3.8-5.9l4-1.7c.6,1.5,1.4,2.7,2.3,3.5 c1,.9,2.1,1.3,3.4,1.3c1.4,0,2.5-.8,3.5-2.3 c.9-1.5,1.4-3.4,1.4-5.5 c0-2.4-.5-4.2-1.5-5.5 c-1.2-1.5-3-2.3-5.5-2.3h-2v-2.3l6.8-11.8h-8.2l-2.3,3.9 h-1.5v-8.7h19.1v2.4l-7.2,12.5c2.5.8,4.5,2.3,5.8,4.4 c1.3,2.1,2,4.7,1.9,7.5z"/>
+ <text x="78" y="10" font-size="13" font-family="sans-serif">&#174;</text>
+ </g>
+ </a>
+</svg>
+
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/w3c-logo-slanted.jpg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/w3c-logo-slanted.jpg
new file mode 100755
index 000000000..54e0ac361
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/w3c-logo-slanted.jpg
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/w3c-logo-white.gif b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/w3c-logo-white.gif
new file mode 100755
index 000000000..3b3c6fd02
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/w3c-logo-white.gif
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/w3c-logo-white.svg b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/w3c-logo-white.svg
new file mode 100755
index 000000000..d63907f35
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/graphics/w3c-logo-white.svg
@@ -0,0 +1,14 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 93 45" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <a xlink:href="http://www.w3.org">
+ <desc>W3C logo</desc>
+ <rect width="103" height="65" fill="#728ec2" x="-10" y="-10"/>
+ <g transform="translate(2,2)">
+ <path fill="#FFFFFF" d="M74.5,.2l0.8,5.1l-3,5.6c0,0-1.13-2.39-3-3.7 c-1.6-1.1-2.6-1.4-4.2-1 c-2.1,0.4-4.4,2.9-5.4,5.9 c-1.2,3.6-1.2,5.4-1.3,7c-0.07,2.6,0.3,4.14,0.3,4.1 s-1.8-3.3-1.8-8.1c0.01-3.5,0.6-6.6,2.2-9.7 c1.41-2.7,3.5-4.4,5.4-4.5 c1.9-0.2,3.4,0.7,4.6,1.7 c1.2,1,2.5,3.3,2.5,3.4z"/>
+ <path fill="#FFFFFF" d="M74.9,28.8c0,0-1.3,2.3-2.1,3.2c-.8.9-2.3,2.5-4.1,3.3 c-1.8.8-2.7.9-4.5,0.8 c-1.8-.2-3.4-1.2-4-1.6s-2-1.7-2.9-2.9 c-.8-1.2-2.1-3.5-2.1-3.5 s.7,2.4,1.2,3.3c.3.6,1.1,2.3,2.2,3.9c1.1,1.4,3.1,3.9,6.3,4.4 c3.1,.6,5.3-.9,5.8-1.2c.5-.3,1.7-1.3,2.4-2.1 c.7-.8,1.4-1.8,1.8-2.4c.3-.4,0.7-1.3.7-1.3z"/>
+ <path fill="#FFFFFF" d="M20.7,0.43l7.1,24.1l7.1-24.1 h5.1l-11.7,39.6h-.5l-7.35-24.5l-7.35,24.5h-.5l-11.7-39.6h5.1l7.1,24.1l4.8-16.2l-2.3-7.9z"/>
+ <path fill="#FFFFFF" d="M54.6,27.3c0,3.6-1,6.6-2.9,9 c-1.9,2.4-4.4,3.7-7.4,3.7 c-2.3,0-4.3-0.7-5.9-2.2 c-1.7-1.4-2.9-3.4-3.8-5.9l4-1.7c.6,1.5,1.4,2.7,2.3,3.5 c1,.9,2.1,1.3,3.4,1.3c1.4,0,2.5-.8,3.5-2.3 c.9-1.5,1.4-3.4,1.4-5.5 c0-2.4-.5-4.2-1.5-5.5 c-1.2-1.5-3-2.3-5.5-2.3h-2v-2.3l6.8-11.8h-8.2l-2.3,3.9 h-1.5v-8.7h19.1v2.4l-7.2,12.5c2.5.8,4.5,2.3,5.8,4.4 c1.3,2.1,2,4.7,1.9,7.5z"/>
+ <text x="78" y="10" font-size="13" font-family="sans-serif">&#174;</text>
+ </g>
+ </a>
+</svg>
+
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/.htaccess b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/.htaccess
new file mode 100755
index 000000000..d395348ae
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/.htaccess
@@ -0,0 +1,28 @@
+Options +MultiViews
+LanguagePriority en
+AddLanguage pt-br .pt-br
+
+<Files ~ "*.html">
+
+ForceType 'text/html; charset=utf-8'
+
+</Files>
+
+<Files ~ "*.xhtml">
+
+ForceType 'application/xhtml+xml; charset=utf-8'
+
+</Files>
+
+<Files ~ *.css">
+
+ForceType 'text/css; charset=utf-8'
+
+</Files>
+
+<Files ~ "*.js">
+
+ForceType 'text/javascript; charset=utf-8'
+
+</Files>
+mkdir
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html
new file mode 100755
index 000000000..c2f86148f
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html
@@ -0,0 +1,80 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head>
+
+ <title>Slide Show Help</title><style type="text/css">
+ body {
+ font-family: sans-serif;
+ margin: 10%;
+ }
+ .copyright { font-size: smaller }
+ </style>
+ <script type="text/javascript">
+ window.onload = load;
+ function load()
+ {
+ var back = document.getElementById("back");
+ back.focus();
+ }
+ </script>
+</head>
+<body>
+<h1>Slide Show Help</h1>
+
+<p>This slide show can be driven in the same way as Power Point.
+To advance to the next slide click pretty much anywhere on the
+page with the mouse, or press the space bar. You can move forwards
+or backwards through the slides with the Cursor left, Cursor
+right, Pg Up and Pg Dn keys. The font size is automatically
+adjusted to match the browser's window width, but you can also
+adjust it manually using the "S" key for smaller and the "B" key
+for bigger. You can also use the "&lt;" and "&gt;" keys. Use the
+"F" key to switch off/on the bottom status line. The "K" key
+toggles the use of mouse click to advance to the next slide. You
+can use "C" to show the table of contents and any other key to
+hide it. Use the "F11" key to toggle the browser's full screen
+mode. Note that not all keys are supported in all browsers, as
+browsers may reserve some keys for browser control and this varies
+from one browser to the next.</p>
+
+<p>Firefox users may want the <a
+href="http://www.krickelkrackel.de/autohide/">autohide</a>
+extension to hide the toolbars when entering full screen with F11.
+Newer versions of Firefox have built-in support for SVG, but on older
+versions for Microsoft Windows, you should consider installing the <a
+href="http://plugindoc.mozdev.org/windows.html">Adobe SVG Viewer
+6.0</a>.</p>
+
+<p>If you would like to see how Slidy works, use View Source to view
+the XHTML markup, or see this <a
+href="http://www.w3.org/Talks/Tools/Slidy/">longer explanation</a>,
+which also explains additional features. Each slide is marked up as
+a div element with class="slide". CSS positioning and percentage
+widths on images can be used to ensure your image rich slides scale
+to match the window size. Content to be revealed incrementally can
+be marked up with class="incremental". The linked style sheet and
+scripts were developed as a Web-based alternative to proprietary
+presentation tools and have been tested on a variety of recent
+browsers. Integrated editing support is under development. Please
+send your comments to <a href="http://www.w3.org/People/Raggett/">Dave
+Raggett</a> &lt;<a href="mailto:dsr@w3.org">dsr@w3.org</a>&gt;.
+If you find Slidy useful, you may want to consider becoming a
+<a href="http://www.w3.org/Consortium/sup">W3C Supporter</a>.</p>
+
+<p><em>You are welcome to make use of the slide show style sheets,
+scripts and help file under W3C's <a href="http://www.w3.org/Consortium/Legal/copyright-documents">document use</a>
+and <a href="http://www.w3.org/Consortium/Legal/copyright-software">software
+licensing</a> rules.</em></p>
+
+<button id="back" onclick="history.go(-1)">Return to slide show</button>
+
+<hr>
+
+<p class="copyright"><a rel="Copyright" href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a> © 2005
+<a href="/" shape="rect"><acronym title="World Wide Web Consortium">W3C</acronym></a><sup>®</sup> (<a href="http://www.csail.mit.edu/"><acronym title="Massachusetts Institute of Technology">MIT</acronym></a>,
+<a href="http://www.ercim.org/"><acronym title="European Research Consortium for Informatics and Mathematics">ERCIM</acronym></a>,
+<a href="http://www.keio.ac.jp/">Keio</a>), All Rights Reserved. W3C
+<a href="http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">liability</a>,
+<a href="http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks">trademark</a>,
+<a rel="Copyright" href="http://www.w3.org/Consortium/Legal/copyright-documents">document use</a> and <a rel="Copyright" href="http://www.w3.org/Consortium/Legal/copyright-software">software
+licensing</a> rules apply.</p>
+</body></html>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.ca b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.ca
new file mode 100755
index 000000000..fef10cfd0
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.ca
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ca" lang="ca">
+<head>
+ <title>Ajuda del presentador de diapositives</title><style type="text/css">
+ body {
+ font-family: sans-serif;
+ margin: 10%;
+ }
+ .copyright { font-size: smaller }
+ </style>
+ <script type="text/javascript">
+ window.onload = load;
+ function load()
+ {
+ var back = document.getElementById("back");
+ back.focus();
+ }
+ </script>
+</head>
+<body>
+<h1>Ajuda del presentador de diapositives</h1>
+
+<p>Per avançar a la pròxima diapositiva només cal fer clic amb el ratolí en qualsevol lloc de la pàgina o bé prémer la barra d’espaidora.
+Es pot anar endavant i endarrere per les diapositives amb les tecles "cursor esquerra" i "cursor dreta", "RePàg" i "AvPàg". El tamany de font de les lletres s’ajusta automàticament a l’amplada de la pantalla, però també es pot ajustar manualment fent servir la “S†per fer-la mes petita (Smaller) i la “B†per fer-la mes gran (“Biggerâ€),també es poden fer servir les tecles "&lt;" i "&gt;".
+La tecla “F†fa aparèixer/desaparèixer el menú de la línia de estat a la part de sota.
+Amb la tecla “K†s’habilita/deshabilita l’ús del ratolí per avançar a la pròxima diapositiva. La tecla “C†mostra la taula de continguts, amb qualsevol altra tecla la podem amagar.
+La tecla “F11†serveix per entrar/sortir en el mode pantalla completa del navegador, la tecla “H†dona accés a aquesta pàgina.
+Cal notar que no totes les tecles estan suportades en tots els navegadors donat que els navegadors poden reservar algunes tecles per el control de navegació i aquestes varien d’un navegador a un altre.</p>
+<p>Es recomana als usuaris de Firefox que instal•lin la extensió d’<a href="http://www.krickelkrackel.de/autohide/">autoamagar</a> per amagar les barres d’eines en entrar al mode pantalla completa. </p>
+<p>Si vol saber com funciona Slidy, feu servir “Veure el codi font†per veure el codi XHTML o vegi aquesta <a
+href="http://www.w3.org/Talks/Tools/Slidy/">explicació més llarga.</a>, que també explica característiques addicionals. Cada diapositiva està marcada com element div amb classe “slideâ€. Es fa servir posicionament CSS i amplades per percentatge a les imatges per assegurar-se de que les vostres diapositives riques en imatges s’ajustin perfectament a la grandària de la finestra. El contingut que s’ha de revelar incrementalment es pot marcar amb la classe “incrementalâ€. La fulla d’estils adjunta i els scripts es van desenvolupar com una alternativa basada en Web a les eines de presentació propietàries i s’han provat en una gran varietat de navegadors actuals. S’està desenvolupant un sistema d’edició integrada. Si us plau envieu els vostres comentaris a : <a href="http://www.w3.org/People/Raggett/">Dave
+Raggett</a> &lt;<a href="mailto:dsr@w3.org">dsr@w3.org</a>&gt;.
+Si trobeu Slidy útil podeu considerar <a href="http://www.w3.org/Consortium/sup">ajudar al W3C</a>.</p>
+<p><em>Sou benvingut a fer servir el presentador de diapositives, les fulles d’estil , scripts i el fitxer d’ajuda sota les condicions d’ <a href="http://www.w3.org/Consortium/Legal/copyright-documents">ùs de document</a> del W3C I les normes
+<a href="http://www.w3.org/Consortium/Legal/copyright-software">llicència de software</a>.</em></p>
+
+<button id="back" onclick="history.go(-1)">Tornar a la presentació de diapositives </button>
+
+<hr />
+
+<p class="copyright"><a rel="Copyright" href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a> &copy; 2005
+<a href="/" shape="rect"><acronym title="World Wide Web Consortium">W3C</acronym></a><sup>&reg;</sup> (<a href="http://www.csail.mit.edu/"><acronym title="Massachusetts Institute of Technology">MIT</acronym></a>,
+<a href="http://www.ercim.org/"><acronym title="European Research Consortium for Informatics and Mathematics">ERCIM</acronym></a>,
+<a href="http://www.keio.ac.jp/">Keio</a>), All Rights Reserved. W3C
+<a href="http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">liability</a>,
+<a href="http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks">trademark</a>,
+<a rel="Copyright" href="http://www.w3.org/Consortium/Legal/copyright-documents">document use</a> and <a rel="Copyright" href="http://www.w3.org/Consortium/Legal/copyright-software">software
+licensing</a> rules apply.</p>
+</body>
+</html>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.de b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.de
new file mode 100755
index 000000000..55a8e4817
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.de
@@ -0,0 +1,96 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de">
+<head>
+ <!-- translated by Beat Vontobel -->
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>Slide Show Help</title>
+ <style type="text/css">
+ body {
+ font-family: sans-serif;
+ margin: 10%;
+ }
+ .copyright { font-size: smaller }
+ </style>
+ <script type="text/javascript">
+ window.onload = load;
+ function load()
+ {
+ var back = document.getElementById("back");
+ back.focus();
+ }
+ </script>
+</head>
+<body>
+<h1>Hilfe für die HTML-Slidy-Präsentation</h1>
+
+<p>Diese Präsentation wird wie Power Point kontrolliert: Klicken
+Sie mit der Maus irgendwo ins Bild, um zur nächsten Seite zu
+schalten, oder drücken Sie die Leertaste. Sie können ebenfalls
+mit den Cursor-Tasten (links/rechts) oder den Tasten für Seite
+auf und ab vorwärts und rückwärts durch die Präsentation
+navigieren. Die Schriftgrösse wird automatisch so angepasst, dass
+Sie zur Fensterbreite des Browsers passt, sie kann aber auch
+manuell mit den Tasten "s" (kleiner) und "b" (grösser)
+kontrolliert werden (oder mit der Taste "&lt;" bzw. "&gt;"). Die
+Statuszeile am unteren Rand des Fensters wird mit "f" ein- und
+ausgeschaltet. Die Taste "k" schaltet die Funktion des Mausklicks
+zum Kontrollieren der Präsentation ein und aus. Sie können mit
+"c" ein Inhaltsverzeichnis ein- und mit einer beliebigen anderen
+Taste wieder ausblenden. Mit "F11" können Sie (je nach Browser)
+den Vollbildmodus aktivieren. Die Taste "h" zeigt diesen Hilfetext
+an. Es ist zu bemerken, dass nicht alle diese Tasten in jedem
+Browser funktionieren, da sie zum Teil mit anderen Funktionen
+belegt sind.</p>
+
+<p>Firefox-Benutzer können die <a
+href="http://www.krickelkrackel.de/autohide/">autohide</a>-Erweiterung
+installieren, um die Werkzeugleiste im Vollbildmodus auszublenden.</p>
+
+<p>Wenn Sie wissen möchten, wie Slidy funktioniert, schauen Sie sich
+den XHTML-Quellcode der Seite an oder lesen diese etwas <a
+href="http://www.w3.org/Talks/Tools/Slidy/">längere Erklärung</a>
+(in Englisch), die auch weitere Funktionen erläutert. Jede einzelne
+Folie ist als ein <code>div</code>-Element mit <code>class="slide"</code>
+markiert. CSS-Positionierung und prozentuale Breitenangaben für Bilder
+können benutzt werden, um sicherzustellen, dass die Folien bei
+verschiedenen Fenstergrössen optimal dargestellt werden. Der Inhalt
+auf Folien kann schrittweise angezeigt werden, indem den Elementen
+<code>class="incremental"</code> zugewiesen wird. Das eingebundene
+Style Sheet und die Skripten wurden als web-basierte Alternative zu
+proprietären Programmen entwickelt. Sie wurden auf verschiedensten
+aktuellen Browsern getestet. Ein eingebauter Editor für die Folien
+ist in Entwicklung. Bitte senden Sie Kommentare an <a
+href="http://www.w3.org/People/Raggett/">Dave Raggett</a> &lt;<a
+href="mailto:dsr@w3.org">dsr@w3.org</a>&gt;. Wenn Sie Slidy
+nützlich finden, möchten Sie vielleicht ein <a
+href="http://www.w3.org/Consortium/sup">W3C Supporter</a> werden.</p>
+
+<p><em>Die Style Sheets, die Skripten der Präsentation und die
+zugehörigen Texte sind frei zur Benutzung unter den Bedingungen
+der W3C-Lizenzen <a href="http://www.w3.org/Consortium/Legal/copyright-documents">document
+use</a> und <a href="http://www.w3.org/Consortium/Legal/copyright-software">software
+licensing</a>.</em></p>
+
+<button id="back" onclick="history.go(-1)">Zur Präsentation
+zurückkehren</button>
+
+<hr/>
+
+
+<p class="copyright"><a rel="Copyright" href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a> © 2006
+
+<a href="/" shape="rect"><acronym title="World Wide Web Consortium">W3C</acronym></a><sup>®</sup> (<a href="http://www.csail.mit.edu/"><acronym title="Massachusetts Institute of Technology">MIT</acronym></a>,
+
+<a href="http://www.ercim.org/"><acronym title="European Research Consortium for Informatics and Mathematics">ERCIM</acronym></a>,
+
+<a href="http://www.keio.ac.jp/">Keio</a>), All Rights Reserved. W3C
+
+<a href="http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">liability</a>,
+
+<a href="http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks">trademark</a>,
+
+<a rel="Copyright" href="http://www.w3.org/Consortium/Legal/copyright-documents">document use</a> and <a rel="Copyright" href="http://www.w3.org/Consortium/Legal/copyright-software">software licensing</a> rules apply.</p>
+</body>
+</html>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.en b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.en
new file mode 100755
index 000000000..f7e9e5cb1
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.en
@@ -0,0 +1,81 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en-US">
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <title>Slide Show Help</title>
+ <style type="text/css">
+ body {
+ font-family: sans-serif;
+ margin: 10%;
+ }
+ .copyright { font-size: smaller }
+ </style>
+ <script type="text/javascript">
+ window.onload = load;
+ function load()
+ {
+ var back = document.getElementById("back");
+ back.focus();
+ }
+ </script>
+</head>
+<body>
+<h1>Slide Show Help</h1>
+
+<p>This slide show can be driven in the same way as Power Point.
+To advance to the next slide click pretty much anywhere on the
+page with the mouse, or press the space bar. You can move forwards
+or backwards through the slides with the Cursor left, Cursor
+right, Pg Up and Pg Dn keys. The font size is automatically
+adjusted to match the browser's window width, but you can also
+adjust it manually using the "S" key for smaller and the "B" key
+for bigger. You can also use the "&lt;" and "&gt;" keys. Use the
+"F" key to switch off/on the bottom status line. The "K" key
+toggles the use of mouse click to advance to the next slide. You
+can use "C" to show the table of contents and any other key to
+hide it. Press the "H" key to view this page. Use the "F11" key to
+toggle the browser's full screen mode. Note that not all keys are
+supported in all browsers, as browsers may reserve some keys for
+browser control and this varies from one browser to the next.</p>
+
+<p>Firefox users may want the <a
+href="http://www.krickelkrackel.de/autohide/">autohide</a>
+extension to hide the toolbars when entering full screen with F11.</p>
+
+<p>If you would like to see how Slidy works, use View Source to view
+the XHTML markup, or see this <a
+href="http://www.w3.org/Talks/Tools/Slidy/">longer explanation</a>,
+which also explains additional features. Each slide is marked up as
+a div element with class="slide". CSS positioning and percentage
+widths on images can be used to ensure your image rich slides scale
+to match the window size. Content to be revealed incrementally can
+be marked up with class="incremental". The linked style sheet and
+scripts were developed as a Web-based alternative to proprietary
+presentation tools and have been tested on a variety of recent
+browsers. Integrated editing support is under development. Please
+send your comments to <a href="http://www.w3.org/People/Raggett/">Dave
+Raggett</a> &lt;<a href="mailto:dsr@w3.org">dsr@w3.org</a>&gt;.
+If you find Slidy useful, you may want to consider becoming a
+<a href="http://www.w3.org/Consortium/sup">W3C Supporter</a>.</p>
+
+<p><em>You are welcome to make use of the slide show style sheets,
+scripts and help file under W3C's <a href="http://www.w3.org/Consortium/Legal/copyright-documents">document use</a>
+and <a href="http://www.w3.org/Consortium/Legal/copyright-software">software
+licensing</a> rules.</em></p>
+
+<button id="back" onclick="history.go(-1)">Return to slide show</button>
+
+<hr />
+
+<p class="copyright"><a rel="Copyright" href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a> &copy; 2005
+<a href="/" shape="rect"><acronym title="World Wide Web Consortium">W3C</acronym></a><sup>&reg;</sup> (<a href="http://www.csail.mit.edu/"><acronym title="Massachusetts Institute of Technology">MIT</acronym></a>,
+<a href="http://www.ercim.org/"><acronym title="European Research Consortium for Informatics and Mathematics">ERCIM</acronym></a>,
+<a href="http://www.keio.ac.jp/">Keio</a>), All Rights Reserved. W3C
+<a href="http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">liability</a>,
+<a href="http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks">trademark</a>,
+<a rel="Copyright" href="http://www.w3.org/Consortium/Legal/copyright-documents">document use</a> and <a rel="Copyright" href="http://www.w3.org/Consortium/Legal/copyright-software">software
+licensing</a> rules apply.</p>
+</body>
+</html>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.es b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.es
new file mode 100755
index 000000000..a3059aab4
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.es
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es" lang="es">
+<head>
+ <!-- Traducida por Emmanuelle Gutiérrez y Restrepo - Fundación Sidar -->
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>Ayuda de Slidy</title>
+ <style type="text/css">
+ body {
+ font-family: sans-serif;
+ margin: 10%;
+ }
+ .copyright { font-size: smaller }
+ </style>
+ <script type="text/javascript">
+ window.onload = load;
+ function load()
+ {
+ var back = document.getElementById("back");
+ back.focus();
+ }
+ </script>
+</head>
+<body>
+<h1>Ayuda de "<span lang="en">Slidy</span>"</h1>
+
+<p>Esta presentación puede manejarse igual que una presentación hecha con Power Point.
+Para avanzar a la siguiente página o diapositiva haga clic con el ratón en cualquier parte de la página, o pulse la barra espaciadora. Puede moverse adelante y atrás entre las diapositivas con las teclas de flecha izquierda, derecha, retroceso de página (Re Pag) o avance de página (Av Pag). El tamaño de fuente se ajusta automáticamente para encajar en el ancho de la ventana del navegador, pero puede ajustarlo manualmente utilizando la tecla "S" para reducirlo y la tecla "B" para aumentarlo. También puede usar las teclas "&lt;" y "&gt;". Use la tecla "F" para presentar u ocultar la línea de estado en la parte inferior. La tecla "K" habilita o deshabilita el uso del ratón para avanzar a la siguiente diapositiva. Puede usar la tecla "C" para mostrar la tabla de contenidos o índice, y cualquier otra tecla para esconderla. Use la tecla de función "F11" para conmutar la vista a toda pantalla del navegador. Tenga en cuenta que no todas las teclas están igualmente soportadas en todos los navegadores, ya que los navegadores pueden tener reservado el uso de algunas teclas para controles del navegador, y esto puede variar de un navegador a otro.</p>
+
+<p>Los usuarios de Firefox pueden desear instalar la extensión <a href="http://www.krickelkrackel.de/autohide/" lang="en">"autohide"</a>
+para ocultar las barras de herramientas cuando utilizan la función F11 para el modo a toda pantalla.</p>
+
+<p>Si desea saber cómo funciona Slidy, utilice la Vista de Código para ver el marcado XHML, o vea esta <a href="http://www.w3.org/Talks/Tools/Slidy/">explicación extensa</a>,
+que expone otras características adicionales. Cada diapositiva está marcada con un elemento div con la clase class="slide". Puede usarse posicionamiento y anchos en porcentajes para las imágenes, mediante CSS, para garantizar que la imagen alcance el tamaño de la diapositiva de acuerdo con el tamaño de la ventana. El contenido que se desee presentar paulatinamente puede marcarse con la clase class="incremental". La hoja de estilos y el script enlazado fueron desarrollados como una alternativa, basada en la Web, a las herramientas propietarias de presentación, y han sido probados en una variedad de navegadores recientes. Se está desarrollando un editor integrado. Envie sus comentarios, por favor, a <a href="http://www.w3.org/People/Raggett/" lang="en">Dave Raggett</a> &lt;<a href="mailto:dsr@w3.org">dsr@w3.org</a>&gt;.</p>
+
+<p><em>Usted puede utilizar las hojas de estilo, scripts, y el fichero de ayuda; siempre que siga las normas de <a href="http://www.w3.org/Consortium/Legal/copyright-documents">uso de documentos</a> y <a href="http://www.w3.org/Consortium/Legal/copyright-software">licencia de software</a> del W3C.</em></p>
+
+<button id="back" onclick="history.go(-1)">Volver a la presentación</button>
+
+<hr />
+
+<p class="copyright" lang="en"><a rel="Copyright" href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a> © 2005
+<a href="/" shape="rect"><acronym title="World Wide Web Consortium">W3C</acronym></a><sup>®</sup> (<a href="http://www.csail.mit.edu/"><acronym title="Massachusetts Institute of Technology">MIT</acronym></a>,
+<a href="http://www.ercim.org/"><acronym title="European Research Consortium for Informatics and Mathematics">ERCIM</acronym></a>,
+<a href="http://www.keio.ac.jp/">Keio</a>), All Rights Reserved. W3C
+<a href="http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">liability</a>,
+<a href="http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks">trademark</a>,
+<a rel="Copyright" href="http://www.w3.org/Consortium/Legal/copyright-documents">document use</a> and <a rel="Copyright" href="http://www.w3.org/Consortium/Legal/copyright-software">software
+licensing</a> rules apply.</p>
+</body>
+</html>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.fr b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.fr
new file mode 100755
index 000000000..daa760594
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.fr
@@ -0,0 +1,118 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr-FR">
+<head>
+
+ <title>Aide de Slide Show</title><style type="text/css">
+
+ body {
+
+ font-family: sans-serif;
+
+ margin: 10%;
+
+ }
+
+ .copyright { font-size: smaller }
+
+ </style>
+ <script type="text/javascript">
+ window.onload = load;
+ function load()
+ {
+ var back = document.getElementById("back");
+ back.focus();
+ }
+ </script>
+</head>
+
+<body>
+
+<h1>Aide de Slide Show</h1>
+
+
+
+<p>Cet exposé Slide Show peut être utilisé de la même manière que Powerpoint.
+
+Pour avancer au prochain transparent, cliquez n'importe où sur la page avec la
+souris ou appuyez sur la barre d'espace. Vous pouvez naviguer entre
+les transparents avec les flèches gauche/droite ainsi que les touches Pg Up et
+Pg Dn.
+
+La taille de la police s'adapte automatiquement à la largeur de la fenêtre
+du navigateur, mais vous pouvez aussi l'ajuster manuellement en utilisant les
+touches "S" (small) pour la diminuer et "B" (big) pour l'augmenter. Vous
+pouvez aussi utiliser les touches "&lt;" et "&gt;".
+
+Utilisez la touche "F" pour afficher ou non le statut en pied-de-page.
+
+La touche "K" active l'utilisation du clic de souris pour avancer au prochain transparent.
+Vous pouvez utiliser "T" pour afficher la table des matières et n'importe quelle autre touche
+pour la cacher.
+
+Les utilisateurs de Windows peuvent utiliser la touche "F11" pour activer le mode plein écran
+du navigateur. Appuyez sur la touche "H" pour obtenir cette page. À noter que certaines touches
+peuvent ne pas fonctionner avec certains navigateurs car elles sont réservées pour son contrôle.
+De plus, cela peut varier d'un navigateur à l'autre.</p>
+
+<p>Les utilisateurs de Firefox peuvent installer l'extension <a
+href="http://www.krickelkrackel.de/autohide/">autohide</a>
+pour cacher les barres d'outils lorsque le mode plein écran est activé
+avec la touche F11.</p>
+
+<p>Si vous voulez voir comment Slidy fonctionne, affichez le code source de la page
+pour voir le balisage XHTML, ou lisez cette <a
+href="http://www.w3.org/Talks/Tools/Slidy/">explication plus complète</a> (en anglais),
+qui explique aussi des fonctionnalités additionnelles.
+
+Chaque transparent est balisé par un élément div avec l'attribut class="slide".
+Il est aussi possible d'utiliser le positionnement CSS ainsi que la largeur en pourcentage
+pour s'assurer que vos images soient à l'échelle du transparent et correspondent ainsi à la taille
+de la fenêtre. Le contenu devant s'afficher progressivement doit être marqué par l'attribut
+ class="incremental".
+
+La feuille de style reliée ainsi que les scripts ont été développés comme alternative Web
+aux outils de présentation propriétaires et ont été testés sur un large panel de navigateurs récents.
+Le support intégré pour l'édition est en cours de développement. Envoyez vos commentaires
+(en anglais) à <a href="http://www.w3.org/People/Raggett/">Dave
+Raggett</a> &lt;<a href="mailto:dsr@w3.org">dsr@w3.org</a>&gt;.
+Si vous trouvez Slidy utile, vous pouvez également devenir
+<a href="http://www.w3.org/Consortium/sup">Supporter du W3C</a>.</p>
+
+
+
+<p><em>Veuillez utilisez les feuilles de style, scripts et fichiers d'aide
+
+en suivant le <a href="http://www.w3.org/Consortium/Legal/copyright-documents">copyright</a>
+
+et la <a href="http://www.w3.org/Consortium/Legal/copyright-software">licence</a> du W3C.</em></p>
+
+
+
+<button id="back" onclick="history.go(-1)">Retour à l'exposé</button>
+
+
+
+<hr />
+
+
+
+<p class="copyright"><a rel="Copyright" href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a> &copy; 2005
+
+<a href="/" shape="rect"><acronym title="World Wide Web Consortium">W3C</acronym></a><sup>&reg;</sup> (<a href="http://www.csail.mit.edu/"><acronym title="Massachusetts Institute of Technology">MIT</acronym></a>,
+
+<a href="http://www.ercim.org/"><acronym title="European Research Consortium for Informatics and Mathematics">ERCIM</acronym></a>,
+
+<a href="http://www.keio.ac.jp/">Keio</a>), All Rights Reserved. W3C
+
+<a href="http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">liability</a>,
+
+<a href="http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks">trademark</a>,
+
+<a rel="Copyright" href="http://www.w3.org/Consortium/Legal/copyright-documents">document use</a> and <a rel="Copyright" href="http://www.w3.org/Consortium/Legal/copyright-software">software
+
+licensing</a> rules apply.</p>
+
+</body>
+</html>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.hu b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.hu
new file mode 100755
index 000000000..64eb20534
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.hu
@@ -0,0 +1,98 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="hu" lang="hu">
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+
+ <title>Segítség a bemutatóhoz</title>
+
+ <style type="text/css">
+ body {
+ font-family: sans-serif;
+ margin: 10%;
+ }
+ .copyright { font-size: smaller }
+ </style>
+
+ <script type="text/javascript">
+ window.onload = load;
+ function load()
+ {
+ var back = document.getElementById("back");
+ back.focus();
+ }
+ </script>
+ </head>
+
+ <body>
+ <h1>Segítség a bemutatóhoz</h1>
+
+ <p>Ezt a bemutatót a Power Point-hoz hasonlóan lehet vezérelni.
+ A következő oldalra való lépéshez kattintson bárhova az aktuális
+ oldalon belül, vagy nyomja le a szóköz billentyűt. Az oldalak között
+ a bal és jobb nyíl, illetve a Page Up és Page Down billentyűkkel mozoghat.
+ A szöveg mérete automatikusan kerül beállításra úgy, hogy igazodjon
+ a böngésző ablakának szélességéhez, viszont az "S" billentyűvel
+ csökkentheti, a "B"-vel növelheti azt. Ugyanerre használhatja a "&lt;"
+ és a "&gt;" billentyűket is.
+ Az "F" billentyűvel be- és
+ kikapcsolhatja az alsó állapotsor megjelenítését. A "K" billentyűvel
+ letilthatja, illetve engedélyezheti, hogy egérkattintással a következő
+ oldalra lehessen lépni. A "C" billentyűvel megjelenítheti, bármely másikkal
+ pedig eltűntetheti a tartalomjegyzéket. Az "F11" billenytűvel válthat át
+ a böngésző teljes képernyős üzemmódjára, vagy jöhet onnan vissza.
+ Megjegyezzük, hogy nem minden billentyű támogatott minden böngészőben,
+ mivel a böngészők lefoglalhatnak néhány (böngészőnként eltérő) billentyűt
+ a saját vezérlésükre.
+ </p>
+
+ <p>A Firefox felhasználóknak hasznos lehet az
+ <a href="http://www.krickelkrackel.de/autohide/">autohide</a>
+ bővítmény, amivel elrejthetők az eszköztárak teljes képernyős üzemmódban.
+ </p>
+
+ <p>Ha szeretné látni, hogyan működik a Slidy, nézze meg az oldal
+ forrásában az XHTML jelölésmódot, vagy nézze meg ezt a
+ <a href="http://www.w3.org/Talks/Tools/Slidy/">hosszabb magyarázatot</a>,
+ ami további funkciókat is bemutat. Minden oldalt egy olyan div elem jelöl,
+ amiben be van állítva, hogy class="slide". A képek CSS-sel történő
+ pozicionálása és szélességüknek százalékban való megadása biztosítja,
+ hogy a sok képet tartalmazó oldalak az ablak méretének megfelelően
+ skálázódjanak. Az oldalon belül egymás után megjelenítendő tartalom a
+ class="incremental" megadásával jelölhető. A becsatolt stíluslapok és
+ scriptek a védjegyzett/szabadalmaztatott/más módon védett
+ bemutató-megjelenítő eszközök web-alapú alternatívájaként lettek
+ fejlesztve, és sok, manapság használatos böngészővel tesztelve.
+ Az integrált szerkesztési lehetőség jelenleg fejlesztés alatt áll.
+ Észrevételeit a következő helyre küldje:
+ <a href="http://www.w3.org/People/Raggett/">Dave Raggett</a>
+ &lt;<a href="mailto:dsr@w3.org">dsr@w3.org</a>&gt;.
+ </p>
+
+ <p>
+ <em>Ön jogosult az e bemutatóhoz tartozó stíluslapok, scriptek és
+ segítség fájl használatára, amennyiben betartja a W3C
+ <a href="http://www.w3.org/Consortium/Legal/copyright-documents">
+ dokumentum használati</a> és
+ <a href="http://www.w3.org/Consortium/Legal/copyright-software">
+ szoftver licencelési</a> szabályait.
+ </em>
+ </p>
+
+ <button id="back" onclick="history.go(-1)">Visszatérés a bemutatóhoz</button>
+
+ <hr>
+
+ <p class="copyright">
+ <a rel="Copyright" href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a> &copy; 2005
+ <a href="http://www.w3.org/" shape="rect"><acronym title="World Wide Web Consortium">W3C</acronym></a>
+ <sup>&reg;</sup>
+ (<a href="http://www.csail.mit.edu/"><acronym title="Massachusetts Institute of Technology">MIT</acronym></a>,
+ <a href="http://www.ercim.org/"><acronym title="European Research Consortium for Informatics and Mathematics">ERCIM</acronym></a>,
+ <a href="http://www.keio.ac.jp/">Keio</a>), minden jog fenntartva. A következő W3C szabályok alkalmazandók:
+ <a href="http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">felelősségi</a>,
+ <a href="http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks">védjegy</a>,
+ <a rel="Copyright" href="http://www.w3.org/Consortium/Legal/copyright-documents">dokumentum használati</a> és
+ <a rel="Copyright" href="http://www.w3.org/Consortium/Legal/copyright-software">szoftver licencelési</a>.
+ </p>
+ </body>
+</html>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.nl b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.nl
new file mode 100755
index 000000000..b2e90432c
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.nl
@@ -0,0 +1,82 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es" lang="es">
+<head>
+ <!-- translated by Ruud Steltenpool -->
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>Slidy Help</title>
+ <style type="text/css">
+ body {
+ font-family: sans-serif;
+ margin: 10%;
+ }
+ .copyright { font-size: smaller }
+ </style>
+ <script type="text/javascript">
+ window.onload = load;
+ function load()
+ {
+ var back = document.getElementById("back");
+ back.focus();
+ }
+ </script>
+</head>
+<body>
+<h1><span lang="en">Slidy</span> Help</h1>
+
+<!-- Sheetpresentatie help -->
+
+<p>Deze sheetpresentatie kan op dezelfde manier worden aangestuurd als
+Powerpoint. Klik op een willekeurige plaats op de pagina met de muis, of
+druk op de spatiebalk om naar de volgende sheet te gaan. Je kan voor- of
+achterwaarts door de sheets bewegen mbv de links/rechts cursor- en de Page
+Up en Page Down toetsen. De lettergrootte wordt automatisch aangepast aan
+de breedte van het venster, maar je kunt 'm ook handmatig aanpassen met
+"S" en "&lt;" voor kleiner en "B" en "&gt;" voor groter. Gebruik de
+"F" om de status aan de onderkant aan/uit te schakelen. De "K" zorgt
+ervoor dat een muisklik je niet meer, of wel weer naar de volgende sheet
+brengt. Je kan de "C" gebruiken om het inhoudsoverzicht op te roepen, en
+een willekeurige andere toets om 'm weer te verbergen. Gebruik "F11" om de
+"volledig scherm" modus aan /uit te schakelen. Merk op dat niet alle
+toetsen in iedere browser worden ondersteund, omdat sommige browsers
+toetsen gebruiken voor besturing van de browser zelf. Dit varieert zelfs
+tussen versies van dezelfde browser.</p>
+
+<p>Firefox gebruikers willen wellicht de <a href="http://www.krickelkrackel.de/autohide/" lang="en">"autohide"</a> extension gebruiken om
+werkbalken te verbergen wanneer "volledig scherm" wordt aangeroepen met
+"F11".</p>
+
+<p>Als u wilt zien hoe Slidy werkt, gebruik Bron Bekijken om de XHTML opmaak
+te bekijken, of bekijk deze <a href="http://www.w3.org/Talks/Tools/Slidy/">langere uitleg</a>, die ook extra functionaliteit
+uitlegt. Elke sheet is in de opmaak genoteerd als een div element met
+class="slide". CSS positionering and procentuele breedtes op afbeeldingen
+kunnen worden gebruikt om te verzekeren dat uw afbeeldingrijke sheets
+schalen naar de vensterbreedte. Inhoud kan stapsgewijs zichtbaar worden
+gemaakt met behulp van class="incremental". Het gelinkte stijlblad en de
+gelinkte scripts zijn ontwikkeld als een Web-gebaseerd alternatief voor
+gesloten presentatie programma's en zijn getest op een variëteit van
+recente browsers. Geintegreerde ondersteuning voor (inhoud)aanpassing
+wordt ontwikkeld. Zend uw opmerkingen aub naar <a href="http://www.w3.org/People/Raggett/" lang="en">Dave Raggett</a> &lt;<a href="mailto:dsr@w3.org">dsr@w3.org</a>&gt;
+Als u Slidy bruikbaar vindt, wilt u wellicht overwegen W3C donateur te
+worden.</p>
+
+<p>U bent welkom om gebruik te maken van de stijlbladen, scripts en dit
+helpbestand onder de regels van W3C's <a href="http://www.w3.org/Consortium/Legal/copyright-documents">document use</a> (document gebruik) en
+<a href="http://www.w3.org/Consortium/Legal/copyright-software">software licensing</a> (software licenties)</p>
+
+
+<button id="back" onclick="history.go(-1)">Rerugkeer naar sheetpresentatie</button>
+
+<hr />
+
+<p class="copyright" lang="en"><a rel="Copyright" href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a> © 2006
+<a href="/" shape="rect"><acronym title="World Wide Web Consortium">W3C</acronym></a><sup>®</sup> (<a href="http://www.csail.mit.edu/"><acronym title="Massachusetts Institute of Technology">MIT</acronym></a>,
+<a href="http://www.ercim.org/"><acronym title="European Research Consortium for Informatics and Mathematics">ERCIM</acronym></a>,
+<a href="http://www.keio.ac.jp/">Keio</a>), All Rights Reserved. W3C
+<a href="http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">liability</a>,
+<a href="http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks">trademark</a>,
+<a rel="Copyright" href="http://www.w3.org/Consortium/Legal/copyright-documents">document use</a> and <a rel="Copyright" href="http://www.w3.org/Consortium/Legal/copyright-software">software
+licensing</a> rules apply.</p>
+</body>
+</html>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.pl b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.pl
new file mode 100755
index 000000000..91d8571b5
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.pl
@@ -0,0 +1,76 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"" xml:lang="pl" lang="pl">
+<head>
+ <!-- translated by Krzysztof Kotowicz - koto@webworkers.pl -->
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>Slidy - pomoc</title>
+ <style type="text/css">
+ body {
+ font-family: sans-serif;
+ margin: 10%;
+ }
+ .copyright { font-size: smaller }
+ </style>
+ <script type="text/javascript">
+ window.onload = load;
+ function load()
+ {
+ var back = document.getElementById("back");
+ back.focus();
+ }
+ </script>
+</head>
+<body>
+<h1><span lang="en">Slidy</span> - pomoc</h1>
+
+<p>PrezentacjÄ… steruje siÄ™ tak samo, jak w Powerpoincie.
+Aby przejść do następnego slajdu, kliknij w dowolnym miejscu prezentacji myszą
+lub naciśnij spację. Możesz też poruszać się w przód / tył używając klawiszy
+kursora (lewo / prawo) lub klawiszy Pg Up / Pg Dn. Rozmiar czcionki jest
+dobierany automatycznie tak, żeby mieścił się w obszarze przeglądarki,
+ale możesz także dostosować go ręcznie naciskając klawisze "S", aby pomniejszyć
+tekst i "B", aby go powiększyć. Możesz do tego celu także użyć klawiszy "&lt;"
+ i "&gt;". Użyj klawisza "F" aby
+ ukryć / pokazać dolny pasek statusu. Klawisz "K" włącza / wyłącza tryb przechodzenia
+ do następnego slajdu po kliknięciu myszką. Możesz użyć klawisza "C", żeby pokazać
+ spis treści i dowolnego innego, żeby go ukryć. Klawisz
+"F11" włącza tryb pełnoekranowy przeglądarki. Pamiętaj, że nie wszystkie klawisze
+są obsługiwane we wszystkich przeglądarkach, gdyż niektóre z nich rezerwują
+konkretne klawisze do własnych celów, wszystko to zależy od używanej przeglądarki.</p>
+
+<p>Jeśli używasz Firefoxa, zwróć uwagę na rozszerzenie <a
+href="http://www.krickelkrackel.de/autohide/">autohide</a>, dzięki któremu
+możesz ukryć paski narzędziowe w trybie pełnoekranowym (F11).</p>
+
+<p>Jeśli chcesz dowiedzieć się, w jaki sposób działa Slidy, obejrzyj źródło strony prezentacji, żeby
+zobaczyć użyty XHTML lub zapoznaj się z <a
+href="http://www.w3.org/Talks/Tools/Slidy/">prezentacją działania</a>, która omawia
+wszystkie dodatkowe funkcje. Każdy slajd jest reprezentowany przez element div o klasie "slide".
+Pozycjonowanie CSS i użycie procentowych szerokości obrazków zapewni, że
+Twoje slajdy będą poprawnie wyświetlane w każdej skali.
+Zawartości slajdu, które mają być stopniowo odsłaniane oznacz klasą "incremental".
+Powiązany arkusz stylów CSS i skrypt zostały stworzone jako sieciowa
+alternatywa dla komercyjnych narzędzi prezentacyjnych. Całość została
+przetestowana na różnorodnych współczesnych przeglądarkach.
+Na etapie tworzenia jest aplikacja do zintegrowanego tworzenia i edycji prezentacji.
+Wszystkie komentarze prosimy kierować do <a href="http://www.w3.org/People/Raggett/">Dave'a
+Raggetta</a> &lt;<a href="mailto:dsr@w3.org">dsr@w3.org</a>&gt;.</p>
+
+<p><em>Zachęcamy do używania arkuszy stylów, skryptów i pliku pomocy na warunkach licencyjnych dotyczących <a href="http://www.w3.org/Consortium/Legal/copyright-documents">dokumentów</a>
+i <a href="http://www.w3.org/Consortium/Legal/copyright-software">oprogramowania</a> W3C</em></p>
+
+<button id="back" onclick="history.go(-1)">Powróć do pokazu slajdów</button>
+
+<hr>
+
+<p class="copyright"><a rel="Copyright" href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a> © 2005
+<a href="/" shape="rect"><acronym title="World Wide Web Consortium">W3C</acronym></a><sup>®</sup> (<a href="http://www.csail.mit.edu/"><acronym title="Massachusetts Institute of Technology">MIT</acronym></a>,
+<a href="http://www.ercim.org/"><acronym title="European Research Consortium for Informatics and Mathematics">ERCIM</acronym></a>,
+<a href="http://www.keio.ac.jp/">Keio</a>), All Rights Reserved. W3C
+<a href="http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">liability</a>,
+<a href="http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks">trademark</a>,
+<a rel="Copyright" href="http://www.w3.org/Consortium/Legal/copyright-documents">document use</a> and <a rel="Copyright" href="http://www.w3.org/Consortium/Legal/copyright-software">software
+licensing</a> rules apply.</p>
+</body></html>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.pt-br b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.pt-br
new file mode 100755
index 000000000..c2aee81cf
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.pt-br
@@ -0,0 +1,95 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en-US">
+<head>
+ <title>Slide Show Help</title><style type="text/css">
+ body {
+ font-family: sans-serif;
+ margin: 10%;
+ }
+ .copyright { font-size: smaller }
+ </style>
+ <script type="text/javascript">
+ window.onload = load;
+ function load()
+ {
+ var back = document.getElementById("back");
+ back.focus();
+ }
+ </script>
+</head>
+<body>
+<h1>Ajuda do Slide Show</h1>
+
+<p>Este slide show pode ser tocado do jeito do Power Point.
+Para avançar ao próximo eslaide, clique em qualquer ponto
+da página com o botão direito do mouse. Ou então use a
+barra de espaços. Também se pode movimentar para frente ou
+para trás com as teclas do cursor -- setinhas para a
+direita, para a esquerda, para cima e para baixo. E ainda
+com as teclas Page Up e Page Down. O tamanho da fonte é
+automaticamente ajustado à largura da janela do navegador,
+mas esse ajuste pode ser manual, usando as teclas "S"
+(de "smaller") para diminuir o tamanho, e "B" (de "bigger")
+para aumentar. Igualmente se pode usar as teclas "&lt;" e
+"&gt;". Use
+a tecla "F" para alternar entre desativada e ativada a
+linha de status no rodapé. A tecla "K" alterna o uso do
+clique do mouse para avançar ao próximo eslaide. A tecla
+"C" mostra a tabela de conteúdos, que será novamente
+ocultada apertando-se qualquer tecla. Use a tecla "F11"
+para alternar o modo de tela cheia do navegador. Aperte
+"H" (de "Help") para abrir esta página de Ajuda. Note que
+alguns navegadores reservam algumas dessas teclas para
+outras funções. Assim, experimente no seu navegador para
+ver se esse é o seu caso.</p>
+
+<p>Usuários do Firefox podem querer a extensão <a
+href="http://www.krickelkrackel.de/autohide/">autoocultar</a>
+para esconder as barras de ferramentas quando entrarem em tela cheia
+com a tecla F11.</p>
+
+<p>Se quiser ver como funciona o Slidy, use o View Source para
+visualizar a marcação XHTML, ou leia esta <a
+href="http://www.w3.org/Talks/Tools/Slidy/">explanação mais longa</a>,
+que também contém funcionalidades adicionais. Cada eslaide é
+marcado como um div element com
+classe="slide". Posicionamentos e larguras em porcentual de CSS
+podem ser usados para assegurar que os eslaides com rica
+ilustração tenham escalabilidade de acordo com o tamanho da janela.
+Já o conteúdo a ser revelado incrementalmente pode receber a
+marcação com a classe="incremental".
+A folha de estilos vinculados e os scripts foram desenvolvidos
+como uma alternativa baseada em web às ferramentas proprietárias
+de apresentação, e testados em diversos navegadores recentes.
+Suporte à edição integrada ainda está em desenvolvimento. Mande
+seus comentários para <a href="http://www.w3.org/People/Raggett/">Dave
+Raggett</a> &lt;<a href="mailto:dsr@w3.org">dsr@w3.org</a>&gt;.
+Achando que o Slidy é útil, V. talvez possa considerar a
+possibilidade de se tornar um
+<a href="http://www.w3.org/Consortium/sup">Apoiador do W3C</a>.</p>
+
+<p><em>Fique à vontade para usar as folhas de estilo, os scripts
+e o arquivo de ajuda do show de eslaides que se encontram sob as
+regras de
+<a href="http://www.w3.org/Consortium/Legal/copyright-documents">
+uso de documentação</a>
+e <a href="http://www.w3.org/Consortium/Legal/copyright-software">
+licenciamento de software</a>do W3C -- Consórcio da World Wide
+Web.</em></p>
+
+<button id="back" onclick="history.go(-1)">Voltar a exibir eslaides</button>
+
+<hr />
+
+<p class="copyright"><a rel="Copyright" href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a> &copy; 2005
+<a href="/" shape="rect"><acronym title="World Wide Web Consortium">W3C</acronym></a><sup>&reg;</sup> (<a href="http://www.csail.mit.edu/"><acronym title="Massachusetts Institute of Technology">MIT</acronym></a>,
+<a href="http://www.ercim.org/"><acronym title="European Research Consortium for Informatics and Mathematics">ERCIM</acronym></a>,
+<a href="http://www.keio.ac.jp/">Keio</a>), All Rights Reserved. W3C
+<a href="http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">liability</a>,
+<a href="http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks">trademark</a>,
+<a rel="Copyright" href="http://www.w3.org/Consortium/Legal/copyright-documents">document use</a> and <a rel="Copyright" href="http://www.w3.org/Consortium/Legal/copyright-software">software
+licensing</a> rules apply.</p>
+</body>
+</html>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.pt_br b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.pt_br
new file mode 100755
index 000000000..c2aee81cf
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.pt_br
@@ -0,0 +1,95 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en-US">
+<head>
+ <title>Slide Show Help</title><style type="text/css">
+ body {
+ font-family: sans-serif;
+ margin: 10%;
+ }
+ .copyright { font-size: smaller }
+ </style>
+ <script type="text/javascript">
+ window.onload = load;
+ function load()
+ {
+ var back = document.getElementById("back");
+ back.focus();
+ }
+ </script>
+</head>
+<body>
+<h1>Ajuda do Slide Show</h1>
+
+<p>Este slide show pode ser tocado do jeito do Power Point.
+Para avançar ao próximo eslaide, clique em qualquer ponto
+da página com o botão direito do mouse. Ou então use a
+barra de espaços. Também se pode movimentar para frente ou
+para trás com as teclas do cursor -- setinhas para a
+direita, para a esquerda, para cima e para baixo. E ainda
+com as teclas Page Up e Page Down. O tamanho da fonte é
+automaticamente ajustado à largura da janela do navegador,
+mas esse ajuste pode ser manual, usando as teclas "S"
+(de "smaller") para diminuir o tamanho, e "B" (de "bigger")
+para aumentar. Igualmente se pode usar as teclas "&lt;" e
+"&gt;". Use
+a tecla "F" para alternar entre desativada e ativada a
+linha de status no rodapé. A tecla "K" alterna o uso do
+clique do mouse para avançar ao próximo eslaide. A tecla
+"C" mostra a tabela de conteúdos, que será novamente
+ocultada apertando-se qualquer tecla. Use a tecla "F11"
+para alternar o modo de tela cheia do navegador. Aperte
+"H" (de "Help") para abrir esta página de Ajuda. Note que
+alguns navegadores reservam algumas dessas teclas para
+outras funções. Assim, experimente no seu navegador para
+ver se esse é o seu caso.</p>
+
+<p>Usuários do Firefox podem querer a extensão <a
+href="http://www.krickelkrackel.de/autohide/">autoocultar</a>
+para esconder as barras de ferramentas quando entrarem em tela cheia
+com a tecla F11.</p>
+
+<p>Se quiser ver como funciona o Slidy, use o View Source para
+visualizar a marcação XHTML, ou leia esta <a
+href="http://www.w3.org/Talks/Tools/Slidy/">explanação mais longa</a>,
+que também contém funcionalidades adicionais. Cada eslaide é
+marcado como um div element com
+classe="slide". Posicionamentos e larguras em porcentual de CSS
+podem ser usados para assegurar que os eslaides com rica
+ilustração tenham escalabilidade de acordo com o tamanho da janela.
+Já o conteúdo a ser revelado incrementalmente pode receber a
+marcação com a classe="incremental".
+A folha de estilos vinculados e os scripts foram desenvolvidos
+como uma alternativa baseada em web às ferramentas proprietárias
+de apresentação, e testados em diversos navegadores recentes.
+Suporte à edição integrada ainda está em desenvolvimento. Mande
+seus comentários para <a href="http://www.w3.org/People/Raggett/">Dave
+Raggett</a> &lt;<a href="mailto:dsr@w3.org">dsr@w3.org</a>&gt;.
+Achando que o Slidy é útil, V. talvez possa considerar a
+possibilidade de se tornar um
+<a href="http://www.w3.org/Consortium/sup">Apoiador do W3C</a>.</p>
+
+<p><em>Fique à vontade para usar as folhas de estilo, os scripts
+e o arquivo de ajuda do show de eslaides que se encontram sob as
+regras de
+<a href="http://www.w3.org/Consortium/Legal/copyright-documents">
+uso de documentação</a>
+e <a href="http://www.w3.org/Consortium/Legal/copyright-software">
+licenciamento de software</a>do W3C -- Consórcio da World Wide
+Web.</em></p>
+
+<button id="back" onclick="history.go(-1)">Voltar a exibir eslaides</button>
+
+<hr />
+
+<p class="copyright"><a rel="Copyright" href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a> &copy; 2005
+<a href="/" shape="rect"><acronym title="World Wide Web Consortium">W3C</acronym></a><sup>&reg;</sup> (<a href="http://www.csail.mit.edu/"><acronym title="Massachusetts Institute of Technology">MIT</acronym></a>,
+<a href="http://www.ercim.org/"><acronym title="European Research Consortium for Informatics and Mathematics">ERCIM</acronym></a>,
+<a href="http://www.keio.ac.jp/">Keio</a>), All Rights Reserved. W3C
+<a href="http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">liability</a>,
+<a href="http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks">trademark</a>,
+<a rel="Copyright" href="http://www.w3.org/Consortium/Legal/copyright-documents">document use</a> and <a rel="Copyright" href="http://www.w3.org/Consortium/Legal/copyright-software">software
+licensing</a> rules apply.</p>
+</body>
+</html>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.sv b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.sv
new file mode 100755
index 000000000..3d019a712
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.html.sv
@@ -0,0 +1,75 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="sv" lang="sv"><head>
+<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
+
+
+
+ <title>Hj&auml;lpsida f&ouml;r presentationer</title><style type="text/css"><!--
+ body {
+ font-family: sans-serif;
+ margin: 10%;
+ }
+ .copyright { font-size: smaller } -->
+ </style>
+ <script type="text/javascript"><!--
+ window.onload = load;
+ function load()
+ {
+ var back = document.getElementById("back");
+ back.focus();
+ }
+ // --> </script>
+</head><body>
+<h1>Hj&auml;lpsida f&ouml;r presentationer</h1>
+
+<p align="justify">Denna presentation kan anv&auml;ndas p&aring; liknande s&auml;tt som Power Point.
+F&ouml;r att bl&auml;ddra till n&auml;sta sida g&aring;r det att trycka p&aring; mellanslagstangenten eller klicka med musens
+v&auml;stra knapp s&aring; gott som var som helst p&aring; sidan. Bl&auml;ddra fram&aring;t och
+bak&aring;t med h&ouml;ger- respektive v&auml;nsterpiltangenterna eller tangenterna &raquo;Pg&nbsp;Dn&raquo; respektive
+&raquo;Pg&nbsp;Up&raquo;. Textens storlek anpassas automatiskt efter webbl&auml;sarens
+f&ouml;nsterbredd, men den g&aring;r &auml;ven att justera manuellt med
+tangenterna &raquo;S&raquo; och &raquo;B&raquo; f&ouml;r att f&ouml;rminska respektive f&ouml;rstora texten. Alternativt kan
+tangenterna &raquo;&lt;&raquo; respektive &raquo;&gt;&raquo; anv&auml;ndas. Tangenten
+&raquo;F&raquo; anv&auml;nds f&ouml;r att visa&nbsp;/ d&ouml;lja statusraden l&auml;ngst ner i f&ouml;nstret. Tangenten &raquo;K&raquo;
+kopplar p&aring;&nbsp;/ av m&ouml;jligheten att klicka med musen f&ouml;r att bl&auml;ddra till n&auml;sta sida. Tangenten
+&raquo;C&raquo; anv&auml;nds f&ouml;r att visa inneh&aring;llsf&ouml;rteckningen och en tryckning p&aring; vilken annan tangent som
+helst d&ouml;ljer den. En tryckning p&aring; tangenten &raquo;H&raquo; visar denna hj&auml;lpsida. Tangenten &raquo;F11&raquo;
+v&auml;xlar mellan fullsk&auml;rmsvisning och visning i webbl&auml;sarens f&ouml;nster. Observera att vissa webbl&auml;sare kan
+ha reserverat n&aring;gra av dessa tangenttryckningar f&ouml;r andra funktioner; detta varierar mellan olika webbl&auml;sare.</p>
+
+<p align="justify"><span lang="en">Firefox</span>anv&auml;ndare kan vid behov installera <a href="http://www.krickelkrackel.de/autohide" lang="en" hreflang="en">autohide</a>
+f&ouml;r att verktygsf&auml;lten skall d&ouml;ljas vid &ouml;verg&aring;ng till fullsk&auml;rmsvisning med F11.</p>
+
+<p align="justify">F&ouml;r att se hur <em lang="en">Slidy</em> fungerar, titta p&aring; XHTML-koden genom att v&auml;lja &raquo;Visa
+k&auml;lla&raquo; (eller liknande) i webbl&auml;sarens meny eller l&auml;s f&ouml;ljande <a href="http://www.w3.org/Talks/Tools/Slidy/">l&auml;ngre
+beskrivning</a>, d&auml;r &auml;ven ytterligare finesser beskrivs. Varje sida &auml;r markerad som
+<span lang="en">div</span>-element med attributet <code lang="en">class=&quot;slide&quot;</code>. CSS-positionering och procentuell bredd
+kan anv&auml;ndas f&ouml;r att placera bilderna i r&auml;tt skala i f&ouml;rh&aring;llande till
+webbl&auml;sarens f&ouml;nsterstorlek. Det som skall visas inkrementiellt
+markeras med <code lang="en">class=&quot;incremental&quot;</code>. L&auml;nkar h&auml;nvisar till n&aring;gra skript och stilmallar
+som har testats med en m&auml;ngd nutida webbl&auml;sare och bildar ett webbaserat alternativ till propriet&auml;ra
+presentationsprogram. St&ouml;d f&ouml;r integrerad editering h&aring;ller p&aring; att utvecklas. Skicka g&auml;rna
+kommentarer till <a href="http://www.w3.org/People/Raggett/" lang="en" hreflang="en">Dave
+Raggett</a> &lt;<a href="mailto:dsr@w3.org">dsr@w3.org</a>&gt;.
+Om du finner <em lang="en">Slidy</em> anv&auml;ndbar kan du &ouml;verv&auml;ga att bli
+<a href="http://www.w3.org/Consortium/sup" lang="en" hreflang="en">W3C Supporter</a>.</p>
+
+<p><em>V&auml;lkommen att anv&auml;nda presentationens stilmallar, skript och hj&auml;lpfiler enligt reglerna
+f&ouml;r W3C:s <a href="http://www.w3.org/Consortium/Legal/copyright-documents" lang="en" hreflang="en">document use</a>
+och <a href="http://www.w3.org/Consortium/Legal/copyright-software" lang="en" hreflang="en">software
+licensing</a>!</em></p>
+
+<button id="back" onclick="history.go(-1)">Tillbaka till presentationen</button>
+
+<hr />
+
+<p class="copyright" lang="en"><a rel="Copyright" href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a> &copy; 2005
+<a href="http://www.w3.org/" shape="rect"><acronym title="World Wide Web Consortium">W3C</acronym></a><sup>&copy;</sup> (<a href="http://www.csail.mit.edu/"><acronym title="Massachusetts Institute of Technology">MIT</acronym></a>,
+<a href="http://www.ercim.org/"><acronym title="European Research Consortium for Informatics and Mathematics">ERCIM</acronym></a>,
+<a href="http://www.keio.ac.jp/">Keio</a>), All Rights Reserved. W3C
+<a href="http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">liability</a>,
+<a href="http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks">trademark</a>,
+<a rel="Copyright" href="http://www.w3.org/Consortium/Legal/copyright-documents">document use</a> and <a rel="Copyright" href="http://www.w3.org/Consortium/Legal/copyright-software">software
+licensing</a> rules apply.</p>
+</body></html>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.pt-br.html b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.pt-br.html
new file mode 100755
index 000000000..72d98919f
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/help/help.pt-br.html
@@ -0,0 +1,95 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en-US">
+<head>
+ <title>Slide Show Help</title><style type="text/css">
+ body {
+ font-family: sans-serif;
+ margin: 10%;
+ }
+ .copyright { font-size: smaller }
+ </style>
+ <script type="text/javascript">
+ window.onload = load;
+ function load()
+ {
+ var back = document.getElementById("back");
+ back.focus();
+ }
+ </script>
+</head>
+<body>
+<h1>Ajuda do Slide Show</h1>
+
+<p>Este slide show pode ser tocado do jeito do Power Point.
+Para avançar ao próximo eslaide, clique em qualquer ponto
+da página com o botão direito do mouse. Ou então use a
+barra de espaços. Também se pode movimentar para frente ou
+para trás com as teclas do cursor -- setinhas para a
+direita, para a esquerda, para cima e para baixo. E ainda
+com as teclas Page Up e Page Down. O tamanho da fonte é
+automaticamente ajustado à largura da janela do navegador,
+mas esse ajuste pode ser manual, usando as teclas "S"
+(de "smaller") para diminuir o tamanho, e "B" (de "bigger")
+para aumentar. Igualmente se pode usar as teclas "&lt;" e
+"&gt;". Use
+a tecla "F" para alternar entre desativada e ativada a
+linha de status no rodapé. A tecla "K" alterna o uso do
+clique do mouse para avançar ao próximo eslaide. A tecla
+"C" mostra a tabela de conteúdos, que será novamente
+ocultada apertando-se qualquer tecla. Use a tecla "F11"
+para alternar o modo de tela cheia do navegador. Aperte
+"H" (de "Help") para abrir esta página de Ajuda. Note que
+alguns navegadores reservam algumas dessas teclas para
+outras funções. Assim, experimente no seu navegador para
+ver se esse é o seu caso.</p>
+
+<p>Usuários do Firefox podem querer a extensão <a
+href="http://extensionroom.mozdev.org/more-info/autohide">autoocultar</a>
+para esconder as barras de ferramentas quando entrarem em tela cheia
+com a tecla F11.</p>
+
+<p>Se quiser ver como funciona o Slidy, use o View Source para
+visualizar a marcação XHTML, ou leia esta <a
+href="http://www.w3.org/Talks/Tools/Slidy/">explanação mais longa</a>,
+que também contém funcionalidades adicionais. Cada eslaide é
+marcado como um div element com
+classe="slide". Posicionamentos e larguras em porcentual de CSS
+podem ser usados para assegurar que os eslaides com rica
+ilustração tenham escalabilidade de acordo com o tamanho da janela.
+Já o conteúdo a ser revelado incrementalmente pode receber a
+marcação com a classe="incremental".
+A folha de estilos vinculados e os scripts foram desenvolvidos
+como uma alternativa baseada em web às ferramentas proprietárias
+de apresentação, e testados em diversos navegadores recentes.
+Suporte à edição integrada ainda está em desenvolvimento. Mande
+seus comentários para <a href="http://www.w3.org/People/Raggett/">Dave
+Raggett</a> &lt;<a href="mailto:dsr@w3.org">dsr@w3.org</a>&gt;.
+Achando que o Slidy é útil, V. talvez possa considerar a
+possibilidade de se tornar um
+<a href="http://www.w3.org/Consortium/sup">Apoiador do W3C</a>.</p>
+
+<p><em>Fique à vontade para usar as folhas de estilo, os scripts
+e o arquivo de ajuda do show de eslaides que se encontram sob as
+regras de
+<a href="http://www.w3.org/Consortium/Legal/copyright-documents">
+uso de documentação</a>
+e <a href="http://www.w3.org/Consortium/Legal/copyright-software">
+licenciamento de software</a>do W3C -- Consórcio da World Wide
+Web.</em></p>
+
+<button id="back" onclick="history.go(-1)">Voltar a exibir eslaides</button>
+
+<hr />
+
+<p class="copyright"><a rel="Copyright" href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a> &copy; 2005
+<a href="/" shape="rect"><acronym title="World Wide Web Consortium">W3C</acronym></a><sup>&reg;</sup> (<a href="http://www.csail.mit.edu/"><acronym title="Massachusetts Institute of Technology">MIT</acronym></a>,
+<a href="http://www.ercim.org/"><acronym title="European Research Consortium for Informatics and Mathematics">ERCIM</acronym></a>,
+<a href="http://www.keio.ac.jp/">Keio</a>), All Rights Reserved. W3C
+<a href="http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">liability</a>,
+<a href="http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks">trademark</a>,
+<a rel="Copyright" href="http://www.w3.org/Consortium/Legal/copyright-documents">document use</a> and <a rel="Copyright" href="http://www.w3.org/Consortium/Legal/copyright-software">software
+licensing</a> rules apply.</p>
+</body>
+</html>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/scripts/.htaccess b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/scripts/.htaccess
new file mode 100755
index 000000000..d395348ae
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/scripts/.htaccess
@@ -0,0 +1,28 @@
+Options +MultiViews
+LanguagePriority en
+AddLanguage pt-br .pt-br
+
+<Files ~ "*.html">
+
+ForceType 'text/html; charset=utf-8'
+
+</Files>
+
+<Files ~ "*.xhtml">
+
+ForceType 'application/xhtml+xml; charset=utf-8'
+
+</Files>
+
+<Files ~ *.css">
+
+ForceType 'text/css; charset=utf-8'
+
+</Files>
+
+<Files ~ "*.js">
+
+ForceType 'text/javascript; charset=utf-8'
+
+</Files>
+mkdir
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/scripts/slidy.js b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/scripts/slidy.js
new file mode 100755
index 000000000..25b6e7650
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/scripts/slidy.js
@@ -0,0 +1,2974 @@
+/* slidy.js
+
+ Copyright (c) 2005-2011 W3C (MIT, ERCIM, Keio), All Rights Reserved.
+ W3C liability, trademark, document use and software licensing
+ rules apply, see:
+
+ http://www.w3.org/Consortium/Legal/copyright-documents
+ http://www.w3.org/Consortium/Legal/copyright-software
+
+ Defines single name "w3c_slidy" in global namespace
+ Adds event handlers without trampling on any others
+*/
+
+// the slidy object implementation
+var w3c_slidy = {
+ // classify which kind of browser we're running under
+ ns_pos: (typeof window.pageYOffset!='undefined'),
+ khtml: ((navigator.userAgent).indexOf("KHTML") >= 0 ? true : false),
+ opera: ((navigator.userAgent).indexOf("Opera") >= 0 ? true : false),
+ ipad: ((navigator.userAgent).indexOf("iPad") >= 0 ? true : false),
+ iphone: ((navigator.userAgent).indexOf("iPhone") >= 0 ? true : false),
+ android: ((navigator.userAgent).indexOf("Android") >= 0 ? true : false),
+ ie: (typeof document.all != "undefined" && !this.opera),
+ ie6: (!this.ns_pos && navigator.userAgent.indexOf("MSIE 6") != -1),
+ ie7: (!this.ns_pos && navigator.userAgent.indexOf("MSIE 7") != -1),
+ ie8: (!this.ns_pos && navigator.userAgent.indexOf("MSIE 8") != -1),
+ ie9: (!this.ns_pos && navigator.userAgent.indexOf("MSIE 9") != -1),
+
+ // data for swipe and double tap detection on touch screens
+ last_tap: 0,
+ prev_tap: 0,
+ start_x: 0,
+ start_y: 0,
+ delta_x: 0,
+ delta_y: 0,
+
+ // are we running as XHTML? (doesn't work on Opera)
+ is_xhtml: /xml/.test(document.contentType),
+
+ slide_number: 0, // integer slide count: 0, 1, 2, ...
+ slide_number_element: null, // element containing slide number
+ slides: [], // set to array of slide div's
+ notes: [], // set to array of handout div's
+ backgrounds: [], // set to array of background div's
+ toolbar: null, // element containing toolbar
+ title: null, // document title
+ last_shown: null, // last incrementally shown item
+ eos: null, // span element for end of slide indicator
+ toc: null, // table of contents
+ outline: null, // outline element with the focus
+ selected_text_len: 0, // length of drag selection on document
+ view_all: 0, // 1 to view all slides + handouts
+ want_toolbar: true, // user preference to show/hide toolbar
+ mouse_click_enabled: true, // enables left click for next slide
+ scroll_hack: 0, // IE work around for position: fixed
+ disable_slide_click: false, // used by clicked anchors
+
+ lang: "en", // updated to language specified by html file
+
+ help_anchor: null, // used for keyboard focus hack in showToolbar()
+ help_page: "http://www.w3.org/Talks/Tools/Slidy2/help/help.html",
+ help_text: "Navigate with mouse click, space bar, Cursor Left/Right, " +
+ "or Pg Up and Pg Dn. Use S and B to change font size.",
+
+ size_index: 0,
+ size_adjustment: 0,
+ sizes: new Array("10pt", "12pt", "14pt", "16pt", "18pt", "20pt",
+ "22pt", "24pt", "26pt", "28pt", "30pt", "32pt"),
+
+ // needed for efficient resizing
+ last_width: 0,
+ last_height: 0,
+
+
+ // Needed for cross browser support for relative width/height on
+ // object elements. The work around is to save width/height attributes
+ // and then to recompute absolute width/height dimensions on resizing
+ objects: [],
+
+ // attach initialiation event handlers
+ set_up: function () {
+ var init = function() { w3c_slidy.init(); };
+ if (typeof window.addEventListener != "undefined")
+ window.addEventListener("load", init, false);
+ else
+ window.attachEvent("onload", init);
+ },
+
+ hide_slides: function () {
+ if (document.body && !w3c_slidy.initialized)
+ document.body.style.visibility = "hidden";
+ else
+ setTimeout(w3c_slidy.hide_slides, 50);
+ },
+
+ // hack to persuade IE to compute correct document height
+ // as needed for simulating fixed positioning of toolbar
+ ie_hack: function () {
+ window.resizeBy(0,-1);
+ window.resizeBy(0, 1);
+ },
+
+ init: function () {
+ //alert("slidy starting test 10");
+ document.body.style.visibility = "visible";
+ this.init_localization();
+ this.add_toolbar();
+ this.wrap_implicit_slides();
+ this.collect_slides();
+ this.collect_notes();
+ this.collect_backgrounds();
+ this.objects = document.body.getElementsByTagName("object");
+ this.patch_anchors();
+ this.slide_number = this.find_slide_number(location.href);
+ window.offscreenbuffering = true;
+ this.size_adjustment = this.find_size_adjust();
+ this.time_left = this.find_duration();
+ this.hide_image_toolbar(); // suppress IE image toolbar popup
+ this.init_outliner(); // activate fold/unfold support
+ this.title = document.title;
+ this.keyboardless = (this.ipad||this.iphone||this.android);
+
+ if (this.keyboardless)
+ {
+ w3c_slidy.remove_class(w3c_slidy.toolbar, "hidden")
+ this.want_toolbar = 0;
+ }
+
+ // work around for opera bug
+ this.is_xhtml = (document.body.tagName == "BODY" ? false : true);
+
+ if (this.slides.length > 0)
+ {
+ var slide = this.slides[this.slide_number];
+
+ if (this.slide_number > 0)
+ {
+ this.set_visibility_all_incremental("visible");
+ this.last_shown = this.previous_incremental_item(null);
+ this.set_eos_status(true);
+ }
+ else
+ {
+ this.last_shown = null;
+ this.set_visibility_all_incremental("hidden");
+ this.set_eos_status(!this.next_incremental_item(this.last_shown));
+ }
+
+ this.set_location();
+ this.add_class(this.slides[0], "first-slide");
+ w3c_slidy.show_slide(slide);
+ }
+
+ this.toc = this.table_of_contents();
+
+ this.add_initial_prompt();
+
+ // bind event handlers without interfering with custom page scripts
+ // Tap events behave too weirdly to support clicks reliably on
+ // iPhone and iPad, so exclude these from click handler
+
+ if (!this.keyboardless)
+ this.add_listener(document.body, "click", this.mouse_button_click);
+
+ this.add_listener(document, "keydown", this.key_down);
+ this.add_listener(document, "keypress", this.key_press);
+ this.add_listener(window, "resize", this.resized);
+ this.add_listener(window, "scroll", this.scrolled);
+ this.add_listener(window, "unload", this.unloaded);
+
+ this.add_listener(document, "touchstart", this.touchstart);
+ this.add_listener(document, "touchmove", this.touchmove);
+ this.add_listener(document, "touchend", this.touchend);
+
+ // this seems to be a debugging hack
+ //if (!document.body.onclick)
+ // document.body.onclick = function () { };
+
+ this.single_slide_view();
+
+ //this.set_location();
+
+ this.resized();
+
+ if (this.ie7)
+ setTimeout(w3c_slidy.ie_hack, 100);
+
+ this.show_toolbar();
+
+ // for back button detection
+ setInterval(function () { w3c_slidy.check_location(); }, 200);
+ w3c_slidy.initialized = true;
+ },
+
+ // create div element with links to each slide
+ table_of_contents: function () {
+ var toc = this.create_element("div");
+ this.add_class(toc, "slidy_toc hidden");
+ //toc.setAttribute("tabindex", "0");
+
+ var heading = this.create_element("div");
+ this.add_class(heading, "toc-heading");
+ heading.innerHTML = this.localize("Table of Contents");
+
+ toc.appendChild(heading);
+ var previous = null;
+
+ for (var i = 0; i < this.slides.length; ++i)
+ {
+ var title = this.has_class(this.slides[i], "title");
+ var num = document.createTextNode((i + 1) + ". ");
+
+ toc.appendChild(num);
+
+ var a = this.create_element("a");
+ a.setAttribute("href", "#(" + (i+1) + ")");
+
+ if (title)
+ this.add_class(a, "titleslide");
+
+ var name = document.createTextNode(this.slide_name(i));
+ a.appendChild(name);
+ a.onclick = w3c_slidy.toc_click;
+ a.onkeydown = w3c_slidy.toc_key_down;
+ a.previous = previous;
+
+ if (previous)
+ previous.next = a;
+
+ toc.appendChild(a);
+
+ if (i == 0)
+ toc.first = a;
+
+ if (i < this.slides.length - 1)
+ {
+ var br = this.create_element("br");
+ toc.appendChild(br);
+ }
+
+ previous = a;
+ }
+
+ toc.focus = function () {
+ if (this.first)
+ this.first.focus();
+ }
+
+ toc.onmouseup = w3c_slidy.mouse_button_up;
+
+ toc.onclick = function (e) {
+ e||(e=window.event);
+
+ if (w3c_slidy.selected_text_len <= 0)
+ w3c_slidy.hide_table_of_contents(true);
+
+ w3c_slidy.stop_propagation(e);
+
+ if (e.cancel != undefined)
+ e.cancel = true;
+
+ if (e.returnValue != undefined)
+ e.returnValue = false;
+
+ return false;
+ };
+
+ document.body.insertBefore(toc, document.body.firstChild);
+ return toc;
+ },
+
+ is_shown_toc: function () {
+ return !w3c_slidy.has_class(w3c_slidy.toc, "hidden");
+ },
+
+ show_table_of_contents: function () {
+ w3c_slidy.remove_class(w3c_slidy.toc, "hidden");
+ var toc = w3c_slidy.toc;
+ toc.focus();
+
+ if (w3c_slidy.ie7 && w3c_slidy.slide_number == 0)
+ setTimeout(w3c_slidy.ie_hack, 100);
+ },
+
+ hide_table_of_contents: function (focus) {
+ w3c_slidy.add_class(w3c_slidy.toc, "hidden");
+
+ if (focus && !w3c_slidy.opera)
+ w3c_slidy.help_anchor.focus();
+ },
+
+ toggle_table_of_contents: function () {
+ if (w3c_slidy.is_shown_toc())
+ w3c_slidy.hide_table_of_contents(true);
+ else
+ w3c_slidy.show_table_of_contents();
+ },
+
+ // called on clicking toc entry
+ toc_click: function (e) {
+ if (!e)
+ e = window.event;
+
+ var target = w3c_slidy.get_target(e);
+
+ if (target && target.nodeType == 1)
+ {
+ var uri = target.getAttribute("href");
+
+ if (uri)
+ {
+ //alert("going to " + uri);
+ var slide = w3c_slidy.slides[w3c_slidy.slide_number];
+ w3c_slidy.hide_slide(slide);
+ w3c_slidy.slide_number = w3c_slidy.find_slide_number(uri);
+ slide = w3c_slidy.slides[w3c_slidy.slide_number];
+ w3c_slidy.last_shown = null;
+ w3c_slidy.set_location();
+ w3c_slidy.set_visibility_all_incremental("hidden");
+ w3c_slidy.set_eos_status(!w3c_slidy.next_incremental_item(w3c_slidy.last_shown));
+ w3c_slidy.show_slide(slide);
+ //target.focus();
+
+ try
+ {
+ if (!w3c_slidy.opera)
+ w3c_slidy.help_anchor.focus();
+ }
+ catch (e)
+ {
+ }
+ }
+ }
+
+ w3c_slidy.hide_table_of_contents(true);
+ if (w3c_slidy.ie7) w3c_slidy.ie_hack();
+ w3c_slidy.stop_propagation(e);
+ return w3c_slidy.cancel(e);
+ },
+
+ // called onkeydown for toc entry
+ toc_key_down: function (event) {
+ var key;
+
+ if (!event)
+ var event = window.event;
+
+ // kludge around NS/IE differences
+ if (window.event)
+ key = window.event.keyCode;
+ else if (event.which)
+ key = event.which;
+ else
+ return true; // Yikes! unknown browser
+
+ // ignore event if key value is zero
+ // as for alt on Opera and Konqueror
+ if (!key)
+ return true;
+
+ // check for concurrent control/command/alt key
+ // but are these only present on mouse events?
+
+ if (event.ctrlKey || event.altKey)
+ return true;
+
+ if (key == 13)
+ {
+ var uri = this.getAttribute("href");
+
+ if (uri)
+ {
+ //alert("going to " + uri);
+ var slide = w3c_slidy.slides[w3c_slidy.slide_number];
+ w3c_slidy.hide_slide(slide);
+ w3c_slidy.slide_number = w3c_slidy.find_slide_number(uri);
+ slide = w3c_slidy.slides[w3c_slidy.slide_number];
+ w3c_slidy.last_shown = null;
+ w3c_slidy.set_location();
+ w3c_slidy.set_visibility_all_incremental("hidden");
+ w3c_slidy.set_eos_status(!w3c_slidy.next_incremental_item(w3c_slidy.last_shown));
+ w3c_slidy.show_slide(slide);
+ //target.focus();
+
+ try
+ {
+ if (!w3c_slidy.opera)
+ w3c_slidy.help_anchor.focus();
+ }
+ catch (e)
+ {
+ }
+ }
+
+ w3c_slidy.hide_table_of_contents(true);
+
+ if (self.ie7)
+ w3c_slidy.ie_hack();
+
+ return w3c_slidy.cancel(event);
+ }
+
+ if (key == 40 && this.next)
+ {
+ this.next.focus();
+ return w3c_slidy.cancel(event);
+ }
+
+ if (key == 38 && this.previous)
+ {
+ this.previous.focus();
+ return w3c_slidy.cancel(event);
+ }
+
+ return true;
+ },
+
+ touchstart: function (e)
+ {
+ //e.preventDefault();
+ this.prev_tap = this.last_tap;
+ this.last_tap = (new Date).getTime();
+
+ var tap_delay = this.last_tap - this.prev_tap;
+
+ if (tap_delay <= 200)
+ {
+ // double tap
+ }
+
+ var touch = e.touches[0];
+
+ this.start_x = touch.pageX;
+ this.start_y = touch.pageY;
+ this.delta_x = this.delta_y = 0;
+ },
+
+ touchmove: function (e)
+ {
+ //e.preventDefault();
+ var touch = e.touches[0];
+ this.delta_x = touch.pageX - this.start_x;
+ this.delta_y = touch.pageY - this.start_y;
+ },
+
+ touchend: function (e)
+ {
+ //e.preventDefault();
+ var delay = (new Date).getTime() - this.last_tap;
+ var dx = this.delta_x;
+ var dy = this.delta_y;
+ var abs_dx = Math.abs(dx);
+ var abs_dy = Math.abs(dy);
+
+ if (delay < 500 && (abs_dx > 100 || abs_dy > 100))
+ {
+ if (abs_dx > 0.5 * abs_dy)
+ {
+ if (dx < 0)
+ w3c_slidy.next_slide(true);
+ else
+ w3c_slidy.previous_slide(true);
+ }
+ else if (abs_dy > 2 * abs_dx)
+ {
+ w3c_slidy.toggle_table_of_contents();
+ }
+ }
+ },
+
+ // ### OBSOLETE ###
+ before_print: function () {
+ this.show_all_slides();
+ this.hide_toolbar();
+ alert("before print");
+ },
+
+ // ### OBSOLETE ###
+ after_print: function () {
+ if (!this.view_all)
+ {
+ this.single_slide_view();
+ this.show_toolbar();
+ }
+ alert("after print");
+ },
+
+ // ### OBSOLETE ###
+ print_slides: function () {
+ this.before_print();
+ window.print();
+ this.after_print();
+ },
+
+ // ### OBSOLETE ?? ###
+ toggle_view: function () {
+ if (this.view_all)
+ {
+ this.single_slide_view();
+ this.show_toolbar();
+ this.view_all = 0;
+ }
+ else
+ {
+ this.show_all_slides();
+ this.hide_toolbar();
+ this.view_all = 1;
+ }
+ },
+
+ // prepare for printing ### OBSOLETE ###
+ show_all_slides: function () {
+ this.remove_class(document.body, "single_slide");
+ this.set_visibility_all_incremental("visible");
+ },
+
+ // restore after printing ### OBSOLETE ###
+ single_slide_view: function () {
+ this.add_class(document.body, "single_slide");
+ this.set_visibility_all_incremental("visible");
+ this.last_shown = this.previous_incremental_item(null);
+ },
+
+ // suppress IE's image toolbar pop up
+ hide_image_toolbar: function () {
+ if (!this.ns_pos)
+ {
+ var images = document.getElementsByTagName("IMG");
+
+ for (var i = 0; i < images.length; ++i)
+ images[i].setAttribute("galleryimg", "no");
+ }
+ },
+
+ unloaded: function (e) {
+ //alert("unloaded");
+ },
+
+ // Safari and Konqueror don't yet support getComputedStyle()
+ // and they always reload page when location.href is updated
+ is_KHTML: function () {
+ var agent = navigator.userAgent;
+ return (agent.indexOf("KHTML") >= 0 ? true : false);
+ },
+
+ // find slide name from first h1 element
+ // default to document title + slide number
+ slide_name: function (index) {
+ var name = null;
+ var slide = this.slides[index];
+
+ var heading = this.find_heading(slide);
+
+ if (heading)
+ name = this.extract_text(heading);
+
+ if (!name)
+ name = this.title + "(" + (index + 1) + ")";
+
+ name.replace(/\&/g, "&amp;");
+ name.replace(/\</g, "&lt;");
+ name.replace(/\>/g, "&gt;");
+
+ return name;
+ },
+
+ // find first h1 element in DOM tree
+ find_heading: function (node) {
+ if (!node || node.nodeType != 1)
+ return null;
+
+ if (node.nodeName == "H1" || node.nodeName == "h1")
+ return node;
+
+ var child = node.firstChild;
+
+ while (child)
+ {
+ node = this.find_heading(child);
+
+ if (node)
+ return node;
+
+ child = child.nextSibling;
+ }
+
+ return null;
+ },
+
+ // recursively extract text from DOM tree
+ extract_text: function (node) {
+ if (!node)
+ return "";
+
+ // text nodes
+ if (node.nodeType == 3)
+ return node.nodeValue;
+
+ // elements
+ if (node.nodeType == 1)
+ {
+ node = node.firstChild;
+ var text = "";
+
+ while (node)
+ {
+ text = text + this.extract_text(node);
+ node = node.nextSibling;
+ }
+
+ return text;
+ }
+
+ return "";
+ },
+
+ // find copyright text from meta element
+ find_copyright: function () {
+ var name, content;
+ var meta = document.getElementsByTagName("meta");
+
+ for (var i = 0; i < meta.length; ++i)
+ {
+ name = meta[i].getAttribute("name");
+ content = meta[i].getAttribute("content");
+
+ if (name == "copyright")
+ return content;
+ }
+
+ return null;
+ },
+
+ find_size_adjust: function () {
+ var name, content, offset;
+ var meta = document.getElementsByTagName("meta");
+
+ for (var i = 0; i < meta.length; ++i)
+ {
+ name = meta[i].getAttribute("name");
+ content = meta[i].getAttribute("content");
+
+ if (name == "font-size-adjustment")
+ return 1 * content;
+ }
+
+ return 1;
+ },
+
+ // <meta name="duration" content="20" /> for 20 minutes
+ find_duration: function () {
+ var name, content, offset;
+ var meta = document.getElementsByTagName("meta");
+
+ for (var i = 0; i < meta.length; ++i)
+ {
+ name = meta[i].getAttribute("name");
+ content = meta[i].getAttribute("content");
+
+ if (name == "duration")
+ return 60000 * content;
+ }
+
+ return null;
+ },
+
+ replace_by_non_breaking_space: function (str) {
+ for (var i = 0; i < str.length; ++i)
+ str[i] = 160;
+ },
+
+ // ### CHECK ME ### is use of "li" okay for text/html?
+ // for XHTML do we also need to specify namespace?
+ init_outliner: function () {
+ var items = document.getElementsByTagName("li");
+
+ for (var i = 0; i < items.length; ++i)
+ {
+ var target = items[i];
+
+ if (!this.has_class(target.parentNode, "outline"))
+ continue;
+
+ target.onclick = this.outline_click;
+/* ### more work needed for IE6
+ if (!this.ns_pos)
+ {
+ target.onmouseover = this.hover_outline;
+ target.onmouseout = this.unhover_outline;
+ }
+*/
+ if (this.foldable(target))
+ {
+ target.foldable = true;
+ target.onfocus = function () {w3c_slidy.outline = this;};
+ target.onblur = function () {w3c_slidy.outline = null;};
+
+ if (!target.getAttribute("tabindex"))
+ target.setAttribute("tabindex", "0");
+
+ if (this.has_class(target, "expand"))
+ this.unfold(target);
+ else
+ this.fold(target);
+ }
+ else
+ {
+ this.add_class(target, "nofold");
+ target.visible = true;
+ target.foldable = false;
+ }
+ }
+ },
+
+ foldable: function (item) {
+ if (!item || item.nodeType != 1)
+ return false;
+
+ var node = item.firstChild;
+
+ while (node)
+ {
+ if (node.nodeType == 1 && this.is_block(node))
+ return true;
+
+ node = node.nextSibling;
+ }
+
+ return false;
+ },
+
+ // ### CHECK ME ### switch to add/remove "hidden" class
+ fold: function (item) {
+ if (item)
+ {
+ this.remove_class(item, "unfolded");
+ this.add_class(item, "folded");
+ }
+
+ var node = item ? item.firstChild : null;
+
+ while (node)
+ {
+ if (node.nodeType == 1 && this.is_block(node)) // element
+ {
+ w3c_slidy.add_class(node, "hidden");
+ }
+
+ node = node.nextSibling;
+ }
+
+ item.visible = false;
+ },
+
+ // ### CHECK ME ### switch to add/remove "hidden" class
+ unfold: function (item) {
+ if (item)
+ {
+ this.add_class(item, "unfolded");
+ this.remove_class(item, "folded");
+ }
+
+ var node = item ? item.firstChild : null;
+
+ while (node)
+ {
+ if (node.nodeType == 1 && this.is_block(node)) // element
+ {
+ w3c_slidy.remove_class(node, "hidden");
+ }
+
+ node = node.nextSibling;
+ }
+
+ item.visible = true;
+ },
+
+ outline_click: function (e) {
+ if (!e)
+ e = window.event;
+
+ var rightclick = false;
+ var target = w3c_slidy.get_target(e);
+
+ while (target && target.visible == undefined)
+ target = target.parentNode;
+
+ if (!target)
+ return true;
+
+ if (e.which)
+ rightclick = (e.which == 3);
+ else if (e.button)
+ rightclick = (e.button == 2);
+
+ if (!rightclick && target.visible != undefined)
+ {
+ if (target.foldable)
+ {
+ if (target.visible)
+ w3c_slidy.fold(target);
+ else
+ w3c_slidy.unfold(target);
+ }
+
+ w3c_slidy.stop_propagation(e);
+ e.cancel = true;
+ e.returnValue = false;
+ }
+
+ return false;
+ },
+
+ add_initial_prompt: function () {
+ var prompt = this.create_element("div");
+ prompt.setAttribute("class", "initial_prompt");
+
+ var p1 = this.create_element("p");
+ prompt.appendChild(p1);
+ p1.setAttribute("class", "help");
+
+ if (this.keyboardless)
+ p1.innerHTML = "swipe left to move to next slide";
+ else
+ p1.innerHTML = "Space, Right Arrow or swipe left to move to " +
+ "next slide, click help below for more details";
+
+ this.add_listener(prompt, "click", function (e) {
+ document.body.removeChild(prompt);
+ w3c_slidy.stop_propagation(e);
+
+ if (e.cancel != undefined)
+ e.cancel = true;
+
+ if (e.returnValue != undefined)
+ e.returnValue = false;
+
+ return false;
+ });
+
+ document.body.appendChild(prompt);
+ this.initial_prompt = prompt;
+ setTimeout(function() {document.body.removeChild(prompt);}, 5000);
+ },
+
+ add_toolbar: function () {
+ var counter, page;
+
+ this.toolbar = this.create_element("div");
+ this.toolbar.setAttribute("class", "toolbar");
+
+ // a reasonably behaved browser
+ if (this.ns_pos || !this.ie6)
+ {
+ var right = this.create_element("div");
+ right.setAttribute("style", "float: right; text-align: right");
+
+ counter = this.create_element("span")
+ counter.innerHTML = this.localize("slide") + " n/m";
+ right.appendChild(counter);
+ this.toolbar.appendChild(right);
+
+ var left = this.create_element("div");
+ left.setAttribute("style", "text-align: left");
+
+ // global end of slide indicator
+ this.eos = this.create_element("span");
+ this.eos.innerHTML = "* ";
+ left.appendChild(this.eos);
+
+ var help = this.create_element("a");
+ help.setAttribute("href", this.help_page);
+ help.setAttribute("title", this.localize(this.help_text));
+ help.innerHTML = this.localize("help?");
+ left.appendChild(help);
+ this.help_anchor = help; // save for focus hack
+
+ var gap1 = document.createTextNode(" ");
+ left.appendChild(gap1);
+
+ var contents = this.create_element("a");
+ contents.setAttribute("href", "javascript:w3c_slidy.toggle_table_of_contents()");
+ contents.setAttribute("title", this.localize("table of contents"));
+ contents.innerHTML = this.localize("contents?");
+ left.appendChild(contents);
+
+ var gap2 = document.createTextNode(" ");
+ left.appendChild(gap2);
+
+ var copyright = this.find_copyright();
+
+ if (copyright)
+ {
+ var span = this.create_element("span");
+ span.className = "copyright";
+ span.innerHTML = copyright;
+ left.appendChild(span);
+ }
+
+ this.toolbar.setAttribute("tabindex", "0");
+ this.toolbar.appendChild(left);
+ }
+ else // IE6 so need to work around its poor CSS support
+ {
+ this.toolbar.style.position = (this.ie7 ? "fixed" : "absolute");
+ this.toolbar.style.zIndex = "200";
+ this.toolbar.style.width = "99.9%";
+ this.toolbar.style.height = "1.2em";
+ this.toolbar.style.top = "auto";
+ this.toolbar.style.bottom = "0";
+ this.toolbar.style.left = "0";
+ this.toolbar.style.right = "0";
+ this.toolbar.style.textAlign = "left";
+ this.toolbar.style.fontSize = "60%";
+ this.toolbar.style.color = "red";
+ this.toolbar.borderWidth = 0;
+ this.toolbar.className = "toolbar";
+ this.toolbar.style.background = "rgb(240,240,240)";
+
+ // would like to have help text left aligned
+ // and page counter right aligned, floating
+ // div's don't work, so instead use nested
+ // absolutely positioned div's.
+
+ var sp = this.create_element("span");
+ sp.innerHTML = "&nbsp;&nbsp;*&nbsp;";
+ this.toolbar.appendChild(sp);
+ this.eos = sp; // end of slide indicator
+
+ var help = this.create_element("a");
+ help.setAttribute("href", this.help_page);
+ help.setAttribute("title", this.localize(this.help_text));
+ help.innerHTML = this.localize("help?");
+ this.toolbar.appendChild(help);
+ this.help_anchor = help; // save for focus hack
+
+ var gap1 = document.createTextNode(" ");
+ this.toolbar.appendChild(gap1);
+
+ var contents = this.create_element("a");
+ contents.setAttribute("href", "javascript:toggleTableOfContents()");
+ contents.setAttribute("title", this.localize("table of contents".localize));
+ contents.innerHTML = this.localize("contents?");
+ this.toolbar.appendChild(contents);
+
+ var gap2 = document.createTextNode(" ");
+ this.toolbar.appendChild(gap2);
+
+ var copyright = this.find_copyright();
+
+ if (copyright)
+ {
+ var span = this.create_element("span");
+ span.innerHTML = copyright;
+ span.style.color = "black";
+ span.style.marginLeft = "0.5em";
+ this.toolbar.appendChild(span);
+ }
+
+ counter = this.create_element("div")
+ counter.style.position = "absolute";
+ counter.style.width = "auto"; //"20%";
+ counter.style.height = "1.2em";
+ counter.style.top = "auto";
+ counter.style.bottom = 0;
+ counter.style.right = "0";
+ counter.style.textAlign = "right";
+ counter.style.color = "red";
+ counter.style.background = "rgb(240,240,240)";
+
+ counter.innerHTML = this.localize("slide") + " n/m";
+ this.toolbar.appendChild(counter);
+ }
+
+ // ensure that click isn't passed through to the page
+ this.toolbar.onclick =
+ function (e) {
+ if (!e)
+ e = window.event;
+
+ var target = e.target;
+
+ if (!target && e.srcElement)
+ target = e.srcElement;
+
+ // work around Safari bug
+ if (target && target.nodeType == 3)
+ target = target.parentNode;
+
+ w3c_slidy.stop_propagation(e);
+
+ if (target && target.nodeName.toLowerCase() != "a")
+ w3c_slidy.mouse_button_click(e);
+ };
+
+ this.slide_number_element = counter;
+ this.set_eos_status(false);
+ document.body.appendChild(this.toolbar);
+ },
+
+ // wysiwyg editors make it hard to use div elements
+ // e.g. amaya loses the div when you copy and paste
+ // this function wraps div elements around implicit
+ // slides which start with an h1 element and continue
+ // up to the next heading or div element
+ wrap_implicit_slides: function () {
+ var i, heading, node, next, div;
+ var headings = document.getElementsByTagName("h1");
+
+ if (!headings)
+ return;
+
+ for (i = 0; i < headings.length; ++i)
+ {
+ heading = headings[i];
+
+ if (heading.parentNode != document.body)
+ continue;
+
+ node = heading.nextSibling;
+
+ div = document.createElement("div");
+ this.add_class(div, "slide");
+ document.body.replaceChild(div, heading);
+ div.appendChild(heading);
+
+ while (node)
+ {
+ if (node.nodeType == 1) // an element
+ {
+ if (node.nodeName == "H1" || node.nodeName == "h1")
+ break;
+
+ if (node.nodeName == "DIV" || node.nodeName == "div")
+ {
+ if (this.has_class(node, "slide"))
+ break;
+
+ if (this.has_class(node, "handout"))
+ break;
+ }
+ }
+
+ next = node.nextSibling;
+ node = document.body.removeChild(node);
+ div.appendChild(node);
+ node = next;
+ }
+ }
+ },
+
+// return new array of all slides
+ collect_slides: function () {
+ var slides = new Array();
+ var divs = document.body.getElementsByTagName("div");
+
+ for (var i = 0; i < divs.length; ++i)
+ {
+ div = divs.item(i);
+
+ if (this.has_class(div, "slide"))
+ {
+ // add slide to collection
+ slides[slides.length] = div;
+
+ // hide each slide as it is found
+ this.add_class(div, "hidden");
+
+ // add dummy <br/> at end for scrolling hack
+ var node1 = document.createElement("br");
+ div.appendChild(node1);
+ var node2 = document.createElement("br");
+ div.appendChild(node2);
+ }
+ else if (this.has_class(div, "background"))
+ { // work around for Firefox SVG reload bug
+ // which otherwise replaces 1st SVG graphic with 2nd
+ div.style.display = "block";
+ }
+ }
+
+ this.slides = slides;
+ },
+
+ // return new array of all <div class="handout">
+ collect_notes: function () {
+ var notes = new Array();
+ var divs = document.body.getElementsByTagName("div");
+
+ for (var i = 0; i < divs.length; ++i)
+ {
+ div = divs.item(i);
+
+ if (this.has_class(div, "handout"))
+ {
+ // add note to collection
+ notes[notes.length] = div;
+
+ // and hide it
+ this.add_class(div, "hidden");
+ }
+ }
+
+ this.notes = notes;
+ },
+
+ // return new array of all <div class="background">
+ // including named backgrounds e.g. class="background titlepage"
+ collect_backgrounds: function () {
+ var backgrounds = new Array();
+ var divs = document.body.getElementsByTagName("div");
+
+ for (var i = 0; i < divs.length; ++i)
+ {
+ div = divs.item(i);
+
+ if (this.has_class(div, "background"))
+ {
+ // add background to collection
+ backgrounds[backgrounds.length] = div;
+
+ // and hide it
+ this.add_class(div, "hidden");
+ }
+ }
+
+ this.backgrounds = backgrounds;
+ },
+
+ // set click handlers on all anchors
+ patch_anchors: function () {
+ var self = w3c_slidy;
+ var handler = function (event) {
+ // compare this.href with location.href
+ // for link to another slide in this doc
+
+ if (self.page_address(this.href) == self.page_address(location.href))
+ {
+ // yes, so find new slide number
+ var newslidenum = self.find_slide_number(this.href);
+
+ if (newslidenum != self.slide_number)
+ {
+ var slide = self.slides[self.slide_number];
+ self.hide_slide(slide);
+ self.slide_number = newslidenum;
+ slide = self.slides[self.slide_number];
+ self.show_slide(slide);
+ self.set_location();
+ }
+ }
+ else
+ w3c_slidy.stop_propagation(event);
+
+// else if (this.target == null)
+// location.href = this.href;
+
+ this.blur();
+ self.disable_slide_click = true;
+ };
+
+ var anchors = document.body.getElementsByTagName("a");
+
+ for (var i = 0; i < anchors.length; ++i)
+ {
+ if (window.addEventListener)
+ anchors[i].addEventListener("click", handler, false);
+ else
+ anchors[i].attachEvent("onclick", handler);
+ }
+ },
+
+ // ### CHECK ME ### see which functions are invoked via setTimeout
+ // either directly or indirectly for use of w3c_slidy vs this
+ show_slide_number: function () {
+ var timer = w3c_slidy.get_timer();
+ w3c_slidy.slide_number_element.innerHTML = timer + w3c_slidy.localize("slide") + " " +
+ (w3c_slidy.slide_number + 1) + "/" + w3c_slidy.slides.length;
+ },
+
+ // every 200mS check if the location has been changed as a
+ // result of the user activating the Back button/menu item
+ // doesn't work for Opera < 9.5
+ check_location: function () {
+ var hash = location.hash;
+
+ if (w3c_slidy.slide_number > 0 && (hash == "" || hash == "#"))
+ w3c_slidy.goto_slide(0);
+ else if (hash.length > 2 && hash != "#("+(w3c_slidy.slide_number+1)+")")
+ {
+ var num = parseInt(location.hash.substr(2));
+
+ if (!isNaN(num))
+ w3c_slidy.goto_slide(num-1);
+ }
+
+ if (w3c_slidy.time_left && w3c_slidy.slide_number > 0)
+ {
+ w3c_slidy.show_slide_number();
+
+ if (w3c_slidy.time_left > 0)
+ w3c_slidy.time_left -= 200;
+ }
+ },
+
+ get_timer: function () {
+ var timer = "";
+ if (w3c_slidy.time_left)
+ {
+ var mins, secs;
+ secs = Math.floor(w3c_slidy.time_left/1000);
+ mins = Math.floor(secs / 60);
+ secs = secs % 60;
+ timer = (mins ? mins+"m" : "") + secs + "s ";
+ }
+
+ return timer;
+ },
+
+ // this doesn't push location onto history stack for IE
+ // for which a hidden iframe hack is needed: load page into
+ // the iframe with script that set's parent's location.hash
+ // but that won't work for standalone use unless we can
+ // create the page dynamically via a javascript: URL
+ // ### use history.pushState if available
+ set_location: function () {
+ var uri = w3c_slidy.page_address(location.href);
+ var hash = "#(" + (w3c_slidy.slide_number+1) + ")";
+
+ if (w3c_slidy.slide_number >= 0)
+ uri = uri + hash;
+
+ if (typeof(history.pushState) != "undefined")
+ {
+ document.title = w3c_slidy.title + " (" + (w3c_slidy.slide_number+1) + ")";
+ history.pushState(0, document.title, hash);
+ w3c_slidy.show_slide_number();
+ return;
+ }
+
+ if (w3c_slidy.ie && (w3c_slidy.ie6 || w3c_slidy.ie7))
+ w3c_slidy.push_hash(hash);
+
+ if (uri != location.href) // && !khtml
+ location.href = uri;
+
+ if (this.khtml)
+ hash = "(" + (w3c_slidy.slide_number+1) + ")";
+
+ if (!this.ie && location.hash != hash && location.hash != "")
+ location.hash = hash;
+
+ document.title = w3c_slidy.title + " (" + (w3c_slidy.slide_number+1) + ")";
+ w3c_slidy.show_slide_number();
+ },
+
+ page_address: function (uri) {
+ var i = uri.indexOf("#");
+
+ if (i < 0)
+ i = uri.indexOf("%23");
+
+ // check if anchor is entire page
+
+ if (i < 0)
+ return uri; // yes
+
+ return uri.substr(0, i);
+ },
+
+ // only used for IE6 and IE7
+ on_frame_loaded: function (hash) {
+ location.hash = hash;
+ var uri = w3c_slidy.page_address(location.href);
+ location.href = uri + hash;
+ },
+
+ // history hack with thanks to Bertrand Le Roy
+ push_hash: function (hash) {
+ if (hash == "") hash = "#(1)";
+ window.location.hash = hash;
+
+ var doc = document.getElementById("historyFrame").contentWindow.document;
+ doc.open("javascript:'<html></html>'");
+ doc.write("<html><head><script type=\"text/javascript\">window.parent.w3c_slidy.on_frame_loaded('"+
+ (hash) + "');</script></head><body>hello mum</body></html>");
+ doc.close();
+ },
+
+ // find current slide based upon location
+ // first find target anchor and then look
+ // for associated div element enclosing it
+ // finally map that to slide number
+ find_slide_number: function (uri) {
+ // first get anchor from page location
+
+ var i = uri.indexOf("#");
+
+ // check if anchor is entire page
+ if (i < 0)
+ return 0; // yes
+
+ var anchor = unescape(uri.substr(i+1));
+
+ // now use anchor as XML ID to find target
+ var target = document.getElementById(anchor);
+
+ if (!target)
+ {
+ // does anchor look like "(2)" for slide 2 ??
+ // where first slide is (1)
+ var re = /\((\d)+\)/;
+
+ if (anchor.match(re))
+ {
+ var num = parseInt(anchor.substring(1, anchor.length-1));
+
+ if (num > this.slides.length)
+ num = 1;
+
+ if (--num < 0)
+ num = 0;
+
+ return num;
+ }
+
+ // accept [2] for backwards compatibility
+ re = /\[(\d)+\]/;
+
+ if (anchor.match(re))
+ {
+ var num = parseInt(anchor.substring(1, anchor.length-1));
+
+ if (num > this.slides.length)
+ num = 1;
+
+ if (--num < 0)
+ num = 0;
+
+ return num;
+ }
+
+ // oh dear unknown anchor
+ return 0;
+ }
+
+ // search for enclosing slide
+
+ while (true)
+ {
+ // browser coerces html elements to uppercase!
+ if (target.nodeName.toLowerCase() == "div" &&
+ this.has_class(target, "slide"))
+ {
+ // found the slide element
+ break;
+ }
+
+ // otherwise try parent element if any
+
+ target = target.parentNode;
+
+ if (!target)
+ {
+ return 0; // no luck!
+ }
+ };
+
+ for (i = 0; i < slides.length; ++i)
+ {
+ if (slides[i] == target)
+ return i; // success
+ }
+
+ // oh dear still no luck
+ return 0;
+ },
+
+ previous_slide: function (incremental) {
+ if (!w3c_slidy.view_all)
+ {
+ var slide;
+
+ if ((incremental || w3c_slidy.slide_number == 0) && w3c_slidy.last_shown != null)
+ {
+ w3c_slidy.last_shown = w3c_slidy.hide_previous_item(w3c_slidy.last_shown);
+ w3c_slidy.set_eos_status(false);
+ }
+ else if (w3c_slidy.slide_number > 0)
+ {
+ slide = w3c_slidy.slides[w3c_slidy.slide_number];
+ w3c_slidy.hide_slide(slide);
+
+ w3c_slidy.slide_number = w3c_slidy.slide_number - 1;
+ slide = w3c_slidy.slides[w3c_slidy.slide_number];
+ w3c_slidy.set_visibility_all_incremental("visible");
+ w3c_slidy.last_shown = w3c_slidy.previous_incremental_item(null);
+ w3c_slidy.set_eos_status(true);
+ w3c_slidy.show_slide(slide);
+ }
+
+ w3c_slidy.set_location();
+
+ if (!w3c_slidy.ns_pos)
+ w3c_slidy.refresh_toolbar(200);
+ }
+ },
+
+ next_slide: function (incremental) {
+ if (!w3c_slidy.view_all)
+ {
+ var slide, last = w3c_slidy.last_shown;
+
+ if (incremental || w3c_slidy.slide_number == w3c_slidy.slides.length - 1)
+ w3c_slidy.last_shown = w3c_slidy.reveal_next_item(w3c_slidy.last_shown);
+
+ if ((!incremental || w3c_slidy.last_shown == null) &&
+ w3c_slidy.slide_number < w3c_slidy.slides.length - 1)
+ {
+ slide = w3c_slidy.slides[w3c_slidy.slide_number];
+ w3c_slidy.hide_slide(slide);
+
+ w3c_slidy.slide_number = w3c_slidy.slide_number + 1;
+ slide = w3c_slidy.slides[w3c_slidy.slide_number];
+ w3c_slidy.last_shown = null;
+ w3c_slidy.set_visibility_all_incremental("hidden");
+ w3c_slidy.show_slide(slide);
+ }
+ else if (!w3c_slidy.last_shown)
+ {
+ if (last && incremental)
+ w3c_slidy.last_shown = last;
+ }
+
+ w3c_slidy.set_location();
+
+ w3c_slidy.set_eos_status(!w3c_slidy.next_incremental_item(w3c_slidy.last_shown));
+
+ if (!w3c_slidy.ns_pos)
+ w3c_slidy.refresh_toolbar(200);
+ }
+ },
+
+ // to first slide with nothing revealed
+ // i.e. state at start of presentation
+ first_slide: function () {
+ if (!w3c_slidy.view_all)
+ {
+ var slide;
+
+ if (w3c_slidy.slide_number != 0)
+ {
+ slide = w3c_slidy.slides[w3c_slidy.slide_number];
+ w3c_slidy.hide_slide(slide);
+
+ w3c_slidy.slide_number = 0;
+ slide = w3c_slidy.slides[w3c_slidy.slide_number];
+ w3c_slidy.last_shown = null;
+ w3c_slidy.set_visibility_all_incremental("hidden");
+ w3c_slidy.show_slide(slide);
+ }
+
+ w3c_slidy.set_eos_status(
+ !w3c_slidy.next_incremental_item(w3c_slidy.last_shown));
+ w3c_slidy.set_location();
+ }
+ },
+
+ // goto last slide with everything revealed
+ // i.e. state at end of presentation
+ last_slide: function () {
+ if (!w3c_slidy.view_all)
+ {
+ var slide;
+
+ w3c_slidy.last_shown = null; //revealNextItem(lastShown);
+
+ if (w3c_slidy.last_shown == null &&
+ w3c_slidy.slide_number < w3c_slidy.slides.length - 1)
+ {
+ slide = w3c_slidy.slides[w3c_slidy.slide_number];
+ w3c_slidy.hide_slide(slide);
+ w3c_slidy.slide_number = w3c_slidy.slides.length - 1;
+ slide = w3c_slidy.slides[w3c_slidy.slide_number];
+ w3c_slidy.set_visibility_all_incremental("visible");
+ w3c_slidy.last_shown = w3c_slidy.previous_incremental_item(null);
+
+ w3c_slidy.show_slide(slide);
+ }
+ else
+ {
+ w3c_slidy.set_visibility_all_incremental("visible");
+ w3c_slidy.last_shown = w3c_slidy.previous_incremental_item(null);
+ }
+
+ w3c_slidy.set_eos_status(true);
+ w3c_slidy.set_location();
+ }
+ },
+
+
+ // ### check this and consider add/remove class
+ set_eos_status: function (state) {
+ if (this.eos)
+ this.eos.style.color = (state ? "rgb(240,240,240)" : "red");
+ },
+
+ // first slide is 0
+ goto_slide: function (num) {
+ //alert("going to slide " + (num+1));
+ var slide = w3c_slidy.slides[w3c_slidy.slide_number];
+ w3c_slidy.hide_slide(slide);
+ w3c_slidy.slide_number = num;
+ slide = w3c_slidy.slides[w3c_slidy.slide_number];
+ w3c_slidy.last_shown = null;
+ w3c_slidy.set_visibility_all_incremental("hidden");
+ w3c_slidy.set_eos_status(!w3c_slidy.next_incremental_item(w3c_slidy.last_shown));
+ document.title = w3c_slidy.title + " (" + (w3c_slidy.slide_number+1) + ")";
+ w3c_slidy.show_slide(slide);
+ w3c_slidy.show_slide_number();
+ },
+
+
+ show_slide: function (slide) {
+ this.sync_background(slide);
+ window.scrollTo(0,0);
+ this.remove_class(slide, "hidden");
+ },
+
+ hide_slide: function (slide) {
+ this.add_class(slide, "hidden");
+ },
+
+ // show just the backgrounds pertinent to this slide
+ // when slide background-color is transparent
+ // this should now work with rgba color values
+ sync_background: function (slide) {
+ var background;
+ var bgColor;
+
+ if (slide.currentStyle)
+ bgColor = slide.currentStyle["backgroundColor"];
+ else if (document.defaultView)
+ {
+ var styles = document.defaultView.getComputedStyle(slide,null);
+
+ if (styles)
+ bgColor = styles.getPropertyValue("background-color");
+ else // broken implementation probably due Safari or Konqueror
+ {
+ //alert("defective implementation of getComputedStyle()");
+ bgColor = "transparent";
+ }
+ }
+ else
+ bgColor == "transparent";
+
+ if (bgColor == "transparent" ||
+ bgColor.indexOf("rgba") >= 0 ||
+ bgColor.indexOf("opacity") >= 0)
+ {
+ var slideClass = this.get_class_list(slide);
+
+ for (var i = 0; i < this.backgrounds.length; i++)
+ {
+ background = this.backgrounds[i];
+
+ var bgClass = this.get_class_list(background);
+
+ if (this.matching_background(slideClass, bgClass))
+ this.remove_class(background, "hidden");
+ else
+ this.add_class(background, "hidden");
+ }
+ }
+ else // forcibly hide all backgrounds
+ this.hide_backgrounds();
+ },
+
+ hide_backgrounds: function () {
+ for (var i = 0; i < this.backgrounds.length; i++)
+ {
+ background = this.backgrounds[i];
+ this.add_class(background, "hidden");
+ }
+ },
+
+ // compare classes for slide and background
+ matching_background: function (slideClass, bgClass) {
+ var i, count, pattern, result;
+
+ // define pattern as regular expression
+ pattern = /\w+/g;
+
+ // check background class names
+ result = bgClass.match(pattern);
+
+ for (i = count = 0; i < result.length; i++)
+ {
+ if (result[i] == "hidden")
+ continue;
+
+ if (result[i] == "background")
+ continue;
+
+ ++count;
+ }
+
+ if (count == 0) // default match
+ return true;
+
+ // check for matches and place result in array
+ result = slideClass.match(pattern);
+
+ // now check if desired name is present for background
+ for (i = count = 0; i < result.length; i++)
+ {
+ if (result[i] == "hidden")
+ continue;
+
+ if (this.has_token(bgClass, result[i]))
+ return true;
+ }
+
+ return false;
+ },
+
+ resized: function () {
+ var width = 0;
+
+ if ( typeof( window.innerWidth ) == 'number' )
+ width = window.innerWidth; // Non IE browser
+ else if (document.documentElement && document.documentElement.clientWidth)
+ width = document.documentElement.clientWidth; // IE6
+ else if (document.body && document.body.clientWidth)
+ width = document.body.clientWidth; // IE4
+
+ var height = 0;
+
+ if ( typeof( window.innerHeight ) == 'number' )
+ height = window.innerHeight; // Non IE browser
+ else if (document.documentElement && document.documentElement.clientHeight)
+ height = document.documentElement.clientHeight; // IE6
+ else if (document.body && document.body.clientHeight)
+ height = document.body.clientHeight; // IE4
+
+ if (height && (width/height > 1.05*1024/768))
+ {
+ width = height * 1024.0/768;
+ }
+
+ // IE fires onresize even when only font size is changed!
+ // so we do a check to avoid blocking < and > actions
+ if (width != w3c_slidy.last_width || height != w3c_slidy.last_height)
+ {
+ if (width >= 1100)
+ w3c_slidy.size_index = 5; // 4
+ else if (width >= 1000)
+ w3c_slidy.size_index = 4; // 3
+ else if (width >= 800)
+ w3c_slidy.size_index = 3; // 2
+ else if (width >= 600)
+ w3c_slidy.size_index = 2; // 1
+ else if (width)
+ w3c_slidy.size_index = 0;
+
+ // add in font size adjustment from meta element e.g.
+ // <meta name="font-size-adjustment" content="-2" />
+ // useful when slides have too much content ;-)
+
+ if (0 <= w3c_slidy.size_index + w3c_slidy.size_adjustment &&
+ w3c_slidy.size_index + w3c_slidy.size_adjustment < w3c_slidy.sizes.length)
+ w3c_slidy.size_index = w3c_slidy.size_index + w3c_slidy.size_adjustment;
+
+ // enables cross browser use of relative width/height
+ // on object elements for use with SVG and Flash media
+ w3c_slidy.adjust_object_dimensions(width, height);
+
+ if (document.body.style.fontSize != w3c_slidy.sizes[w3c_slidy.size_index])
+ {
+ document.body.style.fontSize = w3c_slidy.sizes[w3c_slidy.size_index];
+ }
+
+ w3c_slidy.last_width = width;
+ w3c_slidy.last_height = height;
+
+ // force reflow to work around Mozilla bug
+ if (w3c_slidy.ns_pos)
+ {
+ var slide = w3c_slidy.slides[w3c_slidy.slide_number];
+ w3c_slidy.hide_slide(slide);
+ w3c_slidy.show_slide(slide);
+ }
+
+ // force correct positioning of toolbar
+ w3c_slidy.refresh_toolbar(200);
+ }
+ },
+
+ scrolled: function () {
+ if (w3c_slidy.toolbar && !w3c_slidy.ns_pos && !w3c_slidy.ie7)
+ {
+ w3c_slidy.hack_offset = w3c_slidy.scroll_x_offset();
+ // hide toolbar
+ w3c_slidy.toolbar.style.display = "none";
+
+ // make it reappear later
+ if (w3c_slidy.scrollhack == 0 && !w3c_slidy.view_all)
+ {
+ setTimeout(function () {w3c_slidy.show_toolbar(); }, 1000);
+ w3c_slidy.scrollhack = 1;
+ }
+ }
+ },
+
+ hide_toolbar: function () {
+ w3c_slidy.add_class(w3c_slidy.toolbar, "hidden");
+ window.focus();
+ },
+
+ // used to ensure IE refreshes toolbar in correct position
+ refresh_toolbar: function (interval) {
+ if (!w3c_slidy.ns_pos && !w3c_slidy.ie7)
+ {
+ w3c_slidy.hide_toolbar();
+ setTimeout(function () {w3c_slidy.show_toolbar(); }, interval);
+ }
+ },
+
+ // restores toolbar after short delay
+ show_toolbar: function () {
+ if (w3c_slidy.want_toolbar)
+ {
+ w3c_slidy.toolbar.style.display = "block";
+
+ if (!w3c_slidy.ns_pos)
+ {
+ // adjust position to allow for scrolling
+ var xoffset = w3c_slidy.scroll_x_offset();
+ w3c_slidy.toolbar.style.left = xoffset;
+ w3c_slidy.toolbar.style.right = xoffset;
+
+ // determine vertical scroll offset
+ //var yoffset = scrollYOffset();
+
+ // bottom is doc height - window height - scroll offset
+ //var bottom = documentHeight() - lastHeight - yoffset
+
+ //if (yoffset > 0 || documentHeight() > lastHeight)
+ // bottom += 16; // allow for height of scrollbar
+
+ w3c_slidy.toolbar.style.bottom = 0; //bottom;
+ }
+
+ w3c_slidy.remove_class(w3c_slidy.toolbar, "hidden");
+ }
+
+ w3c_slidy.scrollhack = 0;
+
+
+ // set the keyboard focus to the help link on the
+ // toolbar to ensure that document has the focus
+ // IE doesn't always work with window.focus()
+ // and this hack has benefit of Enter for help
+
+ try
+ {
+ if (!w3c_slidy.opera)
+ w3c_slidy.help_anchor.focus();
+ }
+ catch (e)
+ {
+ }
+ },
+
+// invoked via F key
+ toggle_toolbar: function () {
+ if (!w3c_slidy.view_all)
+ {
+ if (w3c_slidy.has_class(w3c_slidy.toolbar, "hidden"))
+ {
+ w3c_slidy.remove_class(w3c_slidy.toolbar, "hidden")
+ w3c_slidy.want_toolbar = 1;
+ }
+ else
+ {
+ w3c_slidy.add_class(w3c_slidy.toolbar, "hidden")
+ w3c_slidy.want_toolbar = 0;
+ }
+ }
+ },
+
+ scroll_x_offset: function () {
+ if (window.pageXOffset)
+ return self.pageXOffset;
+
+ if (document.documentElement &&
+ document.documentElement.scrollLeft)
+ return document.documentElement.scrollLeft;
+
+ if (document.body)
+ return document.body.scrollLeft;
+
+ return 0;
+ },
+
+ scroll_y_offset: function () {
+ if (window.pageYOffset)
+ return self.pageYOffset;
+
+ if (document.documentElement &&
+ document.documentElement.scrollTop)
+ return document.documentElement.scrollTop;
+
+ if (document.body)
+ return document.body.scrollTop;
+
+ return 0;
+ },
+
+ // looking for a way to determine height of slide content
+ // the slide itself is set to the height of the window
+ optimize_font_size: function () {
+ var slide = w3c_slidy.slides[w3c_slidy.slide_number];
+
+ //var dh = documentHeight(); //getDocHeight(document);
+ var dh = slide.scrollHeight;
+ var wh = getWindowHeight();
+ var u = 100 * dh / wh;
+
+ alert("window utilization = " + u + "% (doc "
+ + dh + " win " + wh + ")");
+ },
+
+ // from document object
+ get_doc_height: function (doc) {
+ if (!doc)
+ doc = document;
+
+ if (doc && doc.body && doc.body.offsetHeight)
+ return doc.body.offsetHeight; // ns/gecko syntax
+
+ if (doc && doc.body && doc.body.scrollHeight)
+ return doc.body.scrollHeight;
+
+ alert("couldn't determine document height");
+ },
+
+ get_window_height: function () {
+ if ( typeof( window.innerHeight ) == 'number' )
+ return window.innerHeight; // Non IE browser
+
+ if (document.documentElement && document.documentElement.clientHeight)
+ return document.documentElement.clientHeight; // IE6
+
+ if (document.body && document.body.clientHeight)
+ return document.body.clientHeight; // IE4
+ },
+
+ document_height: function () {
+ var sh, oh;
+
+ sh = document.body.scrollHeight;
+ oh = document.body.offsetHeight;
+
+ if (sh && oh)
+ {
+ return (sh > oh ? sh : oh);
+ }
+
+ // no idea!
+ return 0;
+ },
+
+ smaller: function () {
+ if (w3c_slidy.size_index > 0)
+ {
+ --w3c_slidy.size_index;
+ }
+
+ w3c_slidy.toolbar.style.display = "none";
+ document.body.style.fontSize = w3c_slidy.sizes[w3c_slidy.size_index];
+ var slide = w3c_slidy.slides[w3c_slidy.slide_number];
+ w3c_slidy.hide_slide(slide);
+ w3c_slidy.show_slide(slide);
+ setTimeout(function () {w3c_slidy.show_toolbar(); }, 50);
+ },
+
+ bigger: function () {
+ if (w3c_slidy.size_index < w3c_slidy.sizes.length - 1)
+ {
+ ++w3c_slidy.size_index;
+ }
+
+ w3c_slidy.toolbar.style.display = "none";
+ document.body.style.fontSize = w3c_slidy.sizes[w3c_slidy.size_index];
+ var slide = w3c_slidy.slides[w3c_slidy.slide_number];
+ w3c_slidy.hide_slide(slide);
+ w3c_slidy.show_slide(slide);
+ setTimeout(function () {w3c_slidy.show_toolbar(); }, 50);
+ },
+
+ // enables cross browser use of relative width/height
+ // on object elements for use with SVG and Flash media
+ // with thanks to Ivan Herman for the suggestion
+ adjust_object_dimensions: function (width, height) {
+ for( var i = 0; i < w3c_slidy.objects.length; i++ )
+ {
+ var obj = this.objects[i];
+ var mimeType = obj.getAttribute("type");
+
+ if (mimeType == "image/svg+xml" || mimeType == "application/x-shockwave-flash")
+ {
+ if ( !obj.initialWidth )
+ obj.initialWidth = obj.getAttribute("width");
+
+ if ( !obj.initialHeight )
+ obj.initialHeight = obj.getAttribute("height");
+
+ if ( obj.initialWidth && obj.initialWidth.charAt(obj.initialWidth.length-1) == "%" )
+ {
+ var w = parseInt(obj.initialWidth.slice(0, obj.initialWidth.length-1));
+ var newW = width * (w/100.0);
+ obj.setAttribute("width",newW);
+ }
+
+ if ( obj.initialHeight &&
+ obj.initialHeight.charAt(obj.initialHeight.length-1) == "%" )
+ {
+ var h = parseInt(obj.initialHeight.slice(0, obj.initialHeight.length-1));
+ var newH = height * (h/100.0);
+ obj.setAttribute("height", newH);
+ }
+ }
+ }
+ },
+
+ // needed for Opera to inhibit default behavior
+ // since Opera delivers keyPress even if keyDown
+ // was cancelled
+ key_press: function (event) {
+ if (!event)
+ event = window.event;
+
+ if (!w3c_slidy.key_wanted)
+ return w3c_slidy.cancel(event);
+
+ return true;
+ },
+
+ // See e.g. http://www.quirksmode.org/js/events/keys.html for keycodes
+ key_down: function (event) {
+ var key, target, tag;
+
+ w3c_slidy.key_wanted = true;
+
+ if (!event)
+ event = window.event;
+
+ // kludge around NS/IE differences
+ if (window.event)
+ {
+ key = window.event.keyCode;
+ target = window.event.srcElement;
+ }
+ else if (event.which)
+ {
+ key = event.which;
+ target = event.target;
+ }
+ else
+ return true; // Yikes! unknown browser
+
+ // ignore event if key value is zero
+ // as for alt on Opera and Konqueror
+ if (!key)
+ return true;
+
+ // avoid interfering with keystroke
+ // behavior for non-slidy chrome elements
+ if (!w3c_slidy.slidy_chrome(target) &&
+ w3c_slidy.special_element(target))
+ return true;
+
+ // check for concurrent control/command/alt key
+ // but are these only present on mouse events?
+
+ if (event.ctrlKey || event.altKey || event.metaKey)
+ return true;
+
+ // dismiss table of contents if visible
+ if (w3c_slidy.is_shown_toc() && key != 9 && key != 16 && key != 38 && key != 40)
+ {
+ w3c_slidy.hide_table_of_contents(true);
+
+ if (key == 27 || key == 84 || key == 67)
+ return w3c_slidy.cancel(event);
+ }
+
+ if (key == 34) // Page Down
+ {
+ if (w3c_slidy.view_all)
+ return true;
+
+ w3c_slidy.next_slide(false);
+ return w3c_slidy.cancel(event);
+ }
+ else if (key == 33) // Page Up
+ {
+ if (w3c_slidy.view_all)
+ return true;
+
+ w3c_slidy.previous_slide(false);
+ return w3c_slidy.cancel(event);
+ }
+ else if (key == 32) // space bar
+ {
+ w3c_slidy.next_slide(true);
+ return w3c_slidy.cancel(event);
+ }
+ else if (key == 37) // Left arrow
+ {
+ w3c_slidy.previous_slide(!event.shiftKey);
+ return w3c_slidy.cancel(event);
+ }
+ else if (key == 36) // Home
+ {
+ w3c_slidy.first_slide();
+ return w3c_slidy.cancel(event);
+ }
+ else if (key == 35) // End
+ {
+ w3c_slidy.last_slide();
+ return w3c_slidy.cancel(event);
+ }
+ else if (key == 39) // Right arrow
+ {
+ w3c_slidy.next_slide(!event.shiftKey);
+ return w3c_slidy.cancel(event);
+ }
+ else if (key == 13) // Enter
+ {
+ if (w3c_slidy.outline)
+ {
+ if (w3c_slidy.outline.visible)
+ w3c_slidy.fold(w3c_slidy.outline);
+ else
+ w3c_slidy.unfold(w3c_slidy.outline);
+
+ return w3c_slidy.cancel(event);
+ }
+ }
+ else if (key == 188) // < for smaller fonts
+ {
+ w3c_slidy.smaller();
+ return w3c_slidy.cancel(event);
+ }
+ else if (key == 190) // > for larger fonts
+ {
+ w3c_slidy.bigger();
+ return w3c_slidy.cancel(event);
+ }
+ else if (key == 189 || key == 109) // - for smaller fonts
+ {
+ w3c_slidy.smaller();
+ return w3c_slidy.cancel(event);
+ }
+ else if (key == 187 || key == 191 || key == 107) // = + for larger fonts
+ {
+ w3c_slidy.bigger();
+ return w3c_slidy.cancel(event);
+ }
+ else if (key == 83) // S for smaller fonts
+ {
+ w3c_slidy.smaller();
+ return w3c_slidy.cancel(event);
+ }
+ else if (key == 66) // B for larger fonts
+ {
+ w3c_slidy.bigger();
+ return w3c_slidy.cancel(event);
+ }
+ else if (key == 90) // Z for last slide
+ {
+ w3c_slidy.last_slide();
+ return w3c_slidy.cancel(event);
+ }
+ else if (key == 70) // F for toggle toolbar
+ {
+ w3c_slidy.toggle_toolbar();
+ return w3c_slidy.cancel(event);
+ }
+ else if (key == 65) // A for toggle view single/all slides
+ {
+ w3c_slidy.toggle_view();
+ return w3c_slidy.cancel(event);
+ }
+ else if (key == 75) // toggle action of left click for next page
+ {
+ w3c_slidy.mouse_click_enabled = !w3c_slidy.mouse_click_enabled;
+ var alert_msg = (w3c_slidy.mouse_click_enabled ?
+ "enabled" : "disabled") + " mouse click advance";
+
+ alert(w3c_slidy.localize(alert_msg));
+ return w3c_slidy.cancel(event);
+ }
+ else if (key == 84 || key == 67) // T or C for table of contents
+ {
+ if (w3c_slidy.toc)
+ w3c_slidy.toggle_table_of_contents();
+
+ return w3c_slidy.cancel(event);
+ }
+ else if (key == 72) // H for help
+ {
+ window.location = w3c_slidy.help_page;
+ return w3c_slidy.cancel(event);
+ }
+ //else alert("key code is "+ key);
+
+ return true;
+ },
+
+ // safe for both text/html and application/xhtml+xml
+ create_element: function (name) {
+ if (this.xhtml && (typeof document.createElementNS != 'undefined'))
+ return document.createElementNS("http://www.w3.org/1999/xhtml", name)
+
+ return document.createElement(name);
+ },
+
+ get_element_style: function (elem, IEStyleProp, CSSStyleProp) {
+ if (elem.currentStyle)
+ {
+ return elem.currentStyle[IEStyleProp];
+ }
+ else if (window.getComputedStyle)
+ {
+ var compStyle = window.getComputedStyle(elem, "");
+ return compStyle.getPropertyValue(CSSStyleProp);
+ }
+ return "";
+ },
+
+ // the string str is a whitespace separated list of tokens
+ // test if str contains a particular token, e.g. "slide"
+ has_token: function (str, token) {
+ if (str)
+ {
+ // define pattern as regular expression
+ var pattern = /\w+/g;
+
+ // check for matches
+ // place result in array
+ var result = str.match(pattern);
+
+ // now check if desired token is present
+ for (var i = 0; i < result.length; i++)
+ {
+ if (result[i] == token)
+ return true;
+ }
+ }
+
+ return false;
+ },
+
+ get_class_list: function (element) {
+ if (typeof element.className != 'undefined')
+ return element.className;
+
+ return element.getAttribute("class");
+ },
+
+ has_class: function (element, name) {
+ if (element.nodeType != 1)
+ return false;
+
+ var regexp = new RegExp("(^| )" + name + "\W*");
+
+ if (typeof element.className != 'undefined')
+ return regexp.test(element.className);
+
+ return regexp.test(element.getAttribute("class"));
+ },
+
+ remove_class: function (element, name) {
+ var regexp = new RegExp("(^| )" + name + "\W*");
+ var clsval = "";
+
+ if (typeof element.className != 'undefined')
+ {
+ clsval = element.className;
+
+ if (clsval)
+ {
+ clsval = clsval.replace(regexp, "");
+ element.className = clsval;
+ }
+ }
+ else
+ {
+ clsval = element.getAttribute("class");
+
+ if (clsval)
+ {
+ clsval = clsval.replace(regexp, "");
+ element.setAttribute("class", clsval);
+ }
+ }
+ },
+
+ add_class: function (element, name) {
+ if (!this.has_class(element, name))
+ {
+ if (typeof element.className != 'undefined')
+ element.className += " " + name;
+ else
+ {
+ var clsval = element.getAttribute("class");
+ clsval = clsval ? clsval + " " + name : name;
+ element.setAttribute("class", clsval);
+ }
+ }
+ },
+
+ // HTML elements that can be used with class="incremental"
+ // note that you can also put the class on containers like
+ // up, ol, dl, and div to make their contents appear
+ // incrementally. Upper case is used since this is what
+ // browsers report for HTML node names (text/html).
+ incremental_elements: null,
+ okay_for_incremental: function (name) {
+ if (!this.incremental_elements)
+ {
+ var inclist = new Array();
+ inclist["p"] = true;
+ inclist["pre"] = true;
+ inclist["li"] = true;
+ inclist["blockquote"] = true;
+ inclist["dt"] = true;
+ inclist["dd"] = true;
+ inclist["h2"] = true;
+ inclist["h3"] = true;
+ inclist["h4"] = true;
+ inclist["h5"] = true;
+ inclist["h6"] = true;
+ inclist["span"] = true;
+ inclist["address"] = true;
+ inclist["table"] = true;
+ inclist["tr"] = true;
+ inclist["th"] = true;
+ inclist["td"] = true;
+ inclist["img"] = true;
+ inclist["object"] = true;
+ this.incremental_elements = inclist;
+ }
+ return this.incremental_elements[name.toLowerCase()];
+ },
+
+ next_incremental_item: function (node) {
+ var br = this.is_xhtml ? "br" : "BR";
+ var slide = w3c_slidy.slides[w3c_slidy.slide_number];
+
+ for (;;)
+ {
+ node = w3c_slidy.next_node(slide, node);
+
+ if (node == null || node.parentNode == null)
+ break;
+
+ if (node.nodeType == 1) // ELEMENT
+ {
+ if (node.nodeName == br)
+ continue;
+
+ if (w3c_slidy.has_class(node, "incremental")
+ && w3c_slidy.okay_for_incremental(node.nodeName))
+ return node;
+
+ if (w3c_slidy.has_class(node.parentNode, "incremental")
+ && !w3c_slidy.has_class(node, "non-incremental"))
+ return node;
+ }
+ }
+
+ return node;
+ },
+
+ previous_incremental_item: function (node) {
+ var br = this.is_xhtml ? "br" : "BR";
+ var slide = w3c_slidy.slides[w3c_slidy.slide_number];
+
+ for (;;)
+ {
+ node = w3c_slidy.previous_node(slide, node);
+
+ if (node == null || node.parentNode == null)
+ break;
+
+ if (node.nodeType == 1)
+ {
+ if (node.nodeName == br)
+ continue;
+
+ if (w3c_slidy.has_class(node, "incremental")
+ && w3c_slidy.okay_for_incremental(node.nodeName))
+ return node;
+
+ if (w3c_slidy.has_class(node.parentNode, "incremental")
+ && !w3c_slidy.has_class(node, "non-incremental"))
+ return node;
+ }
+ }
+
+ return node;
+ },
+
+ // set visibility for all elements on current slide with
+ // a parent element with attribute class="incremental"
+ set_visibility_all_incremental: function (value) {
+ var node = this.next_incremental_item(null);
+
+ if (value == "hidden")
+ {
+ while (node)
+ {
+ w3c_slidy.add_class(node, "invisible");
+ node = w3c_slidy.next_incremental_item(node);
+ }
+ }
+ else // value == "visible"
+ {
+ while (node)
+ {
+ w3c_slidy.remove_class(node, "invisible");
+ node = w3c_slidy.next_incremental_item(node);
+ }
+ }
+ },
+
+ // reveal the next hidden item on the slide
+ // node is null or the node that was last revealed
+ reveal_next_item: function (node) {
+ node = w3c_slidy.next_incremental_item(node);
+
+ if (node && node.nodeType == 1) // an element
+ w3c_slidy.remove_class(node, "invisible");
+
+ return node;
+ },
+
+ // exact inverse of revealNextItem(node)
+ hide_previous_item: function (node) {
+ if (node && node.nodeType == 1) // an element
+ w3c_slidy.add_class(node, "invisible");
+
+ return this.previous_incremental_item(node);
+ },
+
+ // left to right traversal of root's content
+ next_node: function (root, node) {
+ if (node == null)
+ return root.firstChild;
+
+ if (node.firstChild)
+ return node.firstChild;
+
+ if (node.nextSibling)
+ return node.nextSibling;
+
+ for (;;)
+ {
+ node = node.parentNode;
+
+ if (!node || node == root)
+ break;
+
+ if (node && node.nextSibling)
+ return node.nextSibling;
+ }
+
+ return null;
+ },
+
+ // right to left traversal of root's content
+ previous_node: function (root, node) {
+ if (node == null)
+ {
+ node = root.lastChild;
+
+ if (node)
+ {
+ while (node.lastChild)
+ node = node.lastChild;
+ }
+
+ return node;
+ }
+
+ if (node.previousSibling)
+ {
+ node = node.previousSibling;
+
+ while (node.lastChild)
+ node = node.lastChild;
+
+ return node;
+ }
+
+ if (node.parentNode != root)
+ return node.parentNode;
+
+ return null;
+ },
+
+ previous_sibling_element: function (el) {
+ el = el.previousSibling;
+
+ while (el && el.nodeType != 1)
+ el = el.previousSibling;
+
+ return el;
+ },
+
+ next_sibling_element: function (el) {
+ el = el.nextSibling;
+
+ while (el && el.nodeType != 1)
+ el = el.nextSibling;
+
+ return el;
+ },
+
+ first_child_element: function (el) {
+ var node;
+
+ for (node = el.firstChild; node; node = node.nextSibling)
+ {
+ if (node.nodeType == 1)
+ break;
+ }
+
+ return node;
+ },
+
+ first_tag: function (element, tag) {
+ var node;
+
+ if (!this.is_xhtml)
+ tag = tag.toUpperCase();
+
+ for (node = element.firstChild; node; node = node.nextSibling)
+ {
+ if (node.nodeType == 1 && node.nodeName == tag)
+ break;
+ }
+
+ return node;
+ },
+
+ hide_selection: function () {
+ if (window.getSelection) // Firefox, Chromium, Safari, Opera
+ {
+ var selection = window.getSelection();
+
+ if (selection.rangeCount > 0)
+ {
+ var range = selection.getRangeAt(0);
+ range.collapse (false);
+ }
+ }
+ else // Internet Explorer
+ {
+ var textRange = document.selection.createRange ();
+ textRange.collapse (false);
+ }
+ },
+
+ get_selected_text: function () {
+ try
+ {
+ if (window.getSelection)
+ return window.getSelection().toString();
+
+ if (document.getSelection)
+ return document.getSelection().toString();
+
+ if (document.selection)
+ return document.selection.createRange().text;
+ }
+ catch (e)
+ {
+ }
+
+ return "";
+ },
+
+ // make note of length of selected text
+ // as this evaluates to zero in click event
+ mouse_button_up: function (e) {
+ w3c_slidy.selected_text_len = w3c_slidy.get_selected_text().length;
+ },
+
+ // right mouse button click is reserved for context menus
+ // it is more reliable to detect rightclick than leftclick
+ mouse_button_click: function (e) {
+ var rightclick = false;
+ var leftclick = false;
+ var middleclick = false;
+ var target;
+
+ if (!e)
+ var e = window.event;
+
+ if (e.target)
+ target = e.target;
+ else if (e.srcElement)
+ target = e.srcElement;
+
+ // work around Safari bug
+ if (target.nodeType == 3)
+ target = target.parentNode;
+
+ if (e.which) // all browsers except IE
+ {
+ leftclick = (e.which == 1);
+ middleclick = (e.which == 2);
+ rightclick = (e.which == 3);
+ }
+ else if (e.button)
+ {
+ // Konqueror gives 1 for left, 4 for middle
+ // IE6 gives 0 for left and not 1 as I expected
+
+ if (e.button == 4)
+ middleclick = true;
+
+ // all browsers agree on 2 for right button
+ rightclick = (e.button == 2);
+ }
+ else
+ leftclick = true;
+
+ if (w3c_slidy.selected_text_len > 0)
+ {
+ w3c_slidy.stop_propagation(e);
+ e.cancel = true;
+ e.returnValue = false;
+ return false;
+ }
+
+ // dismiss table of contents
+ w3c_slidy.hide_table_of_contents(false);
+
+ // check if target is something that probably want's clicks
+ // e.g. a, embed, object, input, textarea, select, option
+ var tag = target.nodeName.toLowerCase();
+
+ if (w3c_slidy.mouse_click_enabled && leftclick &&
+ !w3c_slidy.special_element(target) &&
+ !target.onclick)
+ {
+ w3c_slidy.next_slide(true);
+ w3c_slidy.stop_propagation(e);
+ e.cancel = true;
+ e.returnValue = false;
+ return false;
+ }
+
+ return true;
+ },
+
+ special_element: function (element) {
+ if (this.has_class(element, "non-interactive"))
+ return false;
+
+ var tag = element.nodeName.toLowerCase();
+
+ return element.onkeydown ||
+ element.onclick ||
+ tag == "a" ||
+ tag == "embed" ||
+ tag == "object" ||
+ tag == "video" ||
+ tag == "audio" ||
+ tag == "svg" ||
+ tag == "canvas" ||
+ tag == "input" ||
+ tag == "textarea" ||
+ tag == "select" ||
+ tag == "option";
+ },
+
+ slidy_chrome: function (el) {
+ while (el)
+ {
+ if (el == w3c_slidy.toc ||
+ el == w3c_slidy.toolbar ||
+ w3c_slidy.has_class(el, "outline"))
+ return true;
+
+ el = el.parentNode;
+ }
+
+ return false;
+ },
+
+ get_key: function (e)
+ {
+ var key;
+
+ // kludge around NS/IE differences
+ if (typeof window.event != "undefined")
+ key = window.event.keyCode;
+ else if (e.which)
+ key = e.which;
+
+ return key;
+ },
+
+ get_target: function (e) {
+ var target;
+
+ if (!e)
+ e = window.event;
+
+ if (e.target)
+ target = e.target;
+ else if (e.srcElement)
+ target = e.srcElement;
+
+ if (target.nodeType != 1)
+ target = target.parentNode;
+
+ return target;
+ },
+
+ // does display property provide correct defaults?
+ is_block: function (elem) {
+ var tag = elem.nodeName.toLowerCase();
+
+ return tag == "ol" || tag == "ul" || tag == "p" ||
+ tag == "li" || tag == "table" || tag == "pre" ||
+ tag == "h1" || tag == "h2" || tag == "h3" ||
+ tag == "h4" || tag == "h5" || tag == "h6" ||
+ tag == "blockquote" || tag == "address";
+ },
+
+ add_listener: function (element, event, handler) {
+ if (window.addEventListener)
+ element.addEventListener(event, handler, false);
+ else
+ element.attachEvent("on"+event, handler);
+ },
+
+ // used to prevent event propagation from field controls
+ stop_propagation: function (event) {
+ event = event ? event : window.event;
+ event.cancelBubble = true; // for IE
+
+ if (event.stopPropagation)
+ event.stopPropagation();
+
+ return true;
+ },
+
+ cancel: function (event) {
+ if (event)
+ {
+ event.cancel = true;
+ event.returnValue = false;
+
+ if (event.preventDefault)
+ event.preventDefault();
+ }
+
+ w3c_slidy.key_wanted = false;
+ return false;
+ },
+
+// for each language define an associative array
+// and also the help text which is longer
+
+ strings_es: {
+ "slide":"pág.",
+ "help?":"Ayuda",
+ "contents?":"Ãndice",
+ "table of contents":"tabla de contenidos",
+ "Table of Contents":"Tabla de Contenidos",
+ "restart presentation":"Reiniciar presentación",
+ "restart?":"Inicio"
+ },
+ help_es:
+ "Utilice el ratón, barra espaciadora, teclas Izda/Dcha, " +
+ "o Re pág y Av pág. Use S y B para cambiar el tamaño de fuente.",
+
+ strings_ca: {
+ "slide":"pàg..",
+ "help?":"Ajuda",
+ "contents?":"Ãndex",
+ "table of contents":"taula de continguts",
+ "Table of Contents":"Taula de Continguts",
+ "restart presentation":"Reiniciar presentació",
+ "restart?":"Inici"
+ },
+ help_ca:
+ "Utilitzi el ratolí, barra espaiadora, tecles Esq./Dta. " +
+ "o Re pàg y Av pàg. Usi S i B per canviar grandària de font.",
+
+ strings_cs: {
+ "slide":"snímek",
+ "help?":"nápověda",
+ "contents?":"obsah",
+ "table of contents":"obsah prezentace",
+ "Table of Contents":"Obsah prezentace",
+ "restart presentation":"znovu spustit prezentaci",
+ "restart?":"restart"
+ },
+ help_cs:
+ "Prezentaci můžete procházet pomocí kliknutí myši, mezerníku, " +
+ "šipek vlevo a vpravo nebo kláves PageUp a PageDown. Písmo se " +
+ "dá zvětšit a zmenšit pomocí kláves B a S.",
+
+ strings_nl: {
+ "slide":"pagina",
+ "help?":"Help?",
+ "contents?":"Inhoud?",
+ "table of contents":"inhoudsopgave",
+ "Table of Contents":"Inhoudsopgave",
+ "restart presentation":"herstart presentatie",
+ "restart?":"Herstart?"
+ },
+ help_nl:
+ "Navigeer d.m.v. het muis, spatiebar, Links/Rechts toetsen, " +
+ "of PgUp en PgDn. Gebruik S en B om de karaktergrootte te veranderen.",
+
+ strings_de: {
+ "slide":"Seite",
+ "help?":"Hilfe",
+ "contents?":"Ãœbersicht",
+ "table of contents":"Inhaltsverzeichnis",
+ "Table of Contents":"Inhaltsverzeichnis",
+ "restart presentation":"Präsentation neu starten",
+ "restart?":"Neustart"
+ },
+ help_de:
+ "Benutzen Sie die Maus, Leerschlag, die Cursortasten links/rechts oder " +
+ "Page up/Page Down zum Wechseln der Seiten und S und B für die Schriftgrösse.",
+
+ strings_pl: {
+ "slide":"slajd",
+ "help?":"pomoc?",
+ "contents?":"spis treści?",
+ "table of contents":"spis treści",
+ "Table of Contents":"Spis Treści",
+ "restart presentation":"Restartuj prezentacjÄ™",
+ "restart?":"restart?"
+ },
+ help_pl:
+ "Zmieniaj slajdy klikając myszą, naciskając spację, strzałki lewo/prawo" +
+ "lub PgUp / PgDn. Użyj klawiszy S i B, aby zmienić rozmiar czczionki.",
+
+ strings_fr: {
+ "slide":"page",
+ "help?":"Aide",
+ "contents?":"Index",
+ "table of contents":"table des matières",
+ "Table of Contents":"Table des matières",
+ "restart presentation":"Recommencer l'exposé",
+ "restart?":"Début"
+ },
+ help_fr:
+ "Naviguez avec la souris, la barre d'espace, les flèches " +
+ "gauche/droite ou les touches Pg Up, Pg Dn. Utilisez " +
+ "les touches S et B pour modifier la taille de la police.",
+
+ strings_hu: {
+ "slide":"oldal",
+ "help?":"segítség",
+ "contents?":"tartalom",
+ "table of contents":"tartalomjegyzék",
+ "Table of Contents":"Tartalomjegyzék",
+ "restart presentation":"bemutató újraindítása",
+ "restart?":"újraindítás"
+ },
+ help_hu:
+ "Az oldalak közti lépkedéshez kattintson az egérrel, vagy " +
+ "használja a szóköz, a bal, vagy a jobb nyíl, illetve a Page Down, " +
+ "Page Up billentyűket. Az S és a B billentyűkkel változtathatja " +
+ "a szöveg méretét.",
+
+ strings_it: {
+ "slide":"pag.",
+ "help?":"Aiuto",
+ "contents?":"Indice",
+ "table of contents":"indice",
+ "Table of Contents":"Indice",
+ "restart presentation":"Ricominciare la presentazione",
+ "restart?":"Inizio"
+ },
+ help_it:
+ "Navigare con mouse, barra spazio, frecce sinistra/destra o " +
+ "PgUp e PgDn. Usare S e B per cambiare la dimensione dei caratteri.",
+
+ strings_el: {
+ "slide":"σελίδα",
+ "help?":"βοήθεια;",
+ "contents?":"πεÏιεχόμενα;",
+ "table of contents":"πίνακας πεÏιεχομένων",
+ "Table of Contents":"Πίνακας ΠεÏιεχομένων",
+ "restart presentation":"επανεκκίνηση παÏουσίασης",
+ "restart?":"επανεκκίνηση;"
+ },
+ help_el:
+ "Πλοηγηθείτε με το κλίκ του ποντικιοÏ, το space, τα βέλη αÏιστεÏά/δεξιά, " +
+ "ή Page Up και Page Down. ΧÏησιμοποιήστε τα πλήκτÏα S και B για να αλλάξετε " +
+ "το μέγεθος της γÏαμματοσειÏάς.",
+
+ strings_ja: {
+ "slide":"スライド",
+ "help?":"ヘルプ",
+ "contents?":"目次",
+ "table of contents":"目次を表示",
+ "Table of Contents":"目次",
+ "restart presentation":"最åˆã‹ã‚‰å†ç”Ÿ",
+ "restart?":"最åˆã‹ã‚‰"
+ },
+ help_ja:
+ "マウス左クリック ・ スペース ・ å·¦å³ã‚­ãƒ¼ " +
+ "ã¾ãŸã¯ Page Up ・ Page Downã§æ“作, S ・ Bã§ãƒ•ã‚©ãƒ³ãƒˆã‚µã‚¤ã‚ºå¤‰æ›´",
+
+ strings_zh: {
+ "slide":"å¹»ç¯ç‰‡",
+ "help?":"帮助?",
+ "contents?":"内容?",
+ "table of contents":"目录",
+ "Table of Contents":"目录",
+ "restart presentation":"é‡æ–°å¯åŠ¨å±•ç¤º",
+ "restart?":"é‡æ–°å¯åŠ¨?"
+ },
+ help_zh:
+ "用鼠标点击, 空格æ¡, å·¦å³ç®­å¤´, Pg Up å’Œ Pg Dn 导航. " +
+ "用 S, B 改å˜å­—体大å°.",
+
+ strings_ru: {
+ "slide":"Ñлайд",
+ "help?":"помощь?",
+ "contents?":"Ñодержание?",
+ "table of contents":"оглавление",
+ "Table of Contents":"Оглавление",
+ "restart presentation":"перезапуÑтить презентацию",
+ "restart?":"перезапуÑк?"
+ },
+ help_ru:
+ "ПеремещайтеÑÑŒ ÐºÐ»Ð¸ÐºÐ°Ñ Ð¼Ñ‹ÑˆÐºÐ¾Ð¹, иÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÑ ÐºÐ»Ð°Ð²Ð¸ÑˆÑƒ пробел, Ñтрелки" +
+ "влево/вправо или Pg Up и Pg Dn. Клавиши S и B менÑÑŽÑ‚ размер шрифта.",
+
+ strings_sv: {
+ "slide":"sida",
+ "help?":"hjälp",
+ "contents?":"innehåll",
+ "table of contents":"innehållsförteckning",
+ "Table of Contents":"Innehållsförteckning",
+ "restart presentation":"visa presentationen från början",
+ "restart?":"börja om"
+ },
+ help_sv:
+ "Bläddra med ett klick med vänstra musknappen, mellanslagstangenten, " +
+ "vänster- och högerpiltangenterna eller tangenterna Pg Up, Pg Dn. " +
+ "Använd tangenterna S och B för att ändra textens storlek.",
+
+ strings: { },
+
+ localize: function (src) {
+ if (src == "")
+ return src;
+
+ // try full language code, e.g. en-US
+ var s, lookup = w3c_slidy.strings[w3c_slidy.lang];
+
+ if (lookup)
+ {
+ s = lookup[src];
+
+ if (s)
+ return s;
+ }
+
+ // strip country code suffix, e.g.
+ // try en if undefined for en-US
+ var lg = w3c_slidy.lang.split("-");
+
+ if (lg.length > 1)
+ {
+ lookup = w3c_slidy.strings[lg[0]];
+
+ if (lookup)
+ {
+ s = lookup[src];
+
+ if (s)
+ return s;
+ }
+ }
+
+ // otherwise string as is
+ return src;
+ },
+
+ init_localization: function () {
+ var i18n = w3c_slidy;
+ var help_text = w3c_slidy.help_text;
+
+ // each such language array is declared in the localize array
+ // this is used as in w3c_slidy.localize("foo");
+ this.strings = {
+ "es":this.strings_es,
+ "ca":this.strings_ca,
+ "cs":this.strings_cs,
+ "nl":this.strings_nl,
+ "de":this.strings_de,
+ "pl":this.strings_pl,
+ "fr":this.strings_fr,
+ "hu":this.strings_hu,
+ "it":this.strings_it,
+ "el":this.strings_el,
+ "jp":this.strings_ja,
+ "zh":this.strings_zh,
+ "ru":this.strings_ru,
+ "sv":this.strings_sv
+ },
+
+ i18n.strings_es[help_text] = i18n.help_es;
+ i18n.strings_ca[help_text] = i18n.help_ca;
+ i18n.strings_cs[help_text] = i18n.help_cs;
+ i18n.strings_nl[help_text] = i18n.help_nl;
+ i18n.strings_de[help_text] = i18n.help_de;
+ i18n.strings_pl[help_text] = i18n.help_pl;
+ i18n.strings_fr[help_text] = i18n.help_fr;
+ i18n.strings_hu[help_text] = i18n.help_hu;
+ i18n.strings_it[help_text] = i18n.help_it;
+ i18n.strings_el[help_text] = i18n.help_el;
+ i18n.strings_ja[help_text] = i18n.help_ja;
+ i18n.strings_zh[help_text] = i18n.help_zh;
+ i18n.strings_ru[help_text] = i18n.help_ru;
+ i18n.strings_sv[help_text] = i18n.help_sv;
+
+ w3c_slidy.lang = document.body.parentNode.getAttribute("lang");
+
+ if (!w3c_slidy.lang)
+ w3c_slidy.lang = document.body.parentNode.getAttribute("xml:lang");
+
+ if (!w3c_slidy.lang)
+ w3c_slidy.lang = "en";
+ }
+};
+
+// hack for back button behavior
+if (w3c_slidy.ie6 || w3c_slidy.ie7)
+{
+ document.write("<iframe id='historyFrame' " +
+ "src='javascript:\"<html"+"></"+"html>\"' " +
+ "height='1' width='1' " +
+ "style='position:absolute;left:-800px'></iframe>");
+}
+
+// attach event listeners for initialization
+w3c_slidy.set_up();
+
+// hide the slides as soon as body element is available
+// to reduce annoying screen mess before the onload event
+setTimeout(w3c_slidy.hide_slides, 50);
+
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/scripts/slidy.js.gz b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/scripts/slidy.js.gz
new file mode 100755
index 000000000..b1c58e4c9
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/scripts/slidy.js.gz
Binary files differ
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/styles/.htaccess b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/styles/.htaccess
new file mode 100755
index 000000000..d395348ae
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/styles/.htaccess
@@ -0,0 +1,28 @@
+Options +MultiViews
+LanguagePriority en
+AddLanguage pt-br .pt-br
+
+<Files ~ "*.html">
+
+ForceType 'text/html; charset=utf-8'
+
+</Files>
+
+<Files ~ "*.xhtml">
+
+ForceType 'application/xhtml+xml; charset=utf-8'
+
+</Files>
+
+<Files ~ *.css">
+
+ForceType 'text/css; charset=utf-8'
+
+</Files>
+
+<Files ~ "*.js">
+
+ForceType 'text/javascript; charset=utf-8'
+
+</Files>
+mkdir
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/styles/slidy.css b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/styles/slidy.css
new file mode 100755
index 000000000..0197e64d0
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/styles/slidy.css
@@ -0,0 +1,405 @@
+/* slidy.css
+
+ Copyright (c) 2005-2010 W3C (MIT, ERCIM, Keio), All Rights Reserved.
+ W3C liability, trademark, document use and software licensing
+ rules apply, see:
+
+ http://www.w3.org/Consortium/Legal/copyright-documents
+ http://www.w3.org/Consortium/Legal/copyright-software
+*/
+body
+{
+ margin: 0 0 0 0;
+ padding: 0 0 0 0;
+ width: 100%;
+ height: 100%;
+ color: black;
+ background-color: white;
+ font-family: "Gill Sans MT", "Gill Sans", GillSans, sans-serif;
+ font-size: 14pt;
+}
+
+div.toolbar {
+ position: fixed; z-index: 200;
+ top: auto; bottom: 0; left: 0; right: 0;
+ height: 1.2em; text-align: right;
+ padding-left: 1em;
+ padding-right: 1em;
+ font-size: 60%;
+ color: red;
+ background-color: rgb(240,240,240);
+ border-top: solid 1px rgb(180,180,180);
+}
+
+div.toolbar span.copyright {
+ color: black;
+ margin-left: 0.5em;
+}
+
+div.initial_prompt {
+ position: absolute;
+ z-index: 1000;
+ bottom: 1.2em;
+ width: 100%;
+ background-color: rgb(200,200,200);
+ opacity: 0.35;
+ background-color: rgb(200,200,200, 0.35);
+ cursor: pointer;
+}
+
+div.initial_prompt p.help {
+ text-align: center;
+}
+
+div.initial_prompt p.close {
+ text-align: right;
+ font-style: italic;
+}
+
+div.slidy_toc {
+ position: absolute;
+ z-index: 300;
+ width: 60%;
+ max-width: 30em;
+ height: 30em;
+ overflow: auto;
+ top: auto;
+ right: auto;
+ left: 4em;
+ bottom: 4em;
+ padding: 1em;
+ background: rgb(240,240,240);
+ border-style: solid;
+ border-width: 2px;
+ font-size: 60%;
+}
+
+div.slidy_toc .toc_heading {
+ text-align: center;
+ width: 100%;
+ margin: 0;
+ margin-bottom: 1em;
+ border-bottom-style: solid;
+ border-bottom-color: rgb(180,180,180);
+ border-bottom-width: 1px;
+}
+
+div.slide {
+ z-index: 20;
+ margin: 0 0 0 0;
+ padding-top: 0;
+ padding-bottom: 0;
+ padding-left: 20px;
+ padding-right: 20px;
+ border-width: 0;
+ clear: both;
+ top: 0;
+ bottom: 0;
+ left: 0;
+ right: 0;
+ line-height: 120%;
+ background-color: transparent;
+}
+
+div.background {
+ display: none;
+}
+
+div.handout {
+ margin-left: 20px;
+ margin-right: 20px;
+}
+
+div.slide.titlepage {
+ text-align: center;
+}
+
+div.slide.titlepage h1 {
+ padding-top: 10%;
+ margin-right: 0;
+}
+
+div.slide h1 {
+ padding-left: 0;
+ padding-right: 20pt;
+ padding-top: 4pt;
+ padding-bottom: 4pt;
+ margin-top: 0;
+ margin-left: 0;
+ margin-right: 60pt;
+ margin-bottom: 0.5em;
+ display: block;
+ font-size: 160%;
+ line-height: 1.2em;
+ background: transparent;
+}
+
+div.toc {
+ position: absolute;
+ top: auto;
+ bottom: 4em;
+ left: 4em;
+ right: auto;
+ width: 60%;
+ max-width: 30em;
+ height: 30em;
+ border: solid thin black;
+ padding: 1em;
+ background: rgb(240,240,240);
+ color: black;
+ z-index: 300;
+ overflow: auto;
+ display: block;
+ visibility: visible;
+}
+
+div.toc-heading {
+ width: 100%;
+ border-bottom: solid 1px rgb(180,180,180);
+ margin-bottom: 1em;
+ text-align: center;
+}
+
+img {
+ image-rendering: optimize-quality;
+}
+
+pre {
+ font-size: 80%;
+ font-weight: bold;
+ line-height: 120%;
+ padding-top: 0.2em;
+ padding-bottom: 0.2em;
+ padding-left: 1em;
+ padding-right: 1em;
+ border-style: solid;
+ border-left-width: 1em;
+ border-top-width: thin;
+ border-right-width: thin;
+ border-bottom-width: thin;
+ border-color: #95ABD0;
+ color: #00428C;
+ background-color: #E4E5E7;
+}
+
+li pre { margin-left: 0; }
+
+blockquote { font-style: italic }
+
+img { background-color: transparent }
+
+p.copyright { font-size: smaller }
+
+.center { text-align: center }
+.footnote { font-size: smaller; margin-left: 2em; }
+
+a img { border-width: 0; border-style: none }
+
+a:visited { color: navy }
+a:link { color: navy }
+a:hover { color: red; text-decoration: underline }
+a:active { color: red; text-decoration: underline }
+
+a {text-decoration: none}
+.navbar a:link {color: white}
+.navbar a:visited {color: yellow}
+.navbar a:active {color: red}
+.navbar a:hover {color: red}
+
+ul { list-style-type: square; }
+ul ul { list-style-type: disc; }
+ul ul ul { list-style-type: circle; }
+ul ul ul ul { list-style-type: disc; }
+li { margin-left: 0.5em; margin-top: 0.5em; }
+li li { font-size: 85%; font-style: italic }
+li li li { font-size: 85%; font-style: normal }
+
+div dt
+{
+ margin-left: 0;
+ margin-top: 1em;
+ margin-bottom: 0.5em;
+ font-weight: bold;
+}
+div dd
+{
+ margin-left: 2em;
+ margin-bottom: 0.5em;
+}
+
+
+p,pre,ul,ol,blockquote,h2,h3,h4,h5,h6,dl,table {
+ margin-left: 1em;
+ margin-right: 1em;
+}
+
+p.subhead { font-weight: bold; margin-top: 2em; }
+
+.smaller { font-size: smaller }
+.bigger { font-size: 130% }
+
+td,th { padding: 0.2em }
+
+ul {
+ margin: 0.5em 1.5em 0.5em 1.5em;
+ padding: 0;
+}
+
+ol {
+ margin: 0.5em 1.5em 0.5em 1.5em;
+ padding: 0;
+}
+
+ul { list-style-type: square; }
+ul ul { list-style-type: disc; }
+ul ul ul { list-style-type: circle; }
+ul ul ul ul { list-style-type: disc; }
+
+ul li {
+ list-style: square;
+ margin: 0.1em 0em 0.6em 0;
+ padding: 0 0 0 0;
+ line-height: 140%;
+}
+
+ol li {
+ margin: 0.1em 0em 0.6em 1.5em;
+ padding: 0 0 0 0px;
+ line-height: 140%;
+ list-style-type: decimal;
+}
+
+li ul li {
+ font-size: 85%;
+ font-style: italic;
+ list-style-type: disc;
+ background: transparent;
+ padding: 0 0 0 0;
+}
+li li ul li {
+ font-size: 85%;
+ font-style: normal;
+ list-style-type: circle;
+ background: transparent;
+ padding: 0 0 0 0;
+}
+li li li ul li {
+ list-style-type: disc;
+ background: transparent;
+ padding: 0 0 0 0;
+}
+
+li ol li {
+ list-style-type: decimal;
+}
+
+
+li li ol li {
+ list-style-type: decimal;
+}
+
+/*
+ setting class="outline on ol or ul makes it behave as an
+ ouline list where blocklevel content in li elements is
+ hidden by default and can be expanded or collapsed with
+ mouse click. Set class="expand" on li to override default
+*/
+
+ol.outline li:hover { cursor: pointer }
+ol.outline li.nofold:hover { cursor: default }
+
+ul.outline li:hover { cursor: pointer }
+ul.outline li.nofold:hover { cursor: default }
+
+ol.outline { list-style:decimal; }
+ol.outline ol { list-style-type:lower-alpha }
+
+ol.outline li.nofold {
+ padding: 0 0 0 20px;
+ background: transparent url(../graphics/nofold-dim.gif) no-repeat 0px 0.5em;
+}
+ol.outline li.unfolded {
+ padding: 0 0 0 20px;
+ background: transparent url(../graphics/fold-dim.gif) no-repeat 0px 0.5em;
+}
+ol.outline li.folded {
+ padding: 0 0 0 20px;
+ background: transparent url(../graphics/unfold-dim.gif) no-repeat 0px 0.5em;
+}
+ol.outline li.unfolded:hover {
+ padding: 0 0 0 20px;
+ background: transparent url(../graphics/fold.gif) no-repeat 0px 0.5em;
+}
+ol.outline li.folded:hover {
+ padding: 0 0 0 20px;
+ background: transparent url(../graphics/unfold.gif) no-repeat 0px 0.5em;
+}
+
+ul.outline li.nofold {
+ padding: 0 0 0 20px;
+ background: transparent url(../graphics/nofold-dim.gif) no-repeat 0px 0.5em;
+}
+ul.outline li.unfolded {
+ padding: 0 0 0 20px;
+ background: transparent url(../graphics/fold-dim.gif) no-repeat 0px 0.5em;
+}
+ul.outline li.folded {
+ padding: 0 0 0 20px;
+ background: transparent url(../graphics/unfold-dim.gif) no-repeat 0px 0.5em;
+}
+ul.outline li.unfolded:hover {
+ padding: 0 0 0 20px;
+ background: transparent url(../graphics/fold.gif) no-repeat 0px 0.5em;
+}
+ul.outline li.folded:hover {
+ padding: 0 0 0 20px;
+ background: transparent url(../graphics/unfold.gif) no-repeat 0px 0.5em;
+}
+
+/* for slides with class "title" in table of contents */
+a.titleslide { font-weight: bold; font-style: italic }
+
+/*
+ hide images for work around for save as bug
+ where browsers fail to save images used by CSS
+*/
+img.hidden { display: none; visibility: hidden }
+div.initial_prompt { display: none; visibility: hidden }
+
+ div.slide {
+ visibility: visible;
+ position: inherit;
+ }
+ div.handout {
+ border-top-style: solid;
+ border-top-width: thin;
+ border-top-color: black;
+ }
+
+@media screen {
+ .hidden { display: none; visibility: visible }
+
+ div.slide.hidden { display: block; visibility: visible }
+ div.handout.hidden { display: block; visibility: visible }
+ div.background { display: none; visibility: hidden }
+ body.single_slide div.initial_prompt { display: block; visibility: visible }
+ body.single_slide div.background { display: block; visibility: visible }
+ body.single_slide div.background.hidden { display: none; visibility: hidden }
+ body.single_slide .invisible { visibility: hidden }
+ body.single_slide .hidden { display: none; visibility: hidden }
+ body.single_slide div.slide { position: absolute }
+ body.single_slide div.handout { display: none; visibility: hidden }
+}
+
+@media print {
+ .hidden { display: block; visibility: visible }
+
+ div.slide pre { font-size: 60%; padding-left: 0.5em; }
+ div.toolbar { display: none; visibility: hidden; }
+ div.slidy_toc { display: none; visibility: hidden; }
+ div.background { display: none; visibility: hidden; }
+ div.slide { page-break-before: always }
+ /* :first-child isn't reliable for print media */
+ div.slide.first-slide { page-break-before: avoid }
+}
+
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/styles/w3c-blue.css b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/styles/w3c-blue.css
new file mode 100755
index 000000000..6c4ff4f85
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/slidy/styles/w3c-blue.css
@@ -0,0 +1,497 @@
+/* w3c-blue.css
+
+ Copyright (c) 2005-2010 W3C (MIT, ERCIM, Keio), All Rights Reserved.
+ W3C liability, trademark, document use and software licensing
+ rules apply, see:
+
+ http://www.w3.org/Consortium/Legal/copyright-documents
+ http://www.w3.org/Consortium/Legal/copyright-software
+*/
+body
+{
+ margin: 0 0 0 0;
+ padding: 0 0 0 0;
+ width: 100%;
+ height: 100%;
+ color: black;
+ background-color: white;
+ font-family: "Gill Sans MT", "Gill Sans", GillSans, sans-serif;
+ font-size: 14pt;
+}
+
+div.slide.titlepage {
+ text-align: center;
+}
+
+div.slide.titlepage h1 {
+ padding-top: 40%;
+}
+
+div.slide {
+ z-index: 20;
+ margin: 0 0 0 0;
+ padding: 0;
+ border-width: 0;
+ top: 0;
+ bottom: 0;
+ left: 0;
+ right: 0;
+ line-height: 120%;
+ background-color: transparent;
+}
+
+div.background {
+ z-index: 1;
+ position: absolute;
+ vertical-align: bottom;
+ left: 0;
+ right: 0;
+ top: 0;
+ bottom: auto;
+ height: 4.1em;
+ padding: 0 0 0 0.2em;
+ margin: 0 0 0 0;
+ border-width: 0;
+ background-color: #728ec2;
+}
+
+div.background img {
+ height: 4em;
+}
+
+/* this rule is hidden from IE which doesn't support + selector */
+div.slide + div[class].slide { page-break-before: always;}
+
+div.slide h1 {
+ padding-left: 3em;
+ padding-right: 3em;
+ padding-top: 0.1em;
+ margin-bottom: 0.8em;
+ margin-top: -0.05em;
+ margin-left: 0;
+ margin-right: 0;
+ min-height: 2.3em;
+ color: white;
+ height: 2.2em;
+ font-size: 160%;
+ line-height: 1.1em;
+}
+
+div.slide h1 a {
+ color: white;
+ text-decoration: none;
+}
+
+div.slide h1 a:link {
+ color: white;
+ text-decoration: none;
+}
+
+div.slide h1 a:visited {
+ color: white;
+ text-decoration: none;
+}
+
+div.slide h1 a:hover {
+ color: white;
+ text-decoration: underline;
+}
+
+div.slide h1 a:active {
+ color: red;
+ text-decoration: underline;
+}
+
+#head-icon {
+ margin-top: 0.5em;
+ margin-bottom: 0;
+ margin-left: 0;
+ margin-right: 1em;
+ background: #728ec2;
+ border-width: 0;
+ height: 3em;
+ max-width: 3em;
+ z-index: 2;
+ float: left;
+}
+
+#head-logo {
+ margin: 0;
+ margin-top: 0.25em;
+ padding-top: 0.25em;
+ padding-bottom: 0.2em;
+ padding-left: 0;
+ padding-right: 0;
+ height: 3.2em;
+ width: 4.8em;
+ float: right;
+ z-index: 2;
+ background: #728ec2;
+}
+
+#head-logo-fallback {
+ margin: 0;
+ padding: 0;
+ margin-top: -0.8em;
+ width: 4.8em;
+ float: right;
+ z-index: 2;
+}
+
+/* the next two classes support vertical and horizontal centering */
+div.vbox {
+ float: left;
+ height: 40%;
+ width: 50%;
+ margin-top: -240px;
+}
+div.hbox {
+ width:60%;
+ margin-top: 0;
+ margin-left:auto;
+ margin-right:auto;
+ height: 60%;
+ border:1px solid silver;
+ background:#F0F0F0;
+ overflow:auto;
+ text-align:left;
+ clear:both;
+}
+
+/* styling for named background */
+div.background.slanty {
+ z-index: 2;
+ bottom: 0;
+ height: 100%;
+ background: transparent;
+}
+
+div.background.slanty img { margin-top: 4em; width: 100%; height: 80% }
+
+/* the following makes the pre background translucent */
+/* opacity is a CSS3 property but supported by Mozilla family */
+/* filter is an IE specific feature that also requires width */
+div.slide.slanty pre {
+ width: 93%; /* needed for IE filter to work */
+ opacity: .8;
+ filter: alpha(opacity=80);
+}
+
+img.withBorder {
+ border: 2px solid #c60;
+ padding: 4px;
+}
+
+li pre { margin-left: 0; }
+
+@media print { pre { font-size: 60% } }
+
+blockquote { font-style: italic }
+
+img { background-color: transparent }
+
+p.copyright { font-size: smaller }
+
+.center { text-align: center }
+.footnote { font-size: smaller; margin-left: 2em; }
+
+a img { border-width: 0; border-style: none }
+
+a:visited { color: navy }
+a:link { color: navy }
+a:hover { color: red; text-decoration: underline }
+a:active { color: red; text-decoration: underline }
+
+a {text-decoration: none}
+.navbar a:link {color: white}
+.navbar a:visited {color: yellow}
+.navbar a:active {color: red}
+.navbar a:hover {color: red}
+
+ul { list-style-type: square; }
+ul ul { list-style-type: disc; }
+ul ul ul { list-style-type: circle; }
+ul ul ul ul { list-style-type: disc; }
+li { margin-left: 0.5em; margin-top: 0.5em; }
+li li { font-size: 85%; font-style: italic }
+li li li { font-size: 85%; font-style: normal }
+
+div dt
+{
+ margin-left: 0;
+ margin-top: 1em;
+ margin-bottom: 0.5em;
+ font-weight: bold;
+}
+div dd
+{
+ margin-left: 2em;
+ margin-bottom: 0.5em;
+}
+
+
+p,pre,ul,ol,blockquote,h2,h3,h4,h5,h6,dl,table {
+ margin-left: 1em;
+ margin-right: 1em;
+}
+
+p.subhead { font-weight: bold; margin-top: 2em; }
+
+div.cover p.explanation {
+ font-style: italic;
+ margin-top: 3em;
+}
+
+
+.smaller { font-size: smaller }
+
+td,th { padding: 0.2em }
+
+ul {
+ margin: 0.5em 1.5em 0.5em 1.5em;
+ padding: 0;
+}
+
+ol {
+ margin: 0.5em 1.5em 0.5em 1.5em;
+ padding: 0;
+}
+
+ul { list-style-type: square; }
+ul ul { list-style-type: disc; }
+ul ul ul { list-style-type: circle; }
+ul ul ul ul { list-style-type: disc; }
+li { margin-left: 0.5em; margin-top: 0.5em; }
+li li { font-size: 85%; font-style: italic }
+li li li { font-size: 85%; font-style: normal }
+
+
+ul li {
+ list-style: none;
+ margin: 0.1em 0em 0.6em 0;
+ padding: 0 0 0 40px;
+ background: transparent url(../graphics/bullet.png) no-repeat 5px 0.3em;
+ line-height: 140%;
+}
+
+/* workaround IE's failure to support background on li for print media */
+@media print { ul li { list-style: disc; padding-left: 0; background: none; } }
+
+ol li {
+ margin: 0.1em 0em 0.6em 1.5em;
+ padding: 0 0 0 0px;
+ line-height: 140%;
+}
+
+li li {
+ font-size: 85%;
+ font-style: italic;
+ list-style-type: disc;
+ background: transparent;
+ padding: 0 0 0 0;
+}
+li li li {
+ font-size: 85%;
+ font-style: normal;
+ list-style-type: circle;
+ background: transparent;
+ padding: 0 0 0 0;
+}
+li li li li {
+ list-style-type: disc;
+ background: transparent;
+ padding: 0 0 0 0;
+}
+
+/* rectangular blue bullet + unfold/nofold/fold widget */
+
+/*
+ setting class="outline on ol or ul makes it behave as an
+ ouline list where blocklevel content in li elements is
+ hidden by default and can be expanded or collapsed with
+ mouse click. Set class="expand" on li to override default
+*/
+
+ol.outline li:hover { cursor: pointer }
+ol.outline li.nofold:hover { cursor: default }
+
+ul.outline li:hover { cursor: pointer }
+ul.outline li.nofold:hover { cursor: default }
+
+ol.outline { list-style:decimal; }
+ol.outline ol { list-style-type:lower-alpha }
+
+ol.outline li.nofold {
+ padding: 0 0 0 20px;
+ background: transparent url(../graphics/nofold-dim.gif) no-repeat 0px 0.3em;
+}
+ol.outline li.unfolded {
+ padding: 0 0 0 20px;
+ background: transparent url(../graphics/fold-dim.gif) no-repeat 0px 0.3em;
+}
+ol.outline li.folded {
+ padding: 0 0 0 20px;
+ background: transparent url(../graphics/unfold-dim.gif) no-repeat 0px 0.3em;
+}
+ol.outline li.unfolded:hover {
+ padding: 0 0 0 20px;
+ background: transparent url(../graphics/fold.gif) no-repeat 0px 0.3em;
+}
+ol.outline li.folded:hover {
+ padding: 0 0 0 20px;
+ background: transparent url(../graphics/unfold.gif) no-repeat 0px 0.3em;
+}
+
+ul.outline li.nofold {
+ padding: 0 0 0 52px;
+ background: transparent url(../graphics/bullet-nofold-dim.gif) no-repeat 5px 0.3em;
+}
+ul.outline li.unfolded {
+ padding: 0 0 0 52px;
+ background: transparent url(../graphics/bullet-fold-dim.gif) no-repeat 5px 0.3em;
+}
+ul.outline li.folded {
+ padding: 0 0 0 52px;
+ background: transparent url(../graphics/bullet-unfold-dim.gif) no-repeat 5px 0.3em;
+}
+ul.outline li.unfolded:hover {
+ padding: 0 0 0 52px;
+ background: transparent url(../graphics/bullet-fold.gif) no-repeat 5px 0.3em;
+}
+ul.outline li.folded:hover {
+ padding: 0 0 0 52px;
+ background: transparent url(../graphics/bullet-unfold.gif) no-repeat 5px 0.3em;
+}
+
+li ul.outline li.nofold {
+ padding: 0 0 0 21px;
+ background: transparent url(../graphics/nofold-dim.gif) no-repeat 5px 0.3em;
+}
+li ul.outline li.unfolded {
+ padding: 0 0 0 21px;
+ background: transparent url(../graphics/fold-dim.gif) no-repeat 5px 0.3em;
+}
+li ul.outline li.folded {
+ padding: 0 0 0 21px;
+ background: transparent url(../graphics/unfold-dim.gif) no-repeat 5px 0.3em;
+}
+li ul.outline li.unfolded:hover {
+ padding: 0 0 0 21px;
+ background: transparent url(../graphics/fold.gif) no-repeat 5px 0.3em;
+}
+li ul.outline li.folded:hover {
+ padding: 0 0 0 21px;
+ background: transparent url(../graphics/unfold.gif) no-repeat 5px 0.3em;
+}
+
+img {
+ image-rendering: optimize-quality;
+}
+
+img.withBorder {
+ border: 2px solid #c60;
+ padding: 4px;
+}
+
+div.header {
+ position: absolute;
+ z-index: 2;
+ left: 0;
+ right: 0;
+ top: 0;
+ bottom: auto;
+ height: 2.95em;
+ width: 100%;
+ padding: 0 0 0 0;
+ margin: 0 0 0 0;
+ border-width: 0;
+ border-style: solid;
+ background-color: #005A9C;
+ border-bottom-width: thick;
+ border-bottom-color: #95ABD0;
+}
+
+div.footer {
+ position: absolute;
+ z-index: 80;
+ left: 0;
+ right: 0;
+ top: auto;
+ bottom: 0;
+ height: 3.5em;
+ margin: 0;
+ font-size: 80%;
+ font-weight: bold;
+ padding-left: 1em;
+ padding-right: 0;
+ padding-top: 0.3em;
+ padding-bottom: 0;
+ color: #003366;
+ background-color: #95ABD0;
+}
+
+/* this is a hack to hide property from IE6 and below */
+div[class="footer"] {
+ position: fixed;
+}
+
+#hidden-bullet {
+ visibility: hidden;
+ display: none;
+}
+
+div.slide.cover {
+ color: white;
+ background-color: #728ec2;
+ padding-top: 0;
+ padding-right: 0;
+ padding-left: 3em;
+ height: 100%;
+}
+
+div.slide.cover h1 {
+ margin: 0;
+ padding: 0.5em;
+ color: white;
+ height: auto;
+}
+
+div.slide.cover h2 {
+ color: white;
+}
+
+div.slide.cover a {
+ color: white;
+}
+
+div.slide.cover a:visited { color: white }
+div.slide.cover a:link { color: white }
+div.slide.cover a:hover { color: yellow; text-decoration: underline }
+div.slide.cover a:active { color: yellow; text-decoration: underline }
+
+div.slide.cover a:hover, div.slide.cover a:active {
+ color: yellow; text-decoration: underline;
+}
+
+div.slide.cover img.cover {
+ margin: 0 0 0 0;
+ float: right;
+ padding-bottom: 4em;
+ width: 50%;
+ overflow: hidden;
+}
+
+div.slide.cover a:hover, div.slide.cover a:active {
+ color: yellow; text-decoration: underline;
+}
+
+/* for Bert as an ardent user of the old W3C slidemaker tool */
+
+div.comment { display: none; visibility: hidden }
+
+@media print {
+ div.slide h1 { background: transparent; color: black }
+ div.slide.cover { background: transparent; color: black }
+ div.slide.cover h1 { background: transparent; color: black }
+ div.comment { display: block; visibility: visible }
+}
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/tools/dbs3-upgrade.xsl b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/tools/dbs3-upgrade.xsl
new file mode 100644
index 000000000..e757c9781
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/tools/dbs3-upgrade.xsl
@@ -0,0 +1,180 @@
+<?xml version="1.0" encoding="ASCII"?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns="http://docbook.org/ns/docbook"
+ xmlns:dbs="http://docbook.org/ns/docbook-slides"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ version="1.0">
+
+<xsl:output method="xml" encoding="utf-8" indent="no"/>
+
+<xsl:preserve-space elements="*"/>
+
+<xsl:template match="/slides">
+ <dbs:slides>
+ <xsl:call-template name="process.content"/>
+ </dbs:slides>
+</xsl:template>
+
+<xsl:template name="process.content">
+ <xsl:apply-templates select="slidesinfo|foilgroupinfo|foilinfo|title|titleabbrev|subtitle"/>
+
+ <xsl:apply-templates select="speakernotes"/>
+
+ <xsl:apply-templates select="*[not(self::speakernotes)][not(self::title)][not(self::titleabbrev)][not(self::subtitle)][not(self::slidesinfo)][not(self::foilinfo)][not(self::foilgroupinfo)]"/>
+</xsl:template>
+
+<xsl:template match="foil">
+ <dbs:foil>
+ <xsl:call-template name="copy.attributes"/>
+
+ <xsl:call-template name="process.content"/>
+ </dbs:foil>
+</xsl:template>
+
+<xsl:template match="foilgroup">
+ <dbs:foilgroup>
+ <xsl:call-template name="copy.attributes"/>
+
+ <xsl:call-template name="process.content"/>
+ </dbs:foilgroup>
+</xsl:template>
+
+<xsl:template match="speakernotes">
+ <dbs:speakernotes>
+ <xsl:call-template name="copy.attributes"/>
+
+ <xsl:apply-templates select="*"/>
+ </dbs:speakernotes>
+</xsl:template>
+
+<xsl:template match="slidesinfo|foilgroupinfo|foilinfo">
+ <info>
+ <xsl:call-template name="copy.attributes"/>
+
+ <xsl:apply-templates select="*"/>
+ </info>
+</xsl:template>
+
+<!-- ******************************************************************
+ DB4 -> DB5 related, adapted from db4-upgrade.xsl
+ ****************************************************************** -->
+
+<xsl:template name="copy.attributes">
+ <xsl:param name="suppress" select="''"/>
+
+ <xsl:for-each select="@*">
+ <xsl:choose>
+ <xsl:when test="local-name(.) = 'lang'">
+ <xsl:attribute name="xml:lang">
+ <xsl:value-of select="."/>
+ </xsl:attribute>
+ </xsl:when>
+ <xsl:when test="local-name(.) = 'id'">
+ <xsl:attribute name="xml:id">
+ <xsl:value-of select="."/>
+ </xsl:attribute>
+ </xsl:when>
+ <xsl:when test="local-name(.) = 'moreinfo'"/>
+ <xsl:when test="$suppress = local-name(.)"/>
+ <xsl:otherwise>
+ <xsl:copy/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:for-each>
+</xsl:template>
+
+<xsl:template match="*">
+ <xsl:element name="{local-name()}" namespace="http://docbook.org/ns/docbook">
+ <xsl:call-template name="copy.attributes"/>
+
+ <xsl:apply-templates />
+ </xsl:element>
+</xsl:template>
+
+<xsl:template match="author[not(personname)]|editor[not(personname)]|othercredit[not(personname)]">
+ <xsl:element name="{local-name()}" namespace="http://docbook.org/ns/docbook">
+ <xsl:call-template name="copy.attributes"/>
+
+ <personname>
+ <xsl:apply-templates select="honorific|firstname|surname|othername|lineage"/>
+ </personname>
+
+ <xsl:apply-templates select="*[not(self::honorific|self::firstname|self::surname
+ |self::othername|self::lineage)]"/>
+ </xsl:element>
+</xsl:template>
+
+<xsl:template match="address|programlisting|screen|funcsynopsisinfo
+ |classsynopsisinfo|literallayout">
+ <xsl:element name="{local-name()}" namespace="http://docbook.org/ns/docbook">
+ <xsl:call-template name="copy.attributes">
+ <xsl:with-param name="suppress" select="'format'"/>
+ </xsl:call-template>
+ <xsl:apply-templates/>
+ </xsl:element>
+</xsl:template>
+
+<xsl:template match="inlinegraphic[@format='linespecific']">
+ <textobject>
+ <textdata>
+ <xsl:call-template name="copy.attributes"/>
+ </textdata>
+ </textobject>
+</xsl:template>
+
+<xsl:template match="inlinegraphic">
+ <inlinemediaobject>
+ <imageobject>
+ <imagedata>
+ <xsl:call-template name="copy.attributes"/>
+ </imagedata>
+ </imageobject>
+ </inlinemediaobject>
+</xsl:template>
+
+<xsl:template match="graphic[@format='linespecific']">
+ <mediaobject>
+ <textobject>
+ <textdata>
+ <xsl:call-template name="copy.attributes"/>
+ </textdata>
+ </textobject>
+ </mediaobject>
+</xsl:template>
+
+<xsl:template match="graphic">
+ <mediaobject>
+ <imageobject>
+ <imagedata>
+ <xsl:call-template name="copy.attributes"/>
+ </imagedata>
+ </imageobject>
+ </mediaobject>
+</xsl:template>
+
+<xsl:template match="ulink" priority="200">
+ <xsl:choose>
+ <xsl:when test="node()">
+ <link xlink:href="{@url}">
+ <xsl:call-template name="copy.attributes">
+ <xsl:with-param name="suppress" select="'url'"/>
+ </xsl:call-template>
+ <xsl:apply-templates/>
+ </link>
+ </xsl:when>
+ <xsl:otherwise>
+ <uri xlink:href="{@url}">
+ <xsl:call-template name="copy.attributes">
+ <xsl:with-param name="suppress" select="'url'"/>
+ </xsl:call-template>
+ <xsl:value-of select="@url"/>
+ </uri>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<xsl:template match="*[namespace-uri()]">
+ <xsl:copy-of select="."/>
+</xsl:template>
+
+</xsl:stylesheet>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/xhtml/param.xml b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/xhtml/param.xml
new file mode 100644
index 000000000..1bc7c2ecf
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/xhtml/param.xml
@@ -0,0 +1,824 @@
+<?xml version="1.0" encoding="ASCII"?>
+<book version="5.0" xml:id="slides_xhtml_doc">
+<info>
+<title>Slides XHTML Parameter Reference</title>
+<releaseinfo role="meta">
+$Id$
+</releaseinfo>
+<author>
+ <personname>
+ <surname>K&#246;vesd&#225;n</surname>
+ <firstname>G&#225;bor</firstname>
+ </personname>
+</author>
+<copyright>
+ <year>2012</year>
+ <holder>G&#225;bor K&#246;vesd&#225;n</holder>
+</copyright>
+<abstract>
+ <para>This is reference documentation for all user-configurable
+ parameters in the DocBook XSL Slides XHTML stylesheet.
+ Note that the Slides stylesheet for XHTML output is a
+ customization layer of the DocBook XSL XHTML stylesheet.
+ Therefore, in addition to the slides-specific parameters
+ listed in this section, you can also use a number of
+ <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="../fo/">XHTML stylesheet
+ parameters</link> to control Slides XHTML output.</para>
+</abstract>
+</info>
+<reference xml:id="xhtml">
+ <title>XHTML: General Params</title>
+
+<refentry version="5.0" xml:id="disable.collapsible">
+<refmeta>
+<refentrytitle>disable.collapsible</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">boolean</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>disable.collapsible</refname>
+<refpurpose>Specifies whether collapsible rendering is enabled</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="disable.collapsible.frag">
+ &lt;xsl:param name="disable.collapsible"&gt;0&lt;/xsl:param&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies whether elements marked as
+ collapsible are generated as such in the output document.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="disable.incremental">
+<refmeta>
+<refentrytitle>disable.incremental</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">boolean</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>disable.incremental</refname>
+<refpurpose>Specifies whether incremental rendering is enabled</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="disable.incremental.frag">
+ &lt;xsl:param name="disable.incremental"&gt;0&lt;/xsl:param&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies whether elements marked as
+ incremental are generated as such in the output document.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="generate.copyright">
+<refmeta>
+<refentrytitle>generate.copyright</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">boolean</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>generate.copyright</refname>
+<refpurpose>Specifies whether copyright is generated</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="generate.copyright.frag">
+ &lt;xsl:param name="generate.copyright"&gt;1&lt;/xsl:param&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies whether the copyright info is generated
+ in the footer area.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="generate.foilgroup.numbered.toc">
+<refmeta>
+<refentrytitle>generate.foilgroup.numbered.toc</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">boolean</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>generate.foilgroup.numbered.toc</refname>
+<refpurpose>Specifies whether foilgroups have a numbered TOC</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="generate.foilgroup.numbered.toc.frag">
+ &lt;xsl:param name="generate.foilgroup.numbered.toc"&gt;1&lt;/xsl:param&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>If TOC generation is turned on, this parameter specifies
+ whether foilgroups have a numbered TOC. If disabled, TOC items
+ will be bulleted, not numbered.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="generate.foilgroup.toc">
+<refmeta>
+<refentrytitle>generate.foilgroup.toc</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">boolean</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>generate.foilgroup.toc</refname>
+<refpurpose>Specifies whether foilgroups have a TOC</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="generate.foilgroup.toc.frag">
+ &lt;xsl:param name="generate.foilgroup.toc"&gt;1&lt;/xsl:param&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies whether foilgroups will
+ contain a table of contents of the included foils.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="generate.handoutnotes">
+<refmeta>
+<refentrytitle>generate.handoutnotes</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">boolean</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>generate.handoutnotes</refname>
+<refpurpose>Specifies whether handoutnotes are generated</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="generate.handoutnotes.frag">
+ &lt;xsl:param name="generate.handoutnotes"&gt;0&lt;/xsl:param&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies whether handoutnotes shall
+ be generated to the output.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="generate.pubdate">
+<refmeta>
+<refentrytitle>generate.pubdate</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">boolean</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>generate.pubdate</refname>
+<refpurpose>Specifies whether the pubdate is generated</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="generate.pubdate.frag">
+ &lt;xsl:param name="generate.pubdate"&gt;1&lt;/xsl:param&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies whether the publication date is generated
+ in the footer area.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="generate.speakernotes">
+<refmeta>
+<refentrytitle>generate.speakernotes</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">boolean</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>generate.speakernotes</refname>
+<refpurpose>Specifies whether speakernotes are generated</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="generate.speakernotes.frag">
+ &lt;xsl:param name="generate.speakernotes"&gt;0&lt;/xsl:param&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies whether speakernotes shall
+ be generated to the output.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="generate.titlepage">
+<refmeta>
+<refentrytitle>generate.titlepage</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">boolean</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>generate.titlepage</refname>
+<refpurpose>Specifies whether titlepage is generated</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="generate.titlepage.frag">
+ &lt;xsl:param name="generate.titlepage"&gt;1&lt;/xsl:param&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies whether titlepage is generated
+ for the presentation.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="mml.embedding.mode">
+<refmeta>
+<refentrytitle>mml.embedding.mode</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">list</refmiscinfo>
+<refmiscinfo class="other" otherclass="value">inline</refmiscinfo>
+<refmiscinfo class="other" otherclass="value">object</refmiscinfo>
+<refmiscinfo class="other" otherclass="value">image</refmiscinfo>
+<refmiscinfo class="other" otherclass="value">link</refmiscinfo>
+<refmiscinfo class="other" otherclass="value">iframe</refmiscinfo>
+<refmiscinfo class="other" otherclass="value">embed</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>mml.embedding.mode</refname>
+<refpurpose>Specifies how inline MathML is processed</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="mml.embedding.mode.frag">
+ &lt;xsl:param name="mml.embedding.mode"&gt;inline&lt;/xsl:param&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies how inline MathML formulas
+ are embedded into the output document.</para>
+
+<variablelist>
+ <varlistentry>
+ <term>inline</term>
+ <listitem>
+ <para>Content is copied over inline with its namespace.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>object</term>
+ <listitem>
+ <para>Content is extracted into an externel file and referenced
+ by an <markup>object</markup> element.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>image</term>
+ <listitem>
+ <para>Content is extracted into an externel file and referenced
+ by an <markup>img</markup> element.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>link</term>
+ <listitem>
+ <para>Content is extracted into an externel file and referenced
+ by an <markup>a</markup> element.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>iframe</term>
+ <listitem>
+ <para>Content is extracted into an externel file and referenced
+ by an <markup>iframe</markup> element.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>embed</term>
+ <listitem>
+ <para>Content is extracted into an externel file and referenced
+ by an <markup>embed</markup> element.</para>
+ </listitem>
+ </varlistentry>
+</variablelist>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="svg.embedding.mode">
+<refmeta>
+<refentrytitle>svg.embedding.mode</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">list</refmiscinfo>
+<refmiscinfo class="other" otherclass="value">inline</refmiscinfo>
+<refmiscinfo class="other" otherclass="value">object</refmiscinfo>
+<refmiscinfo class="other" otherclass="value">image</refmiscinfo>
+<refmiscinfo class="other" otherclass="value">link</refmiscinfo>
+<refmiscinfo class="other" otherclass="value">iframe</refmiscinfo>
+<refmiscinfo class="other" otherclass="value">embed</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>svg.embedding.mode</refname>
+<refpurpose>Specifies how inline SVG is processed</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="svg.embedding.mode.frag">
+ &lt;xsl:param name="svg.embedding.mode"&gt;object&lt;/xsl:param&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies how inline SVG graphics
+ are embedded into the output document.</para>
+
+<variablelist>
+ <varlistentry>
+ <term>inline</term>
+ <listitem>
+ <para>Content is copied over inline with its namespace.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>object</term>
+ <listitem>
+ <para>Content is extracted into an externel file and referenced
+ by an <markup>object</markup> element.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>image</term>
+ <listitem>
+ <para>Content is extracted into an externel file and referenced
+ by an <markup>img</markup> element.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>link</term>
+ <listitem>
+ <para>Content is extracted into an externel file and referenced
+ by an <markup>a</markup> element.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>iframe</term>
+ <listitem>
+ <para>Content is extracted into an externel file and referenced
+ by an <markup>iframe</markup> element.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>embed</term>
+ <listitem>
+ <para>Content is extracted into an externel file and referenced
+ by an <markup>embed</markup> element.</para>
+ </listitem>
+ </varlistentry>
+</variablelist>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="user.css">
+<refmeta>
+<refentrytitle>user.css</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">filename</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>user.css</refname>
+<refpurpose>Specifies the path to user-supplied CSS</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="user.css.frag">
+ &lt;xsl:param name="user.css"&gt;user.css&lt;/xsl:param&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies the path from where the
+ CSS styling is read. This file can be used to
+ add additional styling to the slides.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="wrap.slidecontent">
+<refmeta>
+<refentrytitle>wrap.slidecontent</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">boolean</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>wrap.slidecontent</refname>
+<refpurpose>Specifies whether the foil content is wrapped into a div</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="wrap.slidecontent.frag">
+ &lt;xsl:param name="wrap.slidecontent"&gt;0&lt;/xsl:param&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies whether the foil content is wrapped into
+ a div so that additional styling can be applied.</para>
+
+</refsection>
+</refentry>
+
+</reference>
+
+<reference xml:id="s5">
+ <title>XHTML: S5 Params</title>
+
+<refentry version="5.0" xml:id="s5.controls">
+<refmeta>
+<refentrytitle>s5.controls</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">boolean</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>s5.controls</refname>
+<refpurpose>Specifies whether S5 controls are visible</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="s5.controls.frag">
+ &lt;xsl:param name="s5.controls"&gt;0&lt;/xsl:param&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies whether S5 navigation controls are
+ visible by default.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="s5.defaultview">
+<refmeta>
+<refentrytitle>s5.defaultview</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">list</refmiscinfo>
+<refmiscinfo class="other" otherclass="value">slideshow</refmiscinfo>
+<refmiscinfo class="other" otherclass="value">outline</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>s5.defaultview</refname>
+<refpurpose>Specifies the default S5 view</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="s5.defaultview.frag">
+ &lt;xsl:param name="s5.defaultview"&gt;slideshow&lt;/xsl:param&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies, which is the default view
+ in the generated S5 presentation.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="s5.opera.css">
+<refmeta>
+<refentrytitle>s5.opera.css</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">filename</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>s5.opera.css</refname>
+<refpurpose>Specifies the name of the S5 Opera-specific CSS file</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="s5.opera.css.frag">
+ &lt;xsl:param name="s5.opera.css"&gt;opera.css&lt;/xsl:param&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies the name of the S5 Opera-specific
+ CSS file.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="s5.outline.css">
+<refmeta>
+<refentrytitle>s5.outline.css</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">filename</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>s5.outline.css</refname>
+<refpurpose>Specifies the name of the S5 outline CSS file</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="s5.outline.css.frag">
+ &lt;xsl:param name="s5.outline.css"&gt;outline.css&lt;/xsl:param&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies the name of the S5 outline CSS file.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="s5.path.prefix">
+<refmeta>
+<refentrytitle>s5.path.prefix</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">uri</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>s5.path.prefix</refname>
+<refpurpose>Specifies the path to S5 files</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="s5.path.prefix.frag">
+ &lt;xsl:param name="s5.path.prefix"&gt;files/s5/ui/default/&lt;/xsl:param&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies the path where S5 CSS and
+ JavaScript files reside. All the CSS and JavaScript paths
+ will be generated relative to this directory.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="s5.print.css">
+<refmeta>
+<refentrytitle>s5.print.css</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">filename</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>s5.print.css</refname>
+<refpurpose>Specifies the name of the S5 print CSS file</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="s5.print.css.frag">
+ &lt;xsl:param name="s5.print.css"&gt;print.css&lt;/xsl:param&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies the name of the S5 print CSS file.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="s5.slides.css">
+<refmeta>
+<refentrytitle>s5.slides.css</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">filename</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>s5.slides.css</refname>
+<refpurpose>Specifies the name of the S5 slides CSS file</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="s5.slides.css.frag">
+ &lt;xsl:param name="s5.slides.css"&gt;slides.css&lt;/xsl:param&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies the name of the S5 slides CSS file.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="s5.slides.js">
+<refmeta>
+<refentrytitle>s5.slides.js</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">filename</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>s5.slides.js</refname>
+<refpurpose>Specifies the name of the S5 slides JavaScript file</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="s5.slides.js.frag">
+ &lt;xsl:param name="s5.slides.js"&gt;slides.js&lt;/xsl:param&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies the name of the S5 slides JavaScript
+ file.</para>
+
+</refsection>
+</refentry>
+
+</reference>
+
+<reference xml:id="slidy">
+ <title>XHTML: Slidy Params</title>
+
+<refentry version="5.0" xml:id="slidy.duration">
+<refmeta>
+<refentrytitle>slidy.duration</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">integer</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>slidy.duration</refname>
+<refpurpose>Specifies the duration of the presentation</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="slidy.duration.frag">
+ &lt;xsl:param name="slidy.duration"&gt;0&lt;/xsl:param&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies the duration of the presentation
+ in minutes. A JavaScript clock will count down to help the
+ speaker in not running out of time. Can be disabled if set to 0.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="slidy.path.prefix">
+<refmeta>
+<refentrytitle>slidy.path.prefix</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">uri</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>slidy.path.prefix</refname>
+<refpurpose>Specifies the path to Slidy files</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="slidy.path.prefix.frag">
+ &lt;xsl:param name="slidy.path.prefix"&gt;files/slidy/&lt;/xsl:param&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies the path where Slidy CSS and
+ JavaScript files reside. All the CSS and JavaScript paths
+ will be generated relative to this directory.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="slidy.slidy.css">
+<refmeta>
+<refentrytitle>slidy.slidy.css</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">filename</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>slidy.slidy.css</refname>
+<refpurpose>Specifies the name of the main Slidy CSS file</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="slidy.slidy.css.frag">
+ &lt;xsl:param name="slidy.slidy.css"&gt;styles/slidy.css&lt;/xsl:param&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies the name of the main Slidy CSS file.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="slidy.slidy.js">
+<refmeta>
+<refentrytitle>slidy.slidy.js</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">filename</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>slidy.slidy.js</refname>
+<refpurpose>Specifies the name of the Slidy JavaScript file</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="slidy.slidy.js.frag">
+ &lt;xsl:param name="slidy.slidy.js"&gt;scripts/slidy.js&lt;/xsl:param&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies the name of the Slidy JavaScript file.</para>
+
+</refsection>
+</refentry>
+
+<refentry version="5.0" xml:id="slidy.user.css">
+<refmeta>
+<refentrytitle>slidy.user.css</refentrytitle>
+<refmiscinfo class="other" otherclass="datatype">filename</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>slidy.user.css</refname>
+<refpurpose>Specifies the name of the Slidy user CSS file</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+ <programlisting xml:id="slidy.user.css.frag">
+ &lt;xsl:param name="slidy.user.css"&gt;styles/w3c-blue.css&lt;/xsl:param&gt;
+ </programlisting>
+</refsynopsisdiv>
+
+<refsection><info><title>Description</title></info>
+
+<para>This parameter specifies the name of the Slidy user CSS file.</para>
+
+</refsection>
+</refentry>
+
+</reference>
+
+
+<appendix xml:id="styleheet"><title>The Stylesheet</title>
+
+<para>The <filename>param.xsl</filename> stylesheet is just a wrapper
+around all these parameters.</para>
+
+<programlisting xml:id="top">
+
+&lt;!-- This file is generated from param.xweb --&gt;
+
+&lt;xsl:stylesheet exclude-result-prefixes="src" version="1.0"&gt;
+
+&lt;!-- ********************************************************************
+ $Id: param.xweb 6633 2007-02-21 18:33:33Z xmldoc $
+ ********************************************************************
+
+ This file is part of the DocBook Slides Stylesheet distribution.
+ See ../README or http://docbook.sf.net/release/xsl/current/ for
+ copyright and other information.
+
+ ******************************************************************** --&gt;
+
+&lt;src:fragref linkend="disable.collapsible.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="disable.incremental.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="generate.copyright.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="generate.foilgroup.numbered.toc.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="generate.foilgroup.toc.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="generate.handoutnotes.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="generate.pubdate.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="generate.speakernotes.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="generate.titlepage.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="mml.embedding.mode.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="svg.embedding.mode.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="user.css.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="wrap.slidecontent.frag"&gt;&lt;/src:fragref&gt;
+
+&lt;src:fragref linkend="s5.controls.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="s5.defaultview.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="s5.opera.css.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="s5.outline.css.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="s5.path.prefix.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="s5.print.css.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="s5.slides.css.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="s5.slides.js.frag"&gt;&lt;/src:fragref&gt;
+
+&lt;src:fragref linkend="slidy.duration.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="slidy.path.prefix.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="slidy.slidy.css.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="slidy.slidy.js.frag"&gt;&lt;/src:fragref&gt;
+&lt;src:fragref linkend="slidy.user.css.frag"&gt;&lt;/src:fragref&gt;
+
+&lt;/xsl:stylesheet&gt;
+</programlisting>
+
+</appendix>
+</book>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/xhtml/param.xsl b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/xhtml/param.xsl
new file mode 100644
index 000000000..6bd0e5cf8
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/xhtml/param.xsl
@@ -0,0 +1,71 @@
+<?xml version="1.0"?>
+<!-- This file is generated from param.xweb -->
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
+
+<!-- ********************************************************************
+ $Id: param.xweb 6633 2007-02-21 18:33:33Z xmldoc $
+ ********************************************************************
+
+ This file is part of the DocBook Slides Stylesheet distribution.
+ See ../README or http://docbook.sf.net/release/xsl/current/ for
+ copyright and other information.
+
+ ******************************************************************** -->
+
+ <xsl:param name="disable.collapsible">0</xsl:param>
+
+ <xsl:param name="disable.incremental">0</xsl:param>
+
+ <xsl:param name="generate.copyright">1</xsl:param>
+
+ <xsl:param name="generate.foilgroup.numbered.toc">1</xsl:param>
+
+ <xsl:param name="generate.foilgroup.toc">1</xsl:param>
+
+ <xsl:param name="generate.handoutnotes">0</xsl:param>
+
+ <xsl:param name="generate.pubdate">1</xsl:param>
+
+ <xsl:param name="generate.speakernotes">0</xsl:param>
+
+ <xsl:param name="generate.titlepage">1</xsl:param>
+
+ <xsl:param name="mml.embedding.mode">inline</xsl:param>
+
+ <xsl:param name="svg.embedding.mode">object</xsl:param>
+
+ <xsl:param name="user.css">user.css</xsl:param>
+
+ <xsl:param name="wrap.slidecontent">0</xsl:param>
+
+
+ <xsl:param name="s5.controls">0</xsl:param>
+
+ <xsl:param name="s5.defaultview">slideshow</xsl:param>
+
+ <xsl:param name="s5.opera.css">opera.css</xsl:param>
+
+ <xsl:param name="s5.outline.css">outline.css</xsl:param>
+
+ <xsl:param name="s5.path.prefix">files/s5/ui/default/</xsl:param>
+
+ <xsl:param name="s5.print.css">print.css</xsl:param>
+
+ <xsl:param name="s5.slides.css">slides.css</xsl:param>
+
+ <xsl:param name="s5.slides.js">slides.js</xsl:param>
+
+
+ <xsl:param name="slidy.duration">0</xsl:param>
+
+ <xsl:param name="slidy.path.prefix">files/slidy/</xsl:param>
+
+ <xsl:param name="slidy.slidy.css">styles/slidy.css</xsl:param>
+
+ <xsl:param name="slidy.slidy.js">scripts/slidy.js</xsl:param>
+
+ <xsl:param name="slidy.user.css">styles/w3c-blue.css</xsl:param>
+
+
+</xsl:stylesheet>
+
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/xhtml/plain-titlepage.xml b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/xhtml/plain-titlepage.xml
new file mode 100644
index 000000000..fb6569d7b
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/xhtml/plain-titlepage.xml
@@ -0,0 +1,26 @@
+<t:templates xmlns:t="http://nwalsh.com/docbook/xsl/template/1.0"
+ xmlns:param="http://nwalsh.com/docbook/xsl/template/1.0/param"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
+
+<t:titlepage t:element="slides" t:wrapper="div" class="slide cover title">
+ <t:titlepage-content t:side="recto">
+ <title/>
+ <subtitle/>
+ <corpauthor/>
+ <authorgroup/>
+ <author/>
+ </t:titlepage-content>
+
+ <t:titlepage-content t:side="verso">
+ </t:titlepage-content>
+
+ <t:titlepage-separator>
+ </t:titlepage-separator>
+
+ <t:titlepage-before t:side="recto">
+ </t:titlepage-before>
+
+ <t:titlepage-before t:side="verso">
+ </t:titlepage-before>
+</t:titlepage>
+</t:templates>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/xhtml/plain-titlepage.xsl b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/xhtml/plain-titlepage.xsl
new file mode 100644
index 000000000..3af53f420
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/xhtml/plain-titlepage.xsl
@@ -0,0 +1,140 @@
+<?xml version="1.0"?>
+
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:exsl="http://exslt.org/common" version="1.0" exclude-result-prefixes="exsl">
+
+<!-- This stylesheet was created by template/titlepage.xsl-->
+
+<xsl:template name="slides.titlepage.recto">
+ <xsl:choose>
+ <xsl:when test="slidesinfo/title">
+ <xsl:apply-templates mode="slides.titlepage.recto.auto.mode" select="slidesinfo/title"/>
+ </xsl:when>
+ <xsl:when test="docinfo/title">
+ <xsl:apply-templates mode="slides.titlepage.recto.auto.mode" select="docinfo/title"/>
+ </xsl:when>
+ <xsl:when test="info/title">
+ <xsl:apply-templates mode="slides.titlepage.recto.auto.mode" select="info/title"/>
+ </xsl:when>
+ <xsl:when test="title">
+ <xsl:apply-templates mode="slides.titlepage.recto.auto.mode" select="title"/>
+ </xsl:when>
+ </xsl:choose>
+
+ <xsl:choose>
+ <xsl:when test="slidesinfo/subtitle">
+ <xsl:apply-templates mode="slides.titlepage.recto.auto.mode" select="slidesinfo/subtitle"/>
+ </xsl:when>
+ <xsl:when test="docinfo/subtitle">
+ <xsl:apply-templates mode="slides.titlepage.recto.auto.mode" select="docinfo/subtitle"/>
+ </xsl:when>
+ <xsl:when test="info/subtitle">
+ <xsl:apply-templates mode="slides.titlepage.recto.auto.mode" select="info/subtitle"/>
+ </xsl:when>
+ <xsl:when test="subtitle">
+ <xsl:apply-templates mode="slides.titlepage.recto.auto.mode" select="subtitle"/>
+ </xsl:when>
+ </xsl:choose>
+
+ <xsl:apply-templates mode="slides.titlepage.recto.auto.mode" select="slidesinfo/corpauthor"/>
+ <xsl:apply-templates mode="slides.titlepage.recto.auto.mode" select="docinfo/corpauthor"/>
+ <xsl:apply-templates mode="slides.titlepage.recto.auto.mode" select="info/corpauthor"/>
+ <xsl:apply-templates mode="slides.titlepage.recto.auto.mode" select="slidesinfo/authorgroup"/>
+ <xsl:apply-templates mode="slides.titlepage.recto.auto.mode" select="docinfo/authorgroup"/>
+ <xsl:apply-templates mode="slides.titlepage.recto.auto.mode" select="info/authorgroup"/>
+ <xsl:apply-templates mode="slides.titlepage.recto.auto.mode" select="slidesinfo/author"/>
+ <xsl:apply-templates mode="slides.titlepage.recto.auto.mode" select="docinfo/author"/>
+ <xsl:apply-templates mode="slides.titlepage.recto.auto.mode" select="info/author"/>
+</xsl:template>
+
+<xsl:template name="slides.titlepage.verso">
+</xsl:template>
+
+<xsl:template name="slides.titlepage.separator">
+</xsl:template>
+
+<xsl:template name="slides.titlepage.before.recto">
+</xsl:template>
+
+<xsl:template name="slides.titlepage.before.verso">
+</xsl:template>
+
+<xsl:template name="slides.titlepage">
+ <div class="slide cover title">
+ <xsl:variable name="recto.content">
+ <xsl:call-template name="slides.titlepage.before.recto"/>
+ <xsl:call-template name="slides.titlepage.recto"/>
+ </xsl:variable>
+ <xsl:variable name="recto.elements.count">
+ <xsl:choose>
+ <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
+ <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
+ <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($recto.content)/*)"/></xsl:when>
+ <xsl:otherwise>1</xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+ <xsl:if test="(normalize-space($recto.content) != '') or ($recto.elements.count &gt; 0)">
+ <div><xsl:copy-of select="$recto.content"/></div>
+ </xsl:if>
+ <xsl:variable name="verso.content">
+ <xsl:call-template name="slides.titlepage.before.verso"/>
+ <xsl:call-template name="slides.titlepage.verso"/>
+ </xsl:variable>
+ <xsl:variable name="verso.elements.count">
+ <xsl:choose>
+ <xsl:when test="function-available('exsl:node-set')"><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
+ <xsl:when test="contains(system-property('xsl:vendor'), 'Apache Software Foundation')">
+ <!--Xalan quirk--><xsl:value-of select="count(exsl:node-set($verso.content)/*)"/></xsl:when>
+ <xsl:otherwise>1</xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+ <xsl:if test="(normalize-space($verso.content) != '') or ($verso.elements.count &gt; 0)">
+ <div><xsl:copy-of select="$verso.content"/></div>
+ </xsl:if>
+ <xsl:call-template name="slides.titlepage.separator"/>
+ </div>
+</xsl:template>
+
+<xsl:template match="*" mode="slides.titlepage.recto.mode">
+ <!-- if an element isn't found in this mode, -->
+ <!-- try the generic titlepage.mode -->
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+</xsl:template>
+
+<xsl:template match="*" mode="slides.titlepage.verso.mode">
+ <!-- if an element isn't found in this mode, -->
+ <!-- try the generic titlepage.mode -->
+ <xsl:apply-templates select="." mode="titlepage.mode"/>
+</xsl:template>
+
+<xsl:template match="title" mode="slides.titlepage.recto.auto.mode">
+<div xsl:use-attribute-sets="slides.titlepage.recto.style">
+<xsl:apply-templates select="." mode="slides.titlepage.recto.mode"/>
+</div>
+</xsl:template>
+
+<xsl:template match="subtitle" mode="slides.titlepage.recto.auto.mode">
+<div xsl:use-attribute-sets="slides.titlepage.recto.style">
+<xsl:apply-templates select="." mode="slides.titlepage.recto.mode"/>
+</div>
+</xsl:template>
+
+<xsl:template match="corpauthor" mode="slides.titlepage.recto.auto.mode">
+<div xsl:use-attribute-sets="slides.titlepage.recto.style">
+<xsl:apply-templates select="." mode="slides.titlepage.recto.mode"/>
+</div>
+</xsl:template>
+
+<xsl:template match="authorgroup" mode="slides.titlepage.recto.auto.mode">
+<div xsl:use-attribute-sets="slides.titlepage.recto.style">
+<xsl:apply-templates select="." mode="slides.titlepage.recto.mode"/>
+</div>
+</xsl:template>
+
+<xsl:template match="author" mode="slides.titlepage.recto.auto.mode">
+<div xsl:use-attribute-sets="slides.titlepage.recto.style">
+<xsl:apply-templates select="." mode="slides.titlepage.recto.mode"/>
+</div>
+</xsl:template>
+
+</xsl:stylesheet>
+
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/xhtml/plain.xsl b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/xhtml/plain.xsl
new file mode 100644
index 000000000..05d5e5122
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/xhtml/plain.xsl
@@ -0,0 +1,535 @@
+<?xml version="1.0" encoding="ASCII"?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns="http://www.w3.org/1999/xhtml"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:db="http://docbook.org/ns/docbook"
+ xmlns:dbs="http://docbook.org/ns/docbook-slides"
+ xmlns:exsl="http://exslt.org/common"
+ exclude-result-prefixes="dbs db xlink"
+ extension-element-prefixes="exsl"
+ version="1.0">
+
+<xsl:import href="../../xhtml/chunk.xsl"/>
+<xsl:import href="../common/common.xsl"/>
+<xsl:import href="plain-titlepage.xsl"/>
+<xsl:import href="param.xsl"/>
+
+<xsl:param name="local.l10n.xml" select="document('')"/>
+<i18n xmlns="http://docbook.sourceforge.net/xmlns/l10n/1.0">
+ <l:l10n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0" language="en">
+ <l:gentext key="Foilgroup" text="Foil Group"/>
+ <l:gentext key="Foil" text="Foil"/>
+ <l:gentext key="Speakernotes" text="Speaker Notes"/>
+ <l:gentext key="Handoutnotes" text="Handout Notes"/>
+ <l:gentext key="SVGImage" text="SVG image"/>
+ <l:gentext key="MathMLFormula" text="MathML formula"/>
+
+ <l:context name="title">
+ <l:gentext key="foil" text="Foil %n %t"/>
+ <l:gentext key="foilgroup" text="Foil %n %t"/>
+ </l:context>
+ </l:l10n>
+</i18n>
+
+<!-- Overrides from DocBook XSL -->
+<xsl:template name="process.qanda.toc"/>
+
+<!-- Main content starts here -->
+
+<xsl:template name="xhtml.head">
+ <meta name="generator" content="DocBook Slides Stylesheets V{$VERSION}"/>
+ <link rel="stylesheet" href="{$user.css}" type="text/css"/>
+</xsl:template>
+
+<xsl:template name="slideshow.head"/>
+
+<xsl:template name="slideshow.content">
+ <div class="presentation">
+ <xsl:if test="$generate.titlepage != 0">
+ <xsl:apply-templates select="/dbs:slides" mode="titlepage"/>
+ </xsl:if>
+
+ <xsl:apply-templates select="/dbs:slides/dbs:foil|dbs:slides/dbs:foilgroup"/>
+ </div>
+</xsl:template>
+
+<xsl:template match="/dbs:slides" mode="titlepage">
+ <xsl:call-template name="slides.titlepage"/>
+</xsl:template>
+
+<xsl:template name="slide.notes">
+ <xsl:if test="($generate.speakernotes != 0) and ./dbs:speakernotes">
+ <div class="notes">
+ <h2 class="notes">
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'Speakernotes'"/>
+ </xsl:call-template>
+ </h2>
+
+ <xsl:apply-templates select="dbs:speakernotes" mode="notes.mode"/>
+ </div>
+ </xsl:if>
+
+ <xsl:if test="($generate.handoutnotes != 0) and ./dbs:handoutnotes">
+ <div class="handout">
+ <h2 class="handout">
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'Handoutnotes'"/>
+ </xsl:call-template>
+ </h2>
+
+ <xsl:apply-templates select="dbs:handoutnotes" mode="notes.mode"/>
+ </div>
+ </xsl:if>
+</xsl:template>
+
+<xsl:template match="/">
+ <html>
+ <xsl:if test="/dbs:slides/@xml:lang">
+ <xsl:attribute name="xml:lang">
+ <xsl:value-of select="/dbs:slides/@xml:lang"/>
+ </xsl:attribute>
+ </xsl:if>
+
+ <head>
+ <title>
+ <xsl:call-template name="get.title">
+ <xsl:with-param name="ctx" select="/dbs:slides"/>
+ </xsl:call-template>
+ </title>
+
+ <xsl:call-template name="xhtml.head"/>
+ </head>
+
+ <body>
+ <xsl:call-template name="slideshow.head"/>
+
+ <xsl:call-template name="slideshow.content"/>
+ </body>
+ </html>
+</xsl:template>
+
+<xsl:template name="foilgroup.content">
+ <xsl:apply-templates select="*[not(self::dbs:foil)]"/>
+
+ <xsl:if test="($generate.foilgroup.toc != 0)">
+ <xsl:choose>
+ <xsl:when test="($generate.foilgroup.numbered.toc != 0)">
+ <ol>
+ <xsl:for-each select="dbs:foil">
+ <li><xsl:call-template name="get.title"/></li>
+ </xsl:for-each>
+ </ol>
+ </xsl:when>
+
+ <xsl:otherwise>
+ <ul>
+ <xsl:for-each select="dbs:foil">
+ <li><xsl:call-template name="get.title"/></li>
+ </xsl:for-each>
+ </ul>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:if>
+</xsl:template>
+
+<xsl:template name="foil.classes">
+ <xsl:variable name="classValue">
+ <xsl:call-template name="process.dbs.attributes">
+ <!-- Do not put incremental or collapsible on foils -->
+ <xsl:with-param name="attributeSet" select="self::*/@dbs:style"/>
+ <xsl:with-param name="stored">
+ <xsl:value-of select="'slide'"/>
+ <xsl:if test="@*[namespace-uri() = 'http://docbook.org/ns/docbook-slides']">
+ <xsl:text> </xsl:text>
+ </xsl:if>
+ </xsl:with-param>
+ </xsl:call-template>
+ </xsl:variable>
+
+ <xsl:attribute name="class">
+ <xsl:value-of select="$classValue"/>
+ </xsl:attribute>
+</xsl:template>
+
+<xsl:template match="dbs:foilgroup">
+ <xsl:call-template name="generate.anchor"/>
+ <div>
+ <xsl:call-template name="foil.classes"/>
+
+ <xsl:choose>
+ <xsl:when test="($wrap.slidecontent != 0)">
+ <div class="slidecontent">
+ <xsl:call-template name="foilgroup.content"/>
+ </div>
+ </xsl:when>
+
+ <xsl:otherwise>
+ <xsl:call-template name="foilgroup.content"/>
+ </xsl:otherwise>
+ </xsl:choose>
+
+ <xsl:call-template name="slide.notes"/>
+ </div>
+
+ <xsl:apply-templates select="dbs:foil"/>
+</xsl:template>
+
+<xsl:template match="dbs:foil">
+ <xsl:call-template name="generate.anchor"/>
+ <div>
+ <xsl:call-template name="foil.classes"/>
+
+ <xsl:choose>
+ <xsl:when test="($wrap.slidecontent != 0)">
+ <div class="slidecontent">
+ <xsl:apply-templates select="*"/>
+ </div>
+ </xsl:when>
+
+ <xsl:otherwise>
+ <xsl:apply-templates/>
+ </xsl:otherwise>
+ </xsl:choose>
+
+ <xsl:call-template name="process.footnotes"/>
+
+ <xsl:call-template name="slide.notes"/>
+ </div>
+</xsl:template>
+
+<xsl:template match="dbs:handoutnotes"/>
+
+<xsl:template match="dbs:speakernotes"/>
+
+<xsl:template match="dbs:handoutnotes" mode="notes.mode">
+ <div class="handoutnotes">
+ <xsl:apply-templates/>
+ </div>
+</xsl:template>
+
+<xsl:template match="dbs:speakernotes" mode="notes.mode">
+ <div class="speakernotes">
+ <xsl:apply-templates/>
+ </div>
+</xsl:template>
+
+<xsl:template name="process.dbs.attributes">
+ <xsl:param name="attributeSet"/>
+ <xsl:param name="stored" select="''"/>
+
+ <xsl:variable name="gotIncremental">
+ <xsl:if test="((local-name($attributeSet[1]) = 'incremental') and ($attributeSet[1] = '1'))">1</xsl:if>
+ </xsl:variable>
+
+ <xsl:variable name="enableIncremental">
+ <xsl:if test="($disable.incremental = '0') and ($gotIncremental = '1')">1</xsl:if>
+ </xsl:variable>
+
+ <xsl:variable name="gotCollapsible">
+ <xsl:if test="((local-name($attributeSet[1]) = 'collapsible') and ($attributeSet[1] = '1'))">1</xsl:if>
+ </xsl:variable>
+
+ <xsl:variable name="enableCollapsible">
+ <xsl:if test="($disable.collapsible = '0') and ($gotCollapsible = '1')">1</xsl:if>
+ </xsl:variable>
+
+ <xsl:variable name="append">
+ <xsl:choose>
+ <xsl:when test="local-name($attributeSet[1]) = 'style'">
+ <xsl:value-of select="$attributeSet[1]"/>
+ </xsl:when>
+
+ <xsl:when test="$enableCollapsible = '1'">
+ <xsl:value-of select="'outline'"/>
+ </xsl:when>
+
+ <xsl:when test="$enableIncremental = '1'">
+ <xsl:value-of select="'incremental'"/>
+ </xsl:when>
+ </xsl:choose>
+
+ <xsl:if test="count($attributeSet) &gt; 1">
+ <xsl:text> </xsl:text>
+ </xsl:if>
+ </xsl:variable>
+
+ <xsl:choose>
+ <xsl:when test="not($attributeSet)">
+ <xsl:value-of select="$stored"/>
+ </xsl:when>
+
+ <xsl:when test="count($attributeSet) &lt;= 1">
+ <xsl:value-of select="concat($stored, $append)"/>
+ </xsl:when>
+
+ <xsl:otherwise>
+ <xsl:call-template name="process.dbs.attributes">
+ <xsl:with-param name="attributeSet" select="$attributeSet[position() != 1]"/>
+ <xsl:with-param name="stored" select="concat($stored, $append)"/>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<xsl:template match="dbs:block">
+ <xsl:variable name="classValue">
+ <xsl:call-template name="process.dbs.attributes">
+ <xsl:with-param name="attributeSet" select="(ancestor-or-self::*/@dbs:incremental)[last()] | (ancestor-or-self::*/@dbs:collapsible)[last()] | self::*/@dbs:style"/>
+ </xsl:call-template>
+ </xsl:variable>
+
+ <div class="{$classValue}">
+ <xsl:apply-templates/>
+ </div>
+</xsl:template>
+
+<xsl:template match="db:info">
+ <xsl:apply-templates select="db:title|db:titleabbrev|db:subtitle|db:author|db:authorgroup/db:author"/>
+</xsl:template>
+
+<xsl:template match="db:title|db:titleabbrev">
+ <xsl:if test="not(self::db:title) or (not(preceding-sibling::db:titleabbrev) and not(following-sibling::db:titleabbrev))">
+ <h1 class="title"><xsl:value-of select="."/></h1>
+ </xsl:if>
+</xsl:template>
+
+<xsl:template match="db:subtitle">
+ <h1 class="subtitle"><xsl:value-of select="."/></h1>
+</xsl:template>
+
+<xsl:template match="db:author">
+ <h3 class="author"><xsl:apply-templates select="db:personname|db:orgname"/></h3>
+ <h4 class="email"><xsl:apply-templates select="db:email"/></h4>
+ <xsl:if test="db:affiliation">
+ <h4 class="affiliation"><xsl:value-of select="db:affiliation"/></h4>
+ </xsl:if>
+</xsl:template>
+
+<xsl:template match="db:email">
+ <a>
+ <xsl:attribute name="href">
+ <xsl:text>mailto:</xsl:text><xsl:value-of select="."/>
+ </xsl:attribute>
+
+ &lt;<xsl:value-of select="."/>&gt;
+ </a>
+</xsl:template>
+
+<xsl:template name="list.content">
+ <xsl:variable name="classValue">
+ <xsl:call-template name="process.dbs.attributes">
+ <xsl:with-param name="attributeSet" select="(ancestor-or-self::*/@dbs:incremental)[last()] | (ancestor-or-self::*/@dbs:collapsible)[last()] | self::*/@dbs:style"/>
+ </xsl:call-template>
+ </xsl:variable>
+
+ <xsl:attribute name="class">
+ <xsl:value-of select="$classValue"/>
+ </xsl:attribute>
+
+ <xsl:apply-templates select="*"/>
+</xsl:template>
+
+<xsl:template match="db:itemizedlist">
+ <ul>
+ <xsl:call-template name="list.content"/>
+ </ul>
+</xsl:template>
+
+<xsl:template match="db:orderedlist">
+ <ol>
+ <xsl:call-template name="list.content"/>
+ </ol>
+</xsl:template>
+
+<xsl:template match="db:mediaobject">
+ <xsl:variable name="classValue">
+ <xsl:call-template name="process.dbs.attributes">
+ <xsl:with-param name="attributeSet" select="(ancestor-or-self::*/@dbs:incremental)[last()] | (ancestor-or-self::*/@dbs:collapsible)[last()] | self::*/@dbs:style"/>
+ </xsl:call-template>
+ </xsl:variable>
+
+ <div class="{$classValue}">
+ <xsl:apply-templates select="db:imageobject[1]"/>
+ </div>
+</xsl:template>
+
+<xsl:template name="bibliography.titlepage"/>
+
+<xsl:template match="db:bibliosource" mode="bibliography.mode">
+ <span>
+ <xsl:call-template name="common.html.attributes"/>
+ <xsl:call-template name="id.attribute"/>
+ <xsl:choose>
+ <xsl:when test="@xlink:href">
+ <a href="{@xlink:href}">
+ <xsl:apply-templates mode="bibliography.mode"/>
+ </a>
+ </xsl:when>
+
+ <xsl:otherwise>
+ <xsl:apply-templates mode="bibliomixed.mode"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </span>
+</xsl:template>
+
+<xsl:template name="href.target.uri">
+ <xsl:param name="object" select="."/>
+ <xsl:variable name="ischunk">
+ <xsl:call-template name="chunk">
+ <xsl:with-param name="node" select="$object"/>
+ </xsl:call-template>
+ </xsl:variable>
+
+ <xsl:if test="$ischunk='0'">
+ <xsl:text>#</xsl:text>
+ <xsl:call-template name="object.id">
+ <xsl:with-param name="object" select="$object"/>
+ </xsl:call-template>
+ </xsl:if>
+</xsl:template>
+
+<xsl:template match="dbs:foil|dbs:foilgroup" mode="xref-to">
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'Foil'"/>
+ </xsl:call-template>
+ <xsl:call-template name="gentext.space"/>
+ <xsl:value-of select="count(preceding::dbs:foil|preceding::dbs:foilgroup) + 1"/>
+ <xsl:text>: </xsl:text>
+ <xsl:call-template name="get.title"/>
+</xsl:template>
+
+<xsl:template name="extension.process.image.attributes">
+ <xsl:variable name="classValue">
+ <xsl:call-template name="process.dbs.attributes">
+ <xsl:with-param name="attributeSet" select="(ancestor-or-self::*/@dbs:incremental)[last()] | (ancestor-or-self::*/@dbs:collapsible)[last()] | self::*/@dbs:style"/>
+ </xsl:call-template>
+ </xsl:variable>
+
+ <xsl:if test="./@*[namespace-uri() = 'http://docbook.org/ns/docbook-slides']">
+ <xsl:attribute name="class">
+ <xsl:value-of select="$classValue"/>
+ </xsl:attribute>
+ </xsl:if>
+</xsl:template>
+
+<xsl:template match="*[namespace-uri() = 'http://www.w3.org/2000/svg']">
+ <xsl:call-template name="handle.embedded">
+ <xsl:with-param name="modeParam" select="$svg.embedding.mode"/>
+ <xsl:with-param name="fileExt" select="'.svg'"/>
+ <xsl:with-param name="mimeType" select="'image/svg+xml'"/>
+ <xsl:with-param name="gentextKey" select="'SVGImage'"/>
+ </xsl:call-template>
+</xsl:template>
+
+<xsl:template match="*[namespace-uri() = 'http://www.w3.org/1998/Math/MathML']">
+ <xsl:call-template name="handle.embedded">
+ <xsl:with-param name="modeParam" select="$mml.embedding.mode"/>
+ <xsl:with-param name="fileExt" select="'.mml'"/>
+ <xsl:with-param name="mimeType" select="'application/mathml-presentation+xml'"/>
+ <xsl:with-param name="gentextKey" select="'MathMLFormula'"/>
+ </xsl:call-template>
+</xsl:template>
+
+<xsl:template name="handle.embedded">
+ <xsl:param name="modeParam">inline</xsl:param>
+ <xsl:param name="fileExt"/>
+ <xsl:param name="mimeType"/>
+ <xsl:param name="gentextKey"/>
+
+ <xsl:choose>
+ <xsl:when test="$modeParam = 'inline'">
+ <xsl:copy-of select="."/>
+ </xsl:when>
+
+ <xsl:otherwise>
+ <xsl:variable name="id">
+ <xsl:call-template name="object.id"/>
+ </xsl:variable>
+ <xsl:variable name="fname">
+ <xsl:value-of select="concat($id, $fileExt)"/>
+ </xsl:variable>
+
+ <exsl:document href="{$fname}">
+ <xsl:copy-of select="."/>
+ </exsl:document>
+
+ <xsl:choose>
+ <xsl:when test="$modeParam = 'object'">
+ <object data="{$fname}" type="{$mimeType}"/>
+ </xsl:when>
+
+ <xsl:when test="$modeParam = 'image'">
+ <img alt="{$mimeType} object" src="{$fname}"/>
+ </xsl:when>
+
+ <xsl:when test="$modeParam = 'link'">
+ <a href="{$fname}">
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="$gentextKey"/>
+ </xsl:call-template>
+ </a>
+ </xsl:when>
+
+ <xsl:when test="$modeParam = 'iframe'">
+ <iframe src="{$fname}"/>
+ </xsl:when>
+
+ <xsl:when test="$modeParam = 'embed'">
+ <embed src="{$fname}" type="{$mimeType}" />
+ </xsl:when>
+
+ <xsl:otherwise>
+ <xsl:message terminate="yes">
+ Unknown processing mode <xsl:value-of select="$modeParam"/>.
+ </xsl:message>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<xsl:template name="generate.anchor">
+ <a>
+ <xsl:attribute name="name">
+ <xsl:call-template name="object.id"/>
+ </xsl:attribute>
+ </a>
+</xsl:template>
+
+<xsl:template name="slide.copyright">
+ <div class="copyright">
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'Copyright'"/>
+ </xsl:call-template>
+ <xsl:call-template name="gentext.space"/>
+ <xsl:text>&#xa9;</xsl:text>
+ <xsl:call-template name="gentext.space"/>
+ <xsl:value-of select="/dbs:slides/db:info/db:copyright/db:year"/>
+ <xsl:call-template name="gentext.space"/>
+ <xsl:value-of select="/dbs:slides/db:info/db:copyright/db:holder"/>
+ </div>
+</xsl:template>
+
+<xsl:template name="slide.pubdate">
+ <div class="pubdate">
+ <xsl:call-template name="gentext">
+ <xsl:with-param name="key" select="'Published'"/>
+ </xsl:call-template>
+ <xsl:text>: </xsl:text>
+ <xsl:value-of select="/dbs:slides/db:info/db:pubdate"/>
+ </div>
+</xsl:template>
+
+<xsl:template match="/" mode="slide.header.mode"/>
+
+<xsl:template match="/" mode="slide.footer.mode">
+ <xsl:if test="($generate.copyright != 0) and /dbs:slides/db:info/db:copyright">
+ <xsl:call-template name="slide.copyright"/>
+ </xsl:if>
+ <xsl:if test="($generate.pubdate != 0) and /dbs:slides/db:info/db:pubdate">
+ <xsl:call-template name="slide.pubdate"/>
+ </xsl:if>
+</xsl:template>
+</xsl:stylesheet>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/xhtml/s5.xsl b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/xhtml/s5.xsl
new file mode 100644
index 000000000..9447db3ec
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/xhtml/s5.xsl
@@ -0,0 +1,95 @@
+<?xml version="1.0" encoding="ASCII"?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns="http://www.w3.org/1999/xhtml"
+ xmlns:db="http://docbook.org/ns/docbook"
+ xmlns:dbs="http://docbook.org/ns/docbook-slides"
+ exclude-result-prefixes="dbs db"
+ version="1.0">
+
+<xsl:import href="plain.xsl"/>
+
+<!-- XXX: recommended by S5 but DocBook XSL produces XHTML Transitional
+
+<xsl:output doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN"
+ doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"/>
+-->
+
+<xsl:template name="xhtml.head">
+ <xsl:variable name="s5.controls.visible">
+ <xsl:choose>
+ <xsl:when test="$s5.controls != 0">visible</xsl:when>
+
+ <xsl:otherwise>hidden</xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+
+ <meta name="generator" content="DocBook Slides Stylesheets V{$VERSION}"/>
+ <meta name="version" content="S5 1.1"/>
+ <meta name="defaultView" content="{$s5.defaultview}"/>
+ <meta name="controlVis" content="{$s5.controls.visible}"/>
+
+ <link rel="stylesheet" href="{concat($s5.path.prefix, $s5.slides.css)}" type="text/css" media="projection" id="slideProj" />
+ <link rel="stylesheet" href="{concat($s5.path.prefix, $s5.outline.css)}" type="text/css" media="screen" id="outlineStyle" />
+ <link rel="stylesheet" href="{concat($s5.path.prefix, $s5.print.css)}" type="text/css" media="print" id="slidePrint" />
+ <link rel="stylesheet" href="{concat($s5.path.prefix, $s5.opera.css)}" type="text/css" media="projection" id="operaFix" />
+ <link rel="stylesheet" href="{$user.css}" type="text/css"/>
+
+ <script src="{concat($s5.path.prefix, $s5.slides.js)}" type="text/javascript"></script>
+</xsl:template>
+
+<xsl:template name="slideshow.head">
+ <div class="layout">
+ <div id="controls"/>
+ <div id="currentSlide"/>
+ <div id="header">
+ <xsl:apply-templates select="/" mode="slide.header.mode"/>
+ </div>
+ <div id="footer">
+ <xsl:apply-templates select="/" mode="slide.footer.mode"/>
+ </div>
+ </div>
+</xsl:template>
+
+<xsl:template match="db:xref">
+ <xsl:variable name="target" select="id(./@linkend)"/>
+
+ <xsl:choose>
+ <xsl:when test="($target[self::dbs:foil] or $target[self::dbs:foilgroup])">
+ <xsl:variable name="target.no" select="count(preceding::dbs:foil|preceding::dbs:foilgroup) + 1"/>
+
+ <xsl:apply-templates select="$target" mode="xref-to"/>
+ </xsl:when>
+
+ <xsl:otherwise>
+ <xsl:call-template name="xref"/>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<xsl:template match="db:biblioentry" mode="xref-to">
+ <xsl:variable name="id" select="@xml:id"/>
+
+ <xsl:choose>
+ <xsl:when test="$bibliography.numbered != 0">
+ <xsl:number from="db:bibliography" count="db:biblioentry|db:bibliomixed" level="any" format="1"/>
+ </xsl:when>
+
+ <xsl:otherwise>
+ <xsl:value-of select="$id"/>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<xsl:template match="db:mediaobject">
+ <p>
+ <xsl:if test="@dbs:style">
+ <xsl:attribute name="class">
+ <xsl:value-of select="@dbs:style"/>
+ </xsl:attribute>
+ </xsl:if>
+
+ <xsl:apply-templates/>
+ </p>
+</xsl:template>
+
+</xsl:stylesheet>
diff --git a/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/xhtml/slidy.xsl b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/xhtml/slidy.xsl
new file mode 100644
index 000000000..d286c553d
--- /dev/null
+++ b/stylesheets/lfs-xsl/docbook-xsl-1.78.1/slides/xhtml/slidy.xsl
@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="ASCII"?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns="http://www.w3.org/1999/xhtml"
+ xmlns:db="http://docbook.org/ns/docbook"
+ xmlns:dbs="http://docbook.org/ns/docbook-slides"
+ exclude-result-prefixes="dbs db"
+ version="1.0">
+
+<xsl:import href="plain.xsl"/>
+
+<xsl:param name="wrap.slidecontent">0</xsl:param>
+
+<xsl:template name="xhtml.head">
+ <meta name="copyright">
+ <xsl:attribute name="content">
+ <xsl:if test="/dbs:slides/db:info/db:copyright">
+ <xsl:call-template name="slide.copyright"/>
+ </xsl:if>
+ </xsl:attribute>
+ </meta>
+
+ <xsl:if test="$slidy.duration != 0">
+ <meta name="duration" content="{$slidy.duration}"/>
+ </xsl:if>
+
+ <link rel="stylesheet" href="{concat($slidy.path.prefix, $slidy.slidy.css)}" type="text/css"/>
+ <xsl:if test="$slidy.user.css">
+ <link rel="stylesheet" href="{concat($slidy.path.prefix, $slidy.user.css)}" type="text/css"/>
+ </xsl:if>
+ <link rel="stylesheet" href="{$user.css}" type="text/css"/>
+ <script src="{concat($slidy.path.prefix, $slidy.slidy.js)}" charset="utf-8" type="text/javascript"/>
+</xsl:template>
+
+<xsl:template name="slideshow.head">
+ <div class="background"/>
+</xsl:template>
+
+<xsl:template name="slideshow.content">
+ <xsl:if test="$generate.titlepage != 0">
+ <xsl:apply-templates select="/dbs:slides" mode="titlepage"/>
+ </xsl:if>
+
+ <xsl:apply-templates select="/dbs:slides/dbs:foil|dbs:slides/dbs:foilgroup"/>
+</xsl:template>
+
+<xsl:template match="db:xref">
+ <xsl:variable name="target" select="id(./@linkend)"/>
+
+ <xsl:choose>
+ <xsl:when test="($target[self::dbs:foil] or $target[self::dbs:foilgroup])">
+ <!-- foil no: preceding foil(group)s + titlepage + 1 -->
+ <xsl:variable name="target.no" select="count($target/preceding::dbs:foil|$target/preceding::dbs:foilgroup) + 1 + $generate.titlepage"/>
+
+ <a href="{concat('#(', $target.no, ')')}">
+ <xsl:apply-templates select="$target" mode="xref-to"/>
+ </a>
+ </xsl:when>
+
+ <xsl:otherwise>
+ <xsl:call-template name="xref"/>
+ </xsl:otherwise>
+ </xsl:choose>
+</xsl:template>
+
+<xsl:template match="db:biblioentry" mode="xref-to">
+ <xsl:variable name="id" select="@xml:id"/>
+ <xsl:variable name="entry" select="//db:bibliography/*[@xml:id=$id][1]"/>
+
+ <a>
+ <xsl:attribute name="href">
+ <xsl:value-of select="concat('#(', count($entry/preceding::dbs:foil|$entry/preceding::dbs:foilgroup) + 1 + $generate.titlepage, ')')"/>
+ </xsl:attribute>
+ <xsl:choose>
+ <xsl:when test="$bibliography.numbered != 0">
+ <xsl:number from="db:bibliography" count="db:biblioentry|db:bibliomixed" level="any" format="1"/>
+ </xsl:when>
+
+ <xsl:otherwise>
+ <xsl:value-of select="$id"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </a>
+</xsl:template>
+
+</xsl:stylesheet>