Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r51774 - in branches/release: . tools/boostbook tools/boostbook/doc tools/boostbook/dtd tools/boostbook/test tools/boostbook/xsl tools/build/v2/tools tools/quickbook/detail tools/quickbook/doc tools/quickbook/test
From: daniel_james_at_[hidden]
Date: 2009-03-14 07:42:42


Author: danieljames
Date: 2009-03-14 07:42:38 EDT (Sat, 14 Mar 2009)
New Revision: 51774
URL: http://svn.boost.org/trac/boost/changeset/51774

Log:
Merge most of the recent changes to quickbook and boostbook.

Left out doxygen changes: [51323],[51324],[51680]
And a quickbook change which might be a breaking change: [51403]

Fixes #1977, #1170, #1213, #2701.
Refs #2153, #2771.

Merged revisions 51268-51269,51319-51321,51370-51372,51388-51389,51401-51402,51405-51406,51508,51647,51696 via svnmerge from
https://svn.boost.org/svn/boost/trunk

........
  r51268 | johnmaddock | 2009-02-16 10:39:18 +0000 (Mon, 16 Feb 2009) | 1 line
  
  Add default path for callouts.
........
  r51269 | johnmaddock | 2009-02-16 10:40:26 +0000 (Mon, 16 Feb 2009) | 1 line
  
  Add preliminary HTMLHelp support.
........
  r51319 | danieljames | 2009-02-18 21:22:37 +0000 (Wed, 18 Feb 2009) | 1 line
  
  Remove long out of date warning.
........
  r51320 | danieljames | 2009-02-18 21:23:13 +0000 (Wed, 18 Feb 2009) | 1 line
  
  Write out the quickbook options when the file is missing.
........
  r51321 | danieljames | 2009-02-18 21:23:35 +0000 (Wed, 18 Feb 2009) | 1 line
  
  Add default path for callouts to xhtml.
........
  r51370 | danieljames | 2009-02-21 18:50:00 +0000 (Sat, 21 Feb 2009) | 4 lines
  
  Regenerate boostbook reference documentation and merge with existing
  documentation.
  
  Ref #2153
........
  r51371 | danieljames | 2009-02-21 18:50:14 +0000 (Sat, 21 Feb 2009) | 1 line
  
  Fix links in standalone boostbook documentation.
........
  r51372 | danieljames | 2009-02-21 18:50:25 +0000 (Sat, 21 Feb 2009) | 3 lines
  
  Change license in boostbook docs to boost license.
  
  Douglas Gregor is listed in the blanket permissions file.
........
  r51388 | danieljames | 2009-02-22 11:54:01 +0000 (Sun, 22 Feb 2009) | 1 line
  
  This DTD isn't stable, so I'm calling it a 'development' version. Which is probably wrong, but there you go.
........
  r51389 | danieljames | 2009-02-22 11:54:18 +0000 (Sun, 22 Feb 2009) | 2 lines
  
  Support the alt tag in headername and macroname. Also make headername
  and macroname valid. Refs #1977
........
  r51401 | danieljames | 2009-02-22 23:47:51 +0000 (Sun, 22 Feb 2009) | 8 lines
  
  Add a purpose for macroname, headername, enumname, globalname.
  
  Ref #2153: There's still no documentation for methodname and classname.
  These are actually defined in the docbook DTD for a different purpose so
  I'm not sure how to deal with them.
  
  http://www.docbook.org/tdg/en/html/methodname.html
  http://www.docbook.org/tdg/en/html/classname.html
........
  r51402 | danieljames | 2009-02-22 23:48:37 +0000 (Sun, 22 Feb 2009) | 7 lines
  
  Generate slightly more valid boostbook.
  
  For document types other than library:
  * Don't generate name or dirname for document types.
  * Put title before document info.
  
  Ref #2771
........
  r51405 | danieljames | 2009-02-22 23:49:21 +0000 (Sun, 22 Feb 2009) | 3 lines
  
  Print out unexpected characters as errors.
  
  Ref #1170
........
  r51406 | danieljames | 2009-02-22 23:49:36 +0000 (Sun, 22 Feb 2009) | 1 line
  
  Better handling of errors without line numbers.
........
  r51508 | danieljames | 2009-03-01 14:16:44 +0000 (Sun, 01 Mar 2009) | 3 lines
  
  Try to make anchor and link usage a little clearer.
  
  Refs #1213, #2701
........
  r51647 | danieljames | 2009-03-08 09:45:51 +0000 (Sun, 08 Mar 2009) | 1 line
  
  Display text purposes in function reference.
........
  r51696 | johnmaddock | 2009-03-11 10:22:42 +0000 (Wed, 11 Mar 2009) | 1 line
  
  Set margins to 0pt so they line up with surrounding text rather than appearing outside it - prevents margins from overlapping other content.
........

Added:
   branches/release/tools/boostbook/test/
      - copied from r51389, /trunk/tools/boostbook/test/
   branches/release/tools/boostbook/test/Jamfile.v2
      - copied unchanged from r51389, /trunk/tools/boostbook/test/Jamfile.v2
   branches/release/tools/boostbook/test/alt.xml
      - copied unchanged from r51389, /trunk/tools/boostbook/test/alt.xml
   branches/release/tools/boostbook/xsl/html-help.xsl
      - copied unchanged from r51269, /trunk/tools/boostbook/xsl/html-help.xsl
Removed:
   branches/release/tools/quickbook/test/stub.xml
Properties modified:
   branches/release/ (props changed)
Text files modified:
   branches/release/tools/boostbook/doc/Jamfile.v2 | 7
   branches/release/tools/boostbook/doc/boostbook.xml | 14 -
   branches/release/tools/boostbook/doc/reference.dtdxml | 284 +++++++++++++++++++++++++++++++--------
   branches/release/tools/boostbook/doc/reference.xml | 168 +++++++++++++++++++++-
   branches/release/tools/boostbook/dtd/boostbook.dtd | 14 +
   branches/release/tools/boostbook/setup_boostbook.py | 6
   branches/release/tools/boostbook/xsl/annotation.xsl | 26 +++
   branches/release/tools/boostbook/xsl/fo.xsl | 4
   branches/release/tools/boostbook/xsl/function.xsl | 2
   branches/release/tools/boostbook/xsl/html.xsl | 4
   branches/release/tools/boostbook/xsl/xhtml.xsl | 6
   branches/release/tools/build/v2/tools/boostbook.jam | 1
   branches/release/tools/quickbook/detail/actions.cpp | 90 ++++++++----
   branches/release/tools/quickbook/detail/post_process.cpp | 6
   branches/release/tools/quickbook/detail/quickbook.cpp | 15 +
   branches/release/tools/quickbook/detail/utils.cpp | 2
   branches/release/tools/quickbook/detail/utils.hpp | 4
   branches/release/tools/quickbook/doc/quickbook.qbk | 20 +
   branches/release/tools/quickbook/test/code-block-1.gold | 4
   branches/release/tools/quickbook/test/code-block-2.gold | 4
   branches/release/tools/quickbook/test/code-snippet.gold | 4
   branches/release/tools/quickbook/test/escape.gold | 5
   branches/release/tools/quickbook/test/import.gold | 5
   branches/release/tools/quickbook/test/link-side-by-side.gold | 6
   branches/release/tools/quickbook/test/preformatted.gold | 4
   branches/release/tools/quickbook/test/quickbook-manual.gold | 5
   branches/release/tools/quickbook/test/templates.gold | 141 ++++++++++---------
   branches/release/tools/quickbook/test/xinclude.gold | 17 +-
   28 files changed, 621 insertions(+), 247 deletions(-)

Modified: branches/release/tools/boostbook/doc/Jamfile.v2
==============================================================================
--- branches/release/tools/boostbook/doc/Jamfile.v2 (original)
+++ branches/release/tools/boostbook/doc/Jamfile.v2 2009-03-14 07:42:38 EDT (Sat, 14 Mar 2009)
@@ -7,5 +7,10 @@
 project boost/doc ;
 import boostbook : boostbook ;
 
-boostbook boostbook : boostbook.xml ;
+boostbook boostbook : boostbook.xml :
+ <xsl:param>html.stylesheet=../../../../doc/html/boostbook.css
+ <xsl:param>boost.root=../../../..
+ <xsl:param>boost.libraries=../../../../libs/libraries.htm
+ <xsl:param>navig.graphics=1
+ ;
 

Modified: branches/release/tools/boostbook/doc/boostbook.xml
==============================================================================
--- branches/release/tools/boostbook/doc/boostbook.xml (original)
+++ branches/release/tools/boostbook/doc/boostbook.xml 2009-03-14 07:42:38 EDT (Sat, 14 Mar 2009)
@@ -24,16 +24,10 @@
     </copyright>
 
     <legalnotice>
