aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthew Burgess <matthew@linuxfromscratch.org>2004-11-28 18:33:33 +0000
committerMatthew Burgess <matthew@linuxfromscratch.org>2004-11-28 18:33:33 +0000
commita8f36125fa1c4971c61ea039e2a005dbd2c42632 (patch)
treecffda7f97d6785b4f1b3cc5df26e3a52c4307e45
parent78dbbaa139e72a0dbce942a4d4ae7fe9e075fb03 (diff)
* (all) Removed all references to the DocBook DTD
* (docbook.rng) Added the DocBook "Gin" schema * (Makefile) Updated with new validation command * (prologue/*) Validation fixes git-svn-id: http://svn.linuxfromscratch.org/LFS/branches/LFS-RNG/BOOK@4329 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
-rw-r--r--INSTALL3
-rw-r--r--Makefile2
-rw-r--r--chapter01/administrativa.xml2
-rw-r--r--chapter01/askforhelp.xml2
-rw-r--r--chapter01/changelog.xml2
-rw-r--r--chapter01/chapter01.xml2
-rw-r--r--chapter01/how.xml2
-rw-r--r--chapter02/chapter02.xml2
-rw-r--r--chapter02/creatingfilesystem.xml2
-rw-r--r--chapter02/creatingpartition.xml2
-rw-r--r--chapter02/introduction.xml2
-rw-r--r--chapter02/mounting.xml2
-rw-r--r--chapter03/chapter03.xml2
-rw-r--r--chapter03/introduction.xml2
-rw-r--r--chapter03/packages.xml2
-rw-r--r--chapter03/patches.xml2
-rw-r--r--chapter04/aboutlfs.xml2
-rw-r--r--chapter04/aboutsbus.xml2
-rw-r--r--chapter04/abouttestsuites.xml2
-rw-r--r--chapter04/addinguser.xml2
-rw-r--r--chapter04/chapter04.xml2
-rw-r--r--chapter04/creatingtoolsdir.xml2
-rw-r--r--chapter04/settingenviron.xml2
-rw-r--r--chapter05/adjusting.xml2
-rw-r--r--chapter05/bash.xml2
-rw-r--r--chapter05/binutils-pass1.xml2
-rw-r--r--chapter05/binutils-pass2.xml2
-rw-r--r--chapter05/bison.xml2
-rw-r--r--chapter05/bzip2.xml2
-rw-r--r--chapter05/chapter05.xml2
-rw-r--r--chapter05/coreutils.xml2
-rw-r--r--chapter05/dejagnu.xml2
-rw-r--r--chapter05/diffutils.xml2
-rw-r--r--chapter05/expect.xml2
-rw-r--r--chapter05/findutils.xml2
-rw-r--r--chapter05/flex.xml2
-rw-r--r--chapter05/gawk.xml2
-rw-r--r--chapter05/gcc-pass1.xml2
-rw-r--r--chapter05/gcc-pass2.xml2
-rw-r--r--chapter05/gettext.xml2
-rw-r--r--chapter05/glibc.xml2
-rw-r--r--chapter05/grep.xml2
-rw-r--r--chapter05/gzip.xml2
-rw-r--r--chapter05/hostreqs.xml2
-rw-r--r--chapter05/introduction.xml2
-rw-r--r--chapter05/kernel-headers.xml2
-rw-r--r--chapter05/linux-libc-headers.xml2
-rw-r--r--chapter05/m4.xml2
-rw-r--r--chapter05/make.xml2
-rw-r--r--chapter05/ncurses.xml2
-rw-r--r--chapter05/patch.xml2
-rw-r--r--chapter05/perl.xml2
-rw-r--r--chapter05/sed.xml2
-rw-r--r--chapter05/stripping.xml2
-rw-r--r--chapter05/tar.xml2
-rw-r--r--chapter05/tcl.xml2
-rw-r--r--chapter05/texinfo.xml2
-rw-r--r--chapter05/toolchaintechnotes.xml2
-rw-r--r--chapter05/udev.xml2
-rw-r--r--chapter05/util-linux.xml2
-rw-r--r--chapter06/aboutdebug.xml2
-rw-r--r--chapter06/autoconf.xml2
-rw-r--r--chapter06/automake.xml2
-rw-r--r--chapter06/bash.xml2
-rw-r--r--chapter06/binutils.xml2
-rw-r--r--chapter06/bison.xml2
-rw-r--r--chapter06/bzip2.xml2
-rw-r--r--chapter06/changingowner.xml2
-rw-r--r--chapter06/chapter06.xml2
-rw-r--r--chapter06/chroot.xml2
-rw-r--r--chapter06/coreutils.xml2
-rw-r--r--chapter06/createfiles.xml2
-rw-r--r--chapter06/creatingdirs.xml2
-rw-r--r--chapter06/devices.xml2
-rw-r--r--chapter06/diffutils.xml2
-rw-r--r--chapter06/e2fsprogs.xml2
-rw-r--r--chapter06/file.xml2
-rw-r--r--chapter06/findutils.xml2
-rw-r--r--chapter06/flex.xml2
-rw-r--r--chapter06/gawk.xml2
-rw-r--r--chapter06/gcc.xml2
-rw-r--r--chapter06/gettext.xml2
-rw-r--r--chapter06/glibc.xml2
-rw-r--r--chapter06/grep.xml2
-rw-r--r--chapter06/groff.xml2
-rw-r--r--chapter06/grub.xml2
-rw-r--r--chapter06/gzip.xml2
-rw-r--r--chapter06/hotplug.xml2
-rw-r--r--chapter06/iana-etc.xml2
-rw-r--r--chapter06/inetutils.xml2
-rw-r--r--chapter06/introduction.xml2
-rw-r--r--chapter06/iproute2.xml2
-rw-r--r--chapter06/kbd.xml2
-rw-r--r--chapter06/kernfs.xml3
-rw-r--r--chapter06/less.xml2
-rw-r--r--chapter06/libol.xml2
-rw-r--r--chapter06/libtool.xml2
-rw-r--r--chapter06/linux-libc-headers.xml2
-rw-r--r--chapter06/m4.xml2
-rw-r--r--chapter06/make.xml2
-rw-r--r--chapter06/man-pages.xml2
-rw-r--r--chapter06/man.xml2
-rw-r--r--chapter06/mktemp.xml2
-rw-r--r--chapter06/module-init-tools.xml2
-rw-r--r--chapter06/ncurses.xml2
-rw-r--r--chapter06/patch.xml2
-rw-r--r--chapter06/perl.xml2
-rw-r--r--chapter06/procps.xml2
-rw-r--r--chapter06/psmisc.xml2
-rw-r--r--chapter06/pwdgroup.xml2
-rw-r--r--chapter06/readjusting.xml2
-rw-r--r--chapter06/readline.xml2
-rw-r--r--chapter06/revisedchroot.xml2
-rw-r--r--chapter06/sed.xml2
-rw-r--r--chapter06/shadow.xml2
-rw-r--r--chapter06/strippingagain.xml3
-rw-r--r--chapter06/syslogng.xml2
-rw-r--r--chapter06/sysvinit.xml2
-rw-r--r--chapter06/tar.xml2
-rw-r--r--chapter06/texinfo.xml2
-rw-r--r--chapter06/udev.xml2
-rw-r--r--chapter06/util-linux.xml2
-rw-r--r--chapter06/vim.xml2
-rw-r--r--chapter06/zlib.xml2
-rw-r--r--chapter07/bootscripts.xml2
-rw-r--r--chapter07/chapter07.xml2
-rw-r--r--chapter07/console.xml2
-rw-r--r--chapter07/hostname.xml2
-rw-r--r--chapter07/hosts.xml2
-rw-r--r--chapter07/inputrc.xml2
-rw-r--r--chapter07/introduction.xml2
-rw-r--r--chapter07/network.xml2
-rw-r--r--chapter07/profile.xml2
-rw-r--r--chapter07/setclock.xml2
-rw-r--r--chapter07/usage.xml2
-rw-r--r--chapter08/chapter08.xml2
-rw-r--r--chapter08/fstab.xml2
-rw-r--r--chapter08/grub.xml2
-rw-r--r--chapter08/introduction.xml2
-rw-r--r--chapter08/kernel.xml2
-rw-r--r--chapter09/chapter09.xml2
-rw-r--r--chapter09/getcounted.xml2
-rw-r--r--chapter09/reboot.xml2
-rw-r--r--chapter09/theend.xml2
-rw-r--r--chapter09/whatnow.xml2
-rw-r--r--docbook.rng14772
-rw-r--r--index-pdf.xml2
-rw-r--r--index.xml33
-rw-r--r--prologue/acknowledgments.xml303
-rw-r--r--prologue/audience.xml27
-rw-r--r--prologue/bookinfo.xml10
-rw-r--r--prologue/dedication.xml6
-rw-r--r--prologue/foreword.xml9
-rw-r--r--prologue/organization.xml26
-rw-r--r--prologue/preface.xml20
-rw-r--r--prologue/prerequisites.xml21
-rw-r--r--prologue/typography.xml12
157 files changed, 15158 insertions, 376 deletions
diff --git a/INSTALL b/INSTALL
index c05ba8c1e..3e8db3457 100644
--- a/INSTALL
+++ b/INSTALL
@@ -17,9 +17,6 @@ If all you want to do is convert XML to HTML perform the following:
* libxslt
- http://www.linuxfromscratch.org/blfs/view/cvs/general/libxslt.html
-* DocBook DTD
- - http://www.linuxfromscratch.org/blfs/view/cvs/pst/xml.html
-
* DocBook XSL Stylesheets
- http://www.linuxfromscratch.org/blfs/view/cvs/pst/docbook-xsl.html
- additionally create a link from
diff --git a/Makefile b/Makefile
index ad4513406..6d02689d0 100644
--- a/Makefile
+++ b/Makefile
@@ -60,5 +60,5 @@ nochunks:
tidy -config tidy.conf $(BASEDIR)/$(NOCHUNKS_OUTPUT) || true
validate:
- xmllint --noout --nonet --xinclude --postvalid index.xml
+ xmllint --noout --xinclude --relaxng docbook.rng index.xml
diff --git a/chapter01/administrativa.xml b/chapter01/administrativa.xml
index 2b63714cd..8cffb192a 100644
--- a/chapter01/administrativa.xml
+++ b/chapter01/administrativa.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter01/askforhelp.xml b/chapter01/askforhelp.xml
index 16517e54f..0b5469652 100644
--- a/chapter01/askforhelp.xml
+++ b/chapter01/askforhelp.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter01/changelog.xml b/chapter01/changelog.xml
index 4910d79e5..6bb90f32a 100644
--- a/chapter01/changelog.xml
+++ b/chapter01/changelog.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter01/chapter01.xml b/chapter01/chapter01.xml
index 2090daa0e..ef2622131 100644
--- a/chapter01/chapter01.xml
+++ b/chapter01/chapter01.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE chapter [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter01/how.xml b/chapter01/how.xml
index 76b7b22c3..b3d3cb444 100644
--- a/chapter01/how.xml
+++ b/chapter01/how.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter02/chapter02.xml b/chapter02/chapter02.xml
index 8313de285..4a9252dd0 100644
--- a/chapter02/chapter02.xml
+++ b/chapter02/chapter02.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE chapter [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter02/creatingfilesystem.xml b/chapter02/creatingfilesystem.xml
index d69978ebb..6edd58627 100644
--- a/chapter02/creatingfilesystem.xml
+++ b/chapter02/creatingfilesystem.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter02/creatingpartition.xml b/chapter02/creatingpartition.xml
index 82b4184e4..f45209cb5 100644
--- a/chapter02/creatingpartition.xml
+++ b/chapter02/creatingpartition.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter02/introduction.xml b/chapter02/introduction.xml
index f1609dab9..0f1b7dabd 100644
--- a/chapter02/introduction.xml
+++ b/chapter02/introduction.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter02/mounting.xml b/chapter02/mounting.xml
index 87331dcfb..0b7668280 100644
--- a/chapter02/mounting.xml
+++ b/chapter02/mounting.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter03/chapter03.xml b/chapter03/chapter03.xml
index 34896c8ea..9514d038c 100644
--- a/chapter03/chapter03.xml
+++ b/chapter03/chapter03.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE chapter [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter03/introduction.xml b/chapter03/introduction.xml
index 7fa9ecdd5..d9d9ba828 100644
--- a/chapter03/introduction.xml
+++ b/chapter03/introduction.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter03/packages.xml b/chapter03/packages.xml
index 55eeabccf..143f81ffd 100644
--- a/chapter03/packages.xml
+++ b/chapter03/packages.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter03/patches.xml b/chapter03/patches.xml
index 6d40a79ad..40c7500c0 100644
--- a/chapter03/patches.xml
+++ b/chapter03/patches.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter04/aboutlfs.xml b/chapter04/aboutlfs.xml
index 3d320c3a3..96aa677b9 100644
--- a/chapter04/aboutlfs.xml
+++ b/chapter04/aboutlfs.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter04/aboutsbus.xml b/chapter04/aboutsbus.xml
index e8983711f..021f99fbf 100644
--- a/chapter04/aboutsbus.xml
+++ b/chapter04/aboutsbus.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter04/abouttestsuites.xml b/chapter04/abouttestsuites.xml
index 9fea71799..127ec7bce 100644
--- a/chapter04/abouttestsuites.xml
+++ b/chapter04/abouttestsuites.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter04/addinguser.xml b/chapter04/addinguser.xml
index c0dc9ad67..ed0833621 100644
--- a/chapter04/addinguser.xml
+++ b/chapter04/addinguser.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter04/chapter04.xml b/chapter04/chapter04.xml
index 25c188020..cb1ce245c 100644
--- a/chapter04/chapter04.xml
+++ b/chapter04/chapter04.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE chapter [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter04/creatingtoolsdir.xml b/chapter04/creatingtoolsdir.xml
index 6747b5edd..c19504679 100644
--- a/chapter04/creatingtoolsdir.xml
+++ b/chapter04/creatingtoolsdir.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter04/settingenviron.xml b/chapter04/settingenviron.xml
index 174d6ad27..b4f5b6f2f 100644
--- a/chapter04/settingenviron.xml
+++ b/chapter04/settingenviron.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter05/adjusting.xml b/chapter05/adjusting.xml
index f2a76ebe0..cf23b2af9 100644
--- a/chapter05/adjusting.xml
+++ b/chapter05/adjusting.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter05/bash.xml b/chapter05/bash.xml
index 7b741aef9..4273f8e84 100644
--- a/chapter05/bash.xml
+++ b/chapter05/bash.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter05/binutils-pass1.xml b/chapter05/binutils-pass1.xml
index 96ebbdfa6..cc63f5a1d 100644
--- a/chapter05/binutils-pass1.xml
+++ b/chapter05/binutils-pass1.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter05/binutils-pass2.xml b/chapter05/binutils-pass2.xml
index b09b9fae6..b0342e231 100644
--- a/chapter05/binutils-pass2.xml
+++ b/chapter05/binutils-pass2.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter05/bison.xml b/chapter05/bison.xml
index 3be3c4020..aef90bcee 100644
--- a/chapter05/bison.xml
+++ b/chapter05/bison.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter05/bzip2.xml b/chapter05/bzip2.xml
index ece8fc2bf..358705542 100644
--- a/chapter05/bzip2.xml
+++ b/chapter05/bzip2.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter05/chapter05.xml b/chapter05/chapter05.xml
index 8a61ef051..d7f7546ef 100644
--- a/chapter05/chapter05.xml
+++ b/chapter05/chapter05.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE chapter [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter05/coreutils.xml b/chapter05/coreutils.xml
index 27eea305f..2ae6ea0b7 100644
--- a/chapter05/coreutils.xml
+++ b/chapter05/coreutils.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter05/dejagnu.xml b/chapter05/dejagnu.xml
index f9de3faf0..f712e2eca 100644
--- a/chapter05/dejagnu.xml
+++ b/chapter05/dejagnu.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter05/diffutils.xml b/chapter05/diffutils.xml
index 3fc78f0ee..26805e82a 100644
--- a/chapter05/diffutils.xml
+++ b/chapter05/diffutils.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter05/expect.xml b/chapter05/expect.xml
index 28533b4af..a4d605513 100644
--- a/chapter05/expect.xml
+++ b/chapter05/expect.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter05/findutils.xml b/chapter05/findutils.xml
index aa204ccf5..d6d04141e 100644
--- a/chapter05/findutils.xml
+++ b/chapter05/findutils.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter05/flex.xml b/chapter05/flex.xml
index b1c6b3525..0bfbed837 100644
--- a/chapter05/flex.xml
+++ b/chapter05/flex.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter05/gawk.xml b/chapter05/gawk.xml
index 356cf2339..9390b65e7 100644
--- a/chapter05/gawk.xml
+++ b/chapter05/gawk.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter05/gcc-pass1.xml b/chapter05/gcc-pass1.xml
index 9fa5601bb..d7845c11e 100644
--- a/chapter05/gcc-pass1.xml
+++ b/chapter05/gcc-pass1.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter05/gcc-pass2.xml b/chapter05/gcc-pass2.xml
index 4f53196dd..d683f2abe 100644
--- a/chapter05/gcc-pass2.xml
+++ b/chapter05/gcc-pass2.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter05/gettext.xml b/chapter05/gettext.xml
index d88a1a358..1ac9810df 100644
--- a/chapter05/gettext.xml
+++ b/chapter05/gettext.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter05/glibc.xml b/chapter05/glibc.xml
index 3b7ac093a..3f20e11fd 100644
--- a/chapter05/glibc.xml
+++ b/chapter05/glibc.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter05/grep.xml b/chapter05/grep.xml
index 9fcdaca18..3a856a64e 100644
--- a/chapter05/grep.xml
+++ b/chapter05/grep.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter05/gzip.xml b/chapter05/gzip.xml
index 045648cf4..d3475e5ef 100644
--- a/chapter05/gzip.xml
+++ b/chapter05/gzip.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter05/hostreqs.xml b/chapter05/hostreqs.xml
index fb34e8db7..30cf85227 100644
--- a/chapter05/hostreqs.xml
+++ b/chapter05/hostreqs.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter05/introduction.xml b/chapter05/introduction.xml
index 78c883ecd..5bdc15a16 100644
--- a/chapter05/introduction.xml
+++ b/chapter05/introduction.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter05/kernel-headers.xml b/chapter05/kernel-headers.xml
index d18ac0020..5ec4bdf31 100644
--- a/chapter05/kernel-headers.xml
+++ b/chapter05/kernel-headers.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter05/linux-libc-headers.xml b/chapter05/linux-libc-headers.xml
index a74ce26e3..26523b917 100644
--- a/chapter05/linux-libc-headers.xml
+++ b/chapter05/linux-libc-headers.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter05/m4.xml b/chapter05/m4.xml
index 5907e5cfc..5d8c1c14c 100644
--- a/chapter05/m4.xml
+++ b/chapter05/m4.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter05/make.xml b/chapter05/make.xml
index 2d8bccdcf..67e3760cb 100644
--- a/chapter05/make.xml
+++ b/chapter05/make.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter05/ncurses.xml b/chapter05/ncurses.xml
index 9bc86e181..70e249a85 100644
--- a/chapter05/ncurses.xml
+++ b/chapter05/ncurses.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter05/patch.xml b/chapter05/patch.xml
index 6f7fa5746..866d1b40d 100644
--- a/chapter05/patch.xml
+++ b/chapter05/patch.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter05/perl.xml b/chapter05/perl.xml
index c0de05a45..d19ff9781 100644
--- a/chapter05/perl.xml
+++ b/chapter05/perl.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter05/sed.xml b/chapter05/sed.xml
index 265486c96..3a3516b00 100644
--- a/chapter05/sed.xml
+++ b/chapter05/sed.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter05/stripping.xml b/chapter05/stripping.xml
index 935f848e6..981332e28 100644
--- a/chapter05/stripping.xml
+++ b/chapter05/stripping.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter05/tar.xml b/chapter05/tar.xml
index 62896f359..c6c28b787 100644
--- a/chapter05/tar.xml
+++ b/chapter05/tar.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter05/tcl.xml b/chapter05/tcl.xml
index 381cec992..c30aec83d 100644
--- a/chapter05/tcl.xml
+++ b/chapter05/tcl.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter05/texinfo.xml b/chapter05/texinfo.xml
index d5e4faeac..24dfe9f7d 100644
--- a/chapter05/texinfo.xml
+++ b/chapter05/texinfo.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter05/toolchaintechnotes.xml b/chapter05/toolchaintechnotes.xml
index 666e181e2..dcad5aa0c 100644
--- a/chapter05/toolchaintechnotes.xml
+++ b/chapter05/toolchaintechnotes.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter05/udev.xml b/chapter05/udev.xml
index b13120178..50343f8a2 100644
--- a/chapter05/udev.xml
+++ b/chapter05/udev.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter05/util-linux.xml b/chapter05/util-linux.xml
index 04a4a375e..238cfcbad 100644
--- a/chapter05/util-linux.xml
+++ b/chapter05/util-linux.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/aboutdebug.xml b/chapter06/aboutdebug.xml
index 4939bb704..960e42e46 100644
--- a/chapter06/aboutdebug.xml
+++ b/chapter06/aboutdebug.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/autoconf.xml b/chapter06/autoconf.xml
index b4c39aea2..362c64756 100644
--- a/chapter06/autoconf.xml
+++ b/chapter06/autoconf.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/automake.xml b/chapter06/automake.xml
index e668b27b9..3e3bc2548 100644
--- a/chapter06/automake.xml
+++ b/chapter06/automake.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/bash.xml b/chapter06/bash.xml
index 3e65cb5ee..31c56d4f5 100644
--- a/chapter06/bash.xml
+++ b/chapter06/bash.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/binutils.xml b/chapter06/binutils.xml
index 2dc90cb84..26e88c95f 100644
--- a/chapter06/binutils.xml
+++ b/chapter06/binutils.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/bison.xml b/chapter06/bison.xml
index a58605054..b5c38abdb 100644
--- a/chapter06/bison.xml
+++ b/chapter06/bison.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/bzip2.xml b/chapter06/bzip2.xml
index e9e744320..440ea2c1c 100644
--- a/chapter06/bzip2.xml
+++ b/chapter06/bzip2.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/changingowner.xml b/chapter06/changingowner.xml
index 1de747a01..959b53e63 100644
--- a/chapter06/changingowner.xml
+++ b/chapter06/changingowner.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/chapter06.xml b/chapter06/chapter06.xml
index 29ca97b57..4e5868974 100644
--- a/chapter06/chapter06.xml
+++ b/chapter06/chapter06.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE chapter [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/chroot.xml b/chapter06/chroot.xml
index 238dc5381..b2e9b3ce3 100644
--- a/chapter06/chroot.xml
+++ b/chapter06/chroot.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/coreutils.xml b/chapter06/coreutils.xml
index e9ee8336c..02c0a8c34 100644
--- a/chapter06/coreutils.xml
+++ b/chapter06/coreutils.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/createfiles.xml b/chapter06/createfiles.xml
index 529a81293..3857b58ca 100644
--- a/chapter06/createfiles.xml
+++ b/chapter06/createfiles.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/creatingdirs.xml b/chapter06/creatingdirs.xml
index adaab362e..3115d056f 100644
--- a/chapter06/creatingdirs.xml
+++ b/chapter06/creatingdirs.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/devices.xml b/chapter06/devices.xml
index 557b0d2c3..7faafdc0c 100644
--- a/chapter06/devices.xml
+++ b/chapter06/devices.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/diffutils.xml b/chapter06/diffutils.xml
index 79790979f..73aedd57a 100644
--- a/chapter06/diffutils.xml
+++ b/chapter06/diffutils.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/e2fsprogs.xml b/chapter06/e2fsprogs.xml
index a26b496e3..14460979f 100644
--- a/chapter06/e2fsprogs.xml
+++ b/chapter06/e2fsprogs.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/file.xml b/chapter06/file.xml
index 74a2669bf..5882bcb21 100644
--- a/chapter06/file.xml
+++ b/chapter06/file.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/findutils.xml b/chapter06/findutils.xml
index 8d9f2407c..35151b748 100644
--- a/chapter06/findutils.xml
+++ b/chapter06/findutils.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/flex.xml b/chapter06/flex.xml
index 5f57664c0..2449d6d16 100644
--- a/chapter06/flex.xml
+++ b/chapter06/flex.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/gawk.xml b/chapter06/gawk.xml
index 4ce0d6e8a..5b5a480fb 100644
--- a/chapter06/gawk.xml
+++ b/chapter06/gawk.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/gcc.xml b/chapter06/gcc.xml
index 06dcd5c0e..4ef61fd57 100644
--- a/chapter06/gcc.xml
+++ b/chapter06/gcc.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/gettext.xml b/chapter06/gettext.xml
index 0f12c91f1..d9098a53c 100644
--- a/chapter06/gettext.xml
+++ b/chapter06/gettext.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/glibc.xml b/chapter06/glibc.xml
index fd5cc4dd6..dec6724e2 100644
--- a/chapter06/glibc.xml
+++ b/chapter06/glibc.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/grep.xml b/chapter06/grep.xml
index b4fb3ac27..0226cf1b8 100644
--- a/chapter06/grep.xml
+++ b/chapter06/grep.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/groff.xml b/chapter06/groff.xml
index 3f921d651..66118d42a 100644
--- a/chapter06/groff.xml
+++ b/chapter06/groff.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/grub.xml b/chapter06/grub.xml
index 50b5ea048..18e463e11 100644
--- a/chapter06/grub.xml
+++ b/chapter06/grub.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/gzip.xml b/chapter06/gzip.xml
index a72baf83a..65350be37 100644
--- a/chapter06/gzip.xml
+++ b/chapter06/gzip.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/hotplug.xml b/chapter06/hotplug.xml
index a702f43a0..6d0b8373c 100644
--- a/chapter06/hotplug.xml
+++ b/chapter06/hotplug.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/iana-etc.xml b/chapter06/iana-etc.xml
index a911b7adf..10c6ee91c 100644
--- a/chapter06/iana-etc.xml
+++ b/chapter06/iana-etc.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/inetutils.xml b/chapter06/inetutils.xml
index 6e8f60628..e25211db3 100644
--- a/chapter06/inetutils.xml
+++ b/chapter06/inetutils.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/introduction.xml b/chapter06/introduction.xml
index bed434755..7d048ff03 100644
--- a/chapter06/introduction.xml
+++ b/chapter06/introduction.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/iproute2.xml b/chapter06/iproute2.xml
index f3ddc2699..ab61f134e 100644
--- a/chapter06/iproute2.xml
+++ b/chapter06/iproute2.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/kbd.xml b/chapter06/kbd.xml
index 4217adda0..c346df8d4 100644
--- a/chapter06/kbd.xml
+++ b/chapter06/kbd.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/kernfs.xml b/chapter06/kernfs.xml
index d3971dec6..5a4b5d53d 100644
--- a/chapter06/kernfs.xml
+++ b/chapter06/kernfs.xml
@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd">
+<!DOCTYPE sect1 [
+]>
<sect1 id="ch-system-kernfs">
<title>Mounting virtual kernel file systems</title>
<?dbhtml filename="kernfs.html"?>
diff --git a/chapter06/less.xml b/chapter06/less.xml
index 8ab252fc0..597fb1dea 100644
--- a/chapter06/less.xml
+++ b/chapter06/less.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/libol.xml b/chapter06/libol.xml
index d82e71867..cb4666faa 100644
--- a/chapter06/libol.xml
+++ b/chapter06/libol.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/libtool.xml b/chapter06/libtool.xml
index 830d38af8..5d1bd8266 100644
--- a/chapter06/libtool.xml
+++ b/chapter06/libtool.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/linux-libc-headers.xml b/chapter06/linux-libc-headers.xml
index 64d1e93bb..a27ecb9d0 100644
--- a/chapter06/linux-libc-headers.xml
+++ b/chapter06/linux-libc-headers.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/m4.xml b/chapter06/m4.xml
index ae0c573d2..b6ecb3f97 100644
--- a/chapter06/m4.xml
+++ b/chapter06/m4.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/make.xml b/chapter06/make.xml
index 8f8313be1..9fa856748 100644
--- a/chapter06/make.xml
+++ b/chapter06/make.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/man-pages.xml b/chapter06/man-pages.xml
index b00f4cdb1..7c6860e9d 100644
--- a/chapter06/man-pages.xml
+++ b/chapter06/man-pages.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/man.xml b/chapter06/man.xml
index 01c8c9c5d..7151fed7e 100644
--- a/chapter06/man.xml
+++ b/chapter06/man.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/mktemp.xml b/chapter06/mktemp.xml
index 3e2e6226c..6f66e897b 100644
--- a/chapter06/mktemp.xml
+++ b/chapter06/mktemp.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/module-init-tools.xml b/chapter06/module-init-tools.xml
index 736ae87c8..e2fcd9940 100644
--- a/chapter06/module-init-tools.xml
+++ b/chapter06/module-init-tools.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/ncurses.xml b/chapter06/ncurses.xml
index 88c276898..20cd62c17 100644
--- a/chapter06/ncurses.xml
+++ b/chapter06/ncurses.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/patch.xml b/chapter06/patch.xml
index d00473296..066c20e73 100644
--- a/chapter06/patch.xml
+++ b/chapter06/patch.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/perl.xml b/chapter06/perl.xml
index 0b57357be..d91458778 100644
--- a/chapter06/perl.xml
+++ b/chapter06/perl.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/procps.xml b/chapter06/procps.xml
index 9a2a6417b..bc3e635c1 100644
--- a/chapter06/procps.xml
+++ b/chapter06/procps.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/psmisc.xml b/chapter06/psmisc.xml
index 419633f0f..d23803700 100644
--- a/chapter06/psmisc.xml
+++ b/chapter06/psmisc.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/pwdgroup.xml b/chapter06/pwdgroup.xml
index bb7a09066..c3a41e6f2 100644
--- a/chapter06/pwdgroup.xml
+++ b/chapter06/pwdgroup.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/readjusting.xml b/chapter06/readjusting.xml
index a3522a663..a341d0c71 100644
--- a/chapter06/readjusting.xml
+++ b/chapter06/readjusting.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/readline.xml b/chapter06/readline.xml
index 5ce6413ba..245a3ea06 100644
--- a/chapter06/readline.xml
+++ b/chapter06/readline.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/revisedchroot.xml b/chapter06/revisedchroot.xml
index c82675fec..8abb2255f 100644
--- a/chapter06/revisedchroot.xml
+++ b/chapter06/revisedchroot.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/sed.xml b/chapter06/sed.xml
index cf4598f0d..a53a4f06e 100644
--- a/chapter06/sed.xml
+++ b/chapter06/sed.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/shadow.xml b/chapter06/shadow.xml
index a753e7ce3..624e95d03 100644
--- a/chapter06/shadow.xml
+++ b/chapter06/shadow.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/strippingagain.xml b/chapter06/strippingagain.xml
index 1630cd2af..6695a9482 100644
--- a/chapter06/strippingagain.xml
+++ b/chapter06/strippingagain.xml
@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd">
+<!DOCTYPE sect1 [
+]>
<sect1 id="ch-system-strippingagain">
<title>Stripping again</title>
<?dbhtml filename="strippingagain.html"?>
diff --git a/chapter06/syslogng.xml b/chapter06/syslogng.xml
index 0a46c4fe7..716aac2d5 100644
--- a/chapter06/syslogng.xml
+++ b/chapter06/syslogng.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/sysvinit.xml b/chapter06/sysvinit.xml
index 3b487dbc6..43cec9835 100644
--- a/chapter06/sysvinit.xml
+++ b/chapter06/sysvinit.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/tar.xml b/chapter06/tar.xml
index d6de8d795..93c8b69da 100644
--- a/chapter06/tar.xml
+++ b/chapter06/tar.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/texinfo.xml b/chapter06/texinfo.xml
index 5032f10c2..e4e09347a 100644
--- a/chapter06/texinfo.xml
+++ b/chapter06/texinfo.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/udev.xml b/chapter06/udev.xml
index 6e0456bea..f790e4d02 100644
--- a/chapter06/udev.xml
+++ b/chapter06/udev.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/util-linux.xml b/chapter06/util-linux.xml
index 44799e17c..df0b57236 100644
--- a/chapter06/util-linux.xml
+++ b/chapter06/util-linux.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/vim.xml b/chapter06/vim.xml
index 64ca6296a..75e9a01fe 100644
--- a/chapter06/vim.xml
+++ b/chapter06/vim.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter06/zlib.xml b/chapter06/zlib.xml
index 8aa195b62..38e31e13e 100644
--- a/chapter06/zlib.xml
+++ b/chapter06/zlib.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter07/bootscripts.xml b/chapter07/bootscripts.xml
index 9a3181010..a0ddc4bb0 100644
--- a/chapter07/bootscripts.xml
+++ b/chapter07/bootscripts.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter07/chapter07.xml b/chapter07/chapter07.xml
index a77a30e51..c59ed96b4 100644
--- a/chapter07/chapter07.xml
+++ b/chapter07/chapter07.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE chapter [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter07/console.xml b/chapter07/console.xml
index dd6103f51..776ce10cf 100644
--- a/chapter07/console.xml
+++ b/chapter07/console.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter07/hostname.xml b/chapter07/hostname.xml
index 9320fee1d..869bebe0f 100644
--- a/chapter07/hostname.xml
+++ b/chapter07/hostname.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter07/hosts.xml b/chapter07/hosts.xml
index a9cbd4b3e..52b4d0411 100644
--- a/chapter07/hosts.xml
+++ b/chapter07/hosts.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter07/inputrc.xml b/chapter07/inputrc.xml
index 977e9755f..2440b68e8 100644
--- a/chapter07/inputrc.xml
+++ b/chapter07/inputrc.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter07/introduction.xml b/chapter07/introduction.xml
index 9f1343c54..8d9854653 100644
--- a/chapter07/introduction.xml
+++ b/chapter07/introduction.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter07/network.xml b/chapter07/network.xml
index 8ccb09318..9f8e2f465 100644
--- a/chapter07/network.xml
+++ b/chapter07/network.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter07/profile.xml b/chapter07/profile.xml
index 35bb9e70c..abbba91ea 100644
--- a/chapter07/profile.xml
+++ b/chapter07/profile.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter07/setclock.xml b/chapter07/setclock.xml
index ad794cb9e..2f3030c7d 100644
--- a/chapter07/setclock.xml
+++ b/chapter07/setclock.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter07/usage.xml b/chapter07/usage.xml
index 6893762ba..4a2547a60 100644
--- a/chapter07/usage.xml
+++ b/chapter07/usage.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter08/chapter08.xml b/chapter08/chapter08.xml
index 7fcdfa749..3604edfe5 100644
--- a/chapter08/chapter08.xml
+++ b/chapter08/chapter08.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE chapter [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter08/fstab.xml b/chapter08/fstab.xml
index c5cc0123b..503801935 100644
--- a/chapter08/fstab.xml
+++ b/chapter08/fstab.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter08/grub.xml b/chapter08/grub.xml
index 57293c359..d77d1a6d0 100644
--- a/chapter08/grub.xml
+++ b/chapter08/grub.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter08/introduction.xml b/chapter08/introduction.xml
index a879c4a24..e8a564b38 100644
--- a/chapter08/introduction.xml
+++ b/chapter08/introduction.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter08/kernel.xml b/chapter08/kernel.xml
index d600342a8..e23ce8e8c 100644
--- a/chapter08/kernel.xml
+++ b/chapter08/kernel.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter09/chapter09.xml b/chapter09/chapter09.xml
index c5738cad4..58b307cd5 100644
--- a/chapter09/chapter09.xml
+++ b/chapter09/chapter09.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE chapter [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter09/getcounted.xml b/chapter09/getcounted.xml
index 4eeaa7b74..4f6d968aa 100644
--- a/chapter09/getcounted.xml
+++ b/chapter09/getcounted.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter09/reboot.xml b/chapter09/reboot.xml
index 96969a9d4..6bde56f92 100644
--- a/chapter09/reboot.xml
+++ b/chapter09/reboot.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter09/theend.xml b/chapter09/theend.xml
index c29cc6f8a..0f3915537 100644
--- a/chapter09/theend.xml
+++ b/chapter09/theend.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/chapter09/whatnow.xml b/chapter09/whatnow.xml
index 4bc76c04a..f83d81e54 100644
--- a/chapter09/whatnow.xml
+++ b/chapter09/whatnow.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE sect1 [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
diff --git a/docbook.rng b/docbook.rng
new file mode 100644
index 000000000..e1e9bea24
--- /dev/null
+++ b/docbook.rng
@@ -0,0 +1,14772 @@
+<?xml version="1.0" encoding="utf-8"?>
+<grammar xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:dtd="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns="http://relaxng.org/ns/structure/1.0" xmlns:db="http://docbook.org/docbook-ng" xmlns:dbx="http://sourceforge.net/projects/docbook/defguide/schema/extra-markup" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes" ns="http://docbook.org/docbook-ng">
+
+<!-- DocBook NG: The "Gin" Release -->
+<!-- See http://docbook.org/docbook-ng/ -->
+
+ <start>
+ <choice>
+ <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>
+ <ref name="db.refentry"/>
+ <ref name="db.setindex"/>
+ </choice>
+ </start>
+
+ <div>
+ <db:refname>extendedlink</db:refname>
+ <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" dtd:defaultValue="extended">
+ <value>extended</value>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="xlink:role">
+ <data type="anyURI"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="xlink:title"/>
+ </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/>
+ <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" dtd:defaultValue="locator">
+ <value>locator</value>
+ </attribute>
+ </optional>
+ <attribute name="xlink:href"/>
+ <optional>
+ <attribute name="xlink:role">
+ <data type="anyURI"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="xlink:title"/>
+ </optional>
+ <optional>
+ <attribute name="xlink:label">
+ <data type="NMTOKEN"/>
+ </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/>
+ <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" dtd:defaultValue="arc">
+ <value>arc</value>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="xlink:arcrole">
+ <data type="anyURI"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="xlink:title"/>
+ </optional>
+ <optional>
+ <attribute name="xlink:show">
+ <choice>
+ <value>new</value>
+ <value>replace</value>
+ <value>embed</value>
+ <value>other</value>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="xlink:actuate">
+ <choice>
+ <value>onLoad</value>
+ <value>onRequest</value>
+ <value>other</value>
+ <value>none</value>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="xlink:from">
+ <data type="NMTOKEN"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="xlink:to">
+ <data type="NMTOKEN"/>
+ </attribute>
+ </optional>
+ </interleave>
+ </define>
+
+ <define name="db.arc">
+ <element name="arc">
+ <ref name="db.arc.attlist"/>
+ <empty/>
+ </element>
+ </define>
+
+ </div>
+ <define name="db.status.attribute">
+ <db:refpurpose>Identifies the editorial or publication status of the element on which it occurs</db:refpurpose>
+ <dbx:description>
+ <db:para>Publication status might be used to control formatting (for example, printing a “draft” watermark on drafts) or processing (perhaps a document with a status of “final” should not include any components that are not final).</db:para>
+ </dbx:description>
+ <attribute name="status"/>
+ </define>
+
+ <define name="db.label.attribute">
+ <db:refpurpose>Specifies an identifying string for presentation purposes</db:refpurpose>
+ <dbx:description>
+ <db:para>Generally, an explicit Label attribute is used only if the processing system is incapable of generating the label automatically. Under such circumstances, the third <db:tag>book</db:tag>
+ in a <db:tag>set</db:tag>
+ might be labeled “Volume III”, for example.</db:para>
+ <db:para>If present, the <db:tag class="attribute">label</db:tag>
+ is normative; it will used even if the processing system is capable of automatic labelling.</db:para>
+ </dbx:description>
+ <attribute name="label"/>
+ </define>
+
+ <define name="db.toplevel.optional.sections">
+ <choice>
+ <choice>
+ <zeroOrMore>
+ <ref name="db.section"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="db.simplesect"/>
+ </zeroOrMore>
+ </choice>
+ <zeroOrMore>
+ <ref name="db.sect1"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="db.refentry"/>
+ </zeroOrMore>
+ </choice>
+ </define>
+
+ <define name="db.toplevel.required.sections">
+ <choice>
+ <choice>
+ <oneOrMore>
+ <ref name="db.section"/>
+ </oneOrMore>
+ <oneOrMore>
+ <ref name="db.simplesect"/>
+ </oneOrMore>
+ </choice>
+ <oneOrMore>
+ <ref name="db.sect1"/>
+ </oneOrMore>
+ <oneOrMore>
+ <ref name="db.refentry"/>
+ </oneOrMore>
+ </choice>
+ </define>
+
+ <define name="db.toplevel.blocks.or.sections">
+ <choice>
+ <group>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ <ref name="db.toplevel.optional.sections"/>
+ </group>
+ <ref name="db.toplevel.required.sections"/>
+ </choice>
+ </define>
+
+ <define name="db.recursive.optional.sections">
+ <choice>
+ <choice>
+ <zeroOrMore>
+ <ref name="db.section"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="db.simplesect"/>
+ </zeroOrMore>
+ </choice>
+ <zeroOrMore>
+ <ref name="db.refentry"/>
+ </zeroOrMore>
+ </choice>
+ </define>
+
+ <define name="db.recursive.required.sections">
+ <choice>
+ <choice>
+ <oneOrMore>
+ <ref name="db.section"/>
+ </oneOrMore>
+ <oneOrMore>
+ <ref name="db.simplesect"/>
+ </oneOrMore>
+ </choice>
+ <oneOrMore>
+ <ref name="db.refentry"/>
+ </oneOrMore>
+ </choice>
+ </define>
+
+ <define name="db.recursive.blocks.or.sections">
+ <choice>
+ <group>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ <ref name="db.recursive.optional.sections"/>
+ </group>
+ <ref name="db.recursive.required.sections"/>
+ </choice>
+ </define>
+
+ <define name="db.optional.refentry">
+ <choice>
+ <notAllowed/>
+ <zeroOrMore>
+ <ref name="db.refentry"/>
+ </zeroOrMore>
+ </choice>
+ </define>
+
+ <define name="db.required.refentry">
+ <choice>
+ <notAllowed/>
+ <oneOrMore>
+ <ref name="db.refentry"/>
+ </oneOrMore>
+ </choice>
+ </define>
+
+ <define name="db.divisions">
+ <choice>
+ <ref name="db.part"/>
+ <ref name="db.reference"/>
+ </choice>
+ </define>
+
+ <define name="db.components">
+ <choice>
+ <ref name="db.dedication"/>
+ <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">
+ <choice>
+ <notAllowed/>
+ <ref name="db.glossary"/>
+ <ref name="db.bibliography"/>
+ <ref name="db.index"/>
+ <ref name="db.toc"/>
+ </choice>
+ </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">
+ <choice>
+ <notAllowed/>
+ <ref name="db.setindex"/>
+ </choice>
+ </define>
+
+ <define name="db.toc.components">
+ <choice>
+ <notAllowed/>
+ <ref name="db.toc"/>
+ </choice>
+ </define>
+
+ <div>
+ <db:refname>set</db:refname>
+ <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">
+ <s:rule context="/db:set" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="@version">The root element must have a version attribute.</s:assert>
+ </s:rule>
+ <ref name="db.set.attlist"/>
+ <ref name="db.set.info"/>
+ <optional>
+ <ref name="db.toc.components"/>
+ </optional>
+ <oneOrMore>
+ <choice>
+ <ref name="db.set"/>
+ <ref name="db.book"/>
+ </choice>
+ </oneOrMore>
+ <optional>
+ <ref name="db.setindex.components"/>
+ </optional>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>book</db:refname>
+ <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.title.req"/>
+ </define>
+
+ <define name="db.book">
+ <element name="book">
+ <s:rule context="/db:book" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="@version">The root element must have a version attribute.</s:assert>
+ </s:rule>
+ <ref name="db.book.attlist"/>
+ <ref name="db.book.info"/>
+ <oneOrMore>
+ <choice>
+ <ref name="db.navigation.components"/>
+ <ref name="db.components"/>
+ <ref name="db.divisions"/>
+ </choice>
+ </oneOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>dedication</db:refname>
+ <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">
+ <s:rule context="/db:dedication" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="@version">The root element must have a version attribute.</s:assert>
+ </s:rule>
+ <ref name="db.dedication.attlist"/>
+ <ref name="db.dedication.info"/>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>colophon</db:refname>
+ <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">
+ <s:rule context="/db:colophon" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="@version">The root element must have a version attribute.</s:assert>
+ </s:rule>
+ <ref name="db.colophon.attlist"/>
+ <ref name="db.colophon.info"/>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>appendix</db:refname>
+ <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">
+ <s:rule context="/db:appendix" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="@version">The root element must have a version attribute.</s:assert>
+ </s:rule>
+ <ref name="db.appendix.attlist"/>
+ <ref name="db.appendix.info"/>
+ <ref name="db.component.contentmodel"/>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>chapter</db:refname>
+ <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">
+ <s:rule context="/db:chapter" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="@version">The root element must have a version attribute.</s:assert>
+ </s:rule>
+ <ref name="db.chapter.attlist"/>
+ <ref name="db.chapter.info"/>
+ <ref name="db.component.contentmodel"/>
+ </element>
+ </define>
+
+ </div>
+ <define name="db.part.components">
+ <choice>
+ <choice>
+ <ref name="db.navigation.components"/>
+ <ref name="db.components"/>
+ </choice>
+ <choice>
+ <ref name="db.refentry"/>
+ <ref name="db.reference"/>
+ </choice>
+ </choice>
+ </define>
+
+ <div>
+ <db:refname>part</db:refname>
+ <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">
+ <s:rule context="/db:part" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="@version">The root element must have a version attribute.</s:assert>
+ </s:rule>
+ <ref name="db.part.attlist"/>
+ <ref name="db.part.info"/>
+ <optional>
+ <ref name="db.partintro"/>
+ </optional>
+ <oneOrMore>
+ <ref name="db.part.components"/>
+ </oneOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>preface</db:refname>
+ <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"/>
+ </define>
+
+ <define name="db.preface">
+ <element name="preface">
+ <s:rule context="/db:preface" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="@version">The root element must have a version attribute.</s:assert>
+ </s:rule>
+ <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/>
+ <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/>
+ <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">
+ <s:rule context="/db:section" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="@version">The root element must have a version attribute.</s:assert>
+ </s:rule>
+ <ref name="db.section.attlist"/>
+ <ref name="db.section.info"/>
+ <ref name="db.recursive.blocks.or.sections"/>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>simplesect</db:refname>
+ <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>
+ <div>
+ <db:refname>ackno</db:refname>
+ <db:refpurpose/>
+ <define name="db.ackno.role.attribute">
+ <attribute name="role"/>
+ </define>
+
+ <define name="db.ackno.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.ackno.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+
+ <define name="db.ackno">
+ <element name="ackno">
+ <ref name="db.ackno.attlist"/>
+ <oneOrMore>
+ <ref name="db.para.blocks"/>
+ </oneOrMore>
+ </element>
+ </define>
+
+ </div>
+ <define name="db.article.optional.components">
+ <choice>
+ <choice>
+ <zeroOrMore>
+ <ref name="db.section"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="db.simplesect"/>
+ </zeroOrMore>
+ </choice>
+ <zeroOrMore>
+ <ref name="db.refentry"/>
+ </zeroOrMore>
+ </choice>
+ </define>
+
+ <define name="db.article.required.components">
+ <choice>
+ <choice>
+ <oneOrMore>
+ <ref name="db.section"/>
+ </oneOrMore>
+ <oneOrMore>
+ <ref name="db.simplesect"/>
+ </oneOrMore>
+ </choice>
+ <oneOrMore>
+ <ref name="db.refentry"/>
+ </oneOrMore>
+ </choice>
+ </define>
+
+ <div>
+ <db:refname>article</db:refname>
+ <db:refpurpose>An article</db:refpurpose>
+ <dbx:description>
+ <db:para>The <db:tag>article</db:tag>
+ element is a general-purpose container for articles. The content model is both quite complex and rather loose in order to accommodate the wide range of possible <db:tag>article</db:tag>
+ structures. Although changes to the <db:tag>article</db:tag>
+ element have been discussed on several occasions, no better model has been presented.</db:para>
+ <db:para>An <db:tag>article</db:tag>
+ is composed of a header and a body. The body may include a table of contents and multiple lists of tables, figures, and so on, before the main text of the article and may include a number of common end-matter components at the end.</db:para>
+ </dbx:description>
+ <dbx:expectations>
+ <db:para>
+ <dbx:format class="block"/>
+Formatted as a displayed block. Frequently causes a forced page break in print media. May be numbered separately and presented in the table of contents.</db:para>
+ </dbx:expectations>
+ <define name="db.article.status.attribute">
+ <ref name="db.status.attribute"/>
+ </define>
+
+ <define name="db.article.class.attribute">
+ <db:refpurpose>Class identifies the type of article.</db:refpurpose>
+ <attribute name="class">
+ <choice>
+ <value>faq</value>
+ <value>journalarticle</value>
+ <value>productsheet</value>
+ <value>specification</value>
+ <value>techreport</value>
+ <value>whitepaper</value>
+ </choice>
+ </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">
+ <s:rule context="/db:article" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="@version">The root element must have a version attribute.</s:assert>
+ </s:rule>
+ <ref name="db.article.attlist"/>
+ <ref name="db.article.info"/>
+ <zeroOrMore>
+ <ref name="db.navigation.components"/>
+ </zeroOrMore>
+ <choice>
+ <group>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ <ref name="db.article.optional.components"/>
+ </group>
+ <ref name="db.article.required.components"/>
+ </choice>
+ <zeroOrMore>
+ <choice>
+ <ref name="db.appendix"/>
+ <ref name="db.navigation.components"/>
+ <ref name="db.ackno"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>sect1</db:refname>
+ <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>
+ <choice>
+ <ref name="db.optional.refentry"/>
+ <group>
+ <zeroOrMore>
+ <ref name="db.sect2"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="db.simplesect"/>
+ </zeroOrMore>
+ </group>
+ </choice>
+ </group>
+ <ref name="db.required.refentry"/>
+ <group>
+ <oneOrMore>
+ <ref name="db.sect2"/>
+ </oneOrMore>
+ <zeroOrMore>
+ <ref name="db.simplesect"/>
+ </zeroOrMore>
+ </group>
+ <oneOrMore>
+ <ref name="db.simplesect"/>
+ </oneOrMore>
+ </choice>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>sect2</db:refname>
+ <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>
+ <choice>
+ <ref name="db.optional.refentry"/>
+ <group>
+ <zeroOrMore>
+ <ref name="db.sect3"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="db.simplesect"/>
+ </zeroOrMore>
+ </group>
+ </choice>
+ </group>
+ <ref name="db.required.refentry"/>
+ <group>
+ <oneOrMore>
+ <ref name="db.sect3"/>
+ </oneOrMore>
+ <zeroOrMore>
+ <ref name="db.simplesect"/>
+ </zeroOrMore>
+ </group>
+ <oneOrMore>
+ <ref name="db.simplesect"/>
+ </oneOrMore>
+ </choice>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>sect3</db:refname>
+ <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>
+ <choice>
+ <ref name="db.optional.refentry"/>
+ <group>
+ <zeroOrMore>
+ <ref name="db.sect4"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="db.simplesect"/>
+ </zeroOrMore>
+ </group>
+ </choice>
+ </group>
+ <ref name="db.required.refentry"/>
+ <group>
+ <oneOrMore>
+ <ref name="db.sect4"/>
+ </oneOrMore>
+ <zeroOrMore>
+ <ref name="db.simplesect"/>
+ </zeroOrMore>
+ </group>
+ <oneOrMore>
+ <ref name="db.simplesect"/>
+ </oneOrMore>
+ </choice>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>sect4</db:refname>
+ <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>
+ <choice>
+ <ref name="db.optional.refentry"/>
+ <group>
+ <zeroOrMore>
+ <ref name="db.sect5"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="db.simplesect"/>
+ </zeroOrMore>
+ </group>
+ </choice>
+ </group>
+ <ref name="db.required.refentry"/>
+ <group>
+ <oneOrMore>
+ <ref name="db.sect5"/>
+ </oneOrMore>
+ <zeroOrMore>
+ <ref name="db.simplesect"/>
+ </zeroOrMore>
+ </group>
+ <oneOrMore>
+ <ref name="db.simplesect"/>
+ </oneOrMore>
+ </choice>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>sect5</db:refname>
+ <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>
+ <choice>
+ <ref name="db.optional.refentry"/>
+ <zeroOrMore>
+ <ref name="db.simplesect"/>
+ </zeroOrMore>
+ </choice>
+ </group>
+ <ref name="db.required.refentry"/>
+ <oneOrMore>
+ <ref name="db.simplesect"/>
+ </oneOrMore>
+ </choice>
+ </element>
+ </define>
+
+ </div>
+ <define name="db.refsect1">
+ <choice>
+ <notAllowed/>
+ <element name="refsect1">
+ <ref name="db.refsect1.attlist"/>
+ <ref name="db.refsect1.info"/>
+ <choice>
+ <group>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ <zeroOrMore>
+ <ref name="db.refsect2"/>
+ </zeroOrMore>
+ </group>
+ <oneOrMore>
+ <ref name="db.refsect2"/>
+ </oneOrMore>
+ </choice>
+ </element>
+ </choice>
+ </define>
+
+ <define name="db.refsect2">
+ <choice>
+ <notAllowed/>
+ <element name="refsect2">
+ <ref name="db.refsect2.attlist"/>
+ <ref name="db.refsect2.info"/>
+ <choice>
+ <group>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ <zeroOrMore>
+ <ref name="db.refsect3"/>
+ </zeroOrMore>
+ </group>
+ <oneOrMore>
+ <ref name="db.refsect3"/>
+ </oneOrMore>
+ </choice>
+ </element>
+ </choice>
+ </define>
+
+ <div>
+ <db:refname>reference</db:refname>
+ <db:refpurpose/>
+ <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.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">
+ <s:rule context="/db:reference" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="@version">The root element must have a version attribute.</s:assert>
+ </s:rule>
+ <ref name="db.reference.attlist"/>
+ <ref name="db.reference.info"/>
+ <optional>
+ <ref name="db.partintro"/>
+ </optional>
+ <oneOrMore>
+ <ref name="db.refentry"/>
+ </oneOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>refentry</db:refname>
+ <db:refpurpose/>
+ <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.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">
+ <s:rule context="/db:refentry" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="@version">The root element must have a version attribute.</s:assert>
+ </s:rule>
+ <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>
+ <choice>
+ <oneOrMore>
+ <ref name="db.refsection"/>
+ </oneOrMore>
+ <oneOrMore>
+ <ref name="db.refsect1"/>
+ </oneOrMore>
+ </choice>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>refmeta</db:refname>
+ <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>
+ <div>
+ <db:refname>db.refmiscinfo</db:refname>
+ <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>
+ <attribute name="class"/>
+ </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/>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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>
+ <choice>
+ <zeroOrMore>
+ <ref name="db.refsection"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="db.refsect2"/>
+ </zeroOrMore>
+ </choice>
+ </group>
+ <choice>
+ <oneOrMore>
+ <ref name="db.refsection"/>
+ </oneOrMore>
+ <oneOrMore>
+ <ref name="db.refsect2"/>
+ </oneOrMore>
+ </choice>
+ </choice>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>refsection</db:refname>
+ <db:refpurpose/>
+ <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.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>
+ <div>
+ <db:refname>refsect1</db:refname>
+ <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>
+
+ </div>
+ <div>
+ <db:refname>refsect2</db:refname>
+ <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>
+
+ </div>
+ <div>
+ <db:refname>refsect3</db:refname>
+ <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>
+ <define name="db._any">
+ <element>
+ <anyName>
+ <except>
+ <nsName/>
+ </except>
+ </anyName>
+ <zeroOrMore>
+ <ref name="db._any.attribute"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <text/>
+ <ref name="db._any"/>
+ </zeroOrMore>
+ </element>
+ </define>
+
+ <define name="db._any.attribute">
+ <attribute>
+ <anyName/>
+ </attribute>
+ </define>
+
+ <define name="db.effectivity.attributes">
+ <optional>
+ <attribute name="arch"/>
+ </optional>
+ <optional>
+ <attribute name="condition"/>
+ </optional>
+ <optional>
+ <attribute name="conformance"/>
+ </optional>
+ <optional>
+ <attribute name="os"/>
+ </optional>
+ <optional>
+ <attribute name="revision"/>
+ </optional>
+ <optional>
+ <attribute name="security"/>
+ </optional>
+ <optional>
+ <attribute name="userlevel"/>
+ </optional>
+ <optional>
+ <attribute name="vendor"/>
+ </optional>
+ </define>
+
+ <define name="db.linkend.attribute">
+ <attribute name="linkend">
+ <data type="IDREF"/>
+ </attribute>
+ </define>
+
+ <define name="db.linkends.attribute">
+ <attribute name="linkends">
+ <data type="IDREFS"/>
+ </attribute>
+ </define>
+
+ <define name="db.href.attribute">
+ <interleave>
+ <attribute name="xlink:href"/>
+ <optional>
+ <attribute name="xlink:type" dtd:defaultValue="simple">
+ <value>simple</value>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="xlink:role">
+ <data type="anyURI"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="xlink:arcrole">
+ <data type="anyURI"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="xlink:title"/>
+ </optional>
+ <optional>
+ <attribute name="xlink:show">
+ <choice>
+ <value>new</value>
+ <value>replace</value>
+ <value>embed</value>
+ <value>other</value>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="xlink:actuate">
+ <choice>
+ <value>onLoad</value>
+ <value>onRequest</value>
+ <value>other</value>
+ <value>none</value>
+ </choice>
+ </attribute>
+ </optional>
+ </interleave>
+ </define>
+
+ <define name="db.common.attributes">
+ <optional>
+ <attribute name="xml:id">
+ <data type="ID"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="version"/>
+ </optional>
+ <optional>
+ <attribute name="xml:lang"/>
+ </optional>
+ <optional>
+ <attribute name="xml:base"/>
+ </optional>
+ <optional>
+ <attribute name="remap"/>
+ </optional>
+ <optional>
+ <attribute name="xreflabel"/>
+ </optional>
+ <optional>
+ <attribute name="revisionflag">
+ <choice>
+ <value>changed</value>
+ <value>added</value>
+ <value>deleted</value>
+ <value>off</value>
+ </choice>
+ </attribute>
+ </optional>
+ <ref name="db.effectivity.attributes"/>
+ </define>
+
+ <define name="db.common.idreq.attributes">
+ <attribute name="xml:id">
+ <data type="ID"/>
+ </attribute>
+ <optional>
+ <attribute name="version"/>
+ </optional>
+ <optional>
+ <attribute name="xml:lang"/>
+ </optional>
+ <optional>
+ <attribute name="xml:base"/>
+ </optional>
+ <optional>
+ <attribute name="remap"/>
+ </optional>
+ <optional>
+ <attribute name="xreflabel"/>
+ </optional>
+ <optional>
+ <attribute name="revisionflag">
+ <choice>
+ <value>changed</value>
+ <value>added</value>
+ <value>deleted</value>
+ <value>off</value>
+ </choice>
+ </attribute>
+ </optional>
+ <ref name="db.effectivity.attributes"/>
+ </define>
+
+ <define name="db.common.linking.attributes">
+ <optional>
+ <choice>
+ <ref name="db.linkend.attribute"/>
+ <ref name="db.href.attribute"/>
+ </choice>
+ </optional>
+ </define>
+
+ <define name="db.common.req.linking.attributes">
+ <choice>
+ <ref name="db.linkend.attribute"/>
+ <ref name="db.href.attribute"/>
+ </choice>
+ </define>
+
+ <define name="db.common.data.attributes">
+ <optional>
+ <attribute name="format"/>
+ </optional>
+ <choice>
+ <attribute name="fileref"/>
+ <attribute name="entityref">
+ <data type="ENTITY"/>
+ </attribute>
+ </choice>
+ </define>
+
+ <define name="db.verbatim.attributes">
+ <optional>
+ <attribute name="continuation">
+ <choice>
+ <value>continues</value>
+ <value>restarts</value>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="linenumbering">
+ <choice>
+ <value>numbered</value>
+ <value>unnumbered</value>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="startinglinenumber">
+ <data type="integer"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="language"/>
+ </optional>
+ </define>
+
+ <define name="db.spacing.attribute">
+ <attribute name="spacing">
+ <choice>
+ <value>compact</value>
+ <value>normal</value>
+ </choice>
+ </attribute>
+ </define>
+
+ <define name="db.float.attribute">
+ <attribute name="float"/>
+ </define>
+
+ <define name="db.pgwide.attribute">
+ <attribute name="pgwide">
+ <choice>
+ <value>0</value>
+ <value>1</value>
+ </choice>
+ </attribute>
+ </define>
+
+ <define name="db.language.attribute">
+ <optional>
+ <attribute name="language"/>
+ </optional>
+ </define>
+
+ <define name="db.performance.attribute">
+ <attribute name="performance">
+ <choice>
+ <value>optional</value>
+ <value>required</value>
+ </choice>
+ </attribute>
+ </define>
+
+ <define name="db.floatstyle.attribute">
+ <attribute name="floatstyle"/>
+ </define>
+
+ <ctrl:other-attribute name="db.biblio.class.attribute" enum-name="db.biblio.class-enum.attribute" other-name="db.biblio.class-other.attributes" xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/"/>
+
+ <define name="db.biblio.class-enum.attribute">
+ <optional>
+ <attribute name="class">
+ <choice>
+ <value>doi</value>
+ <value>isbn</value>
+ <value>issn</value>
+ <value>libraryofcongress</value>
+ <value>pubnumber</value>
+ <value>uri</value>
+ </choice>
+ </attribute>
+ </optional>
+ </define>
+
+ <define name="db.biblio.class-other.attributes">
+ <optional>
+ <attribute name="class">
+ <value>other</value>
+ </attribute>
+ </optional>
+ <attribute name="otherclass">
+ <data type="NMTOKEN"/>
+ </attribute>
+ </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>
+ <choice>
+ <ref name="db.inlinemediaobject"/>
+ <ref name="db.anchor"/>
+ <ref name="db.remark"/>
+ </choice>
+ <ref name="db.indexterm"/>
+ </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._phrase">
+ <element name="phrase">
+ <ref name="db.phrase.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </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>
+ <optional>
+ <ref name="db._title.req"/>
+ </optional>
+ <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>
+ <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>
+ <ref name="db.glossary.inlines"/>
+ </choice>
+ </define>
+
+ <define name="db.domain.inlines">
+ <choice>
+ <ref name="db.technical.inlines"/>
+ <ref name="db.error.inlines"/>
+ <ref name="db.os.inlines"/>
+ <ref name="db.programming.inlines"/>
+ <ref name="db.markup.inlines"/>
+ <ref name="db.math.inlines"/>
+ <ref name="db.gui.inlines"/>
+ <ref name="db.keyboard.inlines"/>
+ </choice>
+ </define>
+
+ <define name="db.technical.inlines">
+ <choice>
+ <choice>
+ <ref name="db.replaceable"/>
+ <ref name="db.systemitem"/>
+ <ref name="db.option"/>
+ <ref name="db.optional"/>
+ <ref name="db.package"/>
+ <ref name="db.property"/>
+ </choice>
+ <ref name="db.nonterminal"/>
+ </choice>
+ </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>
+
+ <define name="db.oo.inlines">
+ <choice>
+ <ref name="db.ooclass"/>
+ <ref name="db.ooexception"/>
+ <ref name="db.oointerface"/>
+ </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.product.inlines">
+ <choice>
+ <ref name="db.productnumber"/>
+ <ref name="db.productname"/>
+ <ref name="db.database"/>
+ <ref name="db.application"/>
+ <ref name="db.hardware"/>
+ <ref name="db.trademark"/>
+ </choice>
+ </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.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"/>
+ </choice>
+ </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.personname"/>
+ <ref name="db.orgname"/>
+ <ref name="db.editor"/>
+ </choice>
+ </define>
+
+ <define name="db.publishing.inlines">
+ <choice>
+ <choice>
+ <ref name="db.abbrev"/>
+ <ref name="db.acronym"/>
+ <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>
+ <ref name="db.coref"/>
+ </choice>
+ </define>
+
+ <define name="db.math.inlines">
+ <ref name="db.inlineequation"/>
+ </define>
+
+ <define name="db.graphic.inlines">
+ <ref name="db.inlinemediaobject"/>
+ </define>
+
+ <define name="db.indexing.inlines">
+ <choice>
+ <notAllowed/>
+ <ref name="db.indexterm"/>
+ </choice>
+ </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>
+
+ <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>
+
+ <define name="db.link.inlines">
+ <choice>
+ <choice>
+ <ref name="db.xref"/>
+ <ref name="db.link"/>
+ <ref name="db.uri"/>
+ <ref name="db.anchor"/>
+ </choice>
+ <ref name="db.biblioref"/>
+ </choice>
+ </define>
+
+ <define name="db.extension.inlines">
+ <choice>
+ <notAllowed/>
+ <choice xmlns:html="http://www.w3.org/1999/xhtml">
+ <ref name="db.html.input"/>
+ <ref name="db.html.button"/>
+ <ref name="db.html.label"/>
+ <ref name="db.html.select"/>
+ <ref name="db.html.textarea"/>
+ </choice>
+ </choice>
+ </define>
+
+ <define name="db.nopara.blocks">
+ <choice>
+ <choice>
+ <ref name="db.list.blocks"/>
+ <ref name="db.admonition.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.synopsis.blocks"/>
+ <ref name="db.bridgehead"/>
+ <ref name="db.remark"/>
+ <ref name="db.revhistory"/>
+ <ref name="db.highlights"/>
+ </choice>
+ <ref name="db.indexterm"/>
+ </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>
+
+ <define name="db.formal.blocks">
+ <choice>
+ <ref name="db.equation"/>
+ <ref name="db.example"/>
+ <ref name="db.figure"/>
+ <ref name="db.table"/>
+ </choice>
+ </define>
+
+ <define name="db.informal.blocks">
+ <choice>
+ <ref name="db.informalequation"/>
+ <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">
+ <choice>
+ <ref name="db.procedure"/>
+ <ref name="db.task"/>
+ <choice>
+ <ref name="db.productionset"/>
+ <ref name="db.constraintdef"/>
+ </choice>
+ <ref name="db.msgset"/>
+ </choice>
+ </define>
+
+ <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.list.blocks">
+ <choice>
+ <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>
+ <ref name="db.glosslist"/>
+ <ref name="db.bibliolist"/>
+ <ref name="db.calloutlist"/>
+ <ref name="db.qandaset"/>
+ </choice>
+ </define>
+
+ <define name="db.verbatim.blocks">
+ <choice>
+ <choice>
+ <ref name="db.programlisting"/>
+ <ref name="db.screen"/>
+ <ref name="db.literallayout"/>
+ <ref name="db.synopsis"/>
+ </choice>
+ <choice>
+ <ref name="db.programlistingco"/>
+ <ref name="db.screenco"/>
+ </choice>
+ </choice>
+ </define>
+
+ <define name="db.synopsis.blocks">
+ <choice>
+ <ref name="db.cmdsynopsis"/>
+ <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>
+
+ <define name="db.extension.blocks">
+ <choice>
+ <notAllowed/>
+ <ref xmlns:html="http://www.w3.org/1999/xhtml" name="db.html.form"/>
+ </choice>
+ </define>
+
+ <define name="db.info.elements">
+ <choice>
+ <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.copyright"/>
+ <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.orgname"/>
+ <ref name="db.othercredit"/>
+ <ref name="db.pagenums"/>
+ <ref name="db.printhistory"/>
+ <ref name="db.productname"/>
+ <ref name="db.productnumber"/>
+ <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"/>
+ </choice>
+ <ref name="db.extendedlink"/>
+ <choice>
+ <ref name="db.bibliomisc"/>
+ <ref name="db.bibliomset"/>
+ <ref name="db.bibliorelation"/>
+ <ref name="db.biblioset"/>
+ </choice>
+ <ref name="db.itermset"/>
+ </choice>
+ </define>
+
+ <define name="db.bibliographic.elements">
+ <choice>
+ <ref name="db.info.elements"/>
+ <ref name="db.abbrev"/>
+ <ref name="db.citetitle"/>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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"/>
+ <ref name="db._title"/>
+ <zeroOrMore>
+ <ref name="db.info.elements"/>
+ </zeroOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>info</db:refname>
+ <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"/>
+ <ref name="db._title.req"/>
+ <zeroOrMore>
+ <ref name="db.info.elements"/>
+ </zeroOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>info</db:refname>
+ <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"/>
+ <ref name="db._title.only"/>
+ <zeroOrMore>
+ <ref name="db.info.elements"/>
+ </zeroOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>info</db:refname>
+ <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"/>
+ <ref name="db._title.onlyreq"/>
+ <zeroOrMore>
+ <ref name="db.info.elements"/>
+ </zeroOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>info</db:refname>
+ <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/>
+ <define name="db.subjectset.role.attribute">
+ <attribute name="role"/>
+ </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>
+ <attribute name="scheme">
+ <data type="NMTOKEN"/>
+ </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/>
+ <define name="db.subject.role.attribute">
+ <attribute name="role"/>
+ </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>
+ <attribute name="weight"/>
+ </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/>
+ <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/>
+ <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/>
+ <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">
+ <choice>
+ <notAllowed/>
+ <ref name="db.cals.table"/>
+ <ref name="db.html.table"/>
+ </choice>
+ </define>
+
+ <define name="db.informaltable.choice">
+ <choice>
+ <notAllowed/>
+ <ref name="db.cals.informaltable"/>
+ <ref name="db.html.informaltable"/>
+ </choice>
+ </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/>
+ <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/>
+ <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>
+
+ <define name="db.step">
+ <element name="step">
+ <ref name="db.step.attlist"/>
+ <ref name="db.step.info"/>
+ <zeroOrMore>
+ <ref name="db.all.blocks"/>
+ </zeroOrMore>
+ <optional>
+ <choice>
+ <ref name="db.substeps"/>
+ <ref name="db.stepalternatives"/>
+ </choice>
+ </optional>
+ <zeroOrMore>
+ <ref name="db.all.blocks"/>
+ </zeroOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>stepalternatives</db:refname>
+ <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/>
+ <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/>
+ <ctrl:exclude from="db.sidebar" exclude="db.sidebar" xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/"/>
+
+ <define name="db.sidebar.role.attribute">
+ <attribute name="role"/>
+ </define>
+
+ <define name="db.sidebar.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.sidebar.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+
+ <define name="db.sidebar.info">
+ <ref name="db._info.title.only"/>
+ </define>
+
+ <define name="db.sidebar">
+ <element name="sidebar">
+ <s:rule context="db:sidebar" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="not(.//db:sidebar)">sidebar must not occur in the descendants of sidebar</s:assert>
+ </s:rule>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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"/>
+ <oneOrMore>
+ <choice>
+ <ref name="db._text"/>
+ <ref name="db.personname"/>
+ </choice>
+ </oneOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>bridgehead</db:refname>
+ <db:refpurpose/>
+ <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>
+ <attribute name="renderas">
+ <choice>
+ <value>other</value>
+ <value>sect1</value>
+ <value>sect2</value>
+ <value>sect3</value>
+ <value>sect4</value>
+ <value>sect5</value>
+ </choice>
+ </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/>
+ <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"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>epigraph</db:refname>
+ <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/>
+ <ctrl:exclude from="db.footnote" exclude="db.footnote" xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/"/>
+
+ <define name="db.footnote.role.attribute">
+ <attribute name="role"/>
+ </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>
+ <attribute name="label"/>
+ </optional>
+ </interleave>
+ </define>
+
+ <define name="db.footnote">
+ <element name="footnote">
+ <s:rule context="db:footnote" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="not(.//db:footnote)">footnote must not occur in the descendants of footnote</s:assert>
+ </s:rule>
+ <ref name="db.footnote.attlist"/>
+ <oneOrMore>
+ <ref name="db.all.blocks"/>
+ </oneOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>highlights</db:refname>
+ <db:refpurpose/>
+ <define name="db.highlights.role.attribute">
+ <attribute name="role"/>
+ </define>
+
+ <define name="db.highlights.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.highlights.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ </interleave>
+ </define>
+
+ <define name="db.highlights">
+ <element name="highlights">
+ <ref name="db.highlights.attlist"/>
+ <oneOrMore>
+ <choice>
+ <ref name="db.list.blocks"/>
+ <ref name="db.admonition.blocks"/>
+ <ref name="db.para.blocks"/>
+ <ref name="db.indexing.inlines"/>
+ </choice>
+ </oneOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>formalpara</db:refname>
+ <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/>
+ <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">
+ <s:rule context="/db:para" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="@version">The root element must have a version attribute.</s:assert>
+ </s:rule>
+ <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/>
+ <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>
+ <ctrl:exclude from="db.admonition.blocks" exclude="db.admonition.blocks" xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/"/>
+
+ <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/>
+ <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">
+ <s:rule context="db:caution" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="not(.//db:caution)">caution must not occur in the descendants of caution</s:assert>
+ </s:rule>
+ <s:rule context="db:caution" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="not(.//db:important)">important must not occur in the descendants of caution</s:assert>
+ </s:rule>
+ <s:rule context="db:caution" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="not(.//db:note)">note must not occur in the descendants of caution</s:assert>
+ </s:rule>
+ <s:rule context="db:caution" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="not(.//db:tip)">tip must not occur in the descendants of caution</s:assert>
+ </s:rule>
+ <s:rule context="db:caution" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="not(.//db:warning)">warning must not occur in the descendants of caution</s:assert>
+ </s:rule>
+ <ref name="db.caution.attlist"/>
+ <ref name="db.admonition.contentmodel"/>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>important</db:refname>
+ <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">
+ <s:rule context="db:important" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="not(.//db:caution)">caution must not occur in the descendants of important</s:assert>
+ </s:rule>
+ <s:rule context="db:important" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="not(.//db:important)">important must not occur in the descendants of important</s:assert>
+ </s:rule>
+ <s:rule context="db:important" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="not(.//db:note)">note must not occur in the descendants of important</s:assert>
+ </s:rule>
+ <s:rule context="db:important" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="not(.//db:tip)">tip must not occur in the descendants of important</s:assert>
+ </s:rule>
+ <s:rule context="db:important" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="not(.//db:warning)">warning must not occur in the descendants of important</s:assert>
+ </s:rule>
+ <ref name="db.important.attlist"/>
+ <ref name="db.admonition.contentmodel"/>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>note</db:refname>
+ <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">
+ <s:rule context="db:note" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="not(.//db:caution)">caution must not occur in the descendants of note</s:assert>
+ </s:rule>
+ <s:rule context="db:note" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="not(.//db:important)">important must not occur in the descendants of note</s:assert>
+ </s:rule>
+ <s:rule context="db:note" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="not(.//db:note)">note must not occur in the descendants of note</s:assert>
+ </s:rule>
+ <s:rule context="db:note" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="not(.//db:tip)">tip must not occur in the descendants of note</s:assert>
+ </s:rule>
+ <s:rule context="db:note" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="not(.//db:warning)">warning must not occur in the descendants of note</s:assert>
+ </s:rule>
+ <ref name="db.note.attlist"/>
+ <ref name="db.admonition.contentmodel"/>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>tip</db:refname>
+ <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">
+ <s:rule context="db:tip" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="not(.//db:caution)">caution must not occur in the descendants of tip</s:assert>
+ </s:rule>
+ <s:rule context="db:tip" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="not(.//db:important)">important must not occur in the descendants of tip</s:assert>
+ </s:rule>
+ <s:rule context="db:tip" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="not(.//db:note)">note must not occur in the descendants of tip</s:assert>
+ </s:rule>
+ <s:rule context="db:tip" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="not(.//db:tip)">tip must not occur in the descendants of tip</s:assert>
+ </s:rule>
+ <s:rule context="db:tip" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="not(.//db:warning)">warning must not occur in the descendants of tip</s:assert>
+ </s:rule>
+ <ref name="db.tip.attlist"/>
+ <ref name="db.admonition.contentmodel"/>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>warning</db:refname>
+ <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">
+ <s:rule context="db:warning" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="not(.//db:caution)">caution must not occur in the descendants of warning</s:assert>
+ </s:rule>
+ <s:rule context="db:warning" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="not(.//db:important)">important must not occur in the descendants of warning</s:assert>
+ </s:rule>
+ <s:rule context="db:warning" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="not(.//db:note)">note must not occur in the descendants of warning</s:assert>
+ </s:rule>
+ <s:rule context="db:warning" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="not(.//db:tip)">tip must not occur in the descendants of warning</s:assert>
+ </s:rule>
+ <s:rule context="db:warning" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="not(.//db:warning)">warning must not occur in the descendants of warning</s:assert>
+ </s:rule>
+ <ref name="db.warning.attlist"/>
+ <ref name="db.admonition.contentmodel"/>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>itemizedlist</db:refname>
+ <db:refpurpose/>
+ <define name="db.itemizedlist.role.attribute">
+ <attribute name="role"/>
+ </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>
+ <attribute name="mark"/>
+ </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/>
+ <define name="db.orderedlist.role.attribute">
+ <attribute name="role"/>
+ </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>
+ <attribute name="continuation">
+ <choice>
+ <value>continues</value>
+ <value>restarts</value>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="inheritnum">
+ <choice>
+ <value>ignore</value>
+ <value>inherit</value>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="numeration">
+ <choice>
+ <value>arabic</value>
+ <value>upperalpha</value>
+ <value>loweralpha</value>
+ <value>upperroman</value>
+ <value>lowerroman</value>
+ </choice>
+ </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/>
+ <define name="db.listitem.role.attribute">
+ <attribute name="role"/>
+ </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>
+ <attribute name="override"/>
+ </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/>
+ <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/>
+ <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/>
+ <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:rule context="db:seglistitem" xmlns:s="http://www.ascc.net/xml/schematron">
+ <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>
+ <ref name="db.seglistitem.attlist"/>
+ <oneOrMore>
+ <ref name="db.seg"/>
+ </oneOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>seg</db:refname>
+ <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/>
+ <define name="db.simplelist.role.attribute">
+ <attribute name="role"/>
+ </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>
+ <attribute name="type">
+ <choice>
+ <value>horiz</value>
+ <value>vert</value>
+ <value>inline</value>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="columns">
+ <data type="integer"/>
+ </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/>
+ <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/>
+ <define name="db.variablelist.role.attribute">
+ <attribute name="role"/>
+ </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>
+ <attribute name="termlength"/>
+ </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/>
+ <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/>
+ <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/>
+ <define name="db.example.role.attribute">
+ <attribute name="role"/>
+ </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>
+ <attribute name="label"/>
+ </optional>
+ <optional>
+ <ref name="db.floatstyle.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.float.attribute"/>
+ </optional>
+ <optional>
+ <attribute name="width"/>
+ </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>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>informalexample</db:refname>
+ <db:refpurpose/>
+ <define name="db.informalexample.role.attribute">
+ <attribute name="role"/>
+ </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.floatstyle.attribute"/>
+ </optional>
+ <optional>
+ <attribute name="width"/>
+ </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>
+ </element>
+ </define>
+
+ </div>
+ <define name="db.verbatim.inlines">
+ <choice>
+ <choice>
+ <ref name="db.all.inlines"/>
+ <ref name="db.lineannotation"/>
+ </choice>
+ <ref name="db.co"/>
+ </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>programlisting</db:refname>
+ <db:refpurpose/>
+ <define name="db.programlisting.role.attribute">
+ <attribute name="role"/>
+ </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>
+ <attribute name="width"/>
+ </optional>
+ </interleave>
+ </define>
+
+ <define name="db.programlisting">
+ <element name="programlisting">
+ <ref name="db.programlisting.attlist"/>
+ <ref name="db.verbatim.contentmodel"/>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>literallayout</db:refname>
+ <db:refpurpose/>
+ <define name="db.literallayout.role.attribute">
+ <attribute name="role"/>
+ </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>
+ <attribute name="class">
+ <choice>
+ <value>monospaced</value>
+ <value>normal</value>
+ </choice>
+ </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/>
+ <define name="db.screen.role.attribute">
+ <attribute name="role"/>
+ </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>
+ <attribute name="width"/>
+ </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/>
+ <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/>
+ <define name="db.figure.role.attribute">
+ <attribute name="role"/>
+ </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>
+ <attribute name="label"/>
+ </optional>
+ <optional>
+ <ref name="db.pgwide.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.floatstyle.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.float.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>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>informalfigure</db:refname>
+ <db:refpurpose/>
+ <define name="db.informalfigure.role.attribute">
+ <attribute name="role"/>
+ </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>
+ <attribute name="label"/>
+ </optional>
+ <optional>
+ <ref name="db.pgwide.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.floatstyle.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.float.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>
+ </element>
+ </define>
+
+ </div>
+ <define name="db.mediaobject.content">
+ <choice>
+ <choice>
+ <ref name="db.videoobject"/>
+ <ref name="db.audioobject"/>
+ <ref name="db.imageobject"/>
+ <ref name="db.textobject"/>
+ </choice>
+ <ref name="db.imageobjectco"/>
+ </choice>
+ </define>
+
+ <div>
+ <db:refname>mediaobject</db:refname>
+ <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"/>
+ <oneOrMore>
+ <ref name="db.mediaobject.content"/>
+ </oneOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>inlinemediaobject</db:refname>
+ <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"/>
+ <oneOrMore>
+ <ref name="db.mediaobject.content"/>
+ </oneOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>videoobject</db:refname>
+ <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/>
+ <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">
+ <choice>
+ <ref name="db.imagedata"/>
+ <ref name="db._any.svg"/>
+ </choice>
+ </define>
+
+ <div>
+ <db:refname>imageobject</db:refname>
+ <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/>
+ <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/>
+ <define name="db.videodata.role.attribute">
+ <attribute name="role"/>
+ </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>
+ <attribute name="align">
+ <choice>
+ <value>center</value>
+ <value>char</value>
+ <value>justify</value>
+ <value>left</value>
+ <value>right</value>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="valign">
+ <choice>
+ <value>bottom</value>
+ <value>middle</value>
+ <value>top</value>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="width"/>
+ </optional>
+ <optional>
+ <attribute name="contentwidth"/>
+ </optional>
+ <optional>
+ <attribute name="scalefit">
+ <choice>
+ <value>0</value>
+ <value>1</value>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="scale"/>
+ </optional>
+ <optional>
+ <attribute name="depth"/>
+ </optional>
+ <optional>
+ <attribute name="contentdepth"/>
+ </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/>
+ <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/>
+ <define name="db.imagedata.role.attribute">
+ <attribute name="role"/>
+ </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>
+ <attribute name="align">
+ <choice>
+ <value>center</value>
+ <value>char</value>
+ <value>justify</value>
+ <value>left</value>
+ <value>right</value>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="valign">
+ <choice>
+ <value>bottom</value>
+ <value>middle</value>
+ <value>top</value>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="width"/>
+ </optional>
+ <optional>
+ <attribute name="contentwidth"/>
+ </optional>
+ <optional>
+ <attribute name="scalefit">
+ <choice>
+ <value>0</value>
+ <value>1</value>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="scale"/>
+ </optional>
+ <optional>
+ <attribute name="depth"/>
+ </optional>
+ <optional>
+ <attribute name="contentdepth"/>
+ </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/>
+ <define name="db.textdata.role.attribute">
+ <attribute name="role"/>
+ </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>
+ <attribute name="encoding"/>
+ </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>
+ <define name="db.equation.content">
+ <choice>
+ <ref name="db.mediaobject"/>
+ <ref name="db._any.mml"/>
+ </choice>
+ </define>
+
+ <div>
+ <db:refname>equation</db:refname>
+ <db:refpurpose/>
+ <define name="db.equation.role.attribute">
+ <attribute name="role"/>
+ </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>
+ <attribute name="label"/>
+ </optional>
+ <optional>
+ <ref name="db.pgwide.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.floatstyle.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.float.attribute"/>
+ </optional>
+ </interleave>
+ </define>
+
+ <define name="db.equation.info">
+ <ref name="db._info.title.onlyreq"/>
+ </define>
+
+ <define name="db.equation">
+ <element name="equation">
+ <ref name="db.equation.attlist"/>
+ <ref name="db.equation.info"/>
+ <oneOrMore>
+ <ref name="db.equation.content"/>
+ </oneOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>informalequation</db:refname>
+ <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"/>
+ <oneOrMore>
+ <ref name="db.equation.content"/>
+ </oneOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>inlineequation</db:refname>
+ <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"/>
+ <oneOrMore>
+ <ref name="db.equation.content"/>
+ </oneOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>synopsis</db:refname>
+ <db:refpurpose/>
+ <define name="db.synopsis.role.attribute">
+ <attribute name="role"/>
+ </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>
+ <attribute name="label"/>
+ </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>cmdsynopsis</db:refname>
+ <db:refpurpose/>
+ <define name="db.cmdsynopsis.role.attribute">
+ <attribute name="role"/>
+ </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>
+ <attribute name="sepchar"/>
+ </optional>
+ <optional>
+ <attribute name="cmdlength"/>
+ </optional>
+ <optional>
+ <attribute name="label"/>
+ </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="rep.attribute">
+ <attribute name="rep">
+ <choice>
+ <value>norepeat</value>
+ <value>repeat</value>
+ </choice>
+ </attribute>
+ </define>
+
+ <define name="choice.attribute">
+ <attribute name="choice">
+ <choice>
+ <value>opt</value>
+ <value>plain</value>
+ <value>req</value>
+ </choice>
+ </attribute>
+ </define>
+
+ <div>
+ <db:refname>arg</db:refname>
+ <db:refpurpose/>
+ <define name="db.arg.role.attribute">
+ <attribute name="role"/>
+ </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="rep.attribute"/>
+ </optional>
+ <optional>
+ <ref name="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/>
+ <define name="db.group.role.attribute">
+ <attribute name="role"/>
+ </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="rep.attribute"/>
+ </optional>
+ <optional>
+ <ref name="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/>
+ <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/>
+ <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/>
+ <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:rule context="db:synopfragmentref" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="local-name(//*[@id=current()/@linkend]) = 'synopfragment' and namespace-uri(//*[@id=current()/@linkend]) = 'http://docbook.org/docbook-ng'">@linkend on synopfragmentref must point to a synopfragment.</s:assert>
+ </s:rule>
+ <ref name="db.synopfragmentref.attlist"/>
+ <text/>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>funcsynopsis</db:refname>
+ <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"/>
+ <ref name="db.language.attribute"/>
+ </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/>
+ <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/>
+ <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>
+ <ref name="db.paramdef"/>
+ </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/>
+ <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>void</db:refname>
+ <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/>
+ <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>paramdef</db:refname>
+ <db:refpurpose/>
+ <define name="db.paramdef.role.attribute">
+ <attribute name="role"/>
+ </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>
+ <attribute name="choice">
+ <choice>
+ <value>opt</value>
+ <value>req</value>
+ </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.type"/>
+ <ref name="db.parameter"/>
+ <ref name="db.funcparams"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>funcparams</db:refname>
+ <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"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>classsynopsis</db:refname>
+ <db:refpurpose/>
+ <define name="db.classsynopsis.role.attribute">
+ <attribute name="role"/>
+ </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"/>
+ <ref name="db.language.attribute"/>
+ <optional>
+ <attribute name="class">
+ <choice>
+ <value>class</value>
+ <value>interface</value>
+ </choice>
+ </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/>
+ <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/>
+ <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/>
+ <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/>
+ <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>
+ <div>
+ <db:refname>modifier</db:refname>
+ <db:refpurpose/>
+ <define name="db.modifier.role.attribute">
+ <attribute name="role"/>
+ </define>
+
+ <define name="db.modifier.attlist">
+ <interleave>
+ <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/>
+ <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/>
+ <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/>
+ <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"/>
+ <ref name="db.language.attribute"/>
+ </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/>
+ <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">
+ <element name="initializer">
+ <ref name="db.initializer.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>constructorsynopsis</db:refname>
+ <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"/>
+ <ref name="db.language.attribute"/>
+ </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>
+ <ref name="db.methodparam"/>
+ </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/>
+ <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"/>
+ <ref name="db.language.attribute"/>
+ </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>
+ <ref name="db.methodparam"/>
+ </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/>
+ <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"/>
+ <ref name="db.language.attribute"/>
+ </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>
+ <ref name="db.methodparam"/>
+ </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/>
+ <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/>
+ <define name="db.methodparam.role.attribute">
+ <attribute name="role"/>
+ </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="rep.attribute"/>
+ </optional>
+ <optional>
+ <ref name="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>
+ <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>address</db:refname>
+ <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.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.otheraddr"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>street</db:refname>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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>
+ <optional>
+ <ref name="db.orgname"/>
+ </optional>
+ <zeroOrMore>
+ <ref name="db.orgdiv"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="db.address"/>
+ </zeroOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>shortaffil</db:refname>
+ <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/>
+ <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/>
+ <ctrl:other-attribute name="db.orgname.class.attrib" enum-name="db.orgname.class-enum.attribute" other-name="db.orgname.class-other.attributes" xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/"/>
+
+ <define name="db.orgname.class-enum.attribute">
+ <optional>
+ <attribute name="class">
+ <choice>
+ <value>consortium</value>
+ <value>corporation</value>
+ <value>informal</value>
+ <value>nonprofit</value>
+ </choice>
+ </attribute>
+ </optional>
+ </define>
+
+ <define name="db.orgname.class-other.attributes">
+ <optional>
+ <attribute name="class">
+ <value>other</value>
+ </attribute>
+ </optional>
+ <attribute name="otherclass"/>
+ </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"/>
+ <ref name="db.orgname.class.attribute"/>
+ </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/>
+ <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/>
+ <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/>
+ <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>
+ </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.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.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/>
+ <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/>
+ <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/>
+ <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.personname"/>
+ <ref name="db.orgname"/>
+ </choice>
+ </oneOrMore>
+ <zeroOrMore>
+ <ref name="db.affiliation"/>
+ </zeroOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>authorinitials</db:refname>
+ <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>confgroup</db:refname>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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.date.contentmodel">
+ <choice>
+ <data type="date"/>
+ <data type="dateTime"/>
+ <data type="gYearMonth"/>
+ <data type="gYear"/>
+ </choice>
+ </define>
+
+ <div>
+ <db:refname>date</db:refname>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <ctrl:other-attribute name="db.bibliorelation.type.attrib" enum-name="db.bibliorelation.type-enum.attribute" other-name="db.bibliorelation.type-other.attributes" xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/"/>
+
+ <define name="db.bibliorelation.type-enum.attribute">
+ <optional>
+ <attribute name="type">
+ <choice>
+ <value>hasformat</value>
+ <value>haspart</value>
+ <value>hasversion</value>
+ <value>isformatof</value>
+ <value>ispartof</value>
+ <value>isreferencedby</value>
+ <value>isreplacedby</value>
+ <value>isrequiredby</value>
+ <value>isversionof</value>
+ <value>othertype</value>
+ <value>references</value>
+ <value>replaces</value>
+ <value>requires</value>
+ </choice>
+ </attribute>
+ </optional>
+ </define>
+
+ <define name="db.bibliorelation.type-other.attributes">
+ <optional>
+ <attribute name="type">
+ <value>othertype</value>
+ </attribute>
+ </optional>
+ <attribute name="othertype">
+ <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/>
+ <ctrl:other-attribute name="db.bibliocoverage.spatial.attrib" enum-name="db.bibliocoverage.spatial-enum.attribute" other-name="db.bibliocoverage.spatial-other.attributes" xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/"/>
+
+ <define name="db.bibliocoverage.spatial-enum.attribute">
+ <optional>
+ <attribute name="spatial">
+ <choice>
+ <value>dcmipoint</value>
+ <value>iso3166</value>
+ <value>dcmibox</value>
+ <value>tgn</value>
+ </choice>
+ </attribute>
+ </optional>
+ </define>
+
+ <define name="db.bibliocoverage.spatial-other.attributes">
+ <optional>
+ <attribute name="spatial">
+ <value>otherspatial</value>
+ </attribute>
+ </optional>
+ <attribute name="otherspatial">
+ <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" xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/"/>
+
+ <define name="db.bibliocoverage.temporal-enum.attribute">
+ <optional>
+ <attribute name="temporal">
+ <choice>
+ <value>dcmiperiod</value>
+ <value>w3c-dtf</value>
+ </choice>
+ </attribute>
+ </optional>
+ </define>
+
+ <define name="db.bibliocoverage.temporal-other.attributes">
+ <optional>
+ <attribute name="temporal">
+ <value>othertemporal</value>
+ </attribute>
+ </optional>
+ <attribute name="othertemporal">
+ <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/>
+ <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/>
+ <define name="db.othercredit.class.attribute">
+ <optional>
+ <attribute name="class">
+ <choice>
+ <value>copyeditor</value>
+ <value>graphicdesigner</value>
+ <value>other</value>
+ <value>productioneditor</value>
+ <value>technicaleditor</value>
+ <value>translator</value>
+ </choice>
+ </attribute>
+ </optional>
+ </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/>
+ <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/>
+ <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/>
+ <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/>
+ <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>surname</db:refname>
+ <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/>
+ <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/>
+ <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/>
+ <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>productname</db:refname>
+ <db:refpurpose/>
+ <define name="db.productname.role.attribute">
+ <attribute name="role"/>
+ </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>
+ <attribute name="class">
+ <choice>
+ <value>copyright</value>
+ <value>registered</value>
+ <value>service</value>
+ <value>trade</value>
+ </choice>
+ </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/>
+ <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>pubdate</db:refname>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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"/>
+ <ref name="db.revnumber"/>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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>application</db:refname>
+ <db:refpurpose/>
+ <define name="application.class.attribute">
+ <attribute name="class">
+ <choice>
+ <value>hardware</value>
+ <value>software</value>
+ </choice>
+ </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="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>package</db:refname>
+ <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>classname</db:refname>
+ <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>command</db:refname>
+ <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"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+
+ </div>
+ <define name="db.computeroutput.inlines">
+ <choice>
+ <ref name="db.all.inlines"/>
+ <ref name="db.co"/>
+ <ref name="db.co"/>
+ </choice>
+ </define>
+
+ <div>
+ <db:refname>computeroutput</db:refname>
+ <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>database</db:refname>
+ <db:refpurpose/>
+ <define name="db.database.class.attribute">
+ <attribute name="class">
+ <choice>
+ <value>altkey</value>
+ <value>constraint</value>
+ <value>datatype</value>
+ <value>field</value>
+ <value>foreignkey</value>
+ <value>group</value>
+ <value>index</value>
+ <value>key1</value>
+ <value>key2</value>
+ <value>name</value>
+ <value>primarykey</value>
+ <value>procedure</value>
+ <value>record</value>
+ <value>rule</value>
+ <value>secondarykey</value>
+ <value>table</value>
+ <value>user</value>
+ <value>view</value>
+ </choice>
+ </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>email</db:refname>
+ <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>envar</db:refname>
+ <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>errorcode</db:refname>
+ <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/>
+ <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/>
+ <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/>
+ <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>
+ <div>
+ <db:refname>filename</db:refname>
+ <db:refpurpose/>
+ <define name="db.filename.path.attribute">
+ <attribute name="path"/>
+ </define>
+
+ <define name="db.filename.class.attribute">
+ <attribute name="class">
+ <choice>
+ <value>devicefile</value>
+ <value>directory</value>
+ <value>extension</value>
+ <value>headerfile</value>
+ <value>libraryfile</value>
+ <value>partition</value>
+ <value>symlink</value>
+ </choice>
+ </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>function</db:refname>
+ <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>guibutton</db:refname>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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>hardware</db:refname>
+ <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>
+ <div>
+ <db:refname>keycap</db:refname>
+ <db:refpurpose/>
+ <ctrl:other-attribute name="db.keycap.function.attrib" enum-name="db.keycap.function-enum.attribute" other-name="db.keycap.function-other.attributes" xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/"/>
+
+ <define name="db.keycap.function-enum.attribute">
+ <optional>
+ <attribute name="function">
+ <choice>
+ <value>alt</value>
+ <value>backspace</value>
+ <value>command</value>
+ <value>control</value>
+ <value>delete</value>
+ <value>down</value>
+ <value>end</value>
+ <value>enter</value>
+ <value>escape</value>
+ <value>home</value>
+ <value>insert</value>
+ <value>left</value>
+ <value>meta</value>
+ <value>option</value>
+ <value>pagedown</value>
+ <value>pageup</value>
+ <value>right</value>
+ <value>shift</value>
+ <value>space</value>
+ <value>tab</value>
+ <value>up</value>
+ </choice>
+ </attribute>
+ </optional>
+ </define>
+
+ <define name="db.keycap.function-other.attributes">
+ <optional>
+ <attribute name="function">
+ <value>other</value>
+ </attribute>
+ </optional>
+ <attribute name="otherfunction"/>
+ </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/>
+ <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>
+ <div>
+ <db:refname>keycombo</db:refname>
+ <db:refpurpose/>
+ <ctrl:other-attribute name="db.keycombo.action.attrib" enum-name="db.keycombo.action-enum.attribute" other-name="db.keycombo.action-other.attributes" xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/"/>
+
+ <define name="db.keycombo.action-enum.attribute">
+ <optional>
+ <attribute name="action">
+ <choice>
+ <value>click</value>
+ <value>double-click</value>
+ <value>press</value>
+ <value>seq</value>
+ <value>simul</value>
+ </choice>
+ </attribute>
+ </optional>
+ </define>
+
+ <define name="db.keycombo.action-other.attributes">
+ <optional>
+ <attribute name="action">
+ <value>other</value>
+ </attribute>
+ </optional>
+ <attribute name="otheraction"/>
+ </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>
+ <choice>
+ <ref name="db.keycap"/>
+ <ref name="db.keycombo"/>
+ <ref name="db.keysym"/>
+ <ref name="db.mousebutton"/>
+ </choice>
+ </oneOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>keysym</db:refname>
+ <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>lineannotation</db:refname>
+ <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"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>literal</db:refname>
+ <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"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>code</db:refname>
+ <db:refpurpose/>
+ <define name="code.language.attribute">
+ <attribute name="language"/>
+ </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>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>constant</db:refname>
+ <db:refpurpose/>
+ <define name="constant.class.attribute">
+ <attribute name="class">
+ <value>limit</value>
+ </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="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>
+ <div>
+ <db:refname>varname</db:refname>
+ <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>markup</db:refname>
+ <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>menuchoice</db:refname>
+ <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>shortcut</db:refname>
+ <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>
+ <choice>
+ <ref name="db.keycap"/>
+ <ref name="db.keycombo"/>
+ <ref name="db.keysym"/>
+ <ref name="db.mousebutton"/>
+ </choice>
+ </oneOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>mousebutton</db:refname>
+ <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>
+ <div>
+ <db:refname>option</db:refname>
+ <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/>
+ <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"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>property</db:refname>
+ <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"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>parameter</db:refname>
+ <db:refpurpose/>
+ <define name="parameter.class.attribute">
+ <attribute name="class">
+ <choice>
+ <value>command</value>
+ <value>function</value>
+ <value>option</value>
+ </choice>
+ </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="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.prompt.inlines">
+ <choice>
+ <ref name="db._text"/>
+ <ref name="db.co"/>
+ </choice>
+ </define>
+
+ <div>
+ <db:refname>prompt</db:refname>
+ <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>
+ <define name="db.replaceable.inlines">
+ <choice>
+ <ref name="db._text"/>
+ <ref name="db.co"/>
+ </choice>
+ </define>
+
+ <div>
+ <db:refname>replaceable</db:refname>
+ <db:refpurpose/>
+ <define name="db.replaceable.class.attribute">
+ <attribute name="class">
+ <choice>
+ <value>command</value>
+ <value>function</value>
+ <value>option</value>
+ <value>parameter</value>
+ </choice>
+ </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>returnvalue</db:refname>
+ <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>tag</db:refname>
+ <db:refpurpose/>
+ <define name="db.tag.class.attribute">
+ <attribute name="class">
+ <choice>
+ <value>attribute</value>
+ <value>attvalue</value>
+ <value>element</value>
+ <value>emptytag</value>
+ <value>endtag</value>
+ <value>genentity</value>
+ <value>numcharref</value>
+ <value>paramentity</value>
+ <value>pi</value>
+ <value>sgmlcomment</value>
+ <value>starttag</value>
+ <value>xmlpi</value>
+ </choice>
+ </attribute>
+ </define>
+
+ <define name="db.tag.role.attribute">
+ <attribute name="role"/>
+ </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>
+ <attribute name="namespace"/>
+ </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/>
+ <define name="db.symbol.class.attribute">
+ <optional>
+ <attribute name="class">
+ <value>limit</value>
+ </attribute>
+ </optional>
+ </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"/>
+ <ref name="db.symbol.class.attribute"/>
+ </interleave>
+ </define>
+
+ <define name="db.symbol">
+ <element name="symbol">
+ <ref name="db.symbol.attlist"/>
+ <ref name="db._text"/>
+ </element>
+ </define>
+
+ </div>
+ <define name="db.systemitem.inlines">
+ <choice>
+ <ref name="db._text"/>
+ <ref name="db.co"/>
+ </choice>
+ </define>
+
+ <div>
+ <db:refname>systemitem</db:refname>
+ <db:refpurpose/>
+ <define name="db.systemitem.class.attribute">
+ <attribute name="class">
+ <choice>
+ <value>daemon</value>
+ <value>domainname</value>
+ <value>etheraddress</value>
+ <value>event</value>
+ <value>eventhandler</value>
+ <value>filesystem</value>
+ <value>fqdomainname</value>
+ <value>groupname</value>
+ <value>ipaddress</value>
+ <value>library</value>
+ <value>macro</value>
+ <value>netmask</value>
+ <value>newsgroup</value>
+ <value>osname</value>
+ <value>process</value>
+ <value>resource</value>
+ <value>server</value>
+ <value>service</value>
+ <value>systemname</value>
+ <value>username</value>
+ </choice>
+ </attribute>
+ </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>uri</db:refname>
+ <db:refpurpose/>
+ <define name="db.uri.type.attribute">
+ <optional>
+ <attribute name="type"/>
+ </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>token</db:refname>
+ <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>type</db:refname>
+ <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>
+ <define name="db.userinput.inlines">
+ <choice>
+ <ref name="db.all.inlines"/>
+ <ref name="db.co"/>
+ </choice>
+ </define>
+
+ <div>
+ <db:refname>userinput</db:refname>
+ <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>abbrev</db:refname>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <define name="db.citetitle.pubwork.attribute">
+ <attribute name="pubwork">
+ <choice>
+ <value>article</value>
+ <value>bbs</value>
+ <value>book</value>
+ <value>cdrom</value>
+ <value>chapter</value>
+ <value>dvd</value>
+ <value>emailmessage</value>
+ <value>gopher</value>
+ <value>journal</value>
+ <value>manuscript</value>
+ <value>newsposting</value>
+ <value>part</value>
+ <value>refentry</value>
+ <value>section</value>
+ <value>series</value>
+ <value>set</value>
+ <value>webpage</value>
+ <value>wiki</value>
+ </choice>
+ </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/>
+ <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>foreignphrase</db:refname>
+ <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>phrase</db:refname>
+ <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>quote</db:refname>
+ <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>subscript</db:refname>
+ <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/>
+ <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/>
+ <define name="db.trademark.class.attribute">
+ <attribute name="class">
+ <choice>
+ <value>copyright</value>
+ <value>registered</value>
+ <value>service</value>
+ <value>trade</value>
+ </choice>
+ </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/>
+ <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/>
+ <define name="db.footnoteref.role.attribute">
+ <attribute name="role"/>
+ </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>
+ <attribute name="label"/>
+ </optional>
+ </interleave>
+ </define>
+
+ <define name="db.footnoteref">
+ <element name="footnoteref">
+ <s:rule context="db:footnoteref" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="local-name(//*[@id=current()/@linkend]) = 'footnote' and namespace-uri(//*[@id=current()/@linkend]) = 'http://docbook.org/docbook-ng'">@linkend on footnoteref must point to a footnote.</s:assert>
+ </s:rule>
+ <ref name="db.footnoteref.attlist"/>
+ <empty/>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>xref</db:refname>
+ <db:refpurpose/>
+ <define name="db.xref.role.attribute">
+ <attribute name="role"/>
+ </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>
+ <attribute name="xrefstyle"/>
+ </optional>
+ <optional>
+ <attribute name="endterm">
+ <data type="IDREF"/>
+ </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>
+ <dbx:description>
+ <db:para>The <db:tag>link</db:tag>
+ element is a general purpose hypertext element. Usually, <db:tag>link</db:tag>
+ surrounds the text that should be made “hot” (unlike <db:tag>xref</db:tag>
+ which must generate the text) but the <db:tag class="attribute">endterm</db:tag>
+ attribute can be used to copy text from another element.</db:para>
+ </dbx:description>
+ <dbx:expectations>
+ <db:para>
+ <dbx:format class="inline"/>
+ </db:para>
+ <db:para>If the <db:tag>link</db:tag>
+ element has content, then that content is processed for output as the “hot” text. If the <db:tag>link</db:tag>
+ element has content and an <db:tag class="attribute">endterm</db:tag>
+ attribute, then the content is used and the <db:tag class="attribute">endterm</db:tag>
+ is ignored. If the <db:tag>link</db:tag>
+ element has an <db:tag class="attribute">endterm</db:tag>
+ attribute and no content, then the content of the element pointed to by <db:tag class="attribute">endterm</db:tag>
+should be repeated at the location of the <db:tag>link</db:tag>
+ and used as the “hot” text.</db:para>
+ </dbx:expectations>
+ <define name="db.link.role.attribute">
+ <attribute name="role"/>
+ </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"/>
+ </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>anchor</db:refname>
+ <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>
+ <define name="db.glossary.inlines">
+ <choice>
+ <ref name="db.firstterm"/>
+ <ref name="db.glossterm"/>
+ </choice>
+ </define>
+
+ <define name="db.baseform.attribute">
+ <optional>
+ <attribute name="baseform"/>
+ </optional>
+ </define>
+
+ <div>
+ <db:refname>glosslist</db:refname>
+ <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/>
+ <define name="db.glossentry.role.attribute">
+ <attribute name="role"/>
+ </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>
+ <attribute name="sortas"/>
+ </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/>
+ <define name="db.glossdef.role.attribute">
+ <attribute name="role"/>
+ </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>
+ <attribute name="subject"/>
+ </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/>
+ <define name="db.glosssee.role.attribute">
+ <attribute name="role"/>
+ </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>
+ <attribute name="otherterm">
+ <data type="IDREF"/>
+ </attribute>
+ </optional>
+ </interleave>
+ </define>
+
+ <define name="db.glosssee">
+ <element name="glosssee">
+ <s:rule context="db:glosssee[@otherterm]" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="local-name(//*[@id=current()/@otherterm]) = 'glossentry' and namespace-uri(//*[@id=current()/@otherterm]) = 'http://docbook.org/docbook-ng'">@otherterm on glosssee must point to a glossentry.</s:assert>
+ </s:rule>
+ <ref name="db.glosssee.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>glossseealso</db:refname>
+ <db:refpurpose/>
+ <define name="db.glossseealso.role.attribute">
+ <attribute name="role"/>
+ </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>
+ <attribute name="otherterm">
+ <data type="IDREF"/>
+ </attribute>
+ </optional>
+ </interleave>
+ </define>
+
+ <define name="db.glossseealso">
+ <element name="glossseealso">
+ <s:rule context="db:glossseealso[@otherterm]" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="local-name(//*[@id=current()/@otherterm]) = 'glossentry' and namespace-uri(//*[@id=current()/@otherterm]) = 'http://docbook.org/docbook-ng'">@otherterm on glossseealso must point to a glossentry.</s:assert>
+ </s:rule>
+ <ref name="db.glossseealso.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>firstterm</db:refname>
+ <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:rule context="db:firstterm[@linkend]" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="local-name(//*[@id=current()/@linkend]) = 'glossentry' and namespace-uri(//*[@id=current()/@linkend]) = 'http://docbook.org/docbook-ng'">@linkend on firstterm must point to a glossentry.</s:assert>
+ </s:rule>
+ <ref name="db.firstterm.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>glossterm</db:refname>
+ <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:rule context="db:glossterm[@linkend]" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="local-name(//*[@id=current()/@linkend]) = 'glossentry' and namespace-uri(//*[@id=current()/@linkend]) = 'http://docbook.org/docbook-ng'">@linkend on glossterm must point to a glossentry.</s:assert>
+ </s:rule>
+ <ref name="db.glossterm.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>glossary</db:refname>
+ <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">
+ <s:rule context="/db:glossary" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="@version">The root element must have a version attribute.</s:assert>
+ </s:rule>
+ <ref name="db.glossary.attlist"/>
+ <ref name="db.glossary.info"/>
+ <zeroOrMore>
+ <ref name="db.all.blocks"/>
+ </zeroOrMore>
+ <choice>
+ <oneOrMore>
+ <ref name="db.glossdiv"/>
+ </oneOrMore>
+ <oneOrMore>
+ <ref name="db.glossentry"/>
+ </oneOrMore>
+ </choice>
+ <optional>
+ <ref name="db.bibliography"/>
+ </optional>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>glossdiv</db:refname>
+ <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.relation.attribute">
+ <attribute name="relation"/>
+ </define>
+
+ <div>
+ <db:refname>biblioentry</db:refname>
+ <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/>
+ <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"/>
+ <zeroOrMore>
+ <choice>
+ <text/>
+ <ref name="db.bibliographic.elements"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>biblioset</db:refname>
+ <db:refpurpose/>
+ <define name="db.biblioset.relation.attrib">
+ <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.attrib"/>
+ </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/>
+ <define name="db.bibliomset.relation.attrib">
+ <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.attrib"/>
+ </optional>
+ </interleave>
+ </define>
+
+ <define name="db.bibliomset">
+ <element name="bibliomset">
+ <ref name="db.bibliomset.attlist"/>
+ <zeroOrMore>
+ <choice>
+ <ref name="db._text"/>
+ <ref name="db.bibliographic.elements"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>bibliomisc</db:refname>
+ <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/>
+ <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">
+ <s:rule context="/db:bibliography" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="@version">The root element must have a version attribute.</s:assert>
+ </s:rule>
+ <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/>
+ <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/>
+ <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/>
+ <define name="db.biblioref.role.attribute">
+ <attribute name="role"/>
+ </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>
+ <attribute name="xrefstyle"/>
+ </optional>
+ <optional>
+ <attribute name="endterm">
+ <data type="IDREF"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="units">
+ <data type="token"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="begin">
+ <data type="token"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="end">
+ <data type="token"/>
+ </attribute>
+ </optional>
+ </interleave>
+ </define>
+
+ <define name="db.biblioref">
+ <element name="biblioref">
+ <ref name="db.biblioref.attlist"/>
+ <empty/>
+ </element>
+ </define>
+
+ </div>
+ <define name="db.significance.attribute">
+ <attribute name="significance">
+ <choice>
+ <value>normal</value>
+ <value>preferred</value>
+ </choice>
+ </attribute>
+ </define>
+
+ <define name="db.zone.attribute">
+ <attribute name="zone">
+ <data type="IDREFS"/>
+ </attribute>
+ </define>
+
+ <define name="db.pagenum.attribute">
+ <attribute name="pagenum"/>
+ </define>
+
+ <define name="db.scope.attribute">
+ <attribute name="scope">
+ <choice>
+ <value>all</value>
+ <value>global</value>
+ <value>local</value>
+ </choice>
+ </attribute>
+ </define>
+
+ <define name="db.sortas.attribute">
+ <attribute name="sortas"/>
+ </define>
+
+ <div>
+ <db:refname>itermset</db:refname>
+ <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/>
+ <define name="db.indexterm.singular.role.attribute">
+ <attribute name="role"/>
+ </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.pagenum.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.scope.attribute"/>
+ </optional>
+ <optional>
+ <attribute name="class">
+ <value>singular</value>
+ </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/>
+ <define name="db.indexterm.startofrange.role.attribute">
+ <attribute name="role"/>
+ </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.pagenum.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.scope.attribute"/>
+ </optional>
+ <attribute name="class">
+ <value>startofrange</value>
+ </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/>
+ <define name="db.indexterm.endofrange.role.attribute">
+ <attribute name="role"/>
+ </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"/>
+ <attribute name="class">
+ <value>endofrange</value>
+ </attribute>
+ <attribute name="startref">
+ <data type="IDREF"/>
+ </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/>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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>
+ </interleave>
+ </define>
+
+ <define name="db.index.info">
+ <ref name="db._info"/>
+ </define>
+
+ <define name="db.index">
+ <element name="index">
+ <s:rule context="/db:index" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="@version">The root element must have a version attribute.</s:assert>
+ </s:rule>
+ <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/>
+ <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>
+ </interleave>
+ </define>
+
+ <define name="db.setindex.info">
+ <ref name="db._info"/>
+ </define>
+
+ <define name="db.setindex">
+ <element name="setindex">
+ <s:rule context="/db:setindex" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="@version">The root element must have a version attribute.</s:assert>
+ </s:rule>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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>
+ <div>
+ <db:refname>toc</db:refname>
+ <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">
+ <s:rule context="/db:toc" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="@version">The root element must have a version attribute.</s:assert>
+ </s:rule>
+ <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/>
+ <define name="db.tocdiv.role.attribute">
+ <attribute name="role"/>
+ </define>
+
+ <define name="db.tocdiv.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.tocdiv.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <optional>
+ <attribute name="pagenum"/>
+ </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/>
+ <define name="db.tocentry.role.attribute">
+ <attribute name="role"/>
+ </define>
+
+ <define name="db.tocentry.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.tocentry.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <optional>
+ <attribute name="pagenum"/>
+ </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>
+ <define name="db.task.info">
+ <ref name="db._info.title.only"/>
+ </define>
+
+ <div>
+ <db:refname>task</db:refname>
+ <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/>
+ <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/>
+ <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/>
+ <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>
+ <ctrl:other-attribute name="area.units.attrib" enum-name="area.units-enum.attribute" other-name="area.units-other.attributes" xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/"/>
+
+ <define name="db.area.units-enum.attribute">
+ <optional>
+ <attribute name="units">
+ <choice>
+ <value>calspair</value>
+ <value>linecolumn</value>
+ <value>linecolumnpair</value>
+ <value>linerange</value>
+ </choice>
+ </attribute>
+ </optional>
+ </define>
+
+ <define name="db.area.units-other.attributes">
+ <optional>
+ <attribute name="units">
+ <value>other</value>
+ </attribute>
+ </optional>
+ <attribute name="otherunits">
+ <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:xmltag>callout</db:xmltag>
+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/>
+ <define name="db.callout.role.attribute">
+ <attribute name="role"/>
+ </define>
+
+ <define name="db.callout.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.callout.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <attribute name="arearefs">
+ <data type="IDREFS"/>
+ </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/>
+ <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/>
+ <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/>
+ <define name="db.area.role.attribute">
+ <attribute name="role"/>
+ </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>
+ <attribute name="linkends">
+ <data type="IDREFS"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="label"/>
+ </optional>
+ <attribute name="coords"/>
+ </interleave>
+ </define>
+
+ <define name="db.area">
+ <element name="area">
+ <ref name="db.area.attlist"/>
+ <empty/>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>areaset</db:refname>
+ <db:refpurpose/>
+ <define name="db.areaset.role.attribute">
+ <attribute name="role"/>
+ </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>
+ <attribute name="label"/>
+ </optional>
+ </interleave>
+ </define>
+
+ <define name="db.areaset">
+ <element name="areaset">
+ <ref name="db.areaset.attlist"/>
+ <oneOrMore>
+ <ref name="db.area"/>
+ </oneOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>screenco</db:refname>
+ <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/>
+ <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"/>
+ <ref name="db.imageobject"/>
+ <zeroOrMore>
+ <ref name="db.calloutlist"/>
+ </zeroOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>co</db:refname>
+ <db:refpurpose/>
+ <define name="db.co.role.attribute">
+ <attribute name="role"/>
+ </define>
+
+ <define name="db.co.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.co.role.attribute"/>
+ </optional>
+ <ref name="db.common.idreq.attributes"/>
+ <optional>
+ <attribute name="linkends">
+ <data type="IDREFS"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="label"/>
+ </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/>
+ <define name="db.coref.role.attribute">
+ <attribute name="role"/>
+ </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>
+ <attribute name="label"/>
+ </optional>
+ </interleave>
+ </define>
+
+ <define name="db.coref">
+ <element name="coref">
+ <ref name="db.coref.attlist"/>
+ <empty/>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>productionset</db:refname>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <define name="db.nonterminal.role.attribute">
+ <attribute name="role"/>
+ </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"/>
+ <attribute name="def"/>
+ </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/>
+ <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/>
+ <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/>
+ <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>
+ <define name="db.char.attribute">
+ <attribute name="char"/>
+ </define>
+
+ <define name="db.charoff.attribute">
+ <attribute name="charoff"/>
+ </define>
+
+ <define name="db.colsep.attribute">
+ <attribute name="colsep"/>
+ </define>
+
+ <define name="db.rowsep.attribute">
+ <attribute name="rowsep"/>
+ </define>
+
+ <define name="db.align.attribute">
+ <attribute name="align">
+ <choice>
+ <value>center</value>
+ <value>char</value>
+ <value>justify</value>
+ <value>left</value>
+ <value>right</value>
+ </choice>
+ </attribute>
+ </define>
+
+ <define name="db.valign.attribute">
+ <attribute name="valign">
+ <choice>
+ <value>bottom</value>
+ <value>middle</value>
+ <value>top</value>
+ </choice>
+ </attribute>
+ </define>
+
+ <define name="db.spanname.attribute">
+ <attribute name="spanname"/>
+ </define>
+
+ <define name="db.colname.attribute">
+ <attribute name="colname"/>
+ </define>
+
+ <div>
+ <db:refname>tgroup</db:refname>
+ <db:refpurpose/>
+ <define name="db.tgroup.role.attribute">
+ <attribute name="role"/>
+ </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>
+ <attribute name="tgroupstyle"/>
+ </optional>
+ <attribute name="cols">
+ <data type="integer"/>
+ </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/>
+ <define name="db.colspec.role.attribute">
+ <attribute name="role"/>
+ </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>
+ <attribute name="colnum">
+ <data type="integer"/>
+ </attribute>
+ </optional>
+ <optional>
+ <ref name="db.char.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.colsep.attribute"/>
+ </optional>
+ <optional>
+ <attribute name="colwidth"/>
+ </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/>
+ <define name="db.spanspec.role.attribute">
+ <attribute name="role"/>
+ </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"/>
+ <attribute name="namest"/>
+ <attribute name="nameend"/>
+ <ref name="db.spanname.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/>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <define name="db.entry.role.attribute">
+ <attribute name="role"/>
+ </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>
+ <attribute name="nameend"/>
+ </optional>
+ <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>
+ <attribute name="morerows">
+ <data type="integer"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="spanname"/>
+ </optional>
+ <optional>
+ <attribute name="namest"/>
+ </optional>
+ <optional>
+ <ref name="db.colname.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.rowsep.attribute"/>
+ </optional>
+ <optional>
+ <attribute name="rotate"/>
+ </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/>
+ <define name="db.entrytbl.role.attribute">
+ <attribute name="role"/>
+ </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>
+ <attribute name="nameend"/>
+ </optional>
+ <optional>
+ <ref name="db.char.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.charoff.attribute"/>
+ </optional>
+ <optional>
+ <attribute name="spanname"/>
+ </optional>
+ <optional>
+ <attribute name="namest"/>
+ </optional>
+ <optional>
+ <attribute name="tgroupstyle"/>
+ </optional>
+ <optional>
+ <attribute name="cols">
+ <data type="integer"/>
+ </attribute>
+ </optional>
+ <optional>
+ <ref name="db.colsep.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.rowsep.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.colname.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/>
+ <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/>
+ <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/>
+ <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/>
+ <ctrl:exclude from="db.cals.table" exclude="db.cals.table" xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/"/>
+
+ <ctrl:exclude from="db.cals.table" exclude="db.cals.informaltable" xmlns:ctrl="http://nwalsh.com/xmlns/schema-control/"/>
+
+ <define name="db.cals.table.role.attribute">
+ <attribute name="role"/>
+ </define>
+
+ <define name="db.cals.table.attlist">
+ <interleave>
+ <optional>
+ <ref name="db.cals.table.role.attribute"/>
+ </optional>
+ <ref name="db.common.attributes"/>
+ <ref name="db.common.linking.attributes"/>
+ <optional>
+ <attribute name="tabstyle"/>
+ </optional>
+ <optional>
+ <attribute name="orient">
+ <choice>
+ <value>land</value>
+ <value>port</value>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <ref name="db.colsep.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.rowsep.attribute"/>
+ </optional>
+ <optional>
+ <attribute name="frame">
+ <choice>
+ <value>all</value>
+ <value>bottom</value>
+ <value>none</value>
+ <value>sides</value>
+ <value>top</value>
+ <value>topbot</value>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="pgwide">
+ <choice>
+ <value>0</value>
+ <value>1</value>
+ </choice>
+ </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">
+ <s:rule context="db:table" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="not(.//db:table)">table must not occur in the descendants of table</s:assert>
+ </s:rule>
+ <s:rule context="db:table" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="not(.//db:informaltable)">informaltable must not occur in the descendants of table</s:assert>
+ </s:rule>
+ <ref name="db.cals.table.attlist"/>
+ <ref name="db.cals.table.info"/>
+ <zeroOrMore>
+ <ref name="db.indexing.inlines"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="db.textobject"/>
+ </zeroOrMore>
+ <choice>
+ <oneOrMore>
+ <ref name="db.mediaobject"/>
+ </oneOrMore>
+ <oneOrMore>
+ <ref name="db.tgroup"/>
+ </oneOrMore>
+ </choice>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>informaltable</db:refname>
+ <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>
+ <attribute name="tabstyle"/>
+ </optional>
+ <optional>
+ <attribute name="orient">
+ <choice>
+ <value>land</value>
+ <value>port</value>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <ref name="db.colsep.attribute"/>
+ </optional>
+ <optional>
+ <ref name="db.rowsep.attribute"/>
+ </optional>
+ <optional>
+ <attribute name="frame">
+ <choice>
+ <value>all</value>
+ <value>bottom</value>
+ <value>none</value>
+ <value>sides</value>
+ <value>top</value>
+ <value>topbot</value>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="pgwide">
+ <choice>
+ <value>0</value>
+ <value>1</value>
+ </choice>
+ </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"/>
+ <zeroOrMore>
+ <ref name="db.indexing.inlines"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="db.textobject"/>
+ </zeroOrMore>
+ <choice>
+ <oneOrMore>
+ <ref name="db.mediaobject"/>
+ </oneOrMore>
+ <oneOrMore>
+ <ref name="db.tgroup"/>
+ </oneOrMore>
+ </choice>
+ </element>
+ </define>
+
+ </div>
+ <define name="db.html.coreattrs" combine="interleave">
+ <optional>
+ <attribute name="class"/>
+ </optional>
+ <optional>
+ <attribute name="style"/>
+ </optional>
+ <optional>
+ <attribute name="title"/>
+ </optional>
+ </define>
+
+ <define name="db.html.i18n" combine="interleave">
+ <optional>
+ <attribute name="lang"/>
+ </optional>
+ <optional>
+ <attribute name="dir">
+ <choice>
+ <value>ltr</value>
+ <value>rtl</value>
+ </choice>
+ </attribute>
+ </optional>
+ </define>
+
+ <define name="db.html.events" combine="interleave">
+ <optional>
+ <attribute name="onclick"/>
+ </optional>
+ <optional>
+ <attribute name="ondblclick"/>
+ </optional>
+ <optional>
+ <attribute name="onmousedown"/>
+ </optional>
+ <optional>
+ <attribute name="onmouseup"/>
+ </optional>
+ <optional>
+ <attribute name="onmouseover"/>
+ </optional>
+ <optional>
+ <attribute name="onmousemove"/>
+ </optional>
+ <optional>
+ <attribute name="onmouseout"/>
+ </optional>
+ <optional>
+ <attribute name="onkeypress"/>
+ </optional>
+ <optional>
+ <attribute name="onkeydown"/>
+ </optional>
+ <optional>
+ <attribute name="onkeyup"/>
+ </optional>
+ </define>
+
+ <define name="db.html.attrs" combine="interleave">
+ <ref name="db.html.coreattrs"/>
+ <ref name="db.html.i18n"/>
+ <ref name="db.html.events"/>
+ </define>
+
+ <define name="db.html.cellhalign" combine="interleave">
+ <optional>
+ <attribute name="align">
+ <choice>
+ <value>left</value>
+ <value>center</value>
+ <value>right</value>
+ <value>justify</value>
+ <value>char</value>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="char"/>
+ </optional>
+ <optional>
+ <attribute name="charoff"/>
+ </optional>
+ </define>
+
+ <define name="db.html.cellvalign" combine="interleave">
+ <optional>
+ <attribute name="valign">
+ <choice>
+ <value>top</value>
+ <value>middle</value>
+ <value>bottom</value>
+ <value>baseline</value>
+ </choice>
+ </attribute>
+ </optional>
+ </define>
+
+ <define name="db.html.table.model">
+ <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.model">
+ <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/>
+ <define name="db.html.table.attlist">
+ <interleave>
+ <ref name="db.html.attrs"/>
+ <optional>
+ <attribute name="summary"/>
+ </optional>
+ <optional>
+ <attribute name="width"/>
+ </optional>
+ <optional>
+ <attribute name="border"/>
+ </optional>
+ <optional>
+ <attribute name="frame">
+ <choice>
+ <value>void</value>
+ <value>above</value>
+ <value>below</value>
+ <value>hsides</value>
+ <value>lhs</value>
+ <value>rhs</value>
+ <value>vsides</value>
+ <value>box</value>
+ <value>border</value>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="rules">
+ <choice>
+ <value>none</value>
+ <value>groups</value>
+ <value>rows</value>
+ <value>cols</value>
+ <value>all</value>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="cellspacing"/>
+ </optional>
+ <optional>
+ <attribute name="cellpadding"/>
+ </optional>
+ </interleave>
+ </define>
+
+ <define name="db.html.table">
+ <element name="table">
+ <s:rule context="db:table" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="not(.//db:table)">table must not occur in the descendants of table</s:assert>
+ </s:rule>
+ <s:rule context="db:table" xmlns:s="http://www.ascc.net/xml/schematron">
+ <s:assert test="not(.//db:informaltable)">informaltable must not occur in the descendants of table</s:assert>
+ </s:rule>
+ <ref name="db.html.table.attlist"/>
+ <ref name="db.html.table.model"/>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>informaltable</db:refname>
+ <db:refpurpose/>
+ <define name="db.html.informaltable.attlist">
+ <interleave>
+ <ref name="db.html.attrs"/>
+ <optional>
+ <attribute name="summary"/>
+ </optional>
+ <optional>
+ <attribute name="width"/>
+ </optional>
+ <optional>
+ <attribute name="border"/>
+ </optional>
+ <optional>
+ <attribute name="frame">
+ <choice>
+ <value>void</value>
+ <value>above</value>
+ <value>below</value>
+ <value>hsides</value>
+ <value>lhs</value>
+ <value>rhs</value>
+ <value>vsides</value>
+ <value>box</value>
+ <value>border</value>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="rules">
+ <choice>
+ <value>none</value>
+ <value>groups</value>
+ <value>rows</value>
+ <value>cols</value>
+ <value>all</value>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="cellspacing"/>
+ </optional>
+ <optional>
+ <attribute name="cellpadding"/>
+ </optional>
+ </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/>
+ <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"/>
+ <text/>
+ </element>
+ </define>
+
+ </div>
+ <div>
+ <db:refname>col</db:refname>
+ <db:refpurpose/>
+ <define name="db.html.col.attlist">
+ <interleave>
+ <ref name="db.html.attrs"/>
+ <optional>
+ <attribute name="span"/>
+ </optional>
+ <optional>
+ <attribute name="width"/>
+ </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/>
+ <define name="db.html.colgroup.attlist">
+ <interleave>
+ <ref name="db.html.attrs"/>
+ <optional>
+ <attribute name="span"/>
+ </optional>
+ <optional>
+ <attribute name="width"/>
+ </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/>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <define name="db.html.th.attlist">
+ <interleave>
+ <ref name="db.html.attrs"/>
+ <optional>
+ <attribute name="abbr"/>
+ </optional>
+ <optional>
+ <attribute name="axis"/>
+ </optional>
+ <optional>
+ <attribute name="headers"/>
+ </optional>
+ <optional>
+ <attribute name="scope"/>
+ </optional>
+ <optional>
+ <attribute name="rowspan"/>
+ </optional>
+ <optional>
+ <attribute name="colspan"/>
+ </optional>
+ <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/>
+ <define name="db.html.td.attlist">
+ <interleave>
+ <ref name="db.html.attrs"/>
+ <optional>
+ <attribute name="abbr"/>
+ </optional>
+ <optional>
+ <attribute name="axis"/>
+ </optional>
+ <optional>
+ <attribute name="headers"/>
+ </optional>
+ <optional>
+ <attribute name="scope"/>
+ </optional>
+ <optional>
+ <attribute name="rowspan"/>
+ </optional>
+ <optional>
+ <attribute name="colspan"/>
+ </optional>
+ <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>
+ <div>
+ <db:refname>msgset</db:refname>
+ <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/>
+ <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/>
+ <define name="db.simplemsgentry.role.attribute">
+ <attribute name="role"/>
+ </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"/>
+ <attribute name="audience"/>
+ <attribute name="origin"/>
+ <attribute name="level"/>
+ </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/>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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/>
+ <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>
+ <div>
+ <db:refname>qandaset</db:refname>
+ <db:refpurpose/>
+ <define name="db.qandaset.role.attribute">
+ <attribute name="role"/>
+ </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>
+ <attribute name="defaultlabel">
+ <choice>
+ <value>none</value>
+ <value>number</value>
+ <value>qanda</value>
+ </choice>
+ </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/>
+ <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/>
+ <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.forbidden"/>
+ </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/>
+ <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/>
+ <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/>
+ <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>
+ <define name="db._any.mml">
+ <element>
+ <nsName ns="http://www.w3.org/1998/Math/MathML"/>
+ <zeroOrMore>
+ <ref name="db._any.attribute"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <choice>
+ <text/>
+ <ref name="db._any"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+
+ <define name="db._any.svg">
+ <element>
+ <nsName ns="http://www.w3.org/2000/svg"/>
+ <zeroOrMore>
+ <ref name="db._any.attribute"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <choice>
+ <text/>
+ <ref name="db._any"/>
+ </choice>
+ </zeroOrMore>
+ </element>
+ </define>
+
+ <div xmlns:html="http://www.w3.org/1999/xhtml">
+ <db:refname>html:form</db:refname>
+ <db:refpurpose/>
+ <define name="db.html.form.attlist">
+ <interleave>
+ <ref name="db.html.attrs"/>
+ <attribute name="action"/>
+ <optional>
+ <attribute name="method">
+ <choice>
+ <value>GET</value>
+ <value>POST</value>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="onsubmit"/>
+ </optional>
+ <optional>
+ <attribute name="onreset"/>
+ </optional>
+ </interleave>
+ </define>
+
+ <define name="db.html.form">
+ <element name="html:form">
+ <ref name="db.html.form.attlist"/>
+ <oneOrMore>
+ <choice>
+ <ref name="db.all.blocks"/>
+ <ref name="db.html.input"/>
+ <ref name="db.html.button"/>
+ <ref name="db.html.label"/>
+ <ref name="db.html.select"/>
+ <ref name="db.html.textarea"/>
+ </choice>
+ </oneOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div xmlns:html="http://www.w3.org/1999/xhtml">
+ <db:refname>html:input</db:refname>
+ <db:refpurpose/>
+ <define name="db.html.input.attlist">
+ <interleave>
+ <ref name="db.html.attrs"/>
+ <optional>
+ <attribute name="type">
+ <choice>
+ <value>text</value>
+ <value>password</value>
+ <value>checkbox</value>
+ <value>radio</value>
+ <value>submit</value>
+ <value>reset</value>
+ <value>file</value>
+ <value>hidden</value>
+ <value>image</value>
+ <value>button</value>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="name"/>
+ </optional>
+ <optional>
+ <attribute name="value"/>
+ </optional>
+ <optional>
+ <attribute name="checked">
+ <value>checked</value>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="disabled">
+ <value>disabled</value>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="readonly">
+ <value>readonly</value>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="size"/>
+ </optional>
+ <optional>
+ <attribute name="maxlength"/>
+ </optional>
+ <optional>
+ <attribute name="src"/>
+ </optional>
+ <optional>
+ <attribute name="alt"/>
+ </optional>
+ <optional>
+ <attribute name="usemap"/>
+ </optional>
+ <optional>
+ <attribute name="tabindex"/>
+ </optional>
+ <optional>
+ <attribute name="accesskey"/>
+ </optional>
+ <optional>
+ <attribute name="onfocus"/>
+ </optional>
+ <optional>
+ <attribute name="onblur"/>
+ </optional>
+ <optional>
+ <attribute name="onselect"/>
+ </optional>
+ <optional>
+ <attribute name="onchange"/>
+ </optional>
+ </interleave>
+ </define>
+
+ <define name="db.html.input">
+ <element name="html:input">
+ <ref name="db.html.input.attlist"/>
+ <empty/>
+ </element>
+ </define>
+
+ </div>
+ <div xmlns:html="http://www.w3.org/1999/xhtml">
+ <db:refname>html:button</db:refname>
+ <db:refpurpose/>
+ <define name="db.html.button.attlist">
+ <interleave>
+ <ref name="db.html.attrs"/>
+ <optional>
+ <attribute name="name"/>
+ </optional>
+ <optional>
+ <attribute name="value"/>
+ </optional>
+ <optional>
+ <attribute name="type">
+ <choice>
+ <value>button</value>
+ <value>submit</value>
+ <value>reset</value>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="disabled">
+ <value>disabled</value>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="tabindex"/>
+ </optional>
+ <optional>
+ <attribute name="accesskey"/>
+ </optional>
+ <optional>
+ <attribute name="onfocus"/>
+ </optional>
+ <optional>
+ <attribute name="onblur"/>
+ </optional>
+ </interleave>
+ </define>
+
+ <define name="db.html.button">
+ <element name="html:button">
+ <ref name="db.html.button.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div xmlns:html="http://www.w3.org/1999/xhtml">
+ <db:refname>html:label</db:refname>
+ <db:refpurpose/>
+ <define name="db.html.label.attlist">
+ <interleave>
+ <ref name="db.html.attrs"/>
+ <optional>
+ <attribute name="accesskey"/>
+ </optional>
+ <optional>
+ <attribute name="onfocus"/>
+ </optional>
+ <optional>
+ <attribute name="onblur"/>
+ </optional>
+ </interleave>
+ </define>
+
+ <define name="db.html.label">
+ <element name="html:label">
+ <ref name="db.html.label.attlist"/>
+ <zeroOrMore>
+ <ref name="db.all.inlines"/>
+ </zeroOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div xmlns:html="http://www.w3.org/1999/xhtml">
+ <db:refname>html:select</db:refname>
+ <db:refpurpose/>
+ <define name="db.html.select.attlist">
+ <interleave>
+ <ref name="db.html.attrs"/>
+ <optional>
+ <attribute name="name"/>
+ </optional>
+ <optional>
+ <attribute name="size"/>
+ </optional>
+ <optional>
+ <attribute name="multiple">
+ <value>multiple</value>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="disabled">
+ <value>disabled</value>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="tabindex"/>
+ </optional>
+ <optional>
+ <attribute name="onfocus"/>
+ </optional>
+ <optional>
+ <attribute name="onblur"/>
+ </optional>
+ <optional>
+ <attribute name="onchange"/>
+ </optional>
+ </interleave>
+ </define>
+
+ <define name="db.html.select">
+ <element name="html:select">
+ <ref name="db.html.select.attlist"/>
+ <oneOrMore>
+ <ref name="db.html.option"/>
+ </oneOrMore>
+ </element>
+ </define>
+
+ </div>
+ <div xmlns:html="http://www.w3.org/1999/xhtml">
+ <db:refname>html:option</db:refname>
+ <db:refpurpose/>
+ <define name="db.html.option.attlist">
+ <interleave>
+ <ref name="db.html.attrs"/>
+ <optional>
+ <attribute name="selected">
+ <value>selected</value>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="disabled">
+ <value>disabled</value>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="value"/>
+ </optional>
+ </interleave>
+ </define>
+
+ <define name="db.html.option">
+ <element name="html:option">
+ <ref name="db.html.option.attlist"/>
+ <text/>
+ </element>
+ </define>
+
+ </div>
+ <div xmlns:html="http://www.w3.org/1999/xhtml">
+ <db:refname>html:textarea</db:refname>
+ <db:refpurpose/>
+ <define name="db.html.textarea.attlist">
+ <interleave>
+ <ref name="db.html.attrs"/>
+ <optional>
+ <attribute name="name"/>
+ </optional>
+ <attribute name="rows"/>
+ <attribute name="cols"/>
+ <optional>
+ <attribute name="disabled">
+ <value>disabled</value>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="readonly">
+ <value>readonly</value>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="tabindex"/>
+ </optional>
+ <optional>
+ <attribute name="accesskey"/>
+ </optional>
+ <optional>
+ <attribute name="onfocus"/>
+ </optional>
+ <optional>
+ <attribute name="onblur"/>
+ </optional>
+ <optional>
+ <attribute name="onselect"/>
+ </optional>
+ <optional>
+ <attribute name="onchange"/>
+ </optional>
+ </interleave>
+ </define>
+
+ <define name="db.html.textarea">
+ <element name="html:textarea">
+ <ref name="db.html.textarea.attlist"/>
+ <text/>
+ </element>
+ </define>
+
+ </div>
+</grammar> \ No newline at end of file
diff --git a/index-pdf.xml b/index-pdf.xml
index 836687502..ef5186dc2 100644
--- a/index-pdf.xml
+++ b/index-pdf.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE book [
<!ENTITY % general-entities SYSTEM "general.ent">
%general-entities;
]>
diff --git a/index.xml b/index.xml
index c97453be3..07445e4d2 100644
--- a/index.xml
+++ b/index.xml
@@ -1,39 +1,40 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE book [
<!ENTITY % general-entities SYSTEM "general.ent">
%general-entities;
]>
-<book>
+<book xmlns="http://docbook.org/docbook-ng"
+ xmlns:xi="http://www.w3.org/2003/XInclude">
-<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="prologue/bookinfo.xml"/>
-<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="prologue/dedication.xml"/>
-<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="prologue/preface.xml"/>
+<xi:include href="prologue/bookinfo.xml"/>
+<xi:include href="prologue/dedication.xml"/>
+<xi:include href="prologue/preface.xml"/>
-<part id="part1">
+<!--<part id="part1">
<title>Introduction</title>
<?dbhtml filename="part1.html"?>
-<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="chapter01/chapter01.xml"/>
-<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="chapter02/chapter02.xml"/>
+<xi:include href="chapter01/chapter01.xml"/>
+<xi:include href="chapter02/chapter02.xml"/>
</part>
<part id="part2">
<title>Preparing for the build</title>
<?dbhtml filename="part2.html"?>
-<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="chapter03/chapter03.xml"/>
-<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="chapter04/chapter04.xml"/>
-<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="chapter05/chapter05.xml"/>
+<xi:include href="chapter03/chapter03.xml"/>
+<xi:include href="chapter04/chapter04.xml"/>
+<xi:include href="chapter05/chapter05.xml"/>
</part>
<part id="part3">
<title>Building the LFS system</title>
<?dbhtml filename="part3.html"?>
-<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="chapter06/chapter06.xml"/>
-<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="chapter07/chapter07.xml"/>
-<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="chapter08/chapter08.xml"/>
-<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="chapter09/chapter09.xml"/>
+<xi:include href="chapter06/chapter06.xml"/>
+<xi:include href="chapter07/chapter07.xml"/>
+<xi:include href="chapter08/chapter08.xml"/>
+<xi:include href="chapter09/chapter09.xml"/>
</part>
-<index/>
+<index/>-->
</book>
diff --git a/prologue/acknowledgments.xml b/prologue/acknowledgments.xml
index 016b40048..2c9cdcc8e 100644
--- a/prologue/acknowledgments.xml
+++ b/prologue/acknowledgments.xml
@@ -1,102 +1,105 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE section [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
-<sect1 id="ch-scatter-acknowledgments">
-<title>Acknowledgments</title>
+<section xmlns="http://docbook.org/docbook-ng"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xml:id="ch-scatter-acknowledgments">
+<info><title>Acknowledgments</title></info>
+
<?dbhtml filename="acknowledgements.html"?>
<para>We would like to thank the following people and organizations for their
contributions to the Linux From Scratch Project.</para>
-<sect2>
-<title>Current Project Team Members</title>
+<section><info><title>Current Project Team Members</title></info>
+
<itemizedlist>
-<listitem><para><ulink url="mailto:gerard@linuxfromscratch.org">Gerard
-Beekmans</ulink> &lt;gerard@linuxfromscratch.org&gt; -- Linux-From-Scratch
+<listitem><para><link xlink:href="mailto:gerard@linuxfromscratch.org">Gerard
+Beekmans</link> &lt;gerard@linuxfromscratch.org&gt; -- Linux-From-Scratch
initiator, LFS Project organizer.</para></listitem>
-<listitem><para><ulink url="mailto:matthew@linuxfromscratch.org">Matthew
-Burgess</ulink> &lt;matthew@linuxfromscratch.org&gt; -- LFS Project Co-Leader,
+<listitem><para><link xlink:href="mailto:matthew@linuxfromscratch.org">Matthew
+Burgess</link> &lt;matthew@linuxfromscratch.org&gt; -- LFS Project Co-Leader,
LFS General Package maintainer, LFS Book editor.</para></listitem>
-<listitem><para><ulink url="mailto:meerkats@bellsouth.net">Craig
-Colton</ulink> &lt;meerkats@bellsouth.net&gt; -- LFS, ALFS, BLFS and Hints
+<listitem><para><link xlink:href="mailto:meerkats@bellsouth.net">Craig
+Colton</link> &lt;meerkats@bellsouth.net&gt; -- LFS, ALFS, BLFS and Hints
Project logo creator.</para></listitem>
-<listitem><para><ulink url="mailto:nathan@linuxfromscratch.org">Nathan
-Coulson</ulink> &lt;nathan@linuxfromscratch.org&gt; -- LFS-Bootscripts
+<listitem><para><link xlink:href="mailto:nathan@linuxfromscratch.org">Nathan
+Coulson</link> &lt;nathan@linuxfromscratch.org&gt; -- LFS-Bootscripts
maintainer.</para></listitem>
-<listitem><para><ulink url="mailto:jeroen@linuxfromscratch.org">Jeroen
-Coumans</ulink> &lt;jeroen@linuxfromscratch.org&gt; -- Website developer, FAQ
+<listitem><para><link xlink:href="mailto:jeroen@linuxfromscratch.org">Jeroen
+Coumans</link> &lt;jeroen@linuxfromscratch.org&gt; -- Website developer, FAQ
maintainer.</para></listitem>
-<listitem><para><ulink url="mailto:bdubbs@linuxfromscratch.org">Bruce
-Dubbs</ulink> &lt;bdubbs@linuxfromscratch.org&gt; -- LFS Quality Assurance Team
+<listitem><para><link xlink:href="mailto:bdubbs@linuxfromscratch.org">Bruce
+Dubbs</link> &lt;bdubbs@linuxfromscratch.org&gt; -- LFS Quality Assurance Team
leader, BLFS Book editor.</para></listitem>
-<listitem><para><ulink url="mailto:manuel@linuxfromscratch.org">Manuel
-Canales Esparcia</ulink> &lt;manuel@linuxfromscratch.org&gt; -- LFS Book
+<listitem><para><link xlink:href="mailto:manuel@linuxfromscratch.org">Manuel
+Canales Esparcia</link> &lt;manuel@linuxfromscratch.org&gt; -- LFS Book
Editor (XML).</para></listitem>
-<listitem><para><ulink url="mailto:alex@linuxfromscratch.org">Alex
-Groenewoud</ulink> &lt;alex@linuxfromscratch.org&gt; -- LFS Book
+<listitem><para><link xlink:href="mailto:alex@linuxfromscratch.org">Alex
+Groenewoud</link> &lt;alex@linuxfromscratch.org&gt; -- LFS Book
editor.</para></listitem>
-<listitem><para><ulink url="mailto:markh@linuxfromscratch.org">Mark
-Hymers</ulink> &lt;markh@linuxfromscratch.org&gt; -- CVS maintainer, BLFS Book
+<listitem><para><link xlink:href="mailto:markh@linuxfromscratch.org">Mark
+Hymers</link> &lt;markh@linuxfromscratch.org&gt; -- CVS maintainer, BLFS Book
creator, former LFS Book editor.</para></listitem>
-<listitem><para><ulink url="mailto:iwanek@linuxfromscratch.org">James
-Iwanek</ulink> &lt;iwanek@linuxfromscratch.org&gt; -- System Administration
+<listitem><para><link xlink:href="mailto:iwanek@linuxfromscratch.org">James
+Iwanek</link> &lt;iwanek@linuxfromscratch.org&gt; -- System Administration
Team member.</para></listitem>
-<listitem><para><ulink url="mailto:nicholas@linuxfromscratch.org">Nicholas
-Leippe</ulink> &lt;nicholas@linuxfromscratch.org&gt; -- Wiki
+<listitem><para><link xlink:href="mailto:nicholas@linuxfromscratch.org">Nicholas
+Leippe</link> &lt;nicholas@linuxfromscratch.org&gt; -- Wiki
maintainer.</para></listitem>
-<listitem><para><ulink url="mailto:lizardo@linuxfromscratch.org">Anderson
-Lizardo</ulink> &lt;lizardo@linuxfromscratch.org&gt; -- Website backend scripts
+<listitem><para><link xlink:href="mailto:lizardo@linuxfromscratch.org">Anderson
+Lizardo</link> &lt;lizardo@linuxfromscratch.org&gt; -- Website backend scripts
creator and maintainer.</para></listitem>
-<listitem><para><ulink url="mailto:bill@linuxfromscratch.org">Bill
-Maltby</ulink> &lt;bill@linuxfromscratch.org&gt; -- LFS Project
+<listitem><para><link xlink:href="mailto:bill@linuxfromscratch.org">Bill
+Maltby</link> &lt;bill@linuxfromscratch.org&gt; -- LFS Project
organizer.</para></listitem>
-<listitem><para><ulink url="mailto:alexander@linuxfromscratch.org">Alexander
-Patrakov</ulink> &lt;alexander@linuxfromscratch.org&gt; -- LFS Book
+<listitem><para><link xlink:href="mailto:alexander@linuxfromscratch.org">Alexander
+Patrakov</link> &lt;alexander@linuxfromscratch.org&gt; -- LFS Book
Editor (internationalization/localization).</para></listitem>
-<listitem><para><ulink url="mailto:scot@linuxfromscratch.org">Scot Mc
-Pherson</ulink> &lt;scot@linuxfromscratch.org&gt; -- LFS NNTP gateway
+<listitem><para><link xlink:href="mailto:scot@linuxfromscratch.org">Scot Mc
+Pherson</link> &lt;scot@linuxfromscratch.org&gt; -- LFS NNTP gateway
maintainer.</para></listitem>
-<listitem><para><ulink url="mailto:ryan@linuxfromscratch.org">Ryan
-Oliver</ulink> &lt;ryan@linuxfromscratch.org&gt; -- Testing Team leader,
+<listitem><para><link xlink:href="mailto:ryan@linuxfromscratch.org">Ryan
+Oliver</link> &lt;ryan@linuxfromscratch.org&gt; -- Testing Team leader,
Toolchain maintainer, co-creator of PLFS.</para></listitem>
-<listitem><para><ulink url="mailto:jwrober@linuxfromscratch.org">James
-Robertson</ulink> &lt;jwrober@linuxfromscratch.org&gt; -- Bugzilla maintainer,
+<listitem><para><link xlink:href="mailto:jwrober@linuxfromscratch.org">James
+Robertson</link> &lt;jwrober@linuxfromscratch.org&gt; -- Bugzilla maintainer,
Wiki developer, LFS Book editor.</para></listitem>
-<listitem><para><ulink url="mailto:greg@linuxfromscratch.org">Greg
-Schafer</ulink> &lt;greg@linuxfromscratch.org&gt; -- Toolchain maintainer,
+<listitem><para><link xlink:href="mailto:greg@linuxfromscratch.org">Greg
+Schafer</link> &lt;greg@linuxfromscratch.org&gt; -- Toolchain maintainer,
Former LFS Book editor, co-creator of PLFS.</para></listitem>
-<listitem><para><ulink url="mailto:tushar@linuxfromscratch.org">Tushar
-Teredesai</ulink> &lt;tushar@linuxfromscratch.org&gt; -- BLFS Book editor,
+<listitem><para><link xlink:href="mailto:tushar@linuxfromscratch.org">Tushar
+Teredesai</link> &lt;tushar@linuxfromscratch.org&gt; -- BLFS Book editor,
Hints and Patches Projects maintainer.</para></listitem>
-<listitem><para><ulink url="mailto:jeremy@linuxfromscratch.org">Jeremy
-Utley</ulink> &lt;jeremy@linuxfromscratch.org&gt; -- LFS Book editor, Bugzilla
+<listitem><para><link xlink:href="mailto:jeremy@linuxfromscratch.org">Jeremy
+Utley</link> &lt;jeremy@linuxfromscratch.org&gt; -- LFS Book editor, Bugzilla
maintainer, LFS-Bootscripts Maintainer, LFS Server co-admin.</para></listitem>
-<listitem><para><ulink url="mailto:winkie@linuxfromscratch.org">Zack
-Winkles</ulink> &lt;winkie@linuxfromscratch.org&gt; -- LFS Book editor
+<listitem><para><link xlink:href="mailto:winkie@linuxfromscratch.org">Zack
+Winkles</link> &lt;winkie@linuxfromscratch.org&gt; -- LFS Book editor
(Emerging Technologies), LFS-Bootscripts co-maintainer.</para></listitem>
<listitem><para>Countless other people on the various LFS and BLFS
@@ -106,227 +109,227 @@ experiences with installing various packages.</para></listitem>
</itemizedlist>
-</sect2>
+</section>
+
+<section><info><title>Translators</title></info>
-<sect2>
-<title>Translators</title>
<itemizedlist>
-<listitem><para><ulink url="mailto:macana@lfs-es.org">Manuel Canales
-Esparcia</ulink> &lt;macana@lfs-es.org&gt; -- Spanish LFS translation
+<listitem><para><link xlink:href="mailto:macana@lfs-es.org">Manuel Canales
+Esparcia</link> &lt;macana@lfs-es.org&gt; -- Spanish LFS translation
project.</para></listitem>
-<listitem><para><ulink url="mailto:johan@linuxfromscratch.org">Johan
-Lenglet</ulink> &lt;johan@linuxfromscratch.org&gt; -- French LFS translation
+<listitem><para><link xlink:href="mailto:johan@linuxfromscratch.org">Johan
+Lenglet</link> &lt;johan@linuxfromscratch.org&gt; -- French LFS translation
project.</para></listitem>
-<listitem><para><ulink url="mailto:lizardo@linuxfromscratch.org">Anderson
-Lizardo</ulink> &lt;lizardo@linuxfromscratch.org&gt; -- Portuguese LFS
+<listitem><para><link xlink:href="mailto:lizardo@linuxfromscratch.org">Anderson
+Lizardo</link> &lt;lizardo@linuxfromscratch.org&gt; -- Portuguese LFS
translation project.</para></listitem>
-<listitem><para><ulink url="mailto:tr@erdfunkstelle.de">Thomas Reitelbach
-</ulink> &lt;tr@erdfunkstelle.de&gt; -- German LFS translation project.</para>
+<listitem><para><link xlink:href="mailto:tr@erdfunkstelle.de">Thomas Reitelbach
+</link> &lt;tr@erdfunkstelle.de&gt; -- German LFS translation project.</para>
</listitem>
</itemizedlist>
-</sect2>
+</section>
-<sect2>
-<title>Mirror Maintainers</title>
+<section><info><title>Mirror Maintainers</title></info>
+
+
+<section><info><title>North American Mirrors</title></info>
-<sect3>
-<title>North American Mirrors</title>
<itemizedlist>
-<listitem><para><ulink url="mailto:scott@osuosl.org">Scott Kveton</ulink>
+<listitem><para><link xlink:href="mailto:scott@osuosl.org">Scott Kveton</link>
&lt;scott@osuosl.org&gt; -- lfs.oregonstate.edu mirror</para></listitem>
-<listitem><para><ulink url="mailto:miha@xuy.biz">Mikhail Pastukhov</ulink>
+<listitem><para><link xlink:href="mailto:miha@xuy.biz">Mikhail Pastukhov</link>
&lt;miha@xuy.biz&gt; -- lfs.130th.net mirror.</para></listitem>
-<listitem><para><ulink url="mailto:unknown@unknown.org">Unknown User</ulink>
+<listitem><para><link xlink:href="mailto:unknown@unknown.org">Unknown User</link>
&lt;unknown@unknown.org&gt; -- lfs.crash404.com mirror.</para></listitem>
-<listitem><para><ulink url="mailto:lost@l-w.net">William Astle</ulink>
+<listitem><para><link xlink:href="mailto:lost@l-w.net">William Astle</link>
&lt;lost@l-w.net&gt; -- ca.linuxfromscratch.org mirror.</para></listitem>
-<listitem><para><ulink url="mailto:jpolen@rackspace.com">Jeremy Polen</ulink>
+<listitem><para><link xlink:href="mailto:jpolen@rackspace.com">Jeremy Polen</link>
&lt;jpolen@rackspace.com&gt; -- us2.linuxfromscratch.org
mirror.</para></listitem>
-<listitem><para><ulink url="mailto:tim@idge.net">Tim Jackson</ulink>
+<listitem><para><link xlink:href="mailto:tim@idge.net">Tim Jackson</link>
&lt;tim@idge.net&gt; -- linuxfromscratch.idge.net mirror.</para></listitem>
-<listitem><para><ulink url="mailto:jeremy@linux-phreak.net">Jeremy Utley
-</ulink> &lt;jeremy@linux-phreak.net&gt; -- lfs.linux-phreak.net mirror.
+<listitem><para><link xlink:href="mailto:jeremy@linux-phreak.net">Jeremy Utley
+</link> &lt;jeremy@linux-phreak.net&gt; -- lfs.linux-phreak.net mirror.
</para></listitem>
</itemizedlist>
-</sect3>
+</section>
+
+<section><info><title>South American Mirrors</title></info>
-<sect3>
-<title>South American Mirrors</title>
<itemizedlist>
-<listitem><para><ulink url="mailto:manuel@linuxfromscratch.org">Manuel Canales
-Esparcia</ulink> &lt;manuel@linuxfromscratch.org&gt; -- lfsmirror.lfs-es.org
+<listitem><para><link xlink:href="mailto:manuel@linuxfromscratch.org">Manuel Canales
+Esparcia</link> &lt;manuel@linuxfromscratch.org&gt; -- lfsmirror.lfs-es.org
mirror.</para></listitem>
-<listitem><para><ulink url="mailto:sysop@mesi.com.ar">Andres Meggiotto</ulink>
+<listitem><para><link xlink:href="mailto:sysop@mesi.com.ar">Andres Meggiotto</link>
&lt;sysop@mesi.com.ar&gt; -- lfs.mesi.com.ar mirror.</para></listitem>
-<listitem><para><ulink url="mailto:ebf@aedsolucoes.com.br">Eduardo B.
-Fonseca</ulink> &lt;ebf@aedsolucoes.com.br&gt; -- br.linuxfromscratch.org
+<listitem><para><link xlink:href="mailto:ebf@aedsolucoes.com.br">Eduardo B.
+Fonseca</link> &lt;ebf@aedsolucoes.com.br&gt; -- br.linuxfromscratch.org
mirror.</para></listitem>
</itemizedlist>
-</sect3>
+</section>
+
+<section><info><title>European Mirrors</title></info>
-<sect3>
-<title>European Mirrors</title>
<itemizedlist>
-<listitem><para><ulink url="mailto:barna@siker.hu">Barna Koczka</ulink>
+<listitem><para><link xlink:href="mailto:barna@siker.hu">Barna Koczka</link>
&lt;barna@siker.hu&gt; -- hu.linuxfromscratch.org mirror.</para></listitem>
-<listitem><para><ulink url="http://www.mirror.ac.uk">UK Mirror Service</ulink>
+<listitem><para><link xlink:href="http://www.mirror.ac.uk">UK Mirror Service</link>
-- linuxfromscratch.mirror.ac.uk mirror.</para></listitem>
-<listitem><para><ulink url="mailto:Martin.Voss@ada.de">Martin Voss</ulink>
+<listitem><para><link xlink:href="mailto:Martin.Voss@ada.de">Martin Voss</link>
&lt;Martin.Voss@ada.de&gt; -- lfs.linux-matrix.net mirror.</para></listitem>
-<listitem><para><ulink url="mailto:unknown@unknown.org">Unknown User</ulink>
+<listitem><para><link xlink:href="mailto:unknown@unknown.org">Unknown User</link>
&lt;unknown@unknown.org&gt; -- mirror.vtx.ch mirror</para></listitem>
-<listitem><para><ulink url="mailto:guido@primerelay.net">Guido Passet</ulink>
+<listitem><para><link xlink:href="mailto:guido@primerelay.net">Guido Passet</link>
&lt;guido@primerelay.net&gt; -- nl.linuxfromscratch.org
mirror.</para></listitem>
-<listitem><para><ulink url="mailto:baafie@planet.nl">Bastiaan Jacques</ulink>
+<listitem><para><link xlink:href="mailto:baafie@planet.nl">Bastiaan Jacques</link>
&lt;baafie@planet.nl&gt; -- lfs.pagefault.net mirror</para></listitem>
-<listitem><para><ulink url="mailto:lfs-mirror@linuxfromscratch.rave.org">Roel
-Neefs</ulink> &lt;lfs-mirror@linuxfromscratch.rave.org&gt; -- linuxfromscratch.rave.org mirror.</para></listitem>
+<listitem><para><link xlink:href="mailto:lfs-mirror@linuxfromscratch.rave.org">Roel
+Neefs</link> &lt;lfs-mirror@linuxfromscratch.rave.org&gt; -- linuxfromscratch.rave.org mirror.</para></listitem>
-<listitem><para><ulink url="mailto:justin@jrknierim.de">Justin Knierim</ulink>
+<listitem><para><link xlink:href="mailto:justin@jrknierim.de">Justin Knierim</link>
&lt;justin@jrknierim.de&gt; -- www.lfs-matrix.de mirror</para></listitem>
-<listitem><para><ulink url="mailto:stevie@stevie20.de">Stephan Brendel</ulink>
+<listitem><para><link xlink:href="mailto:stevie@stevie20.de">Stephan Brendel</link>
&lt;stevie@stevie20.de&gt; -- lfs.netservice-neuss.de
mirror.</para></listitem>
-<listitem><para><ulink url="mailto:unknown@unknown.org">Unknown User</ulink>
+<listitem><para><link xlink:href="mailto:unknown@unknown.org">Unknown User</link>
&lt;unknown@unknown.org&gt; -- linuxfromscratch.je-zi.de
mirror</para></listitem>
-<listitem><para><ulink url="mailto:unknown@unknown.org">Unknown User</ulink>
+<listitem><para><link xlink:href="mailto:unknown@unknown.org">Unknown User</link>
&lt;unknown@unknown.org&gt; -- linuxfromscratch.tuxcenter.net
mirror</para></listitem>
-<listitem><para><ulink url="mailto:hrx@hrxnet.de">Hagen Herrschaft</ulink>
+<listitem><para><link xlink:href="mailto:hrx@hrxnet.de">Hagen Herrschaft</link>
&lt;hrx@hrxnet.de&gt; -- de.linuxfromscratch.org mirror.</para></listitem>
-<listitem><para><ulink url="mailto:Antonin.Sprinzl@tuwien.ac.at">Antonin
-Sprinzl</ulink> &lt;Antonin.Sprinzl@tuwien.ac.at&gt; -- at.linuxfromscratch.org
+<listitem><para><link xlink:href="mailto:Antonin.Sprinzl@tuwien.ac.at">Antonin
+Sprinzl</link> &lt;Antonin.Sprinzl@tuwien.ac.at&gt; -- at.linuxfromscratch.org
mirror.</para></listitem>
-<listitem><para><ulink url="mailto:fredan-lfs@fredan.org">Fredrik
-Danerklint</ulink> &lt;fredan-lfs@fredan.org&gt; -- se.linuxfromscratch.org
+<listitem><para><link xlink:href="mailto:fredan-lfs@fredan.org">Fredrik
+Danerklint</link> &lt;fredan-lfs@fredan.org&gt; -- se.linuxfromscratch.org
mirror.</para></listitem>
-<listitem><para><ulink url="mailto:archive@doc.cs.univ-paris8.fr">Parisian
-sysadmins</ulink> &lt;archive@doc.cs.univ-paris8.fr&gt; --
+<listitem><para><link xlink:href="mailto:archive@doc.cs.univ-paris8.fr">Parisian
+sysadmins</link> &lt;archive@doc.cs.univ-paris8.fr&gt; --
www2.fr.linuxfromscratch.org mirror.</para></listitem>
-<listitem><para><ulink url="mailto:velin@zadnik.org">Alexander Velin</ulink>
+<listitem><para><link xlink:href="mailto:velin@zadnik.org">Alexander Velin</link>
&lt;velin@zadnik.org&gt; -- bg.linuxfromscratch.org mirror.</para></listitem>
-<listitem><para><ulink url="mailto:dirk@securewebservices.co.uk">
-Dirk Webster</ulink> &lt;dirk@securewebservices.co.uk&gt; --
+<listitem><para><link xlink:href="mailto:dirk@securewebservices.co.uk">
+Dirk Webster</link> &lt;dirk@securewebservices.co.uk&gt; --
lfs.securewebservices.co.uk mirror</para></listitem>
-<listitem><para><ulink url="mailto:thomas@sofagang.dk">Thomas Skyt</ulink>
+<listitem><para><link xlink:href="mailto:thomas@sofagang.dk">Thomas Skyt</link>
&lt;thomas@sofagang.dk&gt; -- dk.linuxfromscratch.org mirror.</para></listitem>
-<listitem><para><ulink url="mailto:sime@dot-sime.com">Simon Nicoll</ulink>
+<listitem><para><link xlink:href="mailto:sime@dot-sime.com">Simon Nicoll</link>
&lt;sime@dot-sime.com&gt; -- uk.linuxfromscratch.org mirror.</para></listitem>
</itemizedlist>
-</sect3>
+</section>
+
+<section><info><title>Asian Mirrors</title></info>
-<sect3>
-<title>Asian Mirrors</title>
<itemizedlist>
-<listitem><para><ulink url="mailto:pyng@spam.averse.net">Pui Yong</ulink>
+<listitem><para><link xlink:href="mailto:pyng@spam.averse.net">Pui Yong</link>
&lt;pyng@spam.averse.net&gt; -- sg.linuxfromscratch.org
mirror.</para></listitem>
-<listitem><para><ulink url="mailto:stuart@althalus.me.uk">Stuart Harris</ulink>
+<listitem><para><link xlink:href="mailto:stuart@althalus.me.uk">Stuart Harris</link>
&lt;stuart@althalus.me.uk&gt; -- lfs.mirror.intermedia.com.sg
mirror</para></listitem>
-<listitem><para><ulink url="mailto:unknown@unknown.org">Unknown User</ulink>
+<listitem><para><link xlink:href="mailto:unknown@unknown.org">Unknown User</link>
&lt;unknown@unknown.org&gt; -- lfs.mirror.if.itb.ac.id mirror</para></listitem>
</itemizedlist>
-</sect3>
+</section>
+
+<section><info><title>Australian Mirrors</title></info>
-<sect3>
-<title>Australian Mirrors</title>
<itemizedlist>
-<listitem><para><ulink url="mailto:jason@dstc.edu.au">Jason Andrade</ulink>
+<listitem><para><link xlink:href="mailto:jason@dstc.edu.au">Jason Andrade</link>
&lt;jason@dstc.edu.au&gt; -- au.linuxfromscratch.org mirror.</para></listitem>
</itemizedlist>
-</sect3>
+</section>
-</sect2>
+</section>
+
+<section><info><title>Donators</title></info>
-<sect2>
-<title>Donators</title>
<itemizedlist>
-<listitem><para><ulink url="mailto:dean@vipersoft.co.uk">Dean Benson</ulink>
+<listitem><para><link xlink:href="mailto:dean@vipersoft.co.uk">Dean Benson</link>
&lt;dean@vipersoft.co.uk&gt; for several monetary
contributions.</para></listitem>
-<listitem><para><ulink url="http://www.dreamwvr.com">DREAMWVR.COM</ulink> for
+<listitem><para><link xlink:href="http://www.dreamwvr.com">DREAMWVR.COM</link> for
their past sponsorship of donating various resources to the LFS and related
sub projects.</para></listitem>
-<listitem><para><ulink url="mailto:hrx@hrxnet.de">Hagen Herrschaft</ulink>
+<listitem><para><link xlink:href="mailto:hrx@hrxnet.de">Hagen Herrschaft</link>
&lt;hrx@hrxnet.de&gt; for donating a 2.2 GHz P4 system, now running under the
name of <emphasis>lorien</emphasis>.</para></listitem>
-<listitem><para><ulink url="http://www.oreilly.com">O'Reilly</ulink> for
+<listitem><para><link xlink:href="http://www.oreilly.com">O'Reilly</link> for
donating books on SQL and PHP.</para></listitem>
-<listitem><para><ulink url="http://www.vasoftware.com">VA Software</ulink>
-who, on behalf of <ulink url="http://www.linux.com">Linux.com</ulink>, donated
+<listitem><para><link xlink:href="http://www.vasoftware.com">VA Software</link>
+who, on behalf of <link xlink:href="http://www.linux.com">Linux.com</link>, donated
a VA Linux 420 (former StartX SP2) workstation.</para></listitem>
-<listitem><para><ulink url="mailto:strider@linux.com">Mark Stone</ulink> for
+<listitem><para><link xlink:href="mailto:strider@linux.com">Mark Stone</link> for
donating <emphasis>shadowfax</emphasis>, the first linuxfromscratch.org
server, a 750 MHz P3 with 512 MB RAM and two 9 GB SCSI drives. When the server
moved it was renamed to <emphasis>belgarath</emphasis>.</para></listitem>
-<listitem><para><ulink url="mailto:highos@linuxfromscratch.org">Jesse
-Tie-Ten-Quee</ulink> &lt;highos@linuxfromscratch.org&gt; for donating a Yamaha
+<listitem><para><link xlink:href="mailto:highos@linuxfromscratch.org">Jesse
+Tie-Ten-Quee</link> &lt;highos@linuxfromscratch.org&gt; for donating a Yamaha
CDRW 8824E CD-writer.</para></listitem>
<listitem><para>Countless other people on the various LFS mailing lists who are
@@ -335,55 +338,55 @@ and throwing in their criticism.</para></listitem>
</itemizedlist>
-</sect2>
+</section>
+
+<section><info><title>Former Team Members and Contributors</title></info>
-<sect2>
-<title>Former Team Members and Contributors</title>
<itemizedlist>
-<listitem><para><ulink url="mailto:timothy@linuxfromscratch.org">Timothy
-Bauscher</ulink> &lt;timothy@linuxfromscratch.org&gt; -- LFS Book editor, Hints
+<listitem><para><link xlink:href="mailto:timothy@linuxfromscratch.org">Timothy
+Bauscher</link> &lt;timothy@linuxfromscratch.org&gt; -- LFS Book editor, Hints
Project maintainer.</para></listitem>
<listitem><para>Robert Briggs for originally donating the
<emphasis>linuxfromscratch.org</emphasis> and
<emphasis>linuxfromscratch.com</emphasis> domain names.</para></listitem>
-<listitem><para><ulink url="mailto:ian@ichilton.co.uk">Ian Chilton</ulink>
+<listitem><para><link xlink:href="mailto:ian@ichilton.co.uk">Ian Chilton</link>
&lt;ian@ichilton.co.uk&gt; for maintaining the Hints project.</para></listitem>
-<listitem><para><ulink url="mailto:gimli@linuxfromscratch.org">Marc
-Heerdink</ulink> &lt;gimli@linuxfromscratch.org&gt; -- LFS Book
+<listitem><para><link xlink:href="mailto:gimli@linuxfromscratch.org">Marc
+Heerdink</link> &lt;gimli@linuxfromscratch.org&gt; -- LFS Book
editor.</para></listitem>
-<listitem><para><ulink url="mailto:sklein@linuxfromscratch.org">Seth W.
-Klein</ulink> &lt;sklein@linuxfromscratch.org&gt; -- LFS FAQ
+<listitem><para><link xlink:href="mailto:sklein@linuxfromscratch.org">Seth W.
+Klein</link> &lt;sklein@linuxfromscratch.org&gt; -- LFS FAQ
creator.</para></listitem>
-<listitem><para><ulink url="mailto:garrett@linuxart.com">Garrett
-LeSage</ulink> &lt;garrett@linuxart.com&gt; -- Original LFS banner
+<listitem><para><link xlink:href="mailto:garrett@linuxart.com">Garrett
+LeSage</link> &lt;garrett@linuxart.com&gt; -- Original LFS banner
creator.</para></listitem>
-<listitem><para><ulink url="mailto:nomis80@videotron.ca">Simon
-Perreault</ulink> &lt;nomis80@videotron.ca&gt; -- Hints Project
+<listitem><para><link xlink:href="mailto:nomis80@videotron.ca">Simon
+Perreault</link> &lt;nomis80@videotron.ca&gt; -- Hints Project
maintainer.</para></listitem>
-<listitem><para><ulink url="mailto:Geert.Poels@skynet.be">Geert Poels</ulink>
+<listitem><para><link xlink:href="mailto:Geert.Poels@skynet.be">Geert Poels</link>
&lt;Geert.Poels@skynet.be&gt; -- Original BLFS banner creator; based on the
LFS banner by Garrett LeSage.</para></listitem>
-<listitem><para><ulink url="mailto:bkenoah@oswd.org">Frank Skettino</ulink>
+<listitem><para><link xlink:href="mailto:bkenoah@oswd.org">Frank Skettino</link>
&lt;bkenoah@oswd.org&gt; for the initial design of the old website -- have a
-look at <ulink url="http://www.oswd.org/"/>.</para></listitem>
+look at <uri xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.oswd.org/">http://www.oswd.org/</uri>.</para></listitem>
-<listitem><para><ulink url="mailto:highos@linuxfromscratch.org">Jesse
-Tie-Ten-Quee</ulink> &lt;highos@linuxfromscratch.org&gt; for temporarily
+<listitem><para><link xlink:href="mailto:highos@linuxfromscratch.org">Jesse
+Tie-Ten-Quee</link> &lt;highos@linuxfromscratch.org&gt; for temporarily
hosting the linuxfromscratch.org server, answering
countless questions on IRC and having a great deal of patience.</para></listitem>
</itemizedlist>
-</sect2>
+</section>
-</sect1>
+</section>
diff --git a/prologue/audience.xml b/prologue/audience.xml
index c769b9067..8520f8daa 100644
--- a/prologue/audience.xml
+++ b/prologue/audience.xml
@@ -1,14 +1,16 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE section [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
-<sect1 id="pre-audience">
-<title>Audience</title>
+<section xmlns="http://docbook.org/docbook-ng"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xml:id="pre-audience">
+<info><title>Audience</title></info>
<?dbhtml filename="audience.html"?>
-<sect2>
-<title>Who would want to read this book</title>
+<section>
+<info><title>Who would want to read this book</title></info>
<para>There are many reasons why somebody would want to read this book. The
principal reason being to install a Linux system straight from the source
@@ -65,11 +67,10 @@ problem (adequately).</para>
to be listed here. This section is only the tip of the iceberg. As you
continue in your LFS experience, you will find on your own the power that
information and knowledge truly bring.</para>
+</section>
-</sect2>
-
-<sect2>
-<title>Who would not want to read this book</title>
+<section>
+<info><title>Who would not want to read this book</title></info>
<para>There are probably some who, for whatever reason, would feel that they do not
want to read this book. If you do not wish to build your own Linux system from
@@ -87,10 +88,10 @@ you do not have any plans for your finished system, then the
<quote>From Power Up To Bash Prompt</quote> HOWTO is probably a better choice.</para>
<para>The <quote>From Power Up To Bash Prompt</quote> HOWTO is located at
-<ulink url="http://axiom.anu.edu.au/~okeefe/p2b/"/> or on The Linux
+<uri xlink:href="http://axiom.anu.edu.au/~okeefe/p2b/">http://axiom.anu.edu.au/~okeefe/p2b/</uri> or on The Linux
Documentation Project's website at
-<ulink url="http://www.tldp.org/HOWTO/From-PowerUp-To-Bash-Prompt-HOWTO.html"/>.</para>
+<uri xlink:href="http://www.tldp.org/HOWTO/From-PowerUp-To-Bash-Prompt-HOWTO.html">http://www.tldp.org/HOWTO/From-PowerUp-To-Bash-Prompt-HOWTO.html</uri>.</para>
-</sect2>
+</section>
-</sect1>
+</section>
diff --git a/prologue/bookinfo.xml b/prologue/bookinfo.xml
index 60e49a3d9..44d3acee9 100644
--- a/prologue/bookinfo.xml
+++ b/prologue/bookinfo.xml
@@ -1,19 +1,19 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE bookinfo PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE info [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
-<bookinfo>
+<info xmlns="http://docbook.org/docbook-ng">
<title>Linux From Scratch</title>
<subtitle>Version &version;</subtitle>
<authorgroup>
-<author><firstname>Gerard</firstname><surname>Beekmans</surname></author>
+<author><personname><firstname>Gerard</firstname><surname>Beekmans</surname></personname></author>
</authorgroup>
-<copyright id="copyright">
+<copyright xml:id="copyright">
<year>1999-2004</year>
<holder>Gerard Beekmans</holder>
</copyright>
@@ -62,4 +62,4 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</para>
</legalnotice>
-</bookinfo>
+</info>
diff --git a/prologue/dedication.xml b/prologue/dedication.xml
index 21494b098..f332a0a37 100644
--- a/prologue/dedication.xml
+++ b/prologue/dedication.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE dedication PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE dedication [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
-<dedication>
-<title>Dedication</title>
+<dedication xmlns="http://docbook.org/docbook-ng">
+<info><title>Dedication</title></info>
<para>This book is dedicated to my loving and supportive wife
<emphasis>Beverly Beekmans</emphasis>.</para>
</dedication>
diff --git a/prologue/foreword.xml b/prologue/foreword.xml
index 997f97f71..a3d490b3a 100644
--- a/prologue/foreword.xml
+++ b/prologue/foreword.xml
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE section [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
-<sect1 id="pf-foreword">
-<title>Foreword</title>
+<section xmlns="http://docbook.org/docbook-ng"
+ xml:id="pf-foreword">
+<info><title>Foreword</title></info>
<?dbhtml filename="foreword.html"?>
<para>Having used a number of different Linux distributions, I was never
@@ -29,4 +30,4 @@ system, or LFS for short.</para>
Gerard Beekmans
gerard@linuxfromscratch.org</literallayout>
-</sect1>
+</section>
diff --git a/prologue/organization.xml b/prologue/organization.xml
index c95a1907c..ac5ec160f 100644
--- a/prologue/organization.xml
+++ b/prologue/organization.xml
@@ -1,31 +1,31 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE section [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
-<sect1 id="pre-organization">
-<title>Structure</title>
+<section xmlns="http://docbook.org/docbook-ng" xml:id="pre-organization">
+<info><title>Structure</title></info>
<?dbhtml filename="organization.html"?>
<para>This book is divided into the following parts:</para>
-<sect2>
-<title>Part I - Introduction</title>
+<section>
+<info><title>Part I - Introduction</title></info>
<para>Part I explains a few important things on how to proceed with the
installation, and gives meta-information about the book (version, changelog,
acknowledgments, associated mailing lists, and so on).</para>
-</sect2>
+</section>
-<sect2>
-<title>Part II - Preparing for the build</title>
+<section>
+<info><title>Part II - Preparing for the build</title></info>
<para>Part II describes how to prepare for the building process: making a
partition, downloading the packages, and compiling temporary tools.</para>
-</sect2>
+</section>
-<sect2>
-<title>Part III - Building the LFS system</title>
+<section>
+<info><title>Part III - Building the LFS system</title></info>
<para>Part III guides you through the building of the LFS system: compiling and
installing all the packages one by one, setting up the boot scripts, and
@@ -33,6 +33,6 @@ installing the kernel. The resulting basic Linux system is the foundation upon
which you can build other software, to extend your system in the way you like.
At the end of the book you'll find a list of all of the programs, libraries and
important files that have been installed as an easy to use reference.</para>
-</sect2>
+</section>
-</sect1>
+</section>
diff --git a/prologue/preface.xml b/prologue/preface.xml
index 5fa4aec94..c5c562c3c 100644
--- a/prologue/preface.xml
+++ b/prologue/preface.xml
@@ -1,18 +1,20 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE preface PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE preface [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
-<preface id="preface">
+<preface xmlns="http://docbook.org/docbook-ng"
+ xmlns:xi="http://www.w3.org/2003/XInclude"
+ xml:id="preface">
<?dbhtml dir="prologue"?>
-<title>Preface</title>
+<info><title>Preface</title></info>
<?dbhtml filename="preface.html"?>
-<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="foreword.xml"/>
-<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="audience.xml"/>
-<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="prerequisites.xml"/>
-<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="typography.xml"/>
-<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="acknowledgments.xml"/>
-<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="organization.xml"/>
+<xi:include href="foreword.xml"/>
+<xi:include href="audience.xml"/>
+<xi:include href="prerequisites.xml"/>
+<xi:include href="typography.xml"/>
+<xi:include href="acknowledgments.xml"/>
+<xi:include href="organization.xml"/>
</preface>
diff --git a/prologue/prerequisites.xml b/prologue/prerequisites.xml
index 62ac031b9..245527e6c 100644
--- a/prologue/prerequisites.xml
+++ b/prologue/prerequisites.xml
@@ -1,10 +1,12 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE section [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
-<sect1 id="pf-prerequisites">
-<title>Prerequisites</title>
+<section xmlns="http://docbook.org/docbook-ng"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xml:id="pf-prerequisites">
+<info><title>Prerequisites</title></info>
<?dbhtml filename="prerequisites.html"?>
<para>This book assumes that its reader has a good deal of knowledge about
@@ -16,15 +18,14 @@ system, you should read the following HOWTOs:</para>
<para>This is a comprehensive guide to building and installing
<quote>generic</quote> Unix software distributions under Linux. This HOWTO is
-available at <ulink
-url="http://www.tldp.org/HOWTO/Software-Building-HOWTO.html"/>.</para>
+available at <uri xlink:href="http://www.tldp.org/HOWTO/Software-Building-HOWTO.html">http://www.tldp.org/HOWTO/Software-Building-HOWTO.html</uri>.</para>
</listitem>
<listitem><para>The Linux Users' Guide</para>
-<para>This guide covers the usage of assorted Linux software and is
-available at
-<ulink url="http://espc22.murdoch.edu.au/~stewart/guide/guide.html"/>.</para></listitem>
+<para>This guide covers the usage of assorted Linux software and is available at
+<uri xlink:href="http://espc22.murdoch.edu.au/~stewart/guide/guide.html">http://espc22.murdoch.edu.au/~stewart/guide/guide.html</uri>.</para>
+</listitem>
<listitem><para>The Essential Pre-Reading Hint</para>
@@ -33,8 +34,8 @@ mostly a list of links to excellent sources of information on a wide range of
topics. Any person attempting to install LFS, should at least have an
understanding of many of the topics in this hint. It is available at
-<ulink url="&hints-root;essential_prereading.txt"/></para></listitem>
+<uri xlink:href="&hints-root;essential_prereading.txt">&hints-root;essential_prereading.txt</uri></para></listitem>
</itemizedlist>
-</sect1>
+</section>
diff --git a/prologue/typography.xml b/prologue/typography.xml
index 86962c6ad..049544dbe 100644
--- a/prologue/typography.xml
+++ b/prologue/typography.xml
@@ -1,10 +1,12 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
-<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!DOCTYPE section [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
-<sect1 id="pre-typography">
-<title>Typography</title>
+<section xmlns="http://docbook.org/docbook-ng"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xml:id="pre-typography">
+<info><title>Typography</title></info>
<?dbhtml filename="typography.html"?>
<para>To make things easier to follow, there are a few typographical
@@ -28,7 +30,7 @@ show filenames, such as <filename>/etc/ld.so.conf</filename>.</para></blockquote
<blockquote><para>This form of text is used for several purposes in the
book, mainly to emphasize important points or items.</para></blockquote>
-<para><ulink url="&lfs-root;"/></para>
+<para><uri xlink:href="&lfs-root;">&lfs-root;</uri></para>
<blockquote><para>This form of text is used for hyperlinks, both within the
book and to external pages such as HOWTOs, download locations and
@@ -51,4 +53,4 @@ typed as seen.</para></blockquote>
<blockquote><para>This form of text is used to encapsulate text that is
not to be typed as seen or copy and pasted.</para></blockquote>
-</sect1>
+</section>