aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorNicola Ken Barozzi <nicolaken@apache.org>2002-04-06 09:43:12 +0000
committerNicola Ken Barozzi <nicolaken@apache.org>2002-04-06 09:43:12 +0000
commit12f6db5ca85dd5abbf27071394f497342d9b5e04 (patch)
tree0ce24dcfa17c6ce003e72616698756eae175589e /src
parent65e1d7e908bb5b2dc3d4e2e7c625056c64b21ff4 (diff)
downloadpoi-12f6db5ca85dd5abbf27071394f497342d9b5e04.tar.gz
poi-12f6db5ca85dd5abbf27071394f497342d9b5e04.zip
Adding DTDs.
git-svn-id: https://svn.apache.org/repos/asf/jakarta/poi/trunk@352338 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'src')
-rw-r--r--src/documentation/xdocs/dtd/ISOdia.pen34
-rw-r--r--src/documentation/xdocs/dtd/ISOgrk1.pen74
-rw-r--r--src/documentation/xdocs/dtd/ISOlat1.pen79
-rw-r--r--src/documentation/xdocs/dtd/ISOnum.pen109
-rw-r--r--src/documentation/xdocs/dtd/ISOpub.pen110
-rw-r--r--src/documentation/xdocs/dtd/ISOtech.pen85
-rwxr-xr-xsrc/documentation/xdocs/dtd/book-cocoon-v10.dtd70
-rw-r--r--src/documentation/xdocs/dtd/changes-v11.dtd93
-rw-r--r--src/documentation/xdocs/dtd/document-v11.dtd541
-rw-r--r--src/documentation/xdocs/dtd/faq-v11.dtd76
-rwxr-xr-xsrc/documentation/xdocs/dtd/javadoc-v04draft.dtd254
-rw-r--r--src/documentation/xdocs/dtd/project.dtd48
-rw-r--r--src/documentation/xdocs/dtd/specification-v11.dtd92
-rw-r--r--src/documentation/xdocs/dtd/todo-v11.dtd93
-rw-r--r--src/documentation/xdocs/dtd/xgump.dtd111
15 files changed, 1869 insertions, 0 deletions
diff --git a/src/documentation/xdocs/dtd/ISOdia.pen b/src/documentation/xdocs/dtd/ISOdia.pen
new file mode 100644
index 0000000000..df5c05d2ed
--- /dev/null
+++ b/src/documentation/xdocs/dtd/ISOdia.pen
@@ -0,0 +1,34 @@
+<!-- (C) International Organization for Standardization 1986
+ Permission to copy in any form is granted for use with
+ conforming SGML systems and applications as defined in
+ ISO 8879, provided this notice is included in all copies.
+-->
+<!-- Character entity set. Typical invocation:
+ <!ENTITY % ISOdia PUBLIC
+ "ISO 8879:1986//ENTITIES Diacritical Marks//EN//XML">
+ %ISOdia;
+-->
+<!-- This version of the entity set can be used with any SGML document
+ which uses ISO 10646 as its document character set.
+ This includes XML documents and ISO HTML documents.
+ This entity set uses hexadecimal numeric character references.
+
+ Creator: Rick Jelliffe, Allette Systems
+
+ Version: 1997-07-07
+-->
+
+<!ENTITY acute "&#180;" ><!--=acute accent-->
+<!ENTITY breve "&#x2D8;" ><!--=breve-->
+<!ENTITY caron "&#x2C7;" ><!--=caron-->
+<!ENTITY cedil "&#184;" ><!--=cedilla-->
+<!ENTITY circ "^" ><!--=circumflex accent-->
+<!ENTITY dblac "&#x2DD;" ><!--=double acute accent-->
+<!ENTITY die "&#168;" ><!--=dieresis-->
+<!ENTITY dot "&#x2D9;" ><!--=dot above-->
+<!ENTITY grave "`" ><!--=grave accent-->
+<!ENTITY macr "&#175;" ><!--=macron-->
+<!ENTITY ogon "&#x2DB;" ><!--=ogonek-->
+<!ENTITY ring "&#x2DA;" ><!--=ring-->
+<!ENTITY tilde "&#x2DC;" ><!--=tilde-->
+<!ENTITY uml "&#168;" ><!--=umlaut mark-->
diff --git a/src/documentation/xdocs/dtd/ISOgrk1.pen b/src/documentation/xdocs/dtd/ISOgrk1.pen
new file mode 100644
index 0000000000..cdab380fc3
--- /dev/null
+++ b/src/documentation/xdocs/dtd/ISOgrk1.pen
@@ -0,0 +1,74 @@
+<!-- (C) International Organization for Standardization 1986
+ Permission to copy in any form is granted for use with
+ conforming SGML systems and applications as defined in
+ ISO 8879, provided this notice is included in all copies.
+
+ Creator: version from ISO 8879:1986
+
+ Version: 0.21 1992-12-04
+-->
+<!-- Character entity set. Typical invocation:
+ <!ENTITY % ISOGRK1 PUBLIC
+ "ISO 9573-15:1993//ENTITIES Greek Letters//EN//XML">
+ %ISOGRK1;
+-->
+<!-- This version of the entity set can be used with any SGML document
+ which uses ISO 10646 as its document character set.
+ This includes XML documents and ISO HTML documents.
+
+ Creator: Rick Jelliffe, from HTMLlat1
+
+ Version: 1997-07-07
+-->
+
+<!ENTITY agr "&#945;" ><!--small alpha, Greek, U03B1 -->
+<!ENTITY Agr "&#913;" ><!--capital Alpha, Greek, U0391 -->
+<!ENTITY bgr "&#946;" ><!--small beta, Greek, U03B2 -->
+<!ENTITY Bgr "&#914;" ><!--capital Beta, Greek, U0392 -->
+<!ENTITY ggr "&#947;" ><!--small gamma, Greek, U03B3 -->
+<!ENTITY Ggr "&#915;" ><!--capital Gamma, Greek, U0393 -->
+<!ENTITY dgr "&#948;" ><!--small delta, Greek, U03B4 -->
+<!ENTITY Dgr "&#916;" ><!--capital Delta, Greek, U0394 -->
+<!ENTITY egr "&#949;" ><!--small epsilon, Greek, U03B5 -->
+<!ENTITY Egr "&#917;" ><!--capital Epsilon, Greek, U0395 -->
+<!ENTITY zgr "&#950;" ><!--small zeta, Greek, U03B6 -->
+<!ENTITY Zgr "&#918;" ><!--capital Zeta, Greek, U0396 -->
+<!ENTITY eegr "&#951;" ><!--small eta, Greek, U03B7 -->
+<!ENTITY EEgr "&#919;" ><!--capital Eta, Greek, U0397 -->
+<!ENTITY thgr "&#952;" ><!--small theta, Greek, U03B8 -->
+<!ENTITY THgr "&#920;" ><!--capital Theta, Greek, U0398 -->
+<!ENTITY igr "&#953;" ><!--small iota, Greek, U03B9 -->
+<!ENTITY Igr "&#921;" ><!--capital Iota, Greek, U0399 -->
+<!ENTITY kgr "&#954;" ><!--small kappa, Greek, U03BA -->
+<!ENTITY Kgr "&#922;" ><!--capital Kappa, Greek, U039A -->
+<!ENTITY lgr "&#955;" ><!--small lambda, Greek, U03BB -->
+<!ENTITY Lgr "&#923;" ><!--capital Lambda, Greek, U039B -->
+<!ENTITY mgr "&#956;" ><!--small mu, Greek, U03BC -->
+<!ENTITY Mgr "&#924;" ><!--capital Mu, Greek, U039C -->
+<!ENTITY ngr "&#957;" ><!--small nu, Greek, U03BD -->
+<!ENTITY Ngr "&#925;" ><!--capital Nu, Greek, U039D -->
+<!ENTITY xgr "&#958;" ><!--small xi, Greek, U03BE -->
+<!ENTITY Xgr "&#926;" ><!--capital Xi, Greek, U039E -->
+<!ENTITY ogr "&#959;" ><!--small omicron, Greek, U03BF -->
+<!ENTITY Ogr "&#927;" ><!--capital Omicron, Greek, U039F -->
+<!ENTITY pgr "&#960;" ><!--small pi, Greek, U03C0 -->
+<!ENTITY Pgr "&#928;" ><!--capital Pi, Greek, U03A0 -->
+<!ENTITY rgr "&#961;" ><!--small rho, Greek, U03C1 -->
+<!ENTITY Rgr "&#929;" ><!--capital Rho, Greek, U03A1 -->
+<!ENTITY sfgr "&#962;" ><!--final small sigma, Greek, U03C2 -->
+<!ENTITY sgr "&#963;" ><!--small sigma, Greek, U03C3 -->
+<!ENTITY Sgr "&#931;" ><!--capital Sigma, Greek, U03A3 -->
+<!ENTITY tgr "&#964;" ><!--small tau, Greek, U03C4 -->
+<!ENTITY Tgr "&#932;" ><!--capital Tau, Greek, U03A4 -->
+<!ENTITY ugr "&#965;" ><!--small upsilon, Greek, U03C5 -->
+<!ENTITY Ugr "&#933;" ><!--capital Upsilon, Greek, U03A5 -->
+<!ENTITY phgr "&#966;" ><!--small phi, Greek, U03C6 -->
+<!ENTITY PHgr "&#934;" ><!--capital Phi, Greek, U03A6 -->
+<!ENTITY khgr "&#967;" ><!--small chi, Greek, U03C7 -->
+<!ENTITY KHgr "&#935;" ><!--capital Chi, Greek, U03A7 -->
+<!ENTITY psgr "&#968;" ><!--small psi, Greek, U03C8 -->
+<!ENTITY PSgr "&#936;" ><!--capital Psi, Greek, U03A8 -->
+<!ENTITY ohgr "&#969;" ><!--small omega, Greek, U03C9 -->
+<!ENTITY OHgr "&#937;" ><!--capital Omega, Greek, U03A9 -->
+
+
diff --git a/src/documentation/xdocs/dtd/ISOlat1.pen b/src/documentation/xdocs/dtd/ISOlat1.pen
new file mode 100644
index 0000000000..aff4e217d4
--- /dev/null
+++ b/src/documentation/xdocs/dtd/ISOlat1.pen
@@ -0,0 +1,79 @@
+<!-- (C) International Organization for Standardization 1986
+ Permission to copy in any form is granted for use with
+ conforming SGML systems and applications as defined in
+ ISO 8879, provided this notice is included in all copies.
+-->
+<!-- Character entity set. Typical invocation:
+ <!ENTITY % ISOlat1 PUBLIC
+ "ISO 8879-1986//ENTITIES Added Latin 1//EN//XML">
+ %ISOlat1;
+-->
+<!-- This version of the entity set can be used with any SGML document
+ which uses ISO 8859-1 or ISO 10646 as its document character
+ set. This includes XML documents and ISO HTML documents.
+-->
+
+ <!ENTITY Agrave "&#192;" ><!-- capital A, grave accent -->
+ <!ENTITY Aacute "&#193;" ><!-- capital A, acute accent -->
+ <!ENTITY Acirc "&#194;" ><!-- capital A, circumflex accent -->
+ <!ENTITY Atilde "&#195;" ><!-- capital A, tilde -->
+ <!ENTITY Auml "&#196;" ><!-- capital A, dieresis or umlaut mark -->
+ <!ENTITY Aring "&#197;" ><!-- capital A, ring -->
+ <!ENTITY AElig "&#198;" ><!-- capital AE diphthong (ligature) -->
+ <!ENTITY Ccedil "&#199;" ><!-- capital C, cedilla -->
+ <!ENTITY Egrave "&#200;" ><!-- capital E, grave accent -->
+ <!ENTITY Eacute "&#201;" ><!-- capital E, acute accent -->
+ <!ENTITY Ecirc "&#202;" ><!-- capital E, circumflex accent -->
+ <!ENTITY Euml "&#203;" ><!-- capital E, dieresis or umlaut mark -->
+ <!ENTITY Igrave "&#204;" ><!-- capital I, grave accent -->
+ <!ENTITY Iacute "&#205;" ><!-- capital I, acute accent -->
+ <!ENTITY Icirc "&#206;" ><!-- capital I, circumflex accent -->
+ <!ENTITY Iuml "&#207;" ><!-- capital I, dieresis or umlaut mark -->
+ <!ENTITY ETH "&#208;" ><!-- capital Eth, Icelandic -->
+ <!ENTITY Ntilde "&#209;" ><!-- capital N, tilde -->
+ <!ENTITY Ograve "&#210;" ><!-- capital O, grave accent -->
+ <!ENTITY Oacute "&#211;" ><!-- capital O, acute accent -->
+ <!ENTITY Ocirc "&#212;" ><!-- capital O, circumflex accent -->
+ <!ENTITY Otilde "&#213;" ><!-- capital O, tilde -->
+ <!ENTITY Ouml "&#214;" ><!-- capital O, dieresis or umlaut mark -->
+ <!ENTITY Oslash "&#216;" ><!-- capital O, slash -->
+ <!ENTITY Ugrave "&#217;" ><!-- capital U, grave accent -->
+ <!ENTITY Uacute "&#218;" ><!-- capital U, acute accent -->
+ <!ENTITY Ucirc "&#219;" ><!-- capital U, circumflex accent -->
+ <!ENTITY Uuml "&#220;" ><!-- capital U, dieresis or umlaut mark -->
+ <!ENTITY Yacute "&#221;" ><!-- capital Y, acute accent -->
+ <!ENTITY THORN "&#222;" ><!-- capital THORN, Icelandic -->
+ <!ENTITY szlig "&#223;" ><!-- small sharp s, German (sz ligature) -->
+ <!ENTITY agrave "&#224;" ><!-- small a, grave accent -->
+ <!ENTITY aacute "&#225;" ><!-- small a, acute accent -->
+ <!ENTITY acirc "&#226;" ><!-- small a, circumflex accent -->
+ <!ENTITY atilde "&#227;" ><!-- small a, tilde -->
+ <!ENTITY auml "&#228;" ><!-- small a, dieresis or umlaut mark -->
+ <!ENTITY aring "&#229;" ><!-- small a, ring -->
+ <!ENTITY aelig "&#230;" ><!-- small ae diphthong (ligature) -->
+ <!ENTITY ccedil "&#231;" ><!-- small c, cedilla -->
+ <!ENTITY egrave "&#232;" ><!-- small e, grave accent -->
+ <!ENTITY eacute "&#233;" ><!-- small e, acute accent -->
+ <!ENTITY ecirc "&#234;" ><!-- small e, circumflex accent -->
+ <!ENTITY euml "&#235;" ><!-- small e, dieresis or umlaut mark -->
+ <!ENTITY igrave "&#236;" ><!-- small i, grave accent -->
+ <!ENTITY iacute "&#237;" ><!-- small i, acute accent -->
+ <!ENTITY icirc "&#238;" ><!-- small i, circumflex accent -->
+ <!ENTITY iuml "&#239;" ><!-- small i, dieresis or umlaut mark -->
+ <!ENTITY eth "&#240;" ><!-- small eth, Icelandic -->
+ <!ENTITY ntilde "&#241;" ><!-- small n, tilde -->
+ <!ENTITY ograve "&#242;" ><!-- small o, grave accent -->
+ <!ENTITY oacute "&#243;" ><!-- small o, acute accent -->
+ <!ENTITY ocirc "&#244;" ><!-- small o, circumflex accent -->
+ <!ENTITY otilde "&#245;" ><!-- small o, tilde -->
+ <!ENTITY ouml "&#246;" ><!-- small o, dieresis or umlaut mark -->
+
+ <!ENTITY oslash "&#248;" ><!-- small o, slash -->
+ <!ENTITY ugrave "&#249;" ><!-- small u, grave accent -->
+ <!ENTITY uacute "&#250;" ><!-- small u, acute accent -->
+ <!ENTITY ucirc "&#251;" ><!-- small u, circumflex accent -->
+ <!ENTITY uuml "&#252;" ><!-- small u, dieresis or umlaut mark -->
+ <!ENTITY yacute "&#253;" ><!-- small y, acute accent -->
+ <!ENTITY thorn "&#254;" ><!-- small thorn, Icelandic -->
+ <!ENTITY yuml "&#255;" ><!-- small y, dieresis or umlaut mark -->
+
diff --git a/src/documentation/xdocs/dtd/ISOnum.pen b/src/documentation/xdocs/dtd/ISOnum.pen
new file mode 100644
index 0000000000..02605bfb58
--- /dev/null
+++ b/src/documentation/xdocs/dtd/ISOnum.pen
@@ -0,0 +1,109 @@
+<!-- (C) International Organization for Standardization 1986
+ Permission to copy in any form is granted for use with
+ conforming SGML systems and applications as defined in
+ ISO 8879, provided this notice is included in all copies.
+-->
+<!-- Character entity set. Typical invocation:
+ <!ENTITY % ISOnum PUBLIC
+ "ISO 8879:1986//ENTITIES Numeric and Special Graphic//EN//XML">
+ %ISOnum;
+-->
+<!-- This version of the entity set can be used with any SGML document
+ which uses ISO 10646 as its document character set.
+ This includes XML documents and ISO HTML documents.
+ This entity set uses hexadecimal numeric character references.
+
+ Creator: Rick Jelliffe, Allette Systems
+
+ Version: 1997-07-07
+-->
+
+<!ENTITY half "&#189;" ><!--=fraction one-half-->
+<!ENTITY frac12 "&#189;" ><!--=fraction one-half-->
+<!ENTITY frac14 "&#188;" ><!--=fraction one-quarter-->
+<!ENTITY frac34 "&#190;" ><!--=fraction three-quarters-->
+<!ENTITY frac18 "&#x215B;" >
+ <!-- or "&#xB1;&#x202;&#x2044;&#x2088;" --><!--=fraction one-eighth-->
+<!ENTITY frac38 "&#x215C;" >
+ <!-- or "&#xB3;&#x2044;&#x2088;" --><!--=fraction three-eighths-->
+<!ENTITY frac58 "&#x215D;" >
+ <!-- or "&#x2075;&#x2044;&#x2088;" --><!--=fraction five-eighths-->
+<!ENTITY frac78 "&#x215E;" >
+ <!-- or "&#x2077;&#x2044;&#x2088;" --><!--=fraction seven-eighths-->
+
+<!ENTITY sup1 "&#185;" ><!--=superscript one-->
+<!ENTITY sup2 "&#178;" ><!--=superscript two-->
+<!ENTITY sup3 "&#179;" ><!--=superscript three-->
+
+<!ENTITY plus "+" ><!--=plus sign B:-->
+<!ENTITY plusmn "&#xB1;" ><!--/pm B: =plus-or-minus sign-->
+<!ENTITY lt "&#38;#60;" ><!--=less-than sign R:-->
+<!ENTITY equals "=" ><!--=equals sign R:-->
+<!ENTITY gt ">" ><!--=greater-than sign R:-->
+<!ENTITY divide "&#247;" ><!--/div B: =divide sign-->
+<!ENTITY times "&#215;" ><!--/times B: =multiply sign-->
+
+<!ENTITY curren "&#164;" ><!--=general currency sign-->
+<!ENTITY pound "&#163;" ><!--=pound sign-->
+<!ENTITY dollar "$" ><!--=dollar sign-->
+<!ENTITY cent "&#162;" ><!--=cent sign-->
+<!ENTITY yen "&#165;" ><!--/yen =yen sign-->
+
+<!ENTITY num "#" ><!--=number sign-->
+<!ENTITY percnt "&#37;" ><!--=percent sign-->
+<!ENTITY amp "&#38;#38;" ><!--=ampersand-->
+<!ENTITY ast "*" ><!--/ast B: =asterisk-->
+<!ENTITY commat "@" ><!--=commercial at-->
+<!ENTITY lsqb "[" ><!--/lbrack O: =left square bracket-->
+<!ENTITY bsol "\" ><!--/backslash =reverse solidus-->
+<!ENTITY rsqb "]" ><!--/rbrack C: =right square bracket-->
+<!ENTITY lcub "{" ><!--/lbrace O: =left curly bracket-->
+<!ENTITY horbar "&#x2015;" ><!--=horizontal bar-->
+<!ENTITY verbar "|" ><!--/vert =vertical bar-->
+<!ENTITY rcub "}" ><!--/rbrace C: =right curly bracket-->
+<!ENTITY micro "&#181;" ><!--=micro sign-->
+<!ENTITY ohm "&#2126;" ><!--=ohm sign-->
+<!ENTITY deg "&#176;" ><!--=degree sign-->
+<!ENTITY ordm "&#186;" ><!--=ordinal indicator, masculine-->
+<!ENTITY ordf "&#170;" ><!--=ordinal indicator, feminine-->
+<!ENTITY sect "&#167;" ><!--=section sign-->
+<!ENTITY para "&#182;" ><!--=pilcrow (paragraph sign)-->
+<!ENTITY middot "&#183;" ><!--/centerdot B: =middle dot-->
+<!ENTITY larr "&#x2190;" ><!--/leftarrow /gets A: =leftward arrow-->
+<!ENTITY rarr "&#x2192;" ><!--/rightarrow /to A: =rightward arrow-->
+<!ENTITY uarr "&#x2191;" ><!--/uparrow A: =upward arrow-->
+<!ENTITY darr "&#x2193;" ><!--/downarrow A: =downward arrow-->
+<!ENTITY copy "&#169;" ><!--=copyright sign-->
+<!ENTITY reg "&#174;" ><!--/circledR =registered sign-->
+<!ENTITY trade "&#8482;" ><!--=trade mark sign-->
+<!ENTITY brvbar "&#xA6;" ><!--=bren (vertical) bar-->
+<!ENTITY not "&#xAC;" ><!--/neg /lnot =not sign-->
+<!ENTITY sung "&#x266A;" ><!--=music note (sung text sign)-->
+
+<!ENTITY excl "!" ><!--=exclamation mark-->
+<!ENTITY iexcl "&#xA1;" ><!--=inverted exclamation mark-->
+<!ENTITY quot '"' ><!--=quotation mark-->
+<!ENTITY apos "'" ><!--=apostrophe-->
+<!ENTITY lpar "(" ><!--O: =left parenthesis-->
+<!ENTITY rpar ")" ><!--C: =right parenthesis-->
+<!ENTITY comma "," ><!--P: =comma-->
+<!ENTITY lowbar "_" ><!--=low line-->
+<!ENTITY hyphen "&#x2010;" ><!--=hyphen-->
+<!ENTITY period "." ><!--=full stop, period-->
+<!ENTITY sol "/" ><!--=solidus-->
+<!ENTITY colon ":" ><!--/colon P:-->
+<!ENTITY semi ";" ><!--=semicolon P:-->
+<!ENTITY quest "?" ><!--=question mark-->
+<!ENTITY iquest "&#xBF;" ><!--=inverted question mark-->
+<!ENTITY laquo "&#x2039;" ><!--=angle quotation mark, left
+ But note that Unicode 1 & Maler & el Andaloussi give &#xAB; -->
+<!ENTITY raquo "&#x203A;" ><!--=angle quotation mark, right
+ But note that Unicode 1 & Maler & el Andaloussi give &#xBB; -->
+<!ENTITY lsquo "&#x2018;" ><!--=single quotation mark, left-->
+<!ENTITY rsquo "&#x2019;" ><!--=single quotation mark, right-->
+<!ENTITY ldquo "&#x201C;" ><!--=double quotation mark, left-->
+<!ENTITY rdquo "&#x201D;" ><!--=double quotation mark, right-->
+<!ENTITY nbsp "&#160;" ><!--=no break (required) space-->
+<!ENTITY shy "&#173;" ><!--=soft hyphen-->
+
+
diff --git a/src/documentation/xdocs/dtd/ISOpub.pen b/src/documentation/xdocs/dtd/ISOpub.pen
new file mode 100644
index 0000000000..04a5732b45
--- /dev/null
+++ b/src/documentation/xdocs/dtd/ISOpub.pen
@@ -0,0 +1,110 @@
+<!-- (C) International Organization for Standardization 1986
+ Permission to copy in any form is granted for use with
+ conforming SGML systems and applications as defined in
+ ISO 8879, provided this notice is included in all copies.
+-->
+<!-- Character entity set. Typical invocation:
+ <!ENTITY % ISOpub PUBLIC
+ "ISO 8879:1986//ENTITIES Publishing//EN//XML">
+ %ISOpub;
+-->
+<!-- This version of the entity set can be used with any SGML document
+ which uses ISO 10646 as its document character set.
+ This includes XML documents and ISO HTML documents.
+ This entity set uses hexadecimal numeric character references.
+
+ Creator: Rick Jelliffe, Allette Systems
+
+ Version: 1997-07-07
+-->
+<!ENTITY emsp "&#x2003;" ><!--=em space-->
+<!ENTITY ensp "&#x2002;" ><!--=en space (1/2-em)-->
+<!ENTITY emsp13 "&#x2004;" ><!--=1/3-em space-->
+<!ENTITY emsp14 "&#x2005;" ><!--=1/4-em space-->
+<!ENTITY numsp "&#x2007;" ><!--=digit space (width of a number)-->
+<!ENTITY puncsp "&#x2008;" ><!--=punctuation space (width of comma)-->
+<!ENTITY thinsp "&#x2009;" ><!--=thin space (1/6-em)-->
+<!ENTITY hairsp "&#x200A;" ><!--=hair space-->
+<!ENTITY mdash "&#x2014;" ><!--=em dash-->
+<!ENTITY ndash "&#x2013;" ><!--=en dash-->
+<!ENTITY dash "&#x2010;" ><!--=hyphen (true graphic)-->
+<!ENTITY blank "&#x2423;" ><!--=significant blank symbol-->
+<!ENTITY hellip "&#x2026;" ><!--=ellipsis (horizontal)-->
+<!ENTITY nldr "&#x2025;" ><!--=double baseline dot (en leader)-->
+<!ENTITY frac13 "&#x2153;" ><!--=fraction one-third-->
+<!ENTITY frac23 "&#x2154;" ><!--=fraction two-thirds-->
+<!ENTITY frac15 "&#x2155;" ><!--=fraction one-fifth-->
+<!ENTITY frac25 "&#x2156;" ><!--=fraction two-fifths-->
+<!ENTITY frac35 "&#x2157;" ><!--=fraction three-fifths-->
+<!ENTITY frac45 "&#x2158;" ><!--=fraction four-fifths-->
+<!ENTITY frac16 "&#x2159;" ><!--=fraction one-sixth-->
+<!ENTITY frac56 "&#x215a;" ><!--=fraction five-sixths-->
+<!ENTITY incare "&#x2105;" ><!--=in-care-of symbol-->
+<!ENTITY block "&#x2588;" ><!--=full block-->
+<!ENTITY uhblk "&#x2580;" ><!--=upper half block-->
+<!ENTITY lhblk "&#x2584;" ><!--=lower half block-->
+<!ENTITY blk14 "&#x2591;" ><!--=25% shaded block-->
+<!ENTITY blk12 "&#x2592;" ><!--=50% shaded block-->
+<!ENTITY blk34 "&#x2593;" ><!--=75% shaded block-->
+<!ENTITY marker "&#x25AE;" ><!--=histogram marker-->
+<!ENTITY cir "&#x25CB;" ><!--/circ B: =circle, open-->
+<!ENTITY squ "&#x25A1;" ><!--=square, open-->
+<!ENTITY rect "&#x25AD;" ><!--=rectangle, open-->
+<!ENTITY utri "&#x25B5;" ><!--/triangle =up triangle, open-->
+<!ENTITY dtri "&#x25BF;" ><!--/triangledown =down triangle, open-->
+<!ENTITY star "&#x2606;" ><!--=star, open-->
+<!ENTITY bull "&#x2022;" ><!--/bullet B: =round bullet, filled-->
+<!ENTITY squf "&#x25AA;" ><!--/blacksquare =sq bullet, filled-->
+<!ENTITY utrif "&#x25B4;" ><!--/blacktriangle =up tri, filled-->
+<!ENTITY dtrif "&#x25BE;" ><!--/blacktriangledown =dn tri, filled-->
+<!ENTITY ltrif "&#x25C2;" ><!--/blacktriangleleft R: =l tri, filled-->
+<!ENTITY rtrif "&#x25B8;" ><!--/blacktriangleright R: =r tri, filled-->
+<!ENTITY clubs "&#x2663;" ><!--/clubsuit =club suit symbol-->
+<!ENTITY diams "&#x2662;" ><!--/diamondsuit =diamond suit symbol-->
+<!ENTITY hearts "&#x2661;" ><!--/heartsuit =heart suit symbol-->
+<!ENTITY spades "&#x2660;" ><!--/spadesuit =spades suit symbol-->
+<!ENTITY malt "&#x2720;" ><!--/maltese =maltese cross-->
+<!ENTITY dagger "&#x2020;" ><!--/dagger B: =dagger-->
+<!ENTITY Dagger "&#x2021;" ><!--/ddagger B: =double dagger-->
+<!ENTITY check "&#x2713;" ><!--/checkmark =tick, check mark-->
+<!ENTITY cross "&#x2717;" ><!--=ballot cross-->
+<!ENTITY sharp "&#x266F;" ><!--/sharp =musical sharp-->
+<!ENTITY flat "&#x266D;" ><!--/flat =musical flat-->
+<!ENTITY male "&#x2642;" ><!--=male symbol-->
+<!ENTITY female "&#x2640;" ><!--=female symbol-->
+<!ENTITY phone "&#x26E0;" ><!--=telephone symbol-->
+<!ENTITY telrec "&#x2315;" ><!--=telephone recorder symbol-->
+<!ENTITY copysr "&#x2117;" ><!--=sound recording copyright sign-->
+<!ENTITY caret "&#x2041;" ><!--=caret (insertion mark)-->
+<!ENTITY lsquor "&#x201A;" ><!--=rising single quote, left (low)-->
+<!ENTITY ldquor "&#x201E;" ><!--=rising dbl quote, left (low)-->
+
+<!ENTITY fflig "&#xFB00;" ><!--small ff ligature-->
+<!ENTITY filig "&#xFB01;" ><!--small fi ligature-->
+<!ENTITY fjlig "fj" ><!--small fj ligature-->
+<!ENTITY ffilig "&#xFB03;" ><!--small ffi ligature-->
+<!ENTITY ffllig "&#xFB04;" ><!--small ffl ligature-->
+<!ENTITY fllig "&#xFB02;" ><!--small fl ligature-->
+
+<!ENTITY mldr "&#x2025;" ><!--em leader-->
+<!ENTITY rdquor "&#x201D;" ><!--rising dbl quote, right (high)-->
+<!ENTITY rsquor "&#x2019;" ><!--rising single quote, right (high)-->
+<!ENTITY vellip "&#x22EE;" ><!--vertical ellipsis-->
+
+<!ENTITY hybull "&#x2043;" ><!--rectangle, filled (hyphen bullet)-->
+<!ENTITY loz "&#x2727;" ><!--/lozenge - lozenge or total mark-->
+<!ENTITY lozf "&#x2726;" ><!--/blacklozenge - lozenge, filled-->
+<!ENTITY ltri "&#x25C3;" ><!--/triangleleft B: l triangle, open-->
+<!ENTITY rtri "&#x25B9;" ><!--/triangleright B: r triangle, open-->
+<!ENTITY starf "&#x2605;" ><!--/bigstar - star, filled-->
+
+<!ENTITY natur "&#x266E;" ><!--/natural - music natural-->
+<!ENTITY rx "&#x211E;" ><!--pharmaceutical prescription (Rx)-->
+<!ENTITY sext "&#x2736;" ><!--sextile (6-pointed star)-->
+
+<!ENTITY target "&#x2316;" ><!--register mark or target-->
+<!ENTITY dlcrop "&#x230D;" ><!--downward left crop mark -->
+<!ENTITY drcrop "&#x230C;" ><!--downward right crop mark -->
+<!ENTITY ulcrop "&#x230F;" ><!--upward left crop mark -->
+<!ENTITY urcrop "&#x230E;" ><!--upward right crop mark -->
+
diff --git a/src/documentation/xdocs/dtd/ISOtech.pen b/src/documentation/xdocs/dtd/ISOtech.pen
new file mode 100644
index 0000000000..b3b39f9f1b
--- /dev/null
+++ b/src/documentation/xdocs/dtd/ISOtech.pen
@@ -0,0 +1,85 @@
+
+<!-- (C) International Organization for Standardization 1986
+ Permission to copy in any form is granted for use with
+ conforming SGML systems and applications as defined in
+ ISO 8879, provided this notice is included in all copies.
+-->
+<!-- Character entity set. Typical invocation:
+ <!ENTITY % ISOtech PUBLIC
+ "ISO 8879:1986//ENTITIES General Technical//EN//XML"
+ "ISOtech.pen">
+ %ISOtech;
+-->
+<!-- This version of the entity set can be used with any SGML document
+ which uses ISO 10646 as its document character set.
+ This includes XML documents and ISO HTML documents.
+ This entity set uses hexadecimal numeric character references.
+
+ Creator: Rick Jelliffe, Allette Systems
+
+ Version: 1997-07-07
+-->
+<!ENTITY aleph "&#x2135;" ><!--/aleph =aleph, Hebrew-->
+<!ENTITY and "&#x2227;" ><!--/wedge /land B: =logical and-->
+<!ENTITY ang90 "&#x221F;" ><!--=right (90 degree) angle-->
+<!ENTITY angsph "&#x2222;" ><!--/sphericalangle =angle-spherical-->
+<!ENTITY ap "&#x2249;" ><!--/approx R: =approximate-->
+<!ENTITY becaus "&#x2235;" ><!--/because R: =because-->
+<!ENTITY bottom "&#x22A5;" ><!--/bot B: =perpendicular-->
+<!ENTITY cap "&#x2229;" ><!--/cap B: =intersection-->
+<!ENTITY cong "&#x2245;" ><!--/cong R: =congruent with-->
+<!ENTITY conint "&#x222E;" ><!--/oint L: =contour integral operator-->
+<!ENTITY cup "&#x222A;" ><!--/cup B: =union or logical sum-->
+<!ENTITY equiv "&#x2261;" ><!--/equiv R: =identical with-->
+<!ENTITY exist "&#x2203;" ><!--/exists =at least one exists-->
+<!ENTITY forall "&#x2200;" ><!--/forall =for all-->
+<!ENTITY fnof "&#x192;" ><!--=function of (italic small f)-->
+<!ENTITY ge "&#x2265;" ><!--/geq /ge R: =greater-than-or-equal-->
+<!ENTITY iff "&#x21D4;" ><!--/iff =if and only if-->
+<!ENTITY infin "&#x221E;" ><!--/infty =infinity-->
+<!ENTITY int "&#x222B;" ><!--/int L: =integral operator-->
+<!ENTITY isin "&#x2208;" ><!--/in R: =set membership-->
+<!ENTITY lang "&#x2329;" ><!--/langle O: =left angle bracket-->
+<!ENTITY lArr "&#x21D0;" ><!--/Leftarrow A: =is implied by-->
+<!ENTITY le "&#x2264;" ><!--/leq /le R: =less-than-or-equal-->
+<!ENTITY minus "-" ><!--B: =minus sign-->
+<!ENTITY mnplus "&#x2213;" ><!--/mp B: =minus-or-plus sign-->
+<!ENTITY nabla "&#x2207;" ><!--/nabla =del, Hamilton operator-->
+<!ENTITY ne "&#x2260;" ><!--/ne /neq R: =not equal-->
+<!ENTITY ni "&#x220B;" ><!--/ni /owns R: =contains-->
+<!ENTITY or "&#x2228;" ><!--/vee /lor B: =logical or-->
+<!ENTITY par "&#x2225;" ><!--/parallel R: =parallel-->
+<!ENTITY part "&#x2202;" ><!--/partial =partial differential-->
+<!ENTITY permil "&#x2030;" ><!--=per thousand-->
+<!ENTITY perp "&#x22A5;" ><!--/perp R: =perpendicular-->
+<!ENTITY prime "&#x2032;" ><!--/prime =prime or minute-->
+<!ENTITY Prime "&#x2033;" ><!--=double prime or second-->
+<!ENTITY prop "&#x221D;" ><!--/propto R: =is proportional to-->
+<!ENTITY radic "&#x221A;" ><!--/surd =radical-->
+<!ENTITY rang "&#x232A;" ><!--/rangle C: =right angle bracket-->
+<!ENTITY rArr "&#x21D2;" ><!--/Rightarrow A: =implies-->
+<!ENTITY sim "&#x223C;" ><!--/sim R: =similar-->
+<!ENTITY sime "&#x2243;" ><!--/simeq R: =similar, equals-->
+<!ENTITY square "&#x25A1;" ><!--/square B: =square-->
+<!ENTITY sub "&#x2282;" ><!--/subset R: =subset or is implied by-->
+<!ENTITY sube "&#x2286;" ><!--/subseteq R: =subset, equals-->
+<!ENTITY sup "&#x2283;" ><!--/supset R: =superset or implies-->
+<!ENTITY supe "&#x2287;" ><!--/supseteq R: =superset, equals-->
+<!ENTITY there4 "&#x2234;" ><!--/therefore R: =therefore-->
+<!ENTITY Verbar "&#x2016;" ><!--/Vert =dbl vertical bar-->
+
+<!ENTITY angst "&#x212B;" ><!--Angstrom =capital A, ring-->
+<!ENTITY bernou "&#x212C;" ><!--Bernoulli function (script capital B)-->
+<!ENTITY compfn "&#x2218;" ><!--B: composite function (small circle)-->
+<!ENTITY Dot "&#xA8;" ><!--=dieresis or umlaut mark-->
+<!ENTITY DotDot "&#x20DC;" ><!--four dots above-->
+<!ENTITY hamilt "&#x210B;" ><!--Hamiltonian (script capital H)-->
+<!ENTITY lagran "&#x2112;" ><!--Lagrangian (script capital L)-->
+<!ENTITY lowast "&#x2217;" ><!--low asterisk-->
+<!ENTITY notin "&#x2209;" ><!--N: negated set membership-->
+<!ENTITY order "&#x2134;" ><!--order of (script small o)-->
+<!ENTITY phmmat "&#x2133;" ><!--physics M-matrix (script capital M)-->
+<!ENTITY tdot "&#x20DB;" ><!--three dots above-->
+<!ENTITY tprime "&#x2034;" ><!--triple prime-->
+<!ENTITY wedgeq "&#x2259;" ><!--R: corresponds to (wedge, equals)-->
+
diff --git a/src/documentation/xdocs/dtd/book-cocoon-v10.dtd b/src/documentation/xdocs/dtd/book-cocoon-v10.dtd
new file mode 100755
index 0000000000..abd4410672
--- /dev/null
+++ b/src/documentation/xdocs/dtd/book-cocoon-v10.dtd
@@ -0,0 +1,70 @@
+<!-- ===================================================================
+
+ Apache Cocoon Documentation Book DTD (Version 1.0)
+
+PURPOSE:
+This DTD defines the */book.xml documentation configuration files.
+
+TYPICAL INVOCATION:
+
+ <!DOCTYPE book PUBLIC
+ "-//APACHE//DTD Cocoon Documentation Book Vx.yz//EN"
+ "book-cocoon-vxyz.dtd">
+
+ where
+
+ x := major version
+ y := minor version
+ z := status identifier (optional)
+
+NOTES:
+We need to replace this DTD with the proper one.
+We are only using this DTD to enable validation during "build docs"
+because every XML instance must declare its ruleset.
+
+This initial minimal DTD has been reverse-engineered from the structure
+of the current documents, e.g.
+ documentation/xdocs/book.xml
+
+AUTHORS:
+ David Crossley <crossley@apache.org>
+
+FIXME:
+ - find the proper DTD for book.xml
+
+CHANGE HISTORY:
+ 20011031 Initial version. (DC)
+
+COPYRIGHT:
+ Copyright (c) @year@ The Apache Software Foundation.
+
+ Permission to copy in any form is granted provided this notice is
+ included in all copies. Permission to redistribute is granted
+ provided this file is distributed untouched in all its parts and
+ included files.
+
+==================================================================== -->
+
+<!ELEMENT book (menu+)>
+<!ELEMENT menu (menu-item|external)*>
+<!ELEMENT menu-item EMPTY>
+<!ELEMENT external EMPTY>
+<!ATTLIST book software CDATA #REQUIRED
+ title CDATA #REQUIRED
+ copyright CDATA #REQUIRED
+ xmlns:xlink CDATA #IMPLIED
+>
+<!ATTLIST menu label CDATA #REQUIRED
+>
+<!ATTLIST menu-item label CDATA #REQUIRED
+ href CDATA #REQUIRED
+ type (visible|hidden) "visible"
+>
+<!ATTLIST external label CDATA #REQUIRED
+ href CDATA #REQUIRED
+ type (visible|hidden) "visible"
+>
+
+<!-- =============================================================== -->
+<!-- End of DTD -->
+<!-- =============================================================== -->
diff --git a/src/documentation/xdocs/dtd/changes-v11.dtd b/src/documentation/xdocs/dtd/changes-v11.dtd
new file mode 100644
index 0000000000..e753a9bb12
--- /dev/null
+++ b/src/documentation/xdocs/dtd/changes-v11.dtd
@@ -0,0 +1,93 @@
+<!-- ===================================================================
+
+ Apache Changes DTD (Version 1.1)
+
+PURPOSE:
+ This DTD was developed to create a simple yet powerful document
+ type for software development changes for use with the Apache projects.
+ It is an XML-compliant DTD and it's maintained by the Apache XML
+ project.
+
+TYPICAL INVOCATION:
+
+ <!DOCTYPE document PUBLIC
+ "-//APACHE//DTD Changes Vx.y//EN"
+ "changes-vxy.dtd">
+
+ where
+
+ x := major version
+ y := minor version
+
+NOTES:
+ It is important, expecially in open developped software projects, to keep
+ track of software changes both to give users indications of bugs that might
+ have been resolved, as well, and not less important, to provide credits
+ for the support given to the project. It is considered vital to provide
+ adequate payback using recognition and credits to let users and developers
+ feel part of the community, thus increasing development power.
+
+AUTHORS:
+ Stefano Mazzocchi <stefano@apache.org>
+
+FIXME:
+
+CHANGE HISTORY:
+[Version 1.0]
+ 19991129 Initial version. (SM)
+ 20000316 Added bugfixing attribute. (SM)
+[Version 1.1]
+ 20011212 Used public identifiers for external entities (SM)
+
+COPYRIGHT:
+ Copyright (c) @year@ The Apache Software Foundation.
+
+ Permission to copy in any form is granted provided this notice is
+ included in all copies. Permission to redistribute is granted
+ provided this file is distributed untouched in all its parts and
+ included files.
+
+==================================================================== -->
+
+<!-- =============================================================== -->
+<!-- Include the Documentation DTD -->
+<!-- =============================================================== -->
+
+<!ENTITY % document PUBLIC
+ "-//APACHE//DTD Documentation V1.1//EN"
+ "document-v11.dtd">
+%document;
+
+<!-- =============================================================== -->
+<!-- Common entities -->
+<!-- =============================================================== -->
+
+<!ENTITY % types "add|remove|update|fix">
+
+<!-- =============================================================== -->
+<!-- Document Type Definition -->
+<!-- =============================================================== -->
+
+<!ELEMENT changes (devs, release*)>
+<!ATTLIST changes %common.att;
+ %title.att;>
+
+ <!ELEMENT devs (person+)>
+ <!ATTLIST devs %common.att;>
+
+ <!ELEMENT release (action+)>
+ <!ATTLIST release %common.att;
+ version CDATA #REQUIRED
+ date CDATA #REQUIRED>
+
+ <!ELEMENT action (%content.mix;)*>
+ <!ATTLIST action %common.att;
+ dev IDREF #REQUIRED
+ type (%types;) #IMPLIED
+ due-to CDATA #IMPLIED
+ due-to-email CDATA #IMPLIED
+ fixes-bug CDATA #IMPLIED>
+
+<!-- =============================================================== -->
+<!-- End of DTD -->
+<!-- =============================================================== -->
diff --git a/src/documentation/xdocs/dtd/document-v11.dtd b/src/documentation/xdocs/dtd/document-v11.dtd
new file mode 100644
index 0000000000..64252b6734
--- /dev/null
+++ b/src/documentation/xdocs/dtd/document-v11.dtd
@@ -0,0 +1,541 @@
+<!-- ===================================================================
+
+ Apache Documentation DTD (Version 1.1)
+
+PURPOSE:
+ This DTD was developed to create a simple yet powerful document
+ type for software documentation for use with the Apache projects.
+ It is an XML-compliant DTD and it's maintained by the Apache XML
+ project.
+
+TYPICAL INVOCATION:
+
+ <!DOCTYPE document PUBLIC
+ "-//APACHE//DTD Documentation Vx.y//EN"
+ "document-vxy.dtd">
+
+ where
+
+ x := major version
+ y := minor version
+
+NOTES:
+ Many of the design patterns used in this DTD were take from the
+ W3C XML Specification DTD edited by Eve Maler <elm@arbortext.com>.
+
+ Where possible, great care has been used to reuse HTML tag
+ names to reduce learning efforts and to allow HTML editors to be
+ used for complex authorings like tables and lists.
+
+EXTENSIBILITY:
+ This DTD includes several empty placeholders that can be used to
+ extend it. These placeholders are implemented with empty entities. Here
+ is the list of those empty entities and what they are used for:
+
+ - local.inline: this entity should contain extended definitions of
+ elements that can be used 'inline', or directly inside
+ the content. An example for this entity could be
+
+ <!ENTITY % local.inline "|citation">
+
+ - local.blocks: this entity should contain extended definitions of
+ elements that behave as 'blocks', thus can be visually
+ rendered as areas on the canvas. An example for this
+ entity could be:
+
+ <!ENTITY % local.blocks "|poem">
+
+ - local.sections: this entity should contain extended definitions of
+ elements that behave as 'sections', thus can be considered
+ containers of block-level elements. An example for
+ this entity could be:
+
+ <!ENTITY % local.sections "|chapter">
+
+ - local.headers: this entity should contain extended definitions of
+ elements that behave as parts of the document header.
+ An example for this header could be:
+
+ <!ENTITY % local.headers ", notes?">
+
+ - local.footers: this entity should contain extended definitions of
+ elements that behave as parts of the document footer.
+ An example for this header could be:
+
+ <!ENTITY % local.footers ", annotations*">
+
+
+AUTHORS:
+ Stefano Mazzocchi <stefano@apache.org>
+ Steven Noels <stevenn@outerthought.org>
+
+FIXME:
+ - should "form" tags be included?
+
+CHANGE HISTORY:
+[Version 1.0]
+ 19991121 Initial version. (SM)
+ 19991123 Replaced "res" with more standard "strong" for emphasis. (SM)
+ 19991124 Added "fork" element for window forking behavior. (SM)
+ 19991124 Added "img-inline" element to separate from "img". (SM)
+ 19991129 Removed "affiliation" from "author". (SM)
+ 19991129 Made "author" empty and moved "name|email" as attributes. (SM)
+ 19991215 Simplified table section. (SM)
+ 19991215 Changed "img-block" in more friendly "figure". (SM)
+ 20000125 Added the "icon" image. (SM)
+ 20000126 Allowed "anchor" in all levels. (SM)
+ 20000404 Removed the "role" attribute from common-xxx.att. (SM)
+ 20000815 Allowed "code" inside "strong" and "em". (SM)
+[Version 1.1]
+ 20011212 Used public identifiers for external entities. (SM)
+ 20011212 Removed xlink attributes since not used. (SM)
+ 20011212 Removed "connect" since not required at this level. (SM)
+ 20011218 Added "warning" as a block level object. (SM)
+ 20011218 Removed explicitly numbered sections ("s1|s2|s3|s4"). (SM)
+ 20011218 Added "section" element. (SM)
+ 20011218 Allowed "body" to have blocks without a section. (SM)
+ 20011218 Removed "sl" since not really different from "ul". (SM)
+ 20020214 Moved empty placeholder entity declarations up front (SNS)
+ 20020214 Corrected content model of content.mix parameter entity (SNS)
+
+COPYRIGHT:
+ Copyright (c) @year@ The Apache Software Foundation.
+
+ Permission to copy in any form is granted provided this notice is
+ included in all copies. Permission to redistribute is granted
+ provided this file is distributed untouched in all its parts and
+ included files.
+
+==================================================================== -->
+
+
+
+
+<!-- =============================================================== -->
+<!-- Common character entities (included from external file) -->
+<!-- =============================================================== -->
+
+<!ENTITY % ISOlat1 PUBLIC
+ "ISO 8879:1986//ENTITIES Added Latin 1//EN//XML"
+ "ISOlat1.pen">
+%ISOlat1;
+
+<!ENTITY % ISOpub PUBLIC
+ "ISO 8879:1986//ENTITIES Publishing//EN//XML"
+ "ISOpub.pen">
+%ISOpub;
+
+<!ENTITY % ISOtech PUBLIC
+ "ISO 8879:1986//ENTITIES General Technical//EN//XML"
+ "ISOtech.pen">
+%ISOtech;
+
+<!ENTITY % ISOnum PUBLIC
+ "ISO 8879:1986//ENTITIES Numeric and Special Graphic//EN//XML"
+ "ISOnum.pen">
+%ISOnum;
+
+<!ENTITY % ISOdia PUBLIC
+ "ISO 8879:1986//ENTITIES Diacritical Marks//EN//XML"
+ "ISOdia.pen">
+%ISOdia;
+
+<!-- =============================================================== -->
+<!-- Useful entities for increased DTD readability -->
+<!-- =============================================================== -->
+
+<!ENTITY % text "#PCDATA">
+
+<!-- Entities referred to later on are defined up front -->
+
+<!ENTITY % markup "strong|em|code|sub|sup">
+<!ENTITY % special-inline "br|img|icon">
+<!ENTITY % links "link|jump|fork">
+<!ENTITY % paragraphs "p|source|note|warning|fixme">
+<!ENTITY % tables "table">
+<!ENTITY % lists "ol|ul|dl">
+<!ENTITY % special-blocks "figure|anchor">
+
+
+<!-- =============================================================== -->
+<!-- Entities for general XML compliance -->
+<!-- =============================================================== -->
+
+<!-- Common attributes
+ Every element has an ID attribute (sometimes required,
+ but usually optional) for links. %common.att;
+ is for common attributes where the ID is optional, and
+ %common-idreq.att; is for common attributes where the
+ ID is required.
+-->
+<!ENTITY % common.att
+ 'id ID #IMPLIED
+ xml:lang NMTOKEN #IMPLIED'>
+<!ENTITY % common-idreq.att
+ 'id ID #REQUIRED
+ xml:lang NMTOKEN #IMPLIED'>
+
+
+<!-- xml:space attribute ===============================================
+ Indicates that the element contains white space
+ that the formatter or other application should retain,
+ as appropriate to its function.
+==================================================================== -->
+<!ENTITY % xmlspace.att
+ 'xml:space (default|preserve) #FIXED "preserve"'>
+
+
+<!-- def attribute =====================================================
+ Points to the element where the relevant definition can be
+ found, using the IDREF mechanism. %def.att; is for optional
+ def attributes, and %def-req.att; is for required def
+ attributes.
+==================================================================== -->
+<!ENTITY % def.att
+ 'def IDREF #IMPLIED'>
+<!ENTITY % def-req.att
+ 'def IDREF #REQUIRED'>
+
+
+<!-- ref attribute =====================================================
+ Points to the element where more information can be found,
+ using the IDREF mechanism. %ref.att; is for optional
+ ref attributes, and %ref-req.att; is for required ref
+ attributes.
+================================================================== -->
+<!ENTITY % ref.att
+ 'ref IDREF #IMPLIED'>
+<!ENTITY % ref-req.att
+ 'ref IDREF #REQUIRED'>
+
+
+<!-- =============================================================== -->
+<!-- Entities for general usage -->
+<!-- =============================================================== -->
+
+
+<!-- Key attribute =====================================================
+ Optionally provides a sorting or indexing key, for cases when
+ the element content is inappropriate for this purpose.
+==================================================================== -->
+<!ENTITY % key.att
+ 'key CDATA #IMPLIED'>
+
+
+
+<!-- Title attributes ==================================================
+ Indicates that the element requires to have a title attribute.
+==================================================================== -->
+<!ENTITY % title.att
+ 'title CDATA #REQUIRED'>
+
+
+
+<!-- Name attributes ==================================================
+ Indicates that the element requires to have a name attribute.
+==================================================================== -->
+<!ENTITY % name.att
+ 'name CDATA #REQUIRED'>
+
+
+
+<!-- Email attributes ==================================================
+ Indicates that the element requires to have an email attribute.
+==================================================================== -->
+<!ENTITY % email.att
+ 'email CDATA #REQUIRED'>
+
+
+<!-- Link attributes ===================================================
+ Indicates that the element requires to have hyperlink attributes.
+==================================================================== -->
+
+<!ENTITY % link.att
+ 'href CDATA #IMPLIED
+ role CDATA #IMPLIED
+ title CDATA #IMPLIED '>
+
+
+
+<!-- =============================================================== -->
+<!-- General definitions -->
+<!-- =============================================================== -->
+
+<!-- A person is a general human entity -->
+<!ELEMENT person EMPTY>
+<!ATTLIST person %common.att;
+ %name.att;
+ %email.att;>
+
+
+
+<!-- =============================================================== -->
+<!-- Content definitions -->
+<!-- =============================================================== -->
+
+<!ENTITY % local.inline "">
+
+<!ENTITY % link-content.mix "%text;|%markup;|%special-inline; %local.inline;">
+
+<!ENTITY % content.mix "%link-content.mix;|%links;">
+
+ <!-- ==================================================== -->
+ <!-- Phrase Markup -->
+ <!-- ==================================================== -->
+
+ <!-- Strong (typically bold) -->
+ <!ELEMENT strong (%text;|code)*>
+ <!ATTLIST strong %common.att;>
+
+ <!-- Emphasis (typically italic) -->
+ <!ELEMENT em (%text;|code)*>
+ <!ATTLIST em %common.att;>
+
+ <!-- Code (typically monospaced) -->
+ <!ELEMENT code (%text;)>
+ <!ATTLIST code %common.att;>
+
+ <!-- Superscript (typically smaller and higher) -->
+ <!ELEMENT sup (%text;)>
+ <!ATTLIST sup %common.att;>
+
+ <!-- Subscript (typically smaller and lower) -->
+ <!ELEMENT sub (%text;)>
+ <!ATTLIST sub %common.att;>
+
+ <!-- ==================================================== -->
+ <!-- Hypertextual Links -->
+ <!-- ==================================================== -->
+
+ <!-- hyperlink (equivalent of <a ...>) -->
+ <!ELEMENT link (%link-content.mix;)*>
+ <!ATTLIST link %common.att;
+ %link.att;>
+
+ <!-- windows-replacing link (equivalent of <a ... target="_top">) -->
+ <!ELEMENT jump (%link-content.mix;)*>
+ <!ATTLIST jump %common.att;
+ %link.att;>
+
+ <!-- window-forking link (equivalent of <a ... target="_new">) -->
+ <!ELEMENT fork (%link-content.mix;)*>
+ <!ATTLIST fork %common.att;
+ %link.att;>
+
+ <!-- ==================================================== -->
+ <!-- Specials -->
+ <!-- ==================================================== -->
+
+ <!-- Breakline Object (typically forces line break) -->
+ <!ELEMENT br EMPTY>
+ <!ATTLIST br %common.att;>
+
+ <!-- Image Object (typically an inlined image) -->
+ <!ELEMENT img EMPTY>
+ <!ATTLIST img src CDATA #REQUIRED
+ alt CDATA #REQUIRED
+ height CDATA #IMPLIED
+ width CDATA #IMPLIED
+ usemap CDATA #IMPLIED
+ ismap (ismap) #IMPLIED
+ %common.att;>
+
+ <!-- Image Icon (typically an inlined image placed as graphical item) -->
+ <!ELEMENT icon EMPTY>
+ <!ATTLIST icon src CDATA #REQUIRED
+ alt CDATA #REQUIRED
+ height CDATA #IMPLIED
+ width CDATA #IMPLIED
+ %common.att;>
+
+
+<!-- =============================================================== -->
+<!-- Blocks definitions -->
+<!-- =============================================================== -->
+
+<!ENTITY % local.blocks "">
+
+<!ENTITY % blocks "%paragraphs;|%tables;|%lists;|%special-blocks; %local.blocks;">
+
+ <!-- ==================================================== -->
+ <!-- Paragraphs -->
+ <!-- ==================================================== -->
+
+ <!-- Text Paragraph (normally vertically space delimited) -->
+ <!ELEMENT p (%content.mix;)*>
+ <!ATTLIST p %common.att;>
+
+ <!-- Source Paragraph (normally space is preserved) -->
+ <!ELEMENT source (%content.mix;)*>
+ <!ATTLIST source %common.att;
+ %xmlspace.att;>
+
+ <!-- Note Paragraph (normally shown encapsulated) -->
+ <!ELEMENT note (%content.mix;)*>
+ <!ATTLIST note %common.att;>
+
+ <!-- Warning Paragraph (normally shown with eye-catching colors) -->
+ <!ELEMENT warning (%content.mix;)*>
+ <!ATTLIST warning %common.att;>
+
+ <!-- Fixme Paragraph (normally not shown) -->
+ <!ELEMENT fixme (%content.mix;)*>
+ <!ATTLIST fixme author CDATA #REQUIRED
+ %common.att;>
+
+ <!-- ==================================================== -->
+ <!-- Tables -->
+ <!-- ==================================================== -->
+
+ <!-- Attributes that indicate the spanning of the table cell -->
+ <!ENTITY % cell.span
+ 'colspan CDATA "1"
+ rowspan CDATA "1"'>
+
+ <!-- Table element -->
+ <!ELEMENT table (caption?, tr+)>
+ <!ATTLIST table %common.att;>
+
+ <!-- The table title -->
+ <!ELEMENT caption (%content.mix;)*>
+ <!ATTLIST caption %common.att;>
+
+ <!-- The table row element -->
+ <!ELEMENT tr (th|td)+>
+ <!ATTLIST tr %common.att;>
+
+ <!-- The table row header element -->
+ <!ELEMENT th (%content.mix;)*>
+ <!ATTLIST th %common.att;
+ %cell.span;>
+
+ <!-- The table row description element -->
+ <!ELEMENT td (%content.mix;)*>
+ <!ATTLIST td %common.att;
+ %cell.span;>
+
+ <!-- ==================================================== -->
+ <!-- Lists -->
+ <!-- ==================================================== -->
+
+ <!-- List item -->
+ <!ELEMENT li (%content.mix;|%lists;)*>
+ <!ATTLIST li %common.att;>
+
+ <!-- Unordered list (typically bulleted) -->
+ <!ELEMENT ul (li|%lists;)+>
+ <!-- spacing attribute:
+ Use "normal" to get normal vertical spacing for items;
+ use "compact" to get less spacing. The default is dependent
+ on the stylesheet. -->
+ <!ATTLIST ul
+ %common.att;
+ spacing (normal|compact) #IMPLIED>
+
+ <!-- Ordered list (typically numbered) -->
+ <!ELEMENT ol (li|%lists;)+>
+ <!-- spacing attribute:
+ Use "normal" to get normal vertical spacing for items;
+ use "compact" to get less spacing. The default is dependent
+ on the stylesheet. -->
+ <!ATTLIST ol
+ %common.att;
+ spacing (normal|compact) #IMPLIED>
+
+ <!-- Definition list (typically two-column) -->
+ <!ELEMENT dl (dt,dd)+>
+ <!ATTLIST dl %common.att;>
+
+ <!-- Definition term -->
+ <!ELEMENT dt (%content.mix;)*>
+ <!ATTLIST dt %common.att;>
+
+ <!-- Definition description -->
+ <!ELEMENT dd (%content.mix;)*>
+ <!ATTLIST dd %common.att;>
+
+ <!-- ==================================================== -->
+ <!-- Special Blocks -->
+ <!-- ==================================================== -->
+
+ <!-- Image Block (typically a separated and centered image) -->
+ <!ELEMENT figure EMPTY>
+ <!ATTLIST figure src CDATA #REQUIRED
+ alt CDATA #REQUIRED
+ height CDATA #IMPLIED
+ width CDATA #IMPLIED
+ usemap CDATA #IMPLIED
+ ismap (ismap) #IMPLIED
+ %common.att;>
+
+ <!-- anchor point (equivalent of <a name="...">, typically not rendered) -->
+ <!ELEMENT anchor EMPTY>
+ <!ATTLIST anchor %common-idreq.att;>
+
+
+<!-- =============================================================== -->
+<!-- Document -->
+<!-- =============================================================== -->
+
+<!ELEMENT document (header?, body, footer?)>
+<!ATTLIST document %common.att;>
+
+ <!-- ==================================================== -->
+ <!-- Header -->
+ <!-- ==================================================== -->
+
+ <!ENTITY % local.headers "">
+
+ <!ELEMENT header (title, subtitle?, version?, type?, authors,
+ notice*, abstract? %local.headers;)>
+ <!ATTLIST header %common.att;>
+
+ <!ELEMENT title (%text;)>
+ <!ATTLIST title %common.att;>
+
+ <!ELEMENT subtitle (%text;)>
+ <!ATTLIST subtitle %common.att;>
+
+ <!ELEMENT version (%text;)>
+ <!ATTLIST version %common.att;>
+
+ <!ELEMENT type (%text;)>
+ <!ATTLIST type %common.att;>
+
+ <!ELEMENT authors (person+)>
+ <!ATTLIST authors %common.att;>
+
+ <!ELEMENT notice (%content.mix;)*>
+ <!ATTLIST notice %common.att;>
+
+ <!ELEMENT abstract (%content.mix;)*>
+ <!ATTLIST abstract %common.att;>
+
+ <!-- ==================================================== -->
+ <!-- Body -->
+ <!-- ==================================================== -->
+
+ <!ENTITY % local.sections "">
+
+ <!ENTITY % sections "section %local.sections;">
+
+ <!ELEMENT body (%sections;|%blocks;)+>
+ <!ATTLIST body %common.att;>
+
+ <!ELEMENT section (%sections;|%blocks;)*>
+ <!ATTLIST section %title.att; %common.att;>
+
+ <!-- ==================================================== -->
+ <!-- Footer -->
+ <!-- ==================================================== -->
+
+ <!ENTITY % local.footers "">
+
+ <!ELEMENT footer (legal %local.footers;)>
+
+ <!ELEMENT legal (%content.mix;)*>
+ <!ATTLIST legal %common.att;>
+
+<!-- =============================================================== -->
+<!-- End of DTD -->
+<!-- =============================================================== -->
diff --git a/src/documentation/xdocs/dtd/faq-v11.dtd b/src/documentation/xdocs/dtd/faq-v11.dtd
new file mode 100644
index 0000000000..abaa043865
--- /dev/null
+++ b/src/documentation/xdocs/dtd/faq-v11.dtd
@@ -0,0 +1,76 @@
+<!-- ===================================================================
+
+ Apache FAQ DTD (Version 1.1)
+
+PURPOSE:
+ This DTD was developed to create a simple yet powerful document
+ type for software FAQ's for use with the Apache projects.
+ It is an XML-compliant DTD and it's maintained by the Apache XML
+ project.
+
+TYPICAL INVOCATION:
+
+ <!DOCTYPE document PUBLIC
+ "-//APACHE//DTD FAQ Vx.y//EN"
+ "faq-vxy.dtd">
+
+ where
+
+ x := major version
+ y := minor version
+
+NOTES:
+ FAQs represent a powerful knowledge base and a very good way of solving
+ common user problems reducing messages on mail lists and reducing the effort
+ required for software installation and usage. Thid DTD want to be a common
+ format for FAQ interchange to allow FAQ-O-Matic-type workgroup services to
+ be published in other formats as well as enhancing data interchange.
+
+AUTHORS:
+ Stefano Mazzocchi <stefano@apache.org>
+
+FIXME:
+
+CHANGE HISTORY:
+ 19991129 Initial version. (SM)
+ 20011212 Used public identifiers for external entities (SM)
+
+COPYRIGHT:
+ Copyright (c) @year@ The Apache Software Foundation.
+
+ Permission to copy in any form is granted provided this notice is
+ included in all copies. Permission to redistribute is granted
+ provided this file is distributed untouched in all its parts and
+ included files.
+
+==================================================================== -->
+
+<!-- =============================================================== -->
+<!-- Include the Documentation DTD -->
+<!-- =============================================================== -->
+
+<!ENTITY % document PUBLIC
+ "-//APACHE//DTD Documentation V1.1//EN"
+ "document-v11.dtd">
+%document;
+
+<!-- =============================================================== -->
+<!-- Document Type Definition -->
+<!-- =============================================================== -->
+
+<!ELEMENT faqs (authors?, faq)+>
+<!ATTLIST faqs %common.att;
+ %title.att;>
+
+ <!ELEMENT faq (question, answer)>
+ <!ATTLIST faq %common.att;>
+
+ <!ELEMENT question (%content.mix;)*>
+ <!ATTLIST question %common.att;>
+
+ <!ELEMENT answer (%blocks;)*>
+ <!ATTLIST answer author IDREF #IMPLIED>
+
+<!-- =============================================================== -->
+<!-- End of DTD -->
+<!-- =============================================================== -->
diff --git a/src/documentation/xdocs/dtd/javadoc-v04draft.dtd b/src/documentation/xdocs/dtd/javadoc-v04draft.dtd
new file mode 100755
index 0000000000..3a4301a4d1
--- /dev/null
+++ b/src/documentation/xdocs/dtd/javadoc-v04draft.dtd
@@ -0,0 +1,254 @@
+<!-- ===================================================================
+
+ Apache JavaDoc DTD (version 0.4-draft)
+
+PURPOSE:
+ This DTD is designed to capture the output of JavaDoc as an XML document
+ through the use of the JavaDocXML Doclet. The hope is that by having the
+ JavaDoc documentation in an XML format, it will be easier for application
+ developers working with XML to treat their java source documentation in the
+ same way they treat any other XML document within their publication framework.
+
+ This DTD should reflect the information contained within the RootDoc object
+ passed to the JavaDocXML Doclet by JavaDoc. The RootDoc object and the rest
+ of the javaDoc Doclet API is specified at
+
+ http://java.sun.com/products/jdk/1.2/docs/tooldocs/javadoc/doclet/index.html
+
+ The only information that appears to be difficult to derive from this DTD
+ that is easy to obtain from the RootDoc object is the information about
+ serialization. However, this information should be derivable by manually
+ looking for the correct serialization methods and other related structures.
+
+TYPICAL INVOCATION:
+
+ <!DOCTYPE document PUBLIC
+ "-//APACHE//DTD JavaDoc Vx.yz//EN"
+ "javadoc-vxyz.dtd">
+
+ where
+
+ x := major version
+ y := minor version
+ z := status identifier (optional)
+
+NOTES:
+ The authors would like to thank the Cocoon's mail list subscribers for
+ providing such great support and feedback for this DTD.
+
+AUTHORS:
+ Kenneth Murphy <murphyk@umsystem.edu>
+
+FIXME:
+
+CHANGE HISTORY:
+ 199909?? Original idea of XML doclet. (KM)
+ 199910?? Initial version of this DTD. (KM)
+ 19991129 Cleaned up DTD. (SM)
+
+COPYRIGHT:
+ Copyright (c) @year@ The Apache Software Foundation.
+
+ Permission to copy in any form is granted provided this notice is
+ included in all copies. Permission to redistribute is granted
+ provided this file is distributed untouched in all its parts and
+ included files.
+
+==================================================================== -->
+
+<!-- =============================================================== -->
+<!-- Common Attribute Entities -->
+<!-- =============================================================== -->
+
+<!ENTITY % name 'name CDATA #REQUIRED'>
+<!ENTITY % dimension 'dimension CDATA #REQUIRED'>
+
+<!ENTITY % abstract 'abstract (true | false) "false"'>
+<!ENTITY % anonymous 'anonymous (true | false) "false"'>
+<!ENTITY % synthetic 'synthetic (true | false) "false"'>
+<!ENTITY % static 'static (true | false) "false"'>
+<!ENTITY % final 'final (true | false) "false"'>
+<!ENTITY % transient 'transient (true | false) "false"'>
+<!ENTITY % volatile 'volatile (true | false) "false"'>
+<!ENTITY % native 'native (true | false) "false"'>
+<!ENTITY % synchronized 'synchronized (true | false) "false"'>
+
+<!ENTITY % access 'access (private | package | protected | public) "package"'>
+<!ENTITY % class.access 'access (package | public) "package"'>
+
+<!ENTITY % extensibility 'extensibility (abstract | final | default) "default"'>
+
+
+<!-- =============================================================== -->
+<!-- Javadoc -->
+<!-- =============================================================== -->
+
+<!ELEMENT javadoc (package*, class*, interface*)>
+
+<!-- =============================================================== -->
+<!-- Package -->
+<!-- =============================================================== -->
+
+<!ELEMENT package (doc?, package*, class*, interface*)>
+<!ATTLIST package %name;>
+
+<!-- =============================================================== -->
+<!-- Class -->
+<!-- =============================================================== -->
+
+<!ELEMENT class (doc?,
+ extends_class?,
+ implements?,
+ field*,
+ constructor*,
+ method*,
+ innerclass*)>
+<!ATTLIST class
+ %name;
+ %extensibility;
+ %class.access;>
+
+<!ELEMENT extends_class (classref+)>
+
+<!ELEMENT innerclass (doc?,
+ extends?,
+ implements?,
+ field*,
+ constructor*,
+ method*)>
+<!ATTLIST innerclass
+ %name;
+ %access;
+ %abstract;
+ %anonymous;
+ %final;
+ %static;>
+
+<!-- =============================================================== -->
+<!-- Interface -->
+<!-- =============================================================== -->
+
+<!ELEMENT interface (doc?,
+ extends_interface?,
+ field*,
+ method*)>
+<!ATTLIST interface
+ %name;
+ %access;>
+
+<!ELEMENT extends_interface (interfaceref+)>
+
+<!-- =============================================================== -->
+<!-- Elements -->
+<!-- =============================================================== -->
+
+<!ELEMENT implements (interfaceref+)>
+
+<!ELEMENT throws (classref)+>
+
+<!ELEMENT classref EMPTY>
+<!ATTLIST classref %name;>
+
+<!ELEMENT interfaceref EMPTY>
+<!ATTLIST interfaceref %name;>
+
+<!ELEMENT methodref EMPTY>
+<!ATTLIST methodref %name;>
+
+<!ELEMENT packageref EMPTY>
+<!ATTLIST packageref %name;>
+
+<!ELEMENT primitive EMPTY>
+<!ATTLIST primitive
+ type (void | boolean | int | long | byte | short | double | float | char) #REQUIRED>
+
+<!ELEMENT field (doc?, (classref | interfaceref | primitive))>
+<!ATTLIST field
+ %name;
+ %access;
+ %dimension;
+ %synthetic;
+ %static;
+ %final;
+ %transient;
+ %volatile;>
+
+<!ELEMENT constructor (doc?, parameter*, throws*)>
+<!ATTLIST constructor
+ %name;
+ %access;
+ %synthetic;>
+
+<!ELEMENT method (doc?, returns, parameter*, throws*)>
+<!ATTLIST method
+ %name;
+ %access;
+ %extensibility;
+ %native;
+ %synthetic;
+ %static;
+ %synchronized;>
+
+<!ELEMENT returns (classref | interfaceref | primitive)>
+<!ATTLIST returns %dimension;>
+
+<!ELEMENT parameter (classref | interfaceref | primitive)>
+<!ATTLIST parameter
+ %name;
+ %final;
+ %dimension;>
+
+<!ELEMENT dimension (#PCDATA)>
+
+<!ELEMENT doc (#PCDATA |
+ linktag |
+ authortag |
+ versiontag |
+ paramtag |
+ returntag |
+ exceptiontag |
+ throwstag |
+ seetag |
+ sincetag |
+ deprecatedtag |
+ serialtag |
+ serialfieldtag |
+ serialdatatag)*>
+
+<!ELEMENT linktag (#PCDATA)>
+<!ATTLIST linktag
+ src CDATA #REQUIRED>
+
+<!ELEMENT authortag (#PCDATA | linktag)*>
+
+<!ELEMENT versiontag (#PCDATA | linktag)*>
+
+<!ELEMENT paramtag (#PCDATA | linktag)*>
+<!ATTLIST paramtag %name;>
+
+<!ELEMENT returntag (#PCDATA | linktag)*>
+
+<!ELEMENT exceptiontag (#PCDATA | classref | linktag)*>
+
+<!ELEMENT throwstag (#PCDATA | classref | linktag)*>
+
+<!ELEMENT seetag (#PCDATA | linktag)*>
+<!ATTLIST seetag
+ src CDATA #REQUIRED>
+
+<!ELEMENT sincetag (#PCDATA | linktag)*>
+
+<!ELEMENT deprecatedtag (#PCDATA | linktag)*>
+
+<!ELEMENT serialtag (#PCDATA | linktag)*>
+
+<!ELEMENT serialfieldtag (#PCDATA | linktag)*>
+<!ATTLIST serialfieldtag
+ fieldname CDATA #REQUIRED
+ fieldtype CDATA #REQUIRED>
+
+<!ELEMENT serialdatatag (#PCDATA | linktag)*>
+
+<!-- =============================================================== -->
+<!-- End of DTD -->
+<!-- =============================================================== -->
diff --git a/src/documentation/xdocs/dtd/project.dtd b/src/documentation/xdocs/dtd/project.dtd
new file mode 100644
index 0000000000..cb48c333af
--- /dev/null
+++ b/src/documentation/xdocs/dtd/project.dtd
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+
+<!ELEMENT module ( project* ) >
+<!ELEMENT description ( #PCDATA ) >
+<!ELEMENT url EMPTY >
+<!ELEMENT cvs EMPTY >
+<!ELEMENT ant ( property | depend )* >
+<!ELEMENT depend EMPTY >
+<!ELEMENT property EMPTY >
+<!ELEMENT work EMPTY >
+<!ELEMENT home EMPTY >
+<!ELEMENT jar EMPTY >
+
+<!ATTLIST module
+ name CDATA #REQUIRED >
+
+<!ATTLIST url
+ href CDATA #REQUIRED >
+
+<!ATTLIST cvs
+ repository CDATA #REQUIRED
+ host-prefix CDATA #IMPLIED
+ dir CDATA #IMPLIED >
+
+<!ATTLIST ant
+ target CDATA #REQUIRED
+ buildfile CDATA #IMPLIED
+ basedir CDATA #IMPLIED >
+
+<!ATTLIST depend
+ project CDATA #REQUIRED
+ property CDATA #IMPLIED
+ version CDATA #IMPLIED
+ id CDATA #IMPLIED >
+
+<!ATTLIST property
+ name CDATA #REQUIRED
+ value CDATA #REQUIRED >
+
+<!ATTLIST work
+ nested CDATA #REQUIRED >
+
+<!ATTLIST home
+ nested CDATA #REQUIRED >
+
+<!ATTLIST jar
+ name CDATA #REQUIRED
+ id CDATA #IMPLIED >
diff --git a/src/documentation/xdocs/dtd/specification-v11.dtd b/src/documentation/xdocs/dtd/specification-v11.dtd
new file mode 100644
index 0000000000..b61242728b
--- /dev/null
+++ b/src/documentation/xdocs/dtd/specification-v11.dtd
@@ -0,0 +1,92 @@
+<!-- ===================================================================
+
+ Apache Specification DTD (Version 1.1)
+
+PURPOSE:
+ This DTD was developed to create a simple yet powerful document
+ type for software specifications for use with the Apache projects.
+ It is an XML-compliant DTD and it's maintained by the Apache XML
+ project.
+
+TYPICAL INVOCATION:
+
+ <!DOCTYPE document PUBLIC
+ "-//APACHE//DTD Specification Vx.y//EN"
+ "specification-vxy.dtd">
+
+ where
+
+ x := major version
+ y := minor version
+
+NOTES:
+
+AUTHORS:
+ Stefano Mazzocchi <stefano@apache.org>
+
+FIXME:
+
+CHANGE HISTORY:
+[Version 1.0]
+ 19991129 Initial version. (SM)
+[Version 1.1]
+ 20011212 Used public identifiers for external entities (SM)
+
+COPYRIGHT:
+ Copyright (c) @year@ The Apache Software Foundation.
+
+ Permission to copy in any form is granted provided this notice is
+ included in all copies. Permission to redistribute is granted
+ provided this file is distributed untouched in all its parts and
+ included files.
+
+==================================================================== -->
+
+<!-- =============================================================== -->
+<!-- Include the Documentation DTD -->
+<!-- =============================================================== -->
+
+<!ENTITY % document PUBLIC
+ "-//APACHE//DTD Documentation V1.1//EN"
+ "document-v11.dtd">
+%document;
+
+
+<!-- =============================================================== -->
+<!-- Extend the Documentation DTD -->
+<!-- =============================================================== -->
+
+<!-- extend the local.xxx entities -->
+<!ENTITY % local.blocks "|bl">
+
+
+<!-- =============================================================== -->
+<!-- Document Type Definition -->
+<!-- =============================================================== -->
+
+<!ELEMENT specification (header?, body, appendices?, footer?)>
+<!ATTLIST specification %common.att;>
+
+ <!ELEMENT appendices (%sections;)+>
+ <!ATTLIST appendices %common.att;>
+
+<!-- =============================================================== -->
+<!-- Bibliography List -->
+<!-- =============================================================== -->
+
+ <!-- Bibliography list -->
+ <!ELEMENT bl (bi)+>
+ <!ATTLIST bl %common.att;>
+
+ <!-- Book item -->
+ <!ELEMENT bi EMPTY>
+ <!ATTLIST bi %common.att;
+ %name.att;
+ %title.att;
+ %link.att;
+ authors CDATA #REQUIRED
+ date CDATA #IMPLIED>
+
+<!-- =============================================================== -->
+<!-- End of DTD -->
+<!-- =============================================================== -->
diff --git a/src/documentation/xdocs/dtd/todo-v11.dtd b/src/documentation/xdocs/dtd/todo-v11.dtd
new file mode 100644
index 0000000000..3aaaa14dbd
--- /dev/null
+++ b/src/documentation/xdocs/dtd/todo-v11.dtd
@@ -0,0 +1,93 @@
+<!-- ===================================================================
+
+ Apache Todos DTD (Version 1.1)
+
+PURPOSE:
+ This DTD was developed to create a simple yet powerful document
+ type for software development todo lists for use with the Apache projects.
+ It is an XML-compliant DTD and it's maintained by the Apache XML
+ project.
+
+TYPICAL INVOCATION:
+
+ <!DOCTYPE document PUBLIC
+ "-//APACHE//DTD Todo Vx.y//EN"
+ "todo-vxy.dtd">
+
+ where
+
+ x := major version
+ y := minor version
+
+NOTES:
+ It is important, expecially in open developped software projects, to keep
+ track of software changes that need to be done, planned features, development
+ assignment, etc. in order to allow better work parallelization and create
+ an entry point for people that want to help. This DTD wants to provide
+ a solid foundation to provide such information and to allow it to be
+ published as well as distributed in a common format.
+
+AUTHORS:
+ Stefano Mazzocchi <stefano@apache.org>
+
+FIXME:
+ - do we need anymore working contexts? (SM)
+
+CHANGE HISTORY:
+[Version 1.0]
+ 19991129 Initial version. (SM)
+ 19991225 Added actions element for better structure (SM)
+[Version 1.1]
+ 20011212 Used public identifiers for external entities (SM)
+
+COPYRIGHT:
+ Copyright (c) @year@ The Apache Software Foundation.
+
+ Permission to copy in any form is granted provided this notice is
+ included in all copies. Permission to redistribute is granted
+ provided this file is distributed untouched in all its parts and
+ included files.
+
+==================================================================== -->
+
+<!-- =============================================================== -->
+<!-- Include the Documentation DTD -->
+<!-- =============================================================== -->
+
+<!ENTITY % document PUBLIC
+ "-//APACHE//DTD Documentation V1.1//EN"
+ "document-v11.dtd">
+%document;
+
+
+<!-- =============================================================== -->
+<!-- Common entities -->
+<!-- =============================================================== -->
+
+<!ENTITY % priorities "showstopper|high|medium|low|wish|dream">
+
+<!ENTITY % contexts "build|docs|code|admin|design">
+
+<!-- =============================================================== -->
+<!-- Document Type Definition -->
+<!-- =============================================================== -->
+
+<!ELEMENT todo (devs, actions*)>
+<!ATTLIST todo %common.att;
+ %title.att;>
+
+ <!ELEMENT devs (person+)>
+ <!ATTLIST devs %common.att;>
+
+ <!ELEMENT actions (action+)>
+ <!ATTLIST actions %common.att;
+ priority (%priorities;) #IMPLIED>
+
+ <!ELEMENT action (%content.mix;)*>
+ <!ATTLIST action %common.att;
+ assigned-to IDREF #IMPLIED
+ context (%contexts;) #REQUIRED>
+
+<!-- =============================================================== -->
+<!-- End of DTD -->
+<!-- =============================================================== -->
diff --git a/src/documentation/xdocs/dtd/xgump.dtd b/src/documentation/xdocs/dtd/xgump.dtd
new file mode 100644
index 0000000000..4bcb214b7c
--- /dev/null
+++ b/src/documentation/xdocs/dtd/xgump.dtd
@@ -0,0 +1,111 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+
+<!ELEMENT module ( url, cvs, mailing-lists, description, detailed, what, why, who, todo, changes, licence, credits, project* ) >
+<!ELEMENT url EMPTY >
+<!ELEMENT cvs EMPTY >
+<!ELEMENT mailing-lists ( mailing-list ) >
+<!ELEMENT mailing-list EMPTY >
+<!ELEMENT description ( #PCDATA ) >
+<!ELEMENT detailed ( #PCDATA ) >
+<!ELEMENT what ( goal+ ) >
+<!ELEMENT goal ( #PCDATA ) >
+<!ELEMENT why ( #PCDATA ) >
+<!ELEMENT who ( person+ ) >
+<!ELEMENT person EMPTY >
+<!ELEMENT todo ( actions ) >
+<!ELEMENT actions ( action+ ) >
+<!ELEMENT changes ( release ) >
+<!ELEMENT release ( action+ ) >
+<!ELEMENT action ( #PCDATA ) >
+<!ELEMENT licence ( #PCDATA ) >
+<!ELEMENT credits ( credit+ ) >
+<!ELEMENT credit ( #PCDATA ) >
+<!ELEMENT project ( ant | depend | description | home | jar | javadoc | package | url | version | work )* >
+<!ELEMENT ant ( property | depend )* >
+<!ELEMENT property EMPTY >
+<!ELEMENT depend EMPTY >
+<!ELEMENT description ( #PCDATA ) >
+<!ELEMENT home EMPTY >
+<!ELEMENT jar EMPTY >
+<!ELEMENT javadoc EMPTY >
+<!ELEMENT package ( #PCDATA ) >
+<!ELEMENT version EMPTY >
+<!ELEMENT work EMPTY >
+
+
+<!ATTLIST module
+ name CDATA #REQUIRED >
+
+<!ATTLIST url
+ href CDATA #REQUIRED >
+
+<!ATTLIST cvs
+ repository CDATA #REQUIRED
+ host-prefix CDATA #IMPLIED
+ dir CDATA #IMPLIED >
+
+<!ATTLIST mailing-list
+ mail CDATA #REQUIRED
+ subscribe CDATA #REQUIRED
+ unsubscribe CDATA #REQUIRED
+ user NMTOKEN #REQUIRED>
+
+<!ATTLIST person
+ email CDATA #REQUIRED
+ id NMTOKEN #REQUIRED
+ name CDATA #REQUIRED>
+
+<!ATTLIST actions
+ priority NMTOKEN #REQUIRED >
+
+<!ATTLIST action
+ assigned-to NMTOKEN #IMPLIED
+ context NMTOKEN #IMPLIED
+ dev ( DC | NKB | SM | SN ) #IMPLIED
+ due-to CDATA #IMPLIED
+ due-to-email CDATA #IMPLIED
+ type ( add | update ) #IMPLIED >
+
+<!ATTLIST ant
+ target CDATA #REQUIRED
+ buildfile CDATA #IMPLIED
+ basedir CDATA #IMPLIED >
+
+<!ATTLIST depend
+ project CDATA #REQUIRED
+ property CDATA #IMPLIED
+ version CDATA #IMPLIED
+ id CDATA #IMPLIED >
+
+<!ATTLIST property
+ name CDATA #REQUIRED
+ value CDATA #REQUIRED >
+
+<!ATTLIST work
+ nested CDATA #REQUIRED >
+
+<!ATTLIST home
+ nested CDATA #REQUIRED >
+
+<!ATTLIST jar
+ name CDATA #REQUIRED
+ id CDATA #IMPLIED >
+
+<!ATTLIST release
+ date NMTOKEN #REQUIRED
+ version NMTOKEN #REQUIRED >
+
+<!ATTLIST javadoc
+ parent CDATA #REQUIRED >
+
+<!ATTLIST depend
+ project NMTOKEN #REQUIRED >
+
+<!ATTLIST project
+ name NMTOKEN #REQUIRED >
+
+<!ATTLIST version
+ major NMTOKEN #REQUIRED
+ minor NMTOKEN #REQUIRED
+ tag NMTOKEN #REQUIRED
+ fix NMTOKEN #REQUIRED >