- <para>Permission to copy, use, sell and distribute this software
- is granted provided this copyright notice appears in all copies.
- Permission to modify the code and to distribute modified code is
- granted provided this copyright notice appears in all copies,
- and a notice that the code was modified is included with the
- copyright notice. </para>
-
- <para> This software is provided "as is" without express or
- implied warranty, and with no claim as to its suitability for
- any purpose. </para>
+ <para>Distributed under the Boost Software License, Version 1.0.
+ (See accompanying file LICENSE_1_0.txt or copy at
+ <ulink url="http://www.boost.org/LICENSE_1_0.txt">http://www.boost.org/LICENSE_1_0.txt>).
+ </para>
     </legalnotice>
   </partinfo>
 

Modified: branches/release/tools/boostbook/doc/reference.dtdxml
==============================================================================
--- branches/release/tools/boostbook/doc/reference.dtdxml (original)
+++ branches/release/tools/boostbook/doc/reference.dtdxml 2009-03-14 07:42:38 EDT (Sat, 14 Mar 2009)
@@ -7,8 +7,8 @@
      system-id="boostbook.dtd"
      public-id=""
      declaration=""
- created-by="DTDParse V2.0beta6"
- created-on="Sat Mar 29 16:11:38 2003"
+ created-by="DTDParse V2.00"
+ created-on="Wed Feb 18 23:39:45 2009"
>
 <attpurpose name="id">A global identifier for this element</attpurpose>
 <attpurpose name="last-revision">Set to $Date: 2003/04/13 14:46:07 $ to keep "last revised" information in sync with CVS changes</attpurpose>
@@ -23,7 +23,10 @@
         type="param"
>
 <text-expanded>template?, inherit*, purpose?, description?,
- (access|%boost.class.mix;)*</text-expanded>
+ (static-constant|typedef|enum|
+ copy-assignment|constructor|destructor|method-group|
+ method|overloaded-method|data-member|class|class-specialization|struct|
+ struct-specialization|union|union-specialization|free-function-group|function|overloaded-function|access)*</text-expanded>
 <text>template?, inherit*, purpose?, description?,
               (access|%boost.class.mix;)*</text>
 </entity>
@@ -104,15 +107,18 @@
          struct-specialization|union|union-specialization</text-expanded>
 <text>static-constant|typedef|enum|
          copy-assignment|constructor|destructor|method-group|
- |method|overloaded-method|data-member|class|class-specialization|struct|
+ method|overloaded-method|data-member|class|class-specialization|struct|
          struct-specialization|union|union-specialization</text>
 </entity>
 
 <entity name="boost.class.mix"
         type="param"
>
-<text-expanded>free-function-group|function|overloaded-function|%boost.class.members;</text-expanded>
-<text>free-function-group|function|overloaded-function|%boost.class.members;</text>
+<text-expanded>static-constant|typedef|enum|
+ copy-assignment|constructor|destructor|method-group|
+ method|overloaded-method|data-member|class|class-specialization|struct|
+ struct-specialization|union|union-specialization|free-function-group|function|overloaded-function</text-expanded>
+<text>%boost.class.members;|free-function-group|function|overloaded-function</text>
 </entity>
 
 <entity name="boost.testsuite.tests"
@@ -154,8 +160,8 @@
 <entity name="local.tech.char.class"
         type="param"
>
-<text-expanded>|functionname|libraryname|code</text-expanded>
-<text>|functionname|libraryname|code</text>
+<text-expanded>|functionname|libraryname|enumname|headername|macroname|code</text-expanded>
+<text>|functionname|libraryname|enumname|headername|macroname|code</text>
 </entity>
 
 <entity name="function.module"
@@ -199,7 +205,10 @@
         type="param"
>
 <text-expanded>template?, specialization?, inherit?, purpose?, description?,
- (access|%boost.class.mix;)*</text-expanded>
+ (static-constant|typedef|enum|
+ copy-assignment|constructor|destructor|method-group|
+ method|overloaded-method|data-member|class|class-specialization|struct|
+ struct-specialization|union|union-specialization|free-function-group|function|overloaded-function|access)*</text-expanded>
 <text>template?, specialization?, inherit?, purpose?, description?,
               (access|%boost.class.mix;)*</text>
 </entity>
@@ -830,7 +839,7 @@
 
 <attlist name="inherit">
 <attdecl>
- access CDATA #REQUIRED
+ access CDATA #IMPLIED
     pack CDATA #IMPLIED
     %boost.common.attrib;</attdecl>
 <attribute name="last-revision"
@@ -838,7 +847,7 @@
            value="CDATA"
            default=""/>
 <attribute name="access"
- type="#REQUIRED"
+ type="#IMPLIED"
            value="CDATA"
            default="">
   <purpose>The access specifier ("public", "private", or "protected") of the inheritance.</purpose>
@@ -1040,6 +1049,39 @@
            default=""/>
 </attlist>
 
+<element name="macroname"
+ content-type="mixed">
+<content-model-expanded>
+ <sequence-group>
+ <pcdata/>
+ </sequence-group>
+</content-model-expanded>
+<content-model>
+ <sequence-group>
+ <pcdata/>
+ </sequence-group>
+</content-model>
+<purpose>References a macro with the given name</purpose>
+</element>
+
+<attlist name="macroname">
+<attdecl>
+ alt CDATA #IMPLIED
+ %boost.common.attrib;</attdecl>
+<attribute name="last-revision"
+ type="#IMPLIED"
+ value="CDATA"
+ default=""/>
+<attribute name="alt"
+ type="#IMPLIED"
+ value="CDATA"
+ default=""/>
+<attribute name="id"
+ type="#IMPLIED"
+ value="CDATA"
+ default=""/>
+</attlist>
+
 <element name="postconditions"
          content-type="element">
 <content-model-expanded>
@@ -1339,6 +1381,39 @@
 </description>
 </element>
 
+<element name="headername"
+ content-type="mixed">
+<content-model-expanded>
+ <sequence-group>
+ <pcdata/>
+ </sequence-group>
+</content-model-expanded>
+<content-model>
+ <sequence-group>
+ <pcdata/>
+ </sequence-group>
+</content-model>
+<purpose>References a C++ header with the given name</purpose>
+</element>
+
+<attlist name="headername">
+<attdecl>
+ alt CDATA #IMPLIED
+ %boost.common.attrib;</attdecl>
+<attribute name="last-revision"
+ type="#IMPLIED"
+ value="CDATA"
+ default=""/>
+<attribute name="alt"
+ type="#IMPLIED"
+ value="CDATA"
+ default=""/>
+<attribute name="id"
+ type="#IMPLIED"
+ value="CDATA"
+ default=""/>
+</attlist>
+
 <element name="free-function-group"
          content-type="element">
 <content-model-expanded>
@@ -1404,11 +1479,17 @@
 </element>
 
 <attlist name="functionname">
-<attdecl> %boost.common.attrib;</attdecl>
+<attdecl>
+ alt CDATA #IMPLIED
+ %boost.common.attrib;</attdecl>
 <attribute name="last-revision"
            type="#IMPLIED"
            value="CDATA"
            default=""/>
+<attribute name="alt"
+ type="#IMPLIED"
+ value="CDATA"
+ default=""/>
 <attribute name="id"
            type="#IMPLIED"
            value="CDATA"
@@ -1508,12 +1589,17 @@
 
 <attlist name="data-member">
 <attdecl>
- name CDATA #REQUIRED
+ name CDATA #REQUIRED
+ specifiers CDATA #IMPLIED
     %boost.common.attrib;</attdecl>
 <attribute name="last-revision"
            type="#IMPLIED"
            value="CDATA"
            default=""/>
+<attribute name="specifiers"
+ type="#IMPLIED"
+ value="CDATA"
+ default=""/>
 <attribute name="name"
            type="#REQUIRED"
            value="CDATA"
@@ -1692,6 +1778,39 @@
            default=""/>
 </attlist>
 
+<element name="globalname"
+ content-type="mixed">
+<content-model-expanded>
+ <sequence-group>
+ <pcdata/>
+ </sequence-group>
+</content-model-expanded>
+<content-model>
+ <sequence-group>
+ <pcdata/>
+ </sequence-group>
+</content-model>
+<purpose>References a global with the given name</purpose>
+</element>
+
+<attlist name="globalname">
+<attdecl>
+ alt CDATA #IMPLIED
+ %boost.common.attrib;</attdecl>
+<attribute name="last-revision"
+ type="#IMPLIED"
+ value="CDATA"
+ default=""/>
+<attribute name="alt"
+ type="#IMPLIED"
+ value="CDATA"
+ default=""/>
+<attribute name="id"
+ type="#IMPLIED"
+ value="CDATA"
+ default=""/>
+</attlist>
+
 <element name="method-group"
          content-type="element">
 <content-model-expanded>
@@ -1902,6 +2021,10 @@
     <element-name name="functionname"/>
     <element-name name="methodname"/>
     <element-name name="classname"/>
+ <element-name name="macroname"/>
+ <element-name name="headername"/>
+ <element-name name="enumname"/>
+ <element-name name="globalname"/>
   </or-group>
 </content-model-expanded>
 <content-model>
@@ -1912,6 +2035,10 @@
     <element-name name="functionname"/>
     <element-name name="methodname"/>
     <element-name name="classname"/>
+ <element-name name="macroname"/>
+ <element-name name="headername"/>
+ <element-name name="enumname"/>
+ <element-name name="globalname"/>
   </or-group>
 </content-model>
 <purpose>Describes in one short sentence or phrase the purpose of a library</purpose>
@@ -2167,12 +2294,14 @@
   <sequence-group>
     <element-name name="paramtype"/>
     <element-name name="default" occurrence="?"/>
+ <element-name name="description" occurrence="?"/>
   </sequence-group>
 </content-model-expanded>
 <content-model>
   <sequence-group>
     <element-name name="paramtype"/>
     <element-name name="default" occurrence="?"/>
+ <element-name name="description" occurrence="?"/>
   </sequence-group>
 </content-model>
 <purpose>A function parameter</purpose>
@@ -2301,59 +2430,59 @@
            default=""/>
 </attlist>
 
- <element name="access"
- content-type="element">
- <content-model-expanded>
- <or-group occurrence="+">
- <element-name name="static-constant"/>
- <element-name name="typedef"/>
- <element-name name="enum"/>
- <element-name name="copy-assignment"/>
- <element-name name="constructor"/>
- <element-name name="destructor"/>
- <element-name name="method-group"/>
- <element-name name="method"/>
- <element-name name="overloaded-method"/>
- <element-name name="data-member"/>
- <element-name name="class"/>
- <element-name name="class-specialization"/>
- <element-name name="struct"/>
- <element-name name="struct-specialization"/>
- <element-name name="union"/>
- <element-name name="union-specialization"/>
- </or-group>
- </content-model-expanded>
- <content-model>
- <sequence-group occurrence="+">
- <parament-name name="boost.class.members"/>
- </sequence-group>
- </content-model>
+<element name="access"
+ content-type="element">
+<content-model-expanded>
+ <or-group occurrence="+">
+ <element-name name="static-constant"/>
+ <element-name name="typedef"/>
+ <element-name name="enum"/>
+ <element-name name="copy-assignment"/>
+ <element-name name="constructor"/>
+ <element-name name="destructor"/>
+ <element-name name="method-group"/>
+ <element-name name="method"/>
+ <element-name name="overloaded-method"/>
+ <element-name name="data-member"/>
+ <element-name name="class"/>
+ <element-name name="class-specialization"/>
+ <element-name name="struct"/>
+ <element-name name="struct-specialization"/>
+ <element-name name="union"/>
+ <element-name name="union-specialization"/>
+ </or-group>
+</content-model-expanded>
+<content-model>
+ <sequence-group occurrence="+">
+ <parament-name name="boost.class.members"/>
+ </sequence-group>
+</content-model>
   <purpose>Declares an access specification for class members</purpose>
 
   <description>
     <para>The access specifications of class members (public, private, or protected) may be determined by enclosing them in an &lt;access&gt; element.</para>
   </description>
- </element>
+</element>
 
- <attlist name="access">
- <attdecl>
- name CDATA #REQUIRED
- %boost.common.attrib;</attdecl>
- <attribute name="last-revision"
- type="#IMPLIED"
- value="CDATA"
- default=""/>
- <attribute name="name"
- type="#REQUIRED"
- value="CDATA"
- default="">
- <purpose>The name of the access specification, e.g. "public", "private", or "protected".</purpose>
- </attribute>
- <attribute name="id"
- type="#IMPLIED"
- value="CDATA"
- default=""/>
- </attlist>
+<attlist name="access">
+<attdecl>
+ name CDATA #REQUIRED
+ %boost.common.attrib;</attdecl>
+<attribute name="last-revision"
+ type="#IMPLIED"
+ value="CDATA"
+ default=""/>
+<attribute name="name"
+ type="#REQUIRED"
+ value="CDATA"
+ default="">
+ <purpose>The name of the access specification, e.g. "public", "private", or "protected".</purpose>
+</attribute>
+<attribute name="id"
+ type="#IMPLIED"
+ value="CDATA"
+ default=""/>
+</attlist>
 
 <element name="class"
          content-type="element">
@@ -2546,6 +2675,8 @@
 <content-model>
   <sequence-group>
     <element-name name="default" occurrence="?"/>
+ <element-name name="purpose" occurrence="?"/>
+ <element-name name="description" occurrence="?"/>
   </sequence-group>
 </content-model>
 <purpose>A single value of an enumeration</purpose>
@@ -2890,6 +3021,39 @@
            default=""/>
 </attlist>
 
+<element name="enumname"
+ content-type="mixed">
+<content-model-expanded>
+ <sequence-group>
+ <pcdata/>
+ </sequence-group>
+</content-model-expanded>
+<content-model>
+ <sequence-group>
+ <pcdata/>
+ </sequence-group>
+</content-model>
+<purpose>References an enumeration type with the given name</purpose>
+</element>
+
+<attlist name="enumname">
+<attdecl>
+ alt CDATA #IMPLIED
+ %boost.common.attrib;</attdecl>
+<attribute name="last-revision"
+ type="#IMPLIED"
+ value="CDATA"
+ default=""/>
+<attribute name="alt"
+ type="#IMPLIED"
+ value="CDATA"
+ default=""/>
+<attribute name="id"
+ type="#IMPLIED"
+ value="CDATA"
+ default=""/>
+</attlist>
+
 <element name="struct-specialization"
          content-type="element">
 <content-model-expanded>

Modified: branches/release/tools/boostbook/doc/reference.xml
==============================================================================
--- branches/release/tools/boostbook/doc/reference.xml (original)
+++ branches/release/tools/boostbook/doc/reference.xml 2009-03-14 07:42:38 EDT (Sat, 14 Mar 2009)
@@ -1,7 +1,7 @@
 <?xml version="1.0" standalone="yes"?>
-<chapter id="reference">
+<section id="reference">
   <title>Reference</title>
- <para>Elements:<itemizedlist spacing="compact"><listitem><simpara><link linkend="boostbook.dtd.access">Element <sgmltag>access</sgmltag> - Declares an access specification for class members</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.boostbook">Element <sgmltag>boostbook</sgmltag> - Defines a BoostBook book</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.class">Element <sgmltag>class</sgmltag> - Declares a class or class template</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.class-specialization">Element <sgmltag>class-specialization</sgmltag> - A specialization (partial or full) of a class template</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.code">Element <sgmltag>code</sgmltag> - Mimics the <sgmltag>code</sgmltag> tag in HTML</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.compile-fail-test">Element <sgmltag>compile-fail-test</sgmltag> - A testcase that should
fail to compile</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.compile-test">Element <sgmltag>compile-test</sgmltag> - A testcase that should compile correctly</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.complexity">Element <sgmltag>complexity</sgmltag> - The time/space/etc. complexity of a function</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.constructor">Element <sgmltag>constructor</sgmltag> - Declares a constructor of the enclosing class</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.copy-assignment">Element <sgmltag>copy-assignment</sgmltag> - Declares a copy-assignment operator</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.data-member">Element <sgmltag>data-member</sgmltag> - Declares a data member of a class</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.default">Element <sgmltag>default</sgmltag> - The default value of a function
 or template parameter</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.description">Element <sgmltag>description</sgmltag> - Detailed description of a construct</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.destructor">Element <sgmltag>destructor</sgmltag> - Declares a destructor for the enclosing class</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.effects">Element <sgmltag>effects</sgmltag> - Declares the side effects of a function</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.enum">Element <sgmltag>enum</sgmltag> - Declares an enumeration type</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.enumvalue">Element <sgmltag>enumvalue</sgmltag> - A single value of an enumeration</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.free-function-group">Element <sgmltag>free-function-group</sgmltag> - A set of functions that are grouped together under one
 name</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.function">Element <sgmltag>function</sgmltag> - Declares a function</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.functionname">Element <sgmltag>functionname</sgmltag> - References a function with the given name</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.header">Element <sgmltag>header</sgmltag> - Declares a C++ header with the given name</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.if-fails">Element <sgmltag>if-fails</sgmltag> - What it means when a testcase fails</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.inherit">Element <sgmltag>inherit</sgmltag> - Declares a base class of the enclosing class or struct</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.lib">Element <sgmltag>lib</sgmltag> - A library dependency</link></simpara></listitem><listitem><simpara><link linkend="boostbook.
dtd.library">Element <sgmltag>library</sgmltag> - Top-level element for a library</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.library-reference">Element <sgmltag>library-reference</sgmltag> - Declares the reference material for a library</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.librarycategory">Element <sgmltag>librarycategory</sgmltag> - Declares that the enclosing library is in this category</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.librarycategorydef">Element <sgmltag>librarycategorydef</sgmltag> - Defines a new library category</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.librarycategorylist">Element <sgmltag>librarycategorylist</sgmltag> - Categorized listing of libraries</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.libraryinfo">Element <sgmltag>libraryinfo</sgmltag> - Provides information about a library</link></simpara></listitem><listitem><simpa
ra><link linkend="boostbook.dtd.librarylist">Element <sgmltag>librarylist</sgmltag> - Placeholder for an alphabetical list of libraries</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.libraryname">Element <sgmltag>libraryname</sgmltag> - References a library of the given name</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.librarypurpose">Element <sgmltag>librarypurpose</sgmltag> - Describes in one short sentence or phrase the purpose of a library</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.link-fail-test">Element <sgmltag>link-fail-test</sgmltag> - Declares a test that should compile but fail to link</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.link-test">Element <sgmltag>link-test</sgmltag> - Declares a test that should compile and link</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.method">Element <sgmltag>method</sgmltag> - Declares a method, i.e., a member functi
on</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.method-group">Element <sgmltag>method-group</sgmltag> - A set of methods that are grouped together under one name</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.namespace">Element <sgmltag>namespace</sgmltag> - Declares a namespace</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.notes">Element <sgmltag>notes</sgmltag> - Non-normative notes about a function's semantics</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.overloaded-function">Element <sgmltag>overloaded-function</sgmltag> - An overloaded function</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.overloaded-method">Element <sgmltag>overloaded-method</sgmltag> - An overloaded method</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.parameter">Element <sgmltag>parameter</sgmltag> - A function parameter</link></simpara></listitem><listitem><simpa
ra><link linkend="boostbook.dtd.paramtype">Element <sgmltag>paramtype</sgmltag> - The type of a function parameter</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.postconditions">Element <sgmltag>postconditions</sgmltag> - Conditions that must hold after the function returns</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.precondition">Element <sgmltag>precondition</sgmltag> - Conditions that must be met prior to executing a function</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.programlisting">Element <sgmltag>programlisting</sgmltag> - A sample of program code</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.purpose">Element <sgmltag>purpose</sgmltag> - A short description of an entity's use</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.rationale">Element <sgmltag>rationale</sgmltag> - Describes the rationale for a particular function's design</link></simpara></listitem>
<listitem><simpara><link linkend="boostbook.dtd.requirement">Element <sgmltag>requirement</sgmltag> - A requirement/property in the Jamfile for a testcase</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.requires">Element <sgmltag>requires</sgmltag> - Declares the requirements of a function</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.returns">Element <sgmltag>returns</sgmltag> - Description of the return value of a function</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.run-fail-test">Element <sgmltag>run-fail-test</sgmltag> - A testcase that should compile and link, but fail on execution</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.run-test">Element <sgmltag>run-test</sgmltag> - A testcase that should compile, link, and execute</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.signature">Element <sgmltag>signature</sgmltag> - One signature of an overloaded function or m
ethod</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.snippet">Element <sgmltag>snippet</sgmltag> - Pulls in a code snippet from a <sgmltag>programlisting</sgmltag> element</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.source">Element <sgmltag>source</sgmltag> - Defines source code for a test</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.specialization">Element <sgmltag>specialization</sgmltag> - Defines the specialization arguments for a class specialization</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.static-constant">Element <sgmltag>static-constant</sgmltag> - Declares a static constant, e.g., <code>const int foo = 5;</code>.</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.struct">Element <sgmltag>struct</sgmltag> - Declares a C++ struct</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.struct-specialization">Element <sgmltag>struct-special
ization</sgmltag> - A specialization (full or partial) of a struct template</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.template">Element <sgmltag>template</sgmltag> - Declares the template parameters of a class or function</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.template-arg">Element <sgmltag>template-arg</sgmltag> - A template argument in a specialization</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.template-nontype-parameter">Element <sgmltag>template-nontype-parameter</sgmltag> - A nontype template parameter</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.template-type-parameter">Element <sgmltag>template-type-parameter</sgmltag> - Declares a template type parameter</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.template-varargs">Element <sgmltag>template-varargs</sgmltag> - Declares a variable-length list of template parameters</link></simpara></listitem>
<listitem><simpara><link linkend="boostbook.dtd.testsuite">Element <sgmltag>testsuite</sgmltag> - Describes a library testsuite</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.throws">Element <sgmltag>throws</sgmltag> - Description of the exceptions thrown by a function</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.type">Element <sgmltag>type</sgmltag> - The type of an element or return type of a function</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.typedef">Element <sgmltag>typedef</sgmltag> - Declares a typedef</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.union">Element <sgmltag>union</sgmltag> - Declares a C++ union or union template</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.union-specialization">Element <sgmltag>union-specialization</sgmltag> - A specialization (full or partial) of a union template</link></simpara></listitem><listitem><simpara><link linkend=
"boostbook.dtd.using-class">Element <sgmltag>using-class</sgmltag> - Injects the method and function names of a class into the local scope</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.using-namespace">Element <sgmltag>using-namespace</sgmltag> - Injects the declared names from a namespace into the local scope</link></simpara></listitem></itemizedlist></para>
+ <para>Elements:<itemizedlist spacing="compact"><listitem><simpara><link linkend="boostbook.dtd.access">Element <sgmltag>access</sgmltag> - Declares an access specification for class members</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.boostbook">Element <sgmltag>boostbook</sgmltag> - Defines a BoostBook book</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.class">Element <sgmltag>class</sgmltag> - Declares a class or class template</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.class-specialization">Element <sgmltag>class-specialization</sgmltag> - A specialization (partial or full) of a class template</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.code">Element <sgmltag>code</sgmltag> - Mimics the <sgmltag>code</sgmltag> tag in HTML</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.compile-fail-test">Element <sgmltag>compile-fail-test</sgmltag> - A testcase that should
fail to compile</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.compile-test">Element <sgmltag>compile-test</sgmltag> - A testcase that should compile correctly</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.complexity">Element <sgmltag>complexity</sgmltag> - The time/space/etc. complexity of a function</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.constructor">Element <sgmltag>constructor</sgmltag> - Declares a constructor of the enclosing class</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.copy-assignment">Element <sgmltag>copy-assignment</sgmltag> - Declares a copy-assignment operator</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.data-member">Element <sgmltag>data-member</sgmltag> - Declares a data member of a class</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.default">Element <sgmltag>default</sgmltag> - The default value of a function
 or template parameter</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.description">Element <sgmltag>description</sgmltag> - Detailed description of a construct</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.destructor">Element <sgmltag>destructor</sgmltag> - Declares a destructor for the enclosing class</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.effects">Element <sgmltag>effects</sgmltag> - Declares the side effects of a function</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.enum">Element <sgmltag>enum</sgmltag> - Declares an enumeration type</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.enumname">Element <sgmltag>enumname</sgmltag> - References an enumeration type with the given name</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.enumvalue">Element <sgmltag>enumvalue</sgmltag> - A single value of an enumeration</link></simpara></listite
m><listitem><simpara><link linkend="boostbook.dtd.free-function-group">Element <sgmltag>free-function-group</sgmltag> - A set of functions that are grouped together under one name</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.function">Element <sgmltag>function</sgmltag> - Declares a function</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.functionname">Element <sgmltag>functionname</sgmltag> - References a function with the given name</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.globalname">Element <sgmltag>globalname</sgmltag> - References a global with the given name</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.header">Element <sgmltag>header</sgmltag> - Declares a C++ header with the given name</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.headername">Element <sgmltag>headername</sgmltag> - References a C++ header with the given name</link></simpara></listitem><
listitem><simpara><link linkend="boostbook.dtd.if-fails">Element <sgmltag>if-fails</sgmltag> - What it means when a testcase fails</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.inherit">Element <sgmltag>inherit</sgmltag> - Declares a base class of the enclosing class or struct</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.lib">Element <sgmltag>lib</sgmltag> - A library dependency</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.library">Element <sgmltag>library</sgmltag> - Top-level element for a library</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.library-reference">Element <sgmltag>library-reference</sgmltag> - Declares the reference material for a library</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.librarycategory">Element <sgmltag>librarycategory</sgmltag> - Declares that the enclosing library is in this category</link></simpara></listitem><listitem><simpara><li
nk linkend="boostbook.dtd.librarycategorydef">Element <sgmltag>librarycategorydef</sgmltag> - Defines a new library category</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.librarycategorylist">Element <sgmltag>librarycategorylist</sgmltag> - Categorized listing of libraries</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.libraryinfo">Element <sgmltag>libraryinfo</sgmltag> - Provides information about a library</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.librarylist">Element <sgmltag>librarylist</sgmltag> - Placeholder for an alphabetical list of libraries</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.libraryname">Element <sgmltag>libraryname</sgmltag> - References a library of the given name</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.librarypurpose">Element <sgmltag>librarypurpose</sgmltag> - Describes in one short sentence or phrase the purpose of a library</link
></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.link-fail-test">Element <sgmltag>link-fail-test</sgmltag> - Declares a test that should compile but fail to link</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.link-test">Element <sgmltag>link-test</sgmltag> - Declares a test that should compile and link</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.macroname">Element <sgmltag>macroname</sgmltag> - References a macro with the given name</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.method">Element <sgmltag>method</sgmltag> - Declares a method, i.e., a member function</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.method-group">Element <sgmltag>method-group</sgmltag> - A set of methods that are grouped together under one name</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.namespace">Element <sgmltag>namespace</sgmltag> - Declares a namespace</link></s
impara></listitem><listitem><simpara><link linkend="boostbook.dtd.notes">Element <sgmltag>notes</sgmltag> - Non-normative notes about a function's semantics</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.overloaded-function">Element <sgmltag>overloaded-function</sgmltag> - An overloaded function</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.overloaded-method">Element <sgmltag>overloaded-method</sgmltag> - An overloaded method</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.parameter">Element <sgmltag>parameter</sgmltag> - A function parameter</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.paramtype">Element <sgmltag>paramtype</sgmltag> - The type of a function parameter</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.postconditions">Element <sgmltag>postconditions</sgmltag> - Conditions that must hold after the function returns</link></simpara></listitem><listitem><simpar
a><link linkend="boostbook.dtd.precondition">Element <sgmltag>precondition</sgmltag> - Conditions that must be met prior to executing a function</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.programlisting">Element <sgmltag>programlisting</sgmltag> - A sample of program code</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.purpose">Element <sgmltag>purpose</sgmltag> - A short description of an entity's use</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.rationale">Element <sgmltag>rationale</sgmltag> - Describes the rationale for a particular function's design</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.requirement">Element <sgmltag>requirement</sgmltag> - A requirement/property in the Jamfile for a testcase</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.requires">Element <sgmltag>requires</sgmltag> - Declares the requirements of a function</link></simpara></listitem><l
istitem><simpara><link linkend="boostbook.dtd.returns">Element <sgmltag>returns</sgmltag> - Description of the return value of a function</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.run-fail-test">Element <sgmltag>run-fail-test</sgmltag> - A testcase that should compile and link, but fail on execution</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.run-test">Element <sgmltag>run-test</sgmltag> - A testcase that should compile, link, and execute</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.signature">Element <sgmltag>signature</sgmltag> - One signature of an overloaded function or method</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.snippet">Element <sgmltag>snippet</sgmltag> - Pulls in a code snippet from a <sgmltag>programlisting</sgmltag> element</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.source">Element <sgmltag>source</sgmltag> - Defines source code for a te
st</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.specialization">Element <sgmltag>specialization</sgmltag> - Defines the specialization arguments for a class specialization</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.static-constant">Element <sgmltag>static-constant</sgmltag> - Declares a static constant, e.g., <code>const int foo = 5;</code>.</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.struct">Element <sgmltag>struct</sgmltag> - Declares a C++ struct</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.struct-specialization">Element <sgmltag>struct-specialization</sgmltag> - A specialization (full or partial) of a struct template</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.template">Element <sgmltag>template</sgmltag> - Declares the template parameters of a class or function</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.template-arg">Ele
ment <sgmltag>template-arg</sgmltag> - A template argument in a specialization</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.template-nontype-parameter">Element <sgmltag>template-nontype-parameter</sgmltag> - A nontype template parameter</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.template-type-parameter">Element <sgmltag>template-type-parameter</sgmltag> - Declares a template type parameter</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.template-varargs">Element <sgmltag>template-varargs</sgmltag> - Declares a variable-length list of template parameters</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.testsuite">Element <sgmltag>testsuite</sgmltag> - Describes a library testsuite</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.throws">Element <sgmltag>throws</sgmltag> - Description of the exceptions thrown by a function</link></simpara></listitem><listitem><simpara><li
nk linkend="boostbook.dtd.type">Element <sgmltag>type</sgmltag> - The type of an element or return type of a function</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.typedef">Element <sgmltag>typedef</sgmltag> - Declares a typedef</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.union">Element <sgmltag>union</sgmltag> - Declares a C++ union or union template</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.union-specialization">Element <sgmltag>union-specialization</sgmltag> - A specialization (full or partial) of a union template</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.using-class">Element <sgmltag>using-class</sgmltag> - Injects the method and function names of a class into the local scope</link></simpara></listitem><listitem><simpara><link linkend="boostbook.dtd.using-namespace">Element <sgmltag>using-namespace</sgmltag> - Injects the declared names from a namespace into the local scope</link>
</simpara></listitem></itemizedlist></para>
   <refentry id="boostbook.dtd.class-specialization">
     <refmeta>
       <refentrytitle>
@@ -549,7 +549,7 @@
           <tbody>
 
 <row><entry>last-revision</entry><entry>#IMPLIED</entry><entry>CDATA</entry><entry>Set to $Date$ to keep "last revised" information in sync with CVS changes</entry></row>
-<row><entry>access</entry><entry>#REQUIRED</entry><entry>CDATA</entry><entry>The access specifier ("public", "private", or "protected") of the inheritance.</entry></row>
+<row><entry>access</entry><entry>#IMPLIED</entry><entry>CDATA</entry><entry>The access specifier ("public", "private", or "protected") of the inheritance.</entry></row>
 <row><entry>id</entry><entry>#IMPLIED</entry><entry>CDATA</entry><entry>A global identifier for this element</entry></row>
 <row><entry>pack</entry><entry>#IMPLIED</entry><entry>CDATA</entry><entry>Set to '1' if this is a pack exapansion.</entry></row>
 <row><entry>xml:base</entry><entry>#IMPLIED</entry><entry>CDATA</entry><entry>Implementation detail used by XIncludes</entry></row>
@@ -720,6 +720,41 @@
       </informaltable>
     </refsection>
   </refentry>
+ <refentry id="boostbook.dtd.macroname">
+ <refmeta>
+ <refentrytitle>
+ BoostBook element <sgmltag>macroname</sgmltag></refentrytitle>
+ <manvolnum>9</manvolnum>
+ </refmeta>
+ <refnamediv>
+ <refname>macroname</refname>
+ <refpurpose/>
+ </refnamediv>
+ <refsynopsisdiv>macroname ::=
+ (#PCDATA)
+</refsynopsisdiv>
+ <refsection>
+ <title>Attributes</title>
+ <informaltable>
+ <tgroup cols="4">
+ <thead>
+ <row>
+ <entry>Name</entry>
+ <entry>Type</entry>
+ <entry>Value</entry>
+ <entry>Purpose</entry>
+ </row>
+ </thead>
+ <tbody>
+
+<row><entry>last-revision</entry><entry>#IMPLIED</entry><entry>CDATA</entry><entry>Set to $Date$ to keep "last revised" information in sync with CVS changes</entry></row>
+<row><entry>alt</entry><entry>#IMPLIED</entry><entry>CDATA</entry><entry/></row>
+<row><entry>id</entry><entry>#IMPLIED</entry><entry>CDATA</entry><entry>A global identifier for this element</entry></row>
+</tbody>
+ </tgroup>
+ </informaltable>
+ </refsection>
+ </refentry>
   <refentry id="boostbook.dtd.postconditions">
     <refmeta>
       <refentrytitle>
@@ -981,6 +1016,41 @@
   </para>
 </refsection>
   </refentry>
+ <refentry id="boostbook.dtd.headername">
+ <refmeta>
+ <refentrytitle>
+ BoostBook element <sgmltag>headername</sgmltag></refentrytitle>
+ <manvolnum>9</manvolnum>
+ </refmeta>
+ <refnamediv>
+ <refname>headername</refname>
+ <refpurpose/>
+ </refnamediv>
+ <refsynopsisdiv>headername ::=
+ (#PCDATA)
+</refsynopsisdiv>
+ <refsection>
+ <title>Attributes</title>
+ <informaltable>
+ <tgroup cols="4">
+ <thead>
+ <row>
+ <entry>Name</entry>
+ <entry>Type</entry>
+ <entry>Value</entry>
+ <entry>Purpose</entry>
+ </row>
+ </thead>
+ <tbody>
+
+<row><entry>last-revision</entry><entry>#IMPLIED</entry><entry>CDATA</entry><entry>Set to $Date$ to keep "last revised" information in sync with CVS changes</entry></row>
+<row><entry>alt</entry><entry>#IMPLIED</entry><entry>CDATA</entry><entry/></row>
+<row><entry>id</entry><entry>#IMPLIED</entry><entry>CDATA</entry><entry>A global identifier for this element</entry></row>
+</tbody>
+ </tgroup>
+ </informaltable>
+ </refsection>
+ </refentry>
   <refentry id="boostbook.dtd.free-function-group">
     <refmeta>
       <refentrytitle>
@@ -1053,6 +1123,7 @@
           <tbody>
 
 <row><entry>last-revision</entry><entry>#IMPLIED</entry><entry>CDATA</entry><entry>Set to $Date$ to keep "last revised" information in sync with CVS changes</entry></row>
+<row><entry>alt</entry><entry>#IMPLIED</entry><entry>CDATA</entry><entry/></row>
 <row><entry>id</entry><entry>#IMPLIED</entry><entry>CDATA</entry><entry>A global identifier for this element</entry></row>
 <row><entry>xml:base</entry><entry>#IMPLIED</entry><entry>CDATA</entry><entry>Implementation detail used by XIncludes</entry></row>
 </tbody>
@@ -1159,6 +1230,7 @@
           <tbody>
 
 <row><entry>last-revision</entry><entry>#IMPLIED</entry><entry>CDATA</entry><entry>Set to $Date$ to keep "last revised" information in sync with CVS changes</entry></row>
+<row><entry>specifiers</entry><entry>#IMPLIED</entry><entry>CDATA</entry><entry>The specifiers for this function, e.g., inline, static, etc.</entry></row>
 <row><entry>name</entry><entry>#REQUIRED</entry><entry>CDATA</entry><entry>The name of the element being declared to referenced</entry></row>
 <row><entry>id</entry><entry>#IMPLIED</entry><entry>CDATA</entry><entry>A global identifier for this element</entry></row>
 <row><entry>xml:base</entry><entry>#IMPLIED</entry><entry>CDATA</entry><entry>Implementation detail used by XIncludes</entry></row>
@@ -1309,6 +1381,41 @@
       </informaltable>
     </refsection>
   </refentry>
+ <refentry id="boostbook.dtd.globalname">
+ <refmeta>
+ <refentrytitle>
+ BoostBook element <sgmltag>globalname</sgmltag></refentrytitle>
+ <manvolnum>9</manvolnum>
+ </refmeta>
+ <refnamediv>
+ <refname>globalname</refname>
+ <refpurpose/>
+ </refnamediv>
+ <refsynopsisdiv>globalname ::=
+ (#PCDATA)
+</refsynopsisdiv>
+ <refsection>
+ <title>Attributes</title>
+ <informaltable>
+ <tgroup cols="4">
+ <thead>
+ <row>
+ <entry>Name</entry>
+ <entry>Type</entry>
+ <entry>Value</entry>
+ <entry>Purpose</entry>
+ </row>
+ </thead>
+ <tbody>
+
+<row><entry>last-revision</entry><entry>#IMPLIED</entry><entry>CDATA</entry><entry>Set to $Date$ to keep "last revised" information in sync with CVS changes</entry></row>
+<row><entry>alt</entry><entry>#IMPLIED</entry><entry>CDATA</entry><entry/></row>
+<row><entry>id</entry><entry>#IMPLIED</entry><entry>CDATA</entry><entry>A global identifier for this element</entry></row>
+</tbody>
+ </tgroup>
+ </informaltable>
+ </refsection>
+ </refentry>
   <refentry id="boostbook.dtd.method-group">
     <refmeta>
       <refentrytitle>
@@ -1538,7 +1645,7 @@
       <refpurpose>Describes in one short sentence or phrase the purpose of a library</refpurpose>
     </refnamediv>
     <refsynopsisdiv>librarypurpose ::=
- (#PCDATA| <link linkend="boostbook.dtd.code">code</link>| ulink| <link linkend="boostbook.dtd.functionname">functionname</link>| methodname| classname)*
+ (#PCDATA| <link linkend="boostbook.dtd.code">code</link>| ulink| <link linkend="boostbook.dtd.functionname">functionname</link>| methodname| classname| <link linkend="boostbook.dtd.macroname">macroname</link>| <link linkend="boostbook.dtd.headername">headername</link>| <link linkend="boostbook.dtd.enumname">enumname</link>| <link linkend="boostbook.dtd.globalname">globalname</link>)*
 </refsynopsisdiv>
     <refsection>
       <title>Attributes</title>
@@ -1792,7 +1899,7 @@
       <refpurpose>A function parameter</refpurpose>
     </refnamediv>
     <refsynopsisdiv>parameter ::=
- (<link linkend="boostbook.dtd.paramtype">paramtype</link>, <link linkend="boostbook.dtd.default">default</link>?)
+ (<link linkend="boostbook.dtd.paramtype">paramtype</link>, <link linkend="boostbook.dtd.default">default</link>?, <link linkend="boostbook.dtd.description">description</link>?)
 </refsynopsisdiv>
     <refsection>
       <title>Attributes</title>
@@ -1913,8 +2020,8 @@
       <refpurpose>Declares an access specification for class members</refpurpose>
     </refnamediv>
     <refsynopsisdiv>access ::=
- (<link linkend="boostbook.dtd.static-constant">static-constant</link>| <link linkend="boostbook.dtd.typedef">typedef</link>| <link linkend="boostbook.dtd.enum">enum</link>| <link linkend="boostbook.dtd.copy-assignment">copy-assignment</link>| <link linkend="boostbook.dtd.constructor">constructor</link>| <link linkend="boostbook.dtd.destructor">destructor</link>| <link linkend="boostbook.dtd.method-group">method-group</link>| <link linkend="boostbook.dtd.method">method</link>| <link linkend="boostbook.dtd.overloaded-method">overloaded-method</link>| <link linkend="boostbook.dtd.data-member">data-member</link>| <link linkend="boostbook.dtd.class">class</link>| <link linkend="boostbook.dtd.class-specialization">class-specialization</link>| <link linkend="boostbook.dtd.struct">struct</link>| <link linkend="boostbook.dtd.struct-specialization">struct-specialization</link>| <link linkend="boostbook.dtd.union">union</link>| <link linkend="boostbook.dtd.union-specialization">union-specialization</link>)+
- </refsynopsisdiv>
+ (<link linkend="boostbook.dtd.static-constant">static-constant</link>| <link linkend="boostbook.dtd.typedef">typedef</link>| <link linkend="boostbook.dtd.enum">enum</link>| <link linkend="boostbook.dtd.copy-assignment">copy-assignment</link>| <link linkend="boostbook.dtd.constructor">constructor</link>| <link linkend="boostbook.dtd.destructor">destructor</link>| <link linkend="boostbook.dtd.method-group">method-group</link>| <link linkend="boostbook.dtd.method">method</link>| <link linkend="boostbook.dtd.overloaded-method">overloaded-method</link>| <link linkend="boostbook.dtd.data-member">data-member</link>| <link linkend="boostbook.dtd.class">class</link>| <link linkend="boostbook.dtd.class-specialization">class-specialization</link>| <link linkend="boostbook.dtd.struct">struct</link>| <link linkend="boostbook.dtd.struct-specialization">struct-specialization</link>| <link linkend="boostbook.dtd.union">union</link>| <link linkend="boostbook.dtd.union-specialization">union-specialization</link>)+
+</refsynopsisdiv>
     <refsection><title>Description</title>
     <para>The access specifications of class members (public, private, or protected) may be determined by enclosing them in an &lt;access&gt; element.</para>
   </refsection>
@@ -1931,11 +2038,11 @@
             </row>
           </thead>
           <tbody>
-
- <row><entry>last-revision</entry><entry>#IMPLIED</entry><entry>CDATA</entry><entry>Set to $Date$ to keep "last revised" information in sync with CVS changes</entry></row>
- <row><entry>name</entry><entry>#REQUIRED</entry><entry>CDATA</entry><entry>The name of the access specification, e.g. "public", "private", or "protected".</entry></row>
- <row><entry>id</entry><entry>#IMPLIED</entry><entry>CDATA</entry><entry>A global identifier for this element</entry></row>
- </tbody>
+
+<row><entry>last-revision</entry><entry>#IMPLIED</entry><entry>CDATA</entry><entry>Set to $Date$ to keep "last revised" information in sync with CVS changes</entry></row>
+<row><entry>name</entry><entry>#REQUIRED</entry><entry>CDATA</entry><entry>The name of the access specification, e.g. "public", "private", or "protected".</entry></row>
+<row><entry>id</entry><entry>#IMPLIED</entry><entry>CDATA</entry><entry>A global identifier for this element</entry></row>
+</tbody>
         </tgroup>
       </informaltable>
     </refsection>
@@ -2427,6 +2534,41 @@
       </informaltable>
     </refsection>
   </refentry>
+ <refentry id="boostbook.dtd.enumname">
+ <refmeta>
+ <refentrytitle>
+ BoostBook element <sgmltag>enumname</sgmltag></refentrytitle>
+ <manvolnum>9</manvolnum>
+ </refmeta>
+ <refnamediv>
+ <refname>enumname</refname>
+ <refpurpose/>
+ </refnamediv>
+ <refsynopsisdiv>enumname ::=
+ (#PCDATA)
+</refsynopsisdiv>
+ <refsection>
+ <title>Attributes</title>
+ <informaltable>
+ <tgroup cols="4">
+ <thead>
+ <row>
+ <entry>Name</entry>
+ <entry>Type</entry>
+ <entry>Value</entry>
+ <entry>Purpose</entry>
+ </row>
+ </thead>
+ <tbody>
+
+<row><entry>last-revision</entry><entry>#IMPLIED</entry><entry>CDATA</entry><entry>Set to $Date$ to keep "last revised" information in sync with CVS changes</entry></row>
+<row><entry>alt</entry><entry>#IMPLIED</entry><entry>CDATA</entry><entry/></row>
+<row><entry>id</entry><entry>#IMPLIED</entry><entry>CDATA</entry><entry>A global identifier for this element</entry></row>
+</tbody>
+ </tgroup>
+ </informaltable>
+ </refsection>
+ </refentry>
   <refentry id="boostbook.dtd.struct-specialization">
     <refmeta>
       <refentrytitle>
@@ -2798,4 +2940,4 @@
       </informaltable>
     </refsection>
   </refentry>
-</chapter>
+</section>

Modified: branches/release/tools/boostbook/dtd/boostbook.dtd
==============================================================================
--- branches/release/tools/boostbook/dtd/boostbook.dtd (original)
+++ branches/release/tools/boostbook/dtd/boostbook.dtd 2009-03-14 07:42:38 EDT (Sat, 14 Mar 2009)
@@ -1,5 +1,5 @@
 <!--
- BoostBook DTD version 1.1
+ BoostBook DTD - development version
 
    For further information, see:
http://www.crystalclearsoftware.com/cgi-bin/boost_wiki/wiki.pl?Boost_Documentation_Format
 
@@ -11,7 +11,7 @@
    (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:
+ The latest stable 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"
@@ -313,10 +313,14 @@
     %boost.common.attrib;>
 
 <!ELEMENT macroname (#PCDATA)>
-<!ATTLIST macroname %boost.common.attrib;>
+<!ATTLIST macroname
+ alt CDATA #IMPLIED
+ %boost.common.attrib;>
 
 <!ELEMENT headername (#PCDATA)>
-<!ATTLIST headername %boost.common.attrib;>
+<!ATTLIST headername
+ alt CDATA #IMPLIED
+ %boost.common.attrib;>
 
 <!ELEMENT globalname (#PCDATA)>
 <!ATTLIST globalname
@@ -415,7 +419,7 @@
      name CDATA #IMPLIED>
 
 <!--========== Customize the DocBook DTD ==========-->
-<!ENTITY % local.tech.char.class "|functionname|libraryname|enumname|code">
+<!ENTITY % local.tech.char.class "|functionname|libraryname|enumname|headername|macroname|code">
 <!ENTITY % local.para.class
         "|using-namespace|using-class|librarylist|librarycategorylist">
 <!ENTITY % local.descobj.class "|libraryinfo">

Modified: branches/release/tools/boostbook/setup_boostbook.py
==============================================================================
--- branches/release/tools/boostbook/setup_boostbook.py (original)
+++ branches/release/tools/boostbook/setup_boostbook.py 2009-03-14 07:42:38 EDT (Sat, 14 Mar 2009)
@@ -288,12 +288,6 @@
     print "Done! Execute \"bjam --v2\" in a documentation directory to generate"
     print "documentation with BoostBook. If you have not already, you will need"
     print "to compile Boost.Jam."
- print ""
- print "WARNING FOR WIN32: please obtain a patched version of xsltproc "
- print "from http://engineering.meta-comm.com/xsltproc-win32.zip if you"
- print "are running BoostBook build on Win32 system (this patched version"
- print "solves the long-standing xsltproc problem with "
- print "creating directories for output files)."
 
 def main():
     ( tools_directory ) = accept_args( sys.argv[ 1: ] )

Modified: branches/release/tools/boostbook/xsl/annotation.xsl
==============================================================================
--- branches/release/tools/boostbook/xsl/annotation.xsl (original)
+++ branches/release/tools/boostbook/xsl/annotation.xsl 2009-03-14 07:42:38 EDT (Sat, 14 Mar 2009)
@@ -271,7 +271,16 @@
   </xsl:template>
 
   <xsl:template match="macroname" mode="annotation">
- <xsl:param name="name" select="text()"/>
+ <xsl:param name="name">
+ <xsl:choose>
+ <xsl:when test="@alt">
+ <xsl:value-of select="@alt"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="string(.)"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:param>
 
     <xsl:variable name="node" select="key('macros', $name)"/>
     <xsl:choose>
@@ -291,7 +300,7 @@
               <xsl:with-param name="node" select="$node"/>
             </xsl:call-template>
           </xsl:with-param>
- <xsl:with-param name="text" select="$name"/>
+ <xsl:with-param name="text" select="string(.)"/>
         </xsl:call-template>
       </xsl:when>
 
@@ -307,7 +316,16 @@
   </xsl:template>
 
   <xsl:template match="headername" mode="annotation">
- <xsl:param name="name" select="text()"/>
+ <xsl:variable name="name">
+ <xsl:choose>
+ <xsl:when test="@alt">
+ <xsl:value-of select="@alt"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="string(.)"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
 
     <xsl:variable name="node" select="key('headers', $name)"/>
     <xsl:choose>
@@ -327,7 +345,7 @@
               <xsl:with-param name="node" select="$node"/>
             </xsl:call-template>
           </xsl:with-param>
- <xsl:with-param name="text" select="$name"/>
+ <xsl:with-param name="text" select="string(.)"/>
         </xsl:call-template>
       </xsl:when>
 

Modified: branches/release/tools/boostbook/xsl/fo.xsl
==============================================================================
--- branches/release/tools/boostbook/xsl/fo.xsl (original)
+++ branches/release/tools/boostbook/xsl/fo.xsl 2009-03-14 07:42:38 EDT (Sat, 14 Mar 2009)
@@ -176,6 +176,8 @@
   <xsl:attribute name="padding-top">0.2cm</xsl:attribute>
   <xsl:attribute name="padding-bottom">0.2cm</xsl:attribute>
   <xsl:attribute name="keep-together.within-page">1</xsl:attribute>
+ <xsl:attribute name="margin-left">0pt</xsl:attribute>
+ <xsl:attribute name="margin-right">0pt</xsl:attribute>
 </xsl:attribute-set>
 
 <!--
@@ -200,6 +202,8 @@
   <xsl:attribute name="hyphenate">true</xsl:attribute>
   <xsl:attribute name="wrap-option">wrap</xsl:attribute>
   <xsl:attribute name="hyphenation-character">&#x21B5;</xsl:attribute>
+ <xsl:attribute name="margin-left">0pt</xsl:attribute>
+ <xsl:attribute name="margin-right">0pt</xsl:attribute>
 </xsl:attribute-set>
 
 <xsl:param name="hyphenate.verbatim" select="1"></xsl:param>

Modified: branches/release/tools/boostbook/xsl/function.xsl
==============================================================================
--- branches/release/tools/boostbook/xsl/function.xsl (original)
+++ branches/release/tools/boostbook/xsl/function.xsl 2009-03-14 07:42:38 EDT (Sat, 14 Mar 2009)
@@ -746,7 +746,7 @@
     <xsl:param name="namespace-reference" select="false()"/>
 
     <xsl:if test="$namespace-reference=false()">
- <xsl:apply-templates select="purpose/*"/>
+ <xsl:apply-templates select="purpose/*|purpose/text()"/>
     </xsl:if>
 
     <xsl:apply-templates select="description/*"/>

Modified: branches/release/tools/boostbook/xsl/html.xsl
==============================================================================
--- branches/release/tools/boostbook/xsl/html.xsl (original)
+++ branches/release/tools/boostbook/xsl/html.xsl 2009-03-14 07:42:38 EDT (Sat, 14 Mar 2009)
@@ -46,9 +46,11 @@
             select = "concat($boost.root, '/doc/html/images/')"/>
   <xsl:param name = "navig.graphics.path"
             select = "concat($boost.root, '/doc/html/images/')"/>
+ <xsl:param name = "callout.graphics.path"
+ select = "concat($boost.root, '/doc/src/images/callouts/')"/>
 
 
- <xsl:param name="admon.style">
+ <xsl:param name="admon.style">
     <!-- Remove the style. Let the CSS do the styling -->
 </xsl:param>
 

Modified: branches/release/tools/boostbook/xsl/xhtml.xsl
==============================================================================
--- branches/release/tools/boostbook/xsl/xhtml.xsl (original)
+++ branches/release/tools/boostbook/xsl/xhtml.xsl 2009-03-14 07:42:38 EDT (Sat, 14 Mar 2009)
@@ -46,9 +46,11 @@
             select = "concat($boost.root, '/doc/xhtml/images/')"/>
   <xsl:param name = "navig.graphics.path"
             select = "concat($boost.root, '/doc/xhtml/images/')"/>
+ <xsl:param name = "callout.graphics.path"
+ select = "concat($boost.root, '/doc/src/images/callouts/')"/>
 
 
- <xsl:param name="admon.style">
+ <xsl:param name="admon.style">
     <!-- Remove the style. Let the CSS do the styling -->
 </xsl:param>
 
@@ -75,6 +77,7 @@
 set toc,title
   </xsl:param>
 
+
   <xsl:template name="format.cvs.revision">
     <xsl:param name="text"/>
 
@@ -307,4 +310,3 @@
 </xsl:template>
 
 </xsl:stylesheet>
-

Modified: branches/release/tools/build/v2/tools/boostbook.jam
==============================================================================
--- branches/release/tools/build/v2/tools/boostbook.jam (original)
+++ branches/release/tools/build/v2/tools/boostbook.jam 2009-03-14 07:42:38 EDT (Sat, 14 Mar 2009)
@@ -335,6 +335,7 @@
             case htmlhelp :
             {
                 type = HTMLHELP ;
+ manifest = HTML.manifest ;
             }
             
             case onehtml : type = HTML ;

Modified: branches/release/tools/quickbook/detail/actions.cpp
==============================================================================
--- branches/release/tools/quickbook/detail/actions.cpp (original)
+++ branches/release/tools/quickbook/detail/actions.cpp 2009-03-14 07:42:38 EDT (Sat, 14 Mar 2009)
@@ -251,7 +251,11 @@
             << ", unexpected character: " << std::string(first, last)
             << "\n";
 
- out << '#'; // print out an unexpected character
+ // print out an unexpected character
+ out << "<phrase role=\"error\">";
+ while (first != last)
+ detail::print_char(*first++, out.get());
+ out << "</phrase>";
     }
 
     void anchor_action::operator()(iterator first, iterator last) const
@@ -1212,6 +1216,9 @@
         out << " <year>" << year << "</year>\n";
     }
 
+ static void write_document_title(collector& out, quickbook::actions& actions);
+ static void write_document_info(collector& out, quickbook::actions& actions);
+
     void pre(collector& out, quickbook::actions& actions, bool ignore_docinfo)
     {
         // The doc_info in the file has been parsed. Here's what we'll do
@@ -1221,7 +1228,7 @@
             actions.doc_id = detail::make_identifier(
                 actions.doc_title.begin(),actions.doc_title.end());
 
- if (actions.doc_dirname.empty())
+ if (actions.doc_dirname.empty() && actions.doc_type == "library")
             actions.doc_dirname = actions.doc_id;
 
         if (actions.doc_last_revision.empty())
@@ -1264,12 +1271,58 @@
             << "<!DOCTYPE library PUBLIC \"-//Boost//DTD BoostBook XML V1.0//EN\"\n"
             << " \"http://www.boost.org/tools/boostbook/dtd/boostbook.dtd\">\n"
             << '<' << actions.doc_type << "\n"
- << " id=\"" << actions.doc_id << "\"\n"
- << " name=\"" << actions.doc_title << "\"\n"
- << " dirname=\"" << actions.doc_dirname << "\"\n"
- << " last-revision=\"" << actions.doc_last_revision << "\" \n"
- << " xmlns:xi=\"http://www.w3.org/2001/XInclude\">\n"
- << " <" << actions.doc_type << "info>\n";
+ << " id=\"" << actions.doc_id << "\"\n";
+
+ if(actions.doc_type == "library")
+ {
+ out << " name=\"" << actions.doc_title << "\"\n";
+ }
+
+ if(!actions.doc_dirname.empty())
+ {
+ out << " dirname=\"" << actions.doc_dirname << "\"\n";
+ }
+
+ out << " last-revision=\"" << actions.doc_last_revision << "\" \n"
+ << " xmlns:xi=\"http://www.w3.org/2001/XInclude\">\n";
+
+ if(actions.doc_type == "library") {
+ write_document_info(out, actions);
+ write_document_title(out, actions);
+ }
+ else {
+ write_document_title(out, actions);
+ write_document_info(out, actions);
+ }
+ }
+
+ void post(collector& out, quickbook::actions& actions, bool ignore_docinfo)
+ {
+ // if we're ignoring the document info, do nothing.
+ if (ignore_docinfo)
+ {
+ return;
+ }
+
+ // We've finished generating our output. Here's what we'll do
+ // *after* everything else.
+ out << "\n</" << actions.doc_type << ">\n\n";
+ }
+
+ void write_document_title(collector& out, quickbook::actions& actions)
+ {
+ if (!actions.doc_title.empty())
+ {
+ out<< " <title>" << actions.doc_title;
+ if (!actions.doc_version.empty())
+ out << ' ' << actions.doc_version;
+ out<< "</title>\n\n\n";
+ }
+ }
+
+ void write_document_info(collector& out, quickbook::actions& actions)
+ {
+ out << " <" << actions.doc_type << "info>\n";
 
         if(!actions.doc_authors.empty())
         {
@@ -1328,27 +1381,6 @@
         out << " </" << actions.doc_type << "info>\n"
             << "\n"
         ;
-
- if (!actions.doc_title.empty())
- {
- out << " <title>" << actions.doc_title;
- if (!actions.doc_version.empty())
- out << ' ' << actions.doc_version;
- out << "</title>\n\n\n";
- }
- }
-
- void post(collector& out, quickbook::actions& actions, bool ignore_docinfo)
- {
- // if we're ignoring the document info, do nothing.
- if (ignore_docinfo)
- {
- return;
- }
-
- // We've finished generating our output. Here's what we'll do
- // *after* everything else.
- out << "\n</" << actions.doc_type << ">\n\n";
     }
 
     void phrase_to_string_action::operator()(iterator first, iterator last) const

Modified: branches/release/tools/quickbook/detail/post_process.cpp
==============================================================================
--- branches/release/tools/quickbook/detail/post_process.cpp (original)
+++ branches/release/tools/quickbook/detail/post_process.cpp 2009-03-14 07:42:38 EDT (Sat, 14 Mar 2009)
@@ -442,7 +442,7 @@
             else
             {
                 // fallback!
- ::quickbook::detail::outerr("",0)
+ ::quickbook::detail::outerr("")
                     << "Warning: Post Processing Failed."
                     << std::endl;
                 out << in;
@@ -453,8 +453,8 @@
         catch(...)
         {
             // fallback!
- ::quickbook::detail::outerr("",0)
- << "Warning: Post Processing Failed."
+ ::quickbook::detail::outerr("")
+ << "Post Processing Failed."
                 << std::endl;
             out << in;
             return 1;

Modified: branches/release/tools/quickbook/detail/quickbook.cpp
==============================================================================
--- branches/release/tools/quickbook/detail/quickbook.cpp (original)
+++ branches/release/tools/quickbook/detail/quickbook.cpp 2009-03-14 07:42:38 EDT (Sat, 14 Mar 2009)
@@ -88,6 +88,12 @@
                 << "Syntax Error near column " << pos.column << ".\n";
             ++actor.error_count;
         }
+
+ if(actor.error_count)
+ {
+ detail::outerr(filein_)
+ << "Error count: " << actor.error_count << ".\n";
+ }
 
         return actor.error_count ? 1 : 0;
     }
@@ -98,7 +104,7 @@
         actions actor(filein_, outdir, out);
         bool r = parse(filein_, actor);
         if (actor.section_level != 0)
- detail::outwarn(filein_,1)
+ detail::outwarn(filein_)
                 << "Warning missing [endsect] detected at end of file."
                 << std::endl;
         return r;
@@ -264,20 +270,21 @@
         }
         else
         {
- quickbook::detail::outerr("",0) << "Error: No filename given" << std::endl;
+ quickbook::detail::outerr("") << "Error: No filename given\n\n"
+ << desc << std::endl;
             return 1;
         }
     }
 
     catch(std::exception& e)
     {
- quickbook::detail::outerr("",0) << "Error: " << e.what() << "\n";
+ quickbook::detail::outerr("") << "Error: " << e.what() << "\n";
         return 1;
     }
 
     catch(...)
     {
- quickbook::detail::outerr("",0) << "Error: Exception of unknown type caught\n";
+ quickbook::detail::outerr("") << "Error: Exception of unknown type caught\n";
         return 1;
     }
 

Modified: branches/release/tools/quickbook/detail/utils.cpp
==============================================================================
--- branches/release/tools/quickbook/detail/utils.cpp (original)
+++ branches/release/tools/quickbook/detail/utils.cpp 2009-03-14 07:42:38 EDT (Sat, 14 Mar 2009)
@@ -212,7 +212,7 @@
 
         if (!in)
         {
- outerr(filename,-1) << "Could not open input file." << endl;
+ outerr(filename) << "Could not open input file." << endl;
             return 1;
         }
 

Modified: branches/release/tools/quickbook/detail/utils.hpp
==============================================================================
--- branches/release/tools/quickbook/detail/utils.hpp (original)
+++ branches/release/tools/quickbook/detail/utils.hpp 2009-03-14 07:42:38 EDT (Sat, 14 Mar 2009)
@@ -63,8 +63,8 @@
     // common IDEs. Uses the ms_errors global to determine if VS format
     // or GCC format. Returns the stream to continue ouput of the verbose
     // error message.
- std::ostream & outerr(std::string const& file, int line);
- std::ostream & outwarn(std::string const& file, int line);
+ std::ostream & outerr(std::string const& file, int line = -1);
+ std::ostream & outwarn(std::string const& file, int line = -1);
 
     // load file into memory with extra trailing newlines to eliminate
     // the need to check for end of file in the grammar.

Modified: branches/release/tools/quickbook/doc/quickbook.qbk
==============================================================================
--- branches/release/tools/quickbook/doc/quickbook.qbk (original)
+++ branches/release/tools/quickbook/doc/quickbook.qbk 2009-03-14 07:42:38 EDT (Sat, 14 Mar 2009)
@@ -461,6 +461,10 @@
 document. You can then reference an anchor with [^'''[link named_anchor
 Some link text]''']. See __anchor_links__, __section__ and __heading__.
 
+These anchors are global and can be accessed from anywhere in the
+quickbook documentation. Be careful to avoid clashes with anchors in
+other sections.
+
 [endsect]
 [section Links]
 
@@ -494,7 +498,7 @@
 You can link within a document using:
 
 [pre'''
-[link section_id.normalized_header_text The link text]
+[link document_id.section_id.normalized_header_text The link text]
 ''']
 
 See sections __section__ and __heading__ for more info.
@@ -1053,14 +1057,16 @@
 [h5 Heading 5]
 [h6 Heading 6]
 
-Headings 1-3 \[h1 h2 and h3\] will automatically have anchors with normalized
-names with [^name="section_id.normalized_header_text"] (i.e. valid characters are
-=a-z=, =A-Z=, =0-9= and =_=. All non-valid characters are converted to underscore
-and all upper-case are converted to lower-case. For example: Heading
-1 in section Section 2 will be normalized to [^section_2.heading_1]). You can use:
+Headings 1-3 \[h1 h2 and h3\] will automatically have anchors with
+normalized names with
+[^name="document_id.section_id.normalized_header_text"] (i.e. valid
+characters are =a-z=, =A-Z=, =0-9= and =_=. All non-valid characters are
+converted to underscore and all upper-case are converted to lower-case.
+For example: Heading 1 in section Section 2 will be normalized to
+[^section_2.heading_1]). You can use:
 
 [pre'''
-[link section_id.normalized_header_text The link text]
+[link document_id.section_id.normalized_header_text The link text]
 ''']
 
 to link to them. See __anchor_links__ and __section__ for more info.

Modified: branches/release/tools/quickbook/test/code-block-1.gold
==============================================================================
--- branches/release/tools/quickbook/test/code-block-1.gold (original)
+++ branches/release/tools/quickbook/test/code-block-1.gold 2009-03-14 07:42:38 EDT (Sat, 14 Mar 2009)
@@ -1,10 +1,10 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE library PUBLIC "-//Boost//DTD BoostBook XML V1.0//EN" "http://www.boost.org/tools/boostbook/dtd/boostbook.dtd">
-<article id="code_block_1" name="Code Block 1" dirname="code_block_1" last-revision="DEBUG MODE Date: 2000/12/20 12:00:00 $"
+<article id="code_block_1" last-revision="DEBUG MODE Date: 2000/12/20 12:00:00 $"
  xmlns:xi="http://www.w3.org/2001/XInclude">
+ <title>Code Block 1</title>
   <articleinfo>
   </articleinfo>
- <title>Code Block 1</title>
   <section id="code_block_1.a_code_block">
     <title>A code block</title>
     <para>

Modified: branches/release/tools/quickbook/test/code-block-2.gold
==============================================================================
--- branches/release/tools/quickbook/test/code-block-2.gold (original)
+++ branches/release/tools/quickbook/test/code-block-2.gold 2009-03-14 07:42:38 EDT (Sat, 14 Mar 2009)
@@ -1,10 +1,10 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE library PUBLIC "-//Boost//DTD BoostBook XML V1.0//EN" "http://www.boost.org/tools/boostbook/dtd/boostbook.dtd">
-<article id="code_block_2" name="Code Block 2" dirname="code_block_2" last-revision="DEBUG MODE Date: 2000/12/20 12:00:00 $"
+<article id="code_block_2" last-revision="DEBUG MODE Date: 2000/12/20 12:00:00 $"
  xmlns:xi="http://www.w3.org/2001/XInclude">
+ <title>Code Block 2</title>
   <articleinfo>
   </articleinfo>
- <title>Code Block 2</title>
   <section id="code_block_2.a_code_block">
     <title>A code block</title>
     <para>

Modified: branches/release/tools/quickbook/test/code-snippet.gold
==============================================================================
--- branches/release/tools/quickbook/test/code-snippet.gold (original)
+++ branches/release/tools/quickbook/test/code-snippet.gold 2009-03-14 07:42:38 EDT (Sat, 14 Mar 2009)
@@ -1,10 +1,10 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE library PUBLIC "-//Boost//DTD BoostBook XML V1.0//EN" "http://www.boost.org/tools/boostbook/dtd/boostbook.dtd">
-<article id="code_snippets" name="Code Snippets" dirname="code_snippets" last-revision="DEBUG MODE Date: 2000/12/20 12:00:00 $"
+<article id="code_snippets" last-revision="DEBUG MODE Date: 2000/12/20 12:00:00 $"
  xmlns:xi="http://www.w3.org/2001/XInclude">
+ <title>Code Snippets</title>
   <articleinfo>
   </articleinfo>
- <title>Code Snippets</title>
   <section id="code_snippets.a_code_snippet">
     <title>A code snippet</title>
     <para>

Modified: branches/release/tools/quickbook/test/escape.gold
==============================================================================
--- branches/release/tools/quickbook/test/escape.gold (original)
+++ branches/release/tools/quickbook/test/escape.gold 2009-03-14 07:42:38 EDT (Sat, 14 Mar 2009)
@@ -1,10 +1,9 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE library PUBLIC "-//Boost//DTD BoostBook XML V1.0//EN" "http://www.boost.org/tools/boostbook/dtd/boostbook.dtd">
-<article id="escape" name="Escape" dirname="escape" last-revision="DEBUG MODE Date: 2000/12/20 12:00:00 $"
- xmlns:xi="http://www.w3.org/2001/XInclude">
+<article id="escape" last-revision="DEBUG MODE Date: 2000/12/20 12:00:00 $" xmlns:xi="http://www.w3.org/2001/XInclude">
+ <title>Escape</title>
   <articleinfo>
   </articleinfo>
- <title>Escape</title>
   <section id="escape.escape">
     <title>Escape</title>
     <para>

Modified: branches/release/tools/quickbook/test/import.gold
==============================================================================
--- branches/release/tools/quickbook/test/import.gold (original)
+++ branches/release/tools/quickbook/test/import.gold 2009-03-14 07:42:38 EDT (Sat, 14 Mar 2009)
@@ -1,10 +1,9 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE library PUBLIC "-//Boost//DTD BoostBook XML V1.0//EN" "http://www.boost.org/tools/boostbook/dtd/boostbook.dtd">
-<article id="import" name="Import" dirname="import" last-revision="DEBUG MODE Date: 2000/12/20 12:00:00 $"
- xmlns:xi="http://www.w3.org/2001/XInclude">
+<article id="import" last-revision="DEBUG MODE Date: 2000/12/20 12:00:00 $" xmlns:xi="http://www.w3.org/2001/XInclude">
+ <title>Import</title>
   <articleinfo>
   </articleinfo>
- <title>Import</title>
   <para>
     <para>
       This is the <emphasis role="bold"><emphasis>foo</emphasis></emphasis> function.

Modified: branches/release/tools/quickbook/test/link-side-by-side.gold
==============================================================================
--- branches/release/tools/quickbook/test/link-side-by-side.gold (original)
+++ branches/release/tools/quickbook/test/link-side-by-side.gold 2009-03-14 07:42:38 EDT (Sat, 14 Mar 2009)
@@ -1,10 +1,10 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE library PUBLIC "-//Boost//DTD BoostBook XML V1.0//EN" "http://www.boost.org/tools/boostbook/dtd/boostbook.dtd">
-<article id="side_by_side_links" name="Side-by-side links" dirname="side_by_side_links"
-last-revision="DEBUG MODE Date: 2000/12/20 12:00:00 $" xmlns:xi="http://www.w3.org/2001/XInclude">
+<article id="side_by_side_links" last-revision="DEBUG MODE Date: 2000/12/20 12:00:00 $"
+ xmlns:xi="http://www.w3.org/2001/XInclude">
+ <title>Side-by-side links</title>
   <articleinfo>
   </articleinfo>
- <title>Side-by-side links</title>
   <section id="side_by_side_links.side_by_side_links">
     <title>Side-by-side links</title>
     <para>

Modified: branches/release/tools/quickbook/test/preformatted.gold
==============================================================================
--- branches/release/tools/quickbook/test/preformatted.gold (original)
+++ branches/release/tools/quickbook/test/preformatted.gold 2009-03-14 07:42:38 EDT (Sat, 14 Mar 2009)
@@ -1,10 +1,10 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE library PUBLIC "-//Boost//DTD BoostBook XML V1.0//EN" "http://www.boost.org/tools/boostbook/dtd/boostbook.dtd">
-<article id="preformatted" name="Preformatted" dirname="preformatted" last-revision="DEBUG MODE Date: 2000/12/20 12:00:00 $"
+<article id="preformatted" last-revision="DEBUG MODE Date: 2000/12/20 12:00:00 $"
  xmlns:xi="http://www.w3.org/2001/XInclude">
+ <title>Preformatted</title>
   <articleinfo>
   </articleinfo>
- <title>Preformatted</title>
   <section id="preformatted.preformatted">
     <title>Preformatted</title>
     <para>

Modified: branches/release/tools/quickbook/test/quickbook-manual.gold
==============================================================================
--- branches/release/tools/quickbook/test/quickbook-manual.gold (original)
+++ branches/release/tools/quickbook/test/quickbook-manual.gold 2009-03-14 07:42:38 EDT (Sat, 14 Mar 2009)
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE library PUBLIC "-//Boost//DTD BoostBook XML V1.0//EN" "http://www.boost.org/tools/boostbook/dtd/boostbook.dtd">
-<article id="quickbook" name="Quickbook" dirname="quickbook" last-revision="DEBUG MODE Date: 2000/12/20 12:00:00 $"
- xmlns:xi="http://www.w3.org/2001/XInclude">
+<article id="quickbook" last-revision="DEBUG MODE Date: 2000/12/20 12:00:00 $" xmlns:xi="http://www.w3.org/2001/XInclude">
+ <title>Quickbook 1.4</title>
   <articleinfo>
     <authorgroup>
     <author>
@@ -25,7 +25,6 @@
       <emphasis>WikiWiki</emphasis> style documentation tool
     </articlepurpose>
   </articleinfo>
- <title>Quickbook 1.4</title>
   <section id="quickbook.intro">
     <title><link linkend="quickbook.intro"> Introduction</link></title>
     <blockquote>

Deleted: branches/release/tools/quickbook/test/stub.xml
==============================================================================
--- branches/release/tools/quickbook/test/stub.xml 2009-03-14 07:42:38 EDT (Sat, 14 Mar 2009)
+++ (empty file)
@@ -1 +0,0 @@
-<para>This is a paragraph.</para>

Modified: branches/release/tools/quickbook/test/templates.gold
==============================================================================
--- branches/release/tools/quickbook/test/templates.gold (original)
+++ branches/release/tools/quickbook/test/templates.gold 2009-03-14 07:42:38 EDT (Sat, 14 Mar 2009)
@@ -1,69 +1,72 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE library PUBLIC "-//Boost//DTD BoostBook XML V1.0//EN" "http://www.boost.org/tools/boostbook/dtd/boostbook.dtd">
-<article id="templates" name="Templates" dirname="templates" last-revision="DEBUG MODE Date: 2000/12/20 12:00:00 $"
- xmlns:xi="http://www.w3.org/2001/XInclude">
- <articleinfo>
- </articleinfo>
- <title>Templates</title>
- <section id="templates.templates">
- <title><link linkend="templates.templates">Templates</link></title>
- <para>
- nullary_arg
- </para>
- <para>
- foo baz
- </para>
- <para>
- <para>
- foo baz
- </para>
- </para>
- <para>
- <para>
- This is a complete paragraph. kalamazoo kalamazoo kalamazoo kalamazoo kalamazoo
- kalamazoo kalamazoo kalamazoo kalamazoo.... blah blah blah......
- </para>
- </para>
- <para>
- <hey>baz</hey>
- </para>
- <para>
- <para>
- This is a complete paragraph. madagascar madagascar madagascar madagascar
- madagascar madagascar madagascar madagascar madagascar.... blah blah blah......
- </para>
- </para>
- <para>
- zoom peanut zoom
- </para>
- <para>
- exactly xanadu
- </para>
- <para>
- wx
- </para>
- <para>
- wxyz wxyz trail
- </para>
- <para>
-
-<programlisting><phrase role="keyword">int</phrase> <phrase role="identifier">main</phrase><phrase role="special">()</phrase>
-<phrase role="special">{</phrase>
- <phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">cout</phrase> <phrase role="special">&lt;&lt;</phrase> &quot;Hello, World&quot; <phrase role="special">&lt;&lt;</phrase> <phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">endl</phrase><phrase role="special">;</phrase>
-<phrase role="special">}</phrase>
-</programlisting>
- </para>
- <para>
- x<superscript>2</superscript>
- </para>
- <para>
- &alpha;<superscript>2</superscript>
- </para>
- <para>
- x<superscript>2</superscript>
- </para>
- <para>
- got a banana?
- </para>
- </section>
-</article>
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE library PUBLIC "-//Boost//DTD BoostBook XML V1.0//EN" "http://www.boost.org/tools/boostbook/dtd/boostbook.dtd">
+<article id="templates" last-revision="DEBUG MODE Date: 2000/12/20 12:00:00 $"
+ xmlns:xi="http://www.w3.org/2001/XInclude">
+ <title>Templates</title>
+ <articleinfo>
+ </articleinfo>
+ <section id="templates.templates">
+ <title><link linkend="templates.templates">Templates</link></title>
+ <para>
+ nullary_arg
+ </para>
+ <para>
+ foo baz
+ </para>
+ <para>
+ <para>
+ foo baz
+ </para>
+ </para>
+ <para>
+ <para>
+ This is a complete paragraph. kalamazoo kalamazoo kalamazoo kalamazoo kalamazoo
+ kalamazoo kalamazoo kalamazoo kalamazoo.... blah blah blah......
+ </para>
+ </para>
+ <para>
+ <hey>baz</hey>
+ </para>
+ <para>
+ <para>
+ This is a complete paragraph. madagascar madagascar madagascar madagascar
+ madagascar madagascar madagascar madagascar madagascar.... blah blah blah......
+ </para>
+ </para>
+ <para>
+ zoom peanut zoom
+ </para>
+ <para>
+ exactly xanadu
+ </para>
+ <para>
+ wx
+ </para>
+ <para>
+ wxyz wxyz trail
+ </para>
+ <para>
+
+<programlisting><phrase role="keyword">int</phrase> <phrase role="identifier">main</phrase><phrase role="special">()</phrase>
+<phrase role="special">{</phrase>
+ <phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">cout</phrase> <phrase role="special">&lt;&lt;</phrase> &quot;Hello, World&quot; <phrase role="special">&lt;&lt;</phrase> <phrase role="identifier">std</phrase><phrase role="special">::</phrase><phrase role="identifier">endl</phrase><phrase role="special">;</phrase>
+<phrase role="special">}</phrase>
+</programlisting>
+ </para>
+ <para>
+ x<superscript>2</superscript>
+ </para>
+ <para>
+ &alpha;<superscript>2</superscript>
+ </para>
+ <para>
+ x<superscript>2</superscript>
+ </para>
+ <para>
+ got a banana?
+ </para>
+ <para>
+ [join2
+ </para>
+ </section>
+</article>

Modified: branches/release/tools/quickbook/test/xinclude.gold
==============================================================================
--- branches/release/tools/quickbook/test/xinclude.gold (original)
+++ branches/release/tools/quickbook/test/xinclude.gold 2009-03-14 07:42:38 EDT (Sat, 14 Mar 2009)
@@ -1,9 +1,8 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE library PUBLIC "-//Boost//DTD BoostBook XML V1.0//EN" "http://www.boost.org/tools/boostbook/dtd/boostbook.dtd">
-<article id="include" name="Include" dirname="include" last-revision="DEBUG MODE Date: 2000/12/20 12:00:00 $"
- xmlns:xi="http://www.w3.org/2001/XInclude">
- <articleinfo>
- </articleinfo>
- <title>Include</title>
- <xi:include href="../../../../../../../../../tools/quickbook/test/stub.xml" />
-</article>
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE library PUBLIC "-//Boost//DTD BoostBook XML V1.0//EN" "http://www.boost.org/tools/boostbook/dtd/boostbook.dtd">
+<article id="include" last-revision="DEBUG MODE Date: 2000/12/20 12:00:00 $" xmlns:xi="http://www.w3.org/2001/XInclude">
+ <title>Include</title>
+ <articleinfo>
+ </articleinfo>
+ <xi:include href="../../../../../../../../../tools/quickbook/test/stub.xml" />
+</article>


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk