| <!-- |
| BoostBook DTD version 1.1 |
| |
| For further information, see: http://www.crystalclearsoftware.com/cgi-bin/boost_wiki/wiki.pl?Boost_Documentation_Format |
| |
| Copyright (c) 2002 by Peter Simons <simons@cryp.to> |
| Copyright (c) 2003-2004 by Douglas Gregor <doug.gregor -at- gmail.com> |
| Copyright (c) 2007 by Frank Mori Hess <fmhess@users.sourceforge.net> |
| |
| Distributed under the Boost Software License, Version 1.0. |
| (See accompanying file LICENSE_1_0.txt or copy at |
| http://www.boost.org/LICENSE_1_0.txt) |
| |
| This DTD module is identified by the PUBLIC and SYSTEM identifiers: |
| |
| PUBLIC "-//Boost//DTD BoostBook XML V1.1//EN" |
| SYSTEM "http://www.boost.org/tools/boostbook/dtd/1.1/boostbook.dtd" |
| |
| $Revision: 55188 $ |
| $Date: 2009-07-26 16:11:03 -0400 (Sun, 26 Jul 2009) $ |
| --> |
| |
| <!--========== Define XInclude features. ==========--> |
| <!-- This is not really integrated into the DTD yet. Needs more |
| research. --> |
| <!-- |
| <!ELEMENT xi:include (xi:fallback)?> |
| <!ATTLIST xi:include |
| xmlns:xi CDATA #FIXED "http://www.w3.org/2001/XInclude" |
| href CDATA #REQUIRED |
| parse (xml|text) "xml" |
| encoding CDATA #IMPLIED> |
| |
| <!ELEMENT xi:fallback ANY> |
| <!ATTLIST xi:fallback |
| xmlns:xi CDATA #FIXED "http://www.w3.org/2001/XInclude"> |
| --> |
| |
| <!ENTITY % local.common.attrib "last-revision CDATA #IMPLIED"> |
| |
| <!--========== Define the BoostBook extensions ==========--> |
| <!ENTITY % boost.common.attrib "%local.common.attrib; |
| id CDATA #IMPLIED"> |
| |
| <!ENTITY % boost.namespace.mix |
| "class|class-specialization|struct|struct-specialization| |
| union|union-specialization|typedef|enum| |
| free-function-group|function|overloaded-function| |
| namespace"> |
| |
| <!ENTITY % boost.template.mix |
| "template-type-parameter|template-nontype-parameter|template-varargs"> |
| |
| <!ENTITY % boost.class.members |
| "static-constant|typedef|enum| |
| copy-assignment|constructor|destructor|method-group| |
| method|overloaded-method|data-member|class|class-specialization|struct| |
| struct-specialization|union|union-specialization"> |
| |
| <!ENTITY % boost.class.mix |
| "%boost.class.members;|free-function-group|function|overloaded-function"> |
| |
| <!ENTITY % boost.class.content |
| "template?, inherit*, purpose?, description?, |
| (%boost.class.mix;|access)*"> |
| |
| <!ENTITY % boost.class-specialization.content |
| "template?, specialization?, inherit?, purpose?, description?, |
| (%boost.class.mix;|access)*"> |
| |
| <!ENTITY % boost.function.semantics |
| "purpose?, description?, requires?, effects?, postconditions?, |
| returns?, throws?, complexity?, notes?, rationale?"> |
| |
| <!ENTITY % library.content |
| "libraryinfo, (title, ((section|library-reference|testsuite))+)?"> |
| |
| <!ELEMENT library (%library.content;)> |
| <!ATTLIST library |
| name CDATA #REQUIRED |
| dirname CDATA #REQUIRED |
| html-only CDATA #IMPLIED |
| url CDATA #IMPLIED |
| %boost.common.attrib;> |
| |
| <!ELEMENT boostbook (title, (chapter|library)*)> |
| <!ATTLIST boostbook %boost.common.attrib;> |
| |
| <!ELEMENT libraryinfo (author+, copyright*, legalnotice*, librarypurpose, librarycategory*)> |
| <!ATTLIST libraryinfo %boost.common.attrib;> |
| |
| <!ELEMENT librarypurpose (#PCDATA|code|ulink|functionname|methodname|classname|macroname|headername|enumname|globalname)*> |
| <!ATTLIST librarypurpose %boost.common.attrib;> |
| |
| <!ELEMENT librarycategory (#PCDATA)> |
| <!ATTLIST librarycategory |
| name CDATA #REQUIRED |
| %boost.common.attrib;> |
| |
| <!ELEMENT libraryname (#PCDATA)> |
| <!ATTLIST libraryname %boost.common.attrib;> |
| |
| <!ELEMENT library-reference ANY> |
| <!ATTLIST library-reference |
| %boost.common.attrib;> |
| |
| <!ELEMENT librarylist EMPTY> |
| <!ATTLIST librarylist %boost.common.attrib;> |
| |
| <!ELEMENT librarycategorylist (librarycategorydef)*> |
| <!ATTLIST librarycategorylist %boost.common.attrib;> |
| |
| <!ELEMENT librarycategorydef (#PCDATA)> |
| <!ATTLIST librarycategorydef |
| name CDATA #REQUIRED |
| %boost.common.attrib;> |
| |
| <!ELEMENT header ANY> |
| <!ATTLIST header |
| name CDATA #REQUIRED |
| %boost.common.attrib;> |
| |
| <!ELEMENT namespace (%boost.namespace.mix;)*> |
| <!ATTLIST namespace |
| name CDATA #REQUIRED |
| %boost.common.attrib;> |
| |
| <!ELEMENT class (%boost.class.content;)> |
| <!ATTLIST class |
| name CDATA #REQUIRED |
| %boost.common.attrib;> |
| |
| <!ELEMENT struct (%boost.class.content;)> |
| <!ATTLIST struct |
| name CDATA #REQUIRED |
| %boost.common.attrib;> |
| |
| <!ELEMENT union (%boost.class.content;)> |
| <!ATTLIST union |
| name CDATA #REQUIRED |
| %boost.common.attrib;> |
| |
| <!ELEMENT class-specialization (%boost.class-specialization.content;)> |
| <!ATTLIST class-specialization |
| name CDATA #REQUIRED |
| %boost.common.attrib;> |
| |
| <!ELEMENT struct-specialization (%boost.class-specialization.content;)> |
| <!ATTLIST struct-specialization |
| name CDATA #REQUIRED |
| %boost.common.attrib;> |
| |
| <!ELEMENT union-specialization (%boost.class-specialization.content;)> |
| <!ATTLIST union-specialization |
| name CDATA #REQUIRED |
| %boost.common.attrib;> |
| |
| <!ELEMENT access (%boost.class.members;)+> |
| <!ATTLIST access |
| name CDATA #REQUIRED |
| %boost.common.attrib;> |
| |
| <!--========= C++ Templates =========--> |
| <!ELEMENT template (%boost.template.mix;)*> |
| <!ATTLIST template %boost.common.attrib;> |
| |
| <!ELEMENT template-type-parameter (default?, purpose?)> |
| <!ATTLIST template-type-parameter |
| name CDATA #REQUIRED |
| pack CDATA #IMPLIED |
| %boost.common.attrib;> |
| |
| <!ELEMENT template-nontype-parameter (type, default?, purpose?)> |
| <!ATTLIST template-nontype-parameter |
| name CDATA #REQUIRED |
| pack CDATA #IMPLIED |
| %boost.common.attrib;> |
| |
| <!ELEMENT template-varargs EMPTY> |
| <!ATTLIST template-varargs %boost.common.attrib;> |
| |
| <!ELEMENT specialization (template-arg)*> |
| <!ATTLIST specialization %boost.common.attrib;> |
| |
| <!ELEMENT template-arg ANY> |
| <!ATTLIST template-arg |
| pack CDATA #IMPLIED |
| %boost.common.attrib;> |
| |
| <!ELEMENT default ANY> |
| <!ATTLIST default %boost.common.attrib;> |
| |
| <!ELEMENT inherit (type, purpose?)> |
| <!ATTLIST inherit |
| access CDATA #IMPLIED |
| pack CDATA #IMPLIED |
| %boost.common.attrib;> |
| |
| <!ELEMENT purpose ANY> |
| <!ATTLIST purpose %boost.common.attrib;> |
| |
| <!ELEMENT description ANY> |
| <!ATTLIST description %boost.common.attrib;> |
| |
| <!ELEMENT type ANY> |
| <!ATTLIST type %boost.common.attrib;> |
| |
| <!ELEMENT typedef (type, purpose?, description?)> |
| <!ATTLIST typedef |
| name CDATA #REQUIRED |
| %boost.common.attrib;> |
| |
| <!ELEMENT enum (enumvalue*, purpose?, description?)> |
| <!ATTLIST enum |
| name CDATA #REQUIRED |
| %boost.common.attrib;> |
| |
| <!ELEMENT enumvalue (default?, purpose?, description?)> |
| <!ATTLIST enumvalue |
| name CDATA #REQUIRED |
| %boost.common.attrib;> |
| |
| <!ELEMENT static-constant (type, default, purpose?, description?)> |
| <!ATTLIST static-constant |
| name CDATA #REQUIRED |
| %boost.common.attrib;> |
| |
| <!ELEMENT data-member (type, purpose?, description?)> |
| <!ATTLIST data-member |
| name CDATA #REQUIRED |
| specifiers CDATA #IMPLIED |
| %boost.common.attrib;> |
| |
| <!ELEMENT paramtype ANY> |
| <!ATTLIST paramtype %boost.common.attrib;> |
| |
| <!ELEMENT effects ANY> |
| <!ATTLIST effects %boost.common.attrib;> |
| |
| <!ELEMENT postconditions ANY> |
| <!ATTLIST postconditions %boost.common.attrib;> |
| |
| <!ELEMENT method-group (method|overloaded-method)*> |
| <!ATTLIST method-group |
| name CDATA #REQUIRED |
| %boost.common.attrib;> |
| |
| <!ELEMENT constructor (template?, parameter*, %boost.function.semantics;)> |
| <!ATTLIST constructor |
| specifiers CDATA #IMPLIED |
| %boost.common.attrib;> |
| |
| <!ELEMENT destructor (%boost.function.semantics;)> |
| <!ATTLIST destructor |
| specifiers CDATA #IMPLIED |
| %boost.common.attrib;> |
| |
| <!ELEMENT method (template?, type, parameter*, %boost.function.semantics;)> |
| <!ATTLIST method |
| name CDATA #REQUIRED |
| cv CDATA #IMPLIED |
| specifiers CDATA #IMPLIED |
| %boost.common.attrib;> |
| |
| <!ELEMENT function (template?, type, parameter*, %boost.function.semantics;)> |
| <!ATTLIST function |
| name CDATA #REQUIRED |
| specifiers CDATA #IMPLIED |
| %boost.common.attrib;> |
| |
| <!ELEMENT overloaded-method (signature*, %boost.function.semantics;)> |
| <!ATTLIST overloaded-method |
| name CDATA #REQUIRED |
| %boost.common.attrib;> |
| |
| <!ELEMENT overloaded-function (signature*, %boost.function.semantics;)> |
| <!ATTLIST overloaded-function |
| name CDATA #REQUIRED |
| %boost.common.attrib;> |
| |
| <!ELEMENT signature (template?, type, parameter*)> |
| <!ATTLIST signature |
| cv CDATA #IMPLIED |
| specifiers CDATA #IMPLIED |
| %boost.common.attrib;> |
| |
| <!ELEMENT requires ANY> |
| <!ATTLIST requires %boost.common.attrib;> |
| |
| <!ELEMENT returns ANY> |
| <!ATTLIST returns %boost.common.attrib;> |
| |
| <!ELEMENT throws ANY> |
| <!ATTLIST throws %boost.common.attrib;> |
| |
| <!ELEMENT complexity ANY> |
| <!ATTLIST complexity %boost.common.attrib;> |
| |
| <!ELEMENT notes ANY> |
| <!ATTLIST notes %boost.common.attrib;> |
| |
| <!ELEMENT rationale ANY> |
| <!ATTLIST rationale %boost.common.attrib;> |
| |
| <!ELEMENT functionname (#PCDATA)> |
| <!ATTLIST functionname |
| alt CDATA #IMPLIED |
| %boost.common.attrib;> |
| |
| <!ELEMENT enumname (#PCDATA)> |
| <!ATTLIST enumname |
| alt CDATA #IMPLIED |
| %boost.common.attrib;> |
| |
| <!ELEMENT macroname (#PCDATA)> |
| <!ATTLIST macroname %boost.common.attrib;> |
| |
| <!ELEMENT headername (#PCDATA)> |
| <!ATTLIST headername %boost.common.attrib;> |
| |
| <!ELEMENT globalname (#PCDATA)> |
| <!ATTLIST globalname |
| alt CDATA #IMPLIED |
| %boost.common.attrib;> |
| |
| <!ELEMENT copy-assignment |
| (template?, type?, parameter*, %boost.function.semantics;)> |
| <!ATTLIST copy-assignment |
| cv CDATA #IMPLIED |
| specifiers CDATA #IMPLIED |
| %boost.common.attrib;> |
| |
| <!ELEMENT free-function-group (function|overloaded-function)*> |
| <!ATTLIST free-function-group |
| name CDATA #REQUIRED |
| %boost.common.attrib;> |
| |
| <!ELEMENT precondition ANY> |
| <!ATTLIST precondition %boost.common.attrib;> |
| |
| <!ELEMENT code ANY> |
| <!ATTLIST code %boost.common.attrib;> |
| |
| <!ELEMENT using-namespace EMPTY> |
| <!ATTLIST using-namespace |
| name CDATA #REQUIRED |
| %boost.common.attrib;> |
| |
| <!ELEMENT using-class EMPTY> |
| <!ATTLIST using-class |
| name CDATA #REQUIRED |
| %boost.common.attrib;> |
| |
| <!--========== Boost Testsuite Extensions ==========--> |
| <!ENTITY % boost.testsuite.tests |
| "compile-test|link-test|run-test| |
| compile-fail-test|link-fail-test|run-fail-test"> |
| <!ENTITY % boost.testsuite.test.content |
| "source*, lib*, requirement*, purpose, if-fails?"> |
| |
| <!ELEMENT testsuite ((%boost.testsuite.tests;)+)> |
| <!ATTLIST testsuite %boost.common.attrib;> |
| |
| <!ELEMENT compile-test (%boost.testsuite.test.content;)> |
| <!ATTLIST compile-test |
| filename CDATA #REQUIRED |
| name CDATA #IMPLIED> |
| |
| <!ELEMENT link-test (%boost.testsuite.test.content;)> |
| <!ATTLIST link-test |
| filename CDATA #REQUIRED |
| name CDATA #IMPLIED> |
| |
| <!ELEMENT run-test (%boost.testsuite.test.content;)> |
| <!ATTLIST run-test |
| filename CDATA #REQUIRED |
| name CDATA #IMPLIED> |
| |
| <!ELEMENT compile-fail-test (%boost.testsuite.test.content;)> |
| <!ATTLIST compile-fail-test |
| filename CDATA #REQUIRED |
| name CDATA #IMPLIED> |
| |
| <!ELEMENT link-fail-test (%boost.testsuite.test.content;)> |
| <!ATTLIST link-fail-test |
| filename CDATA #REQUIRED |
| name CDATA #IMPLIED> |
| |
| <!ELEMENT run-fail-test (%boost.testsuite.test.content;)> |
| <!ATTLIST run-fail-test |
| filename CDATA #REQUIRED |
| name CDATA #IMPLIED> |
| |
| <!ELEMENT source (#PCDATA|snippet)*> |
| |
| <!ELEMENT snippet EMPTY> |
| <!ATTLIST snippet |
| name CDATA #REQUIRED> |
| |
| <!ELEMENT lib (#PCDATA)> |
| |
| <!ELEMENT requirement (#PCDATA)> |
| <!ATTLIST requirement |
| name CDATA #REQUIRED> |
| |
| <!ELEMENT if-fails ANY> |
| |
| <!ELEMENT parameter (paramtype, default?, description?)> |
| <!ATTLIST parameter |
| name CDATA #IMPLIED |
| pack CDATA #IMPLIED> |
| |
| <!ELEMENT programlisting ANY> |
| <!ATTLIST programlisting |
| name CDATA #IMPLIED> |
| |
| <!--========== Customize the DocBook DTD ==========--> |
| <!ENTITY % local.tech.char.class "|functionname|libraryname|enumname|code"> |
| <!ENTITY % local.para.class |
| "|using-namespace|using-class|librarylist|librarycategorylist"> |
| <!ENTITY % local.descobj.class "|libraryinfo"> |
| <!ENTITY % local.classname.attrib "alt CDATA #IMPLIED"> |
| <!ENTITY % local.methodname.attrib "alt CDATA #IMPLIED"> |
| <!ENTITY % local.refentry.class "|library-reference|testsuite"> |
| <!ENTITY % local.title.char.mix ""> |
| <!ENTITY % programlisting.module "IGNORE"> |
| <!ENTITY % parameter.module "IGNORE"> |
| <!ENTITY % function.module "IGNORE"> |
| <!ENTITY % type.module "IGNORE"> |
| |
| <!--========== Import DocBook DTD ==========--> |
| <!ENTITY % DocBook PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" |
| "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"> |
| |
| %DocBook; |