You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jdo-dev@db.apache.org by ti...@apache.org on 2019/12/09 22:32:51 UTC

[db-jdo-site] 04/04: Regenerated html / README.md

This is an automated email from the ASF dual-hosted git repository.

tilmannz pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/db-jdo-site.git

commit 372b0071ea24503afe40daff98124093ee8d3e06
Author: Tilmann <zo...@gmx.de>
AuthorDate: Mon Dec 9 22:31:42 2019 +0000

    Regenerated html / README.md
---
 README.md                                          |   6 -
 docs/annotations.html                              |   8 +-
 docs/attach_detach.html                            |   8 +-
 docs/class_types.html                              |   8 +-
 docs/dependencies.html                             |   8 +-
 docs/downloads.html                                |  20 +-
 docs/enhancement.html                              |   8 +-
 docs/exceptions.html                               |   8 +-
 docs/extents.html                                  |   8 +-
 docs/faq.html                                      |   8 +-
 docs/fetchgroups.html                              |   8 +-
 docs/field_types.html                              |   8 +-
 docs/get-involved.html                             |   8 +-
 docs/glossary.html                                 |   8 +-
 docs/{jdoql.html => guides-maven-jdo.html}         | 442 ++++++++++-----------
 docs/{class_types.html => guides-replication.html} | 189 ++++++---
 docs/guides.html                                   |   8 +-
 docs/impls.html                                    |   8 +-
 docs/index.html                                    |   8 +-
 docs/issuetracking.html                            |   8 +-
 docs/javadoc.html                                  |   8 +-
 docs/jdo_3_0_overview.html                         |   8 +-
 docs/jdo_dtd.html                                  |   8 +-
 docs/jdo_v_jpa.html                                |   8 +-
 docs/jdo_v_jpa_api.html                            |   8 +-
 docs/jdo_v_jpa_orm.html                            |   8 +-
 docs/jdoconfig_dtd.html                            |   8 +-
 docs/jdohelper.html                                |   8 +-
 docs/jdoql.html                                    |   8 +-
 docs/jdoql_methods.html                            |   8 +-
 docs/jdoql_result.html                             |   8 +-
 docs/jdoquery_dtd.html                             |   8 +-
 docs/mail-lists.html                               |   8 +-
 docs/metadata.html                                 |   8 +-
 docs/newshistory.html                              |   8 +-
 docs/object_retrieval.html                         |   8 +-
 docs/orm_dtd.html                                  |   8 +-
 docs/pm.html                                       |   8 +-
 docs/pmf.html                                      |   8 +-
 docs/references.html                               |   8 +-
 docs/{jdoql_result.html => release-3.0.1.html}     | 215 +++++-----
 docs/{jdoql_result.html => release-3.1-rc1.html}   | 200 ++++------
 docs/{jdoql_result.html => release-3.1.html}       | 281 ++++++++-----
 docs/roadmap.html                                  |   8 +-
 docs/specifications.html                           |   8 +-
 docs/state_transition.html                         |   8 +-
 docs/svn.html                                      |   8 +-
 docs/tck.html                                      |  11 +-
 docs/team-list.html                                |   8 +-
 docs/transactions.html                             |   8 +-
 docs/why_jdo.html                                  |   8 +-
 51 files changed, 811 insertions(+), 897 deletions(-)

diff --git a/README.md b/README.md
index 9530200..d8f1d9b 100644
--- a/README.md
+++ b/README.md
@@ -23,12 +23,6 @@ How to build the website:
  * Go to Github.com and create a PR for your branch
  * Once th PR is accepted, the changes should be visible on the website (you may have to refresh the browser). 
 
-
-### TODO Asciidoc 
- * JDO Usage -> Guides are missing
- * Links in Usage -> Glossary
- * There are some direct references to db.apache.org/jdo -> remove or convert
- * Fix pages in subfolders: Move to main folder?
   
 ### TODO
  * Downloads -> Any release -> cgi files....
diff --git a/docs/annotations.html b/docs/annotations.html
index 860aa13..e295c40 100644
--- a/docs/annotations.html
+++ b/docs/annotations.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -3965,10 +3965,6 @@ public class Person
 <p><br></p>
 </div>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
 </div>
diff --git a/docs/attach_detach.html b/docs/attach_detach.html
index d3b29fa..dda63fd 100644
--- a/docs/attach_detach.html
+++ b/docs/attach_detach.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -578,10 +578,6 @@ the <em>java.io.Serializable</em> interface, as the following example:</p>
 <p><br></p>
 </div>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
 </div>
diff --git a/docs/class_types.html b/docs/class_types.html
index 7dac972..93ef28b 100644
--- a/docs/class_types.html
+++ b/docs/class_types.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -374,10 +374,6 @@ public class MyClass
 <p><br></p>
 </div>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
 </div>
diff --git a/docs/dependencies.html b/docs/dependencies.html
index a158a55..8929a8f 100644
--- a/docs/dependencies.html
+++ b/docs/dependencies.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -391,10 +391,6 @@ and test it:</p>
 </ul>
 </div>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
                 </div>
diff --git a/docs/downloads.html b/docs/downloads.html
index 35608c1..54a4f56 100644
--- a/docs/downloads.html
+++ b/docs/downloads.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -293,8 +293,8 @@ table.CodeRay td.code>pre{padding:0}
 <h2 id="_latest_official_release_a_id_latest_official_release_a">Latest Official Release<a id="Latest_Official_Release"></a></h2>
 <div class="sectionbody">
 <div class="paragraph">
-<p><a href="releases/release-3.1.cgi">JDO 3.1</a> <span class="image"><img src="images/dot_clear.png" alt="image"></span>
-March 20, 2015</p>
+<p><a href="release-3.1.html">JDO 3.1</a> <span class="image"><img src="images/dot_clear.png" alt="image"></span> March
+20, 2015</p>
 </div>
 </div>
 </div>
@@ -302,12 +302,12 @@ March 20, 2015</p>
 <h2 id="_previous_official_releases_a_id_previous_official_releases_a">Previous Official Releases<a id="Previous_Official_Releases"></a></h2>
 <div class="sectionbody">
 <div class="paragraph">
-<p><a href="releases/release-3.1-rc1.cgi">JDO 3.1-rc1</a>
-<span class="image"><img src="images/dot_clear.png" alt="image"></span> September 22, 2013</p>
+<p><a href="release-3.1-rc1.html">JDO 3.1-rc1</a> <span class="image"><img src="images/dot_clear.png" alt="image"></span>
+September 22, 2013</p>
 </div>
 <div class="paragraph">
-<p><a href="releases/release-3.0.1.cgi">JDO 3.0.1</a>
-<span class="image"><img src="images/dot_clear.png" alt="image"></span> November 13, 2011</p>
+<p><a href="release-3.0.1.html">JDO 3.0.1</a> <span class="image"><img src="images/dot_clear.png" alt="image"></span>
+November 13, 2011</p>
 </div>
 </div>
 </div>
@@ -354,10 +354,6 @@ projects.</p>
 downloading the latest source code for all of the JDO projects.</p>
 </div>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
                 </div>
diff --git a/docs/enhancement.html b/docs/enhancement.html
index 031f17c..b620d50 100644
--- a/docs/enhancement.html
+++ b/docs/enhancement.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -847,10 +847,6 @@ public class A implements PersistenceCapable, Detachable
 </div>
 </div>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
                 </div>
diff --git a/docs/exceptions.html b/docs/exceptions.html
index 0746519..5e80cab 100644
--- a/docs/exceptions.html
+++ b/docs/exceptions.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -420,10 +420,6 @@ to the detached instance.</p></td>
 </tbody>
 </table>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
 </div>
diff --git a/docs/extents.html b/docs/extents.html
index 9a5549e..fb91aa3 100644
--- a/docs/extents.html
+++ b/docs/extents.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -313,10 +313,6 @@ to retrieve all persisted objects of a type (as an alternative to using
 a Query).</p>
 </div>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
                 </div>
diff --git a/docs/faq.html b/docs/faq.html
index 0a3b672..bec046a 100644
--- a/docs/faq.html
+++ b/docs/faq.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -319,10 +319,6 @@ The users mailing list is <a href="mailto:jdo-user@db.apache.org">jdo-user@db.ap
 on the mailing list and provides additional information on the project.</p>
 </div>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
                 </div>
diff --git a/docs/fetchgroups.html b/docs/fetchgroups.html
index 16b105d..64232e6 100644
--- a/docs/fetchgroups.html
+++ b/docs/fetchgroups.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -652,10 +652,6 @@ defines the number of instances to be fetched. Using
 immediately.</p>
 </div>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
 </div>
diff --git a/docs/field_types.html b/docs/field_types.html
index 6e4479a..46ae88d 100644
--- a/docs/field_types.html
+++ b/docs/field_types.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -1160,10 +1160,6 @@ can be used as part of the primary key.</p>
 <p><span class="image"><img src="images/icon_success_sml.png" alt="image"></span></p>
 </div>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
 </div>
diff --git a/docs/get-involved.html b/docs/get-involved.html
index 71843fb..bc18e53 100644
--- a/docs/get-involved.html
+++ b/docs/get-involved.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -362,10 +362,6 @@ account.</p>
 </ul>
 </div>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
                 </div>
diff --git a/docs/glossary.html b/docs/glossary.html
index b867617..cc516e4 100644
--- a/docs/glossary.html
+++ b/docs/glossary.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -477,10 +477,6 @@ not persistent.</p></td>
 </tbody>
 </table>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
                 </div>
diff --git a/docs/jdoql.html b/docs/guides-maven-jdo.html
similarity index 59%
copy from docs/jdoql.html
copy to docs/guides-maven-jdo.html
index 29305f7..f149fa0 100644
--- a/docs/jdoql.html
+++ b/docs/guides-maven-jdo.html
@@ -11,7 +11,7 @@
     <meta name="keywords" content="JDO, Apache, Java, Data, Objects"/>
     <meta name="description" content="Apache JDO - Java Data Objects"/>
 
-    <title>JDOQL<a id="JDOQL"></a></title>
+    <title>JDO Meets Maven<a id="JDO_Meets_Maven"></a></title>
 
     <link rel="icon" type="image/png" href="https://apache.github.io/db-jdo-site/images/JDO_32x32.png"/>
 
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -280,7 +280,7 @@ table.CodeRay td.code>pre{padding:0}
         <div class="row-fluid">
             <div class="col-sm-9">
 <!--                <div class="page-title">
-                    <h3>JDOQL<a id="JDOQL"></a></h3>
+                    <h3>JDO Meets Maven<a id="JDO_Meets_Maven"></a></h3>
                 </div>
 -->
                 <div id="doc-content">
@@ -290,311 +290,303 @@ table.CodeRay td.code>pre{padding:0}
 </div>
 <hr>
 <div class="sect1">
-<h2 id="_jdoql_a_id_jdoql_a">JDOQL<a id="JDOQL"></a></h2>
+<h2 id="_jdo_meets_maven_a_id_jdo_meets_maven_a">JDO Meets Maven<a id="JDO_Meets_Maven"></a></h2>
 <div class="sectionbody">
 <div class="paragraph">
-<p>JDO defines ways of querying objects persisted into the datastore. It
-provides its own object-based query language (JDOQL). JDOQL is designed
-as the Java developers way of having the power of SQL queries, yet
-retaining the Java object relationship that exist in their application
-model. A typical JDOQL query may be set up in one of 2 ways. Here&#8217;s an
-example</p>
+<p>By <a href="mailto:andy@jpox.org">Andy Jefferson</a></p>
 </div>
-<div class="literalblock">
-<div class="content">
-<pre>Declarative JDOQL :
-Query q = pm.newQuery(mydomain.Person.class, "lastName == \"Jones\" &amp;&amp; age &lt; age_limit");
-q.declareParameters("double age_limit");
-List results = (List)q.execute(20.0);
-
-Single-String JDOQL :
-Query q = pm.newQuery("SELECT FROM mydomain.Person WHERE lastName == \"Jones\"" +
-                      " &amp;&amp; age &lt; :age_limit PARAMETERS double age_limit");
-List results = (List)q.execute(20.0);</pre>
+<div class="sect2">
+<h3 id="_background_maven_a_id_background_maven_a">Background - Maven<a id="Background_-_Maven"></a></h3>
+<div class="paragraph">
+<p><a href="http://maven.apache.org">Maven</a> is a tool for managing and building
+projects providing an alternative to the accepted
+<a href="http://ant.apache.org">Ant</a> build process. Maven is almost totally
+plugin-driven, and provides plugins for many common tasks (for example:
+building EJB components such as WARs and EARs, generating documentation,
+running unit tests) and related software (for example:
+<a href="http://checkstyle.sf.net">Checkstyle</a>, <a href="http://pmd.sf.net">PMD</a>,
+<a href="http://www.thecortex.net/clover">Clover</a>,
+<a href="http://www.jcoverage.com">JCoverage</a>).</p>
 </div>
+<div class="paragraph">
+<p>Maven builds on top of the definition of a project. It formalises
+project definitions such as dependencies (and hence classpaths),
+versions, source repositories, mailing lists, etc. This project
+definition provides placeholders for all of the typical metrics
+important to a project. It formalises the location of the source tree
+for a project and of the unit tests. This rigorous structure allows
+Maven&#8217;s plugins to provide generalised functionality such as building
+the source tree, running the unit tests, generating javadoc, code
+analysis, etc.</p>
 </div>
 <div class="paragraph">
-<p>So here in our example we select all "Person" objects with surname of
-"Jones" and where the persons age is below 20. The language is intuitive
-for Java developers, and is intended as their interface to accessing the
-persisted data model. As can be seen above, the query is made up of
-distinct parts. The class being selected (the SELECT clause in SQL), the
-filter (which equates to the WHERE clause in SQL), together with any
-sorting (the ORDER BY clause in SQL), etc.</p>
+<p>Maven operates using the concept of <strong>goals</strong>. Each <strong>goal</strong> can have "pre"
+and "post" goals. This structure allows for chaining of operations, with
+one operation firing off another, and another to achieve some overall
+end result.</p>
+</div>
 </div>
+<div class="sect2">
+<h3 id="_integrating_jdo_with_maven_a_id_integrating_jdo_with_maven_a">Integrating JDO with Maven<a id="Integrating_JDO_with_Maven"></a></h3>
 <div class="paragraph">
-<p>Before giving details on JDOQL, you can download a quick reference guide
-<a href="jdoql_quickref.pdf">here</a></p>
+<p>In developing a JDO system, the developer has many concerns - not least
+the likes of object-relationship mapping - and should, as far as
+possible, be spared the "administrative" burdens associated with
+building the system. Maven&#8217;s formalization of the source tree structure
+and chaining of actions helps achieve this objective by saving the
+developer from having to explicitly define tasks like JDO class
+bytecode-enhancement. Thus, rather than explicitly invoking a
+bytecode-enhancement task in the system build, Maven is able to provide
+this activity by way of a plugin, which could even be automatically
+chained off the existing Java compilation task.</p>
 </div>
+</div>
+<div class="sect2">
+<h3 id="_anatomy_of_a_maven_jdo_plugin_a_id_anatomy_of_a_maven_jdo_plugin_a">Anatomy of a Maven JDO plugin<a id="Anatomy_of_a_Maven_JDO_plugin"></a></h3>
 <div class="paragraph">
-<p><br></p>
+<p>A Maven plugin can use a variety of languages, however most commonly
+utilises <a href="http://jakarta.apache.org/commons/jelly/">Jelly scripting
+language</a>, at least for definition of the plugin&#8217;s goals. A Maven plugin
+typically requires a minimum of 3 files &#8230;&#8203;</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p><em>project.xml</em> (defining the dependencies of the plugin on other
+software)</p>
+</li>
+<li>
+<p><em>plugin.jelly</em> (providing the <strong>goals</strong> definition)</p>
+</li>
+<li>
+<p><em>plugin.properties</em> (properties available for configuration)</p>
+</li>
+</ul>
 </div>
 <div class="paragraph">
-<p><a id="singlestring"></a></p>
+<p>Maven plugins can use a variety of other scripting and templating
+utilities, however these are not currently required for the JDO plugins
+implemented.</p>
 </div>
-<div class="sect2">
-<h3 id="_single_string_jdoql_a_id_single_string_jdoql_a">Single-String JDOQL<a id="Single-String_JDOQL"></a></h3>
 <div class="paragraph">
-<p>In traditional (declarative) JDOQL (JDO 1.0) it was necessary to specify
-the component parts (filter, candidate class, ordering, etc) of the
-query using the mutator methods on the Query. In JDO 2 you can now
-specify it all in a single string. This string has to follow a
-particular pattern, but provides the convenience that many people have
-been asking for. The pattern to use is as follows</p>
+<p>Plugins have now been developed for <a href="http://www.jpox.org">JPOX</a>, and
+<a href="http://tjdo.sf.net">TJDO</a>, though can readily be developed for any JDO
+implementation. The best way of understanding the process involved is by
+analysing a Maven JDO plugin - in this case, the JPOX plugin. Here the
+<em>plugin.jelly</em> file is as follows:</p>
 </div>
 <div class="literalblock">
 <div class="content">
-<pre>SELECT [UNIQUE] [&lt;result&gt;] [INTO &lt;result-class&gt;]
-        [FROM &lt;candidate-class&gt; [EXCLUDE SUBCLASSES]]
-        [WHERE &lt;filter&gt;]
-        [VARIABLES &lt;variable declarations&gt;]
-        [PARAMETERS &lt;parameter declarations&gt;]
-        [&lt;import declarations&gt;]
-        [GROUP BY &lt;grouping&gt;]
-        [ORDER BY &lt;ordering&gt;]
-        [RANGE &lt;start&gt;, &lt;end&gt;]</pre>
+<pre>&lt;goal name="jpox"
+    description="Enhance classes for use with Java Persistent Objects (JPOX)"
+    prereqs="jpox:enhance"/&gt;
+
+&lt;goal name="jpox:init"&gt;
+    ... snip ... code to generate jpoxClasspath and jpoxMetaDataFiles
+&lt;/goal&gt;
+
+&lt;goal name="jpox:enhance"
+    description="Perform the enhancement of classes for use with JPOX"
+    prereqs="jpox:init"&gt;
+    &lt;echo&gt;JDO-enhancing classes for Java Persistent Objects&lt;/echo&gt;
+
+    &lt;ant:java dir="${maven.build.dest}"
+        classname="org.jpox.enhance.SunReferenceEnhancer"
+        failonerror="true"
+        fork="true"&gt;
+        &lt;classpath refid="jpoxClasspath"/&gt;
+        &lt;arg line="${jpoxMetaDataFiles}"/&gt;
+    &lt;/ant:java&gt;
+
+    &lt;echo&gt;Classes are now JDO-enhanced for Java Persistent Objects&lt;/echo&gt;
+&lt;/goal&gt;</pre>
 </div>
 </div>
 <div class="paragraph">
-<p>The "keywords" in the query are shown in UPPER CASE but can be in
-<em>UPPER</em> or <em>lower</em> case.</p>
+<p>It can be seen that the plugin has several goals, the default one being
+to run the enhance goal. Since this goal requires (as a prerequisite)
+the running of the init goal, they are chained.</p>
 </div>
 <div class="paragraph">
-<p>Lets give an example of a query using this syntax</p>
+<p>Some JDO implementations (for example JPOX, or Kodo) allow the
+generation of the JDO database schema prior to running the JDO-enabled
+application. This is catered for with additional <strong>goal(s)</strong>. For JPOX
+again, this is handled as follows</p>
 </div>
 <div class="literalblock">
 <div class="content">
-<pre>SELECT UNIQUE FROM org.datanucleus.samples.Employee ORDER BY departmentNumber</pre>
+<pre>&lt;goal name="jpox:schema-create"
+    prereqs="jpox:init"&gt;
+    &lt;echo&gt;Creating tables for Persistence Capability&lt;/echo&gt;
+
+    &lt;ant:java dir="${maven.build.dest}"
+        classname="org.jpox.SchemaTool"
+        failonerror="true"
+        fork="true"&gt;
+        &lt;classpath refid="jpoxClasspath"/&gt;
+        &lt;sysproperty key="database.driver" value="${maven.jpox.database.driver}"/&gt;
+        &lt;sysproperty key="database.url" value="${maven.jpox.database.url}"/&gt;
+        &lt;sysproperty key="database.user" value="${maven.jpox.database.user}"/&gt;
+        &lt;sysproperty key="database.password" value="${maven.jpox.database.password}"/&gt;
+        &lt;arg line="-create"/&gt;
+        &lt;arg line="${jpoxMetaDataFiles}"/&gt;
+    &lt;/ant:java&gt;
+&lt;/goal&gt;
+
+&lt;goal name="jpox:schema-delete"
+    prereqs="jpox:init"&gt;
+    &lt;echo&gt;Deleting tables for Persistence Capability&lt;/echo&gt;
+
+    &lt;ant:java dir="${maven.build.dest}"
+        classname="org.jpox.SchemaTool"
+        failonerror="true"
+        fork="true"&gt;
+        &lt;classpath refid="jpoxClasspath"/&gt;
+        &lt;sysproperty key="database.driver" value="${maven.jpox.database.driver}"/&gt;
+        &lt;sysproperty key="database.url" value="${maven.jpox.database.url}"/&gt;
+        &lt;sysproperty key="database.user" value="${maven.jpox.database.user}"/&gt;
+        &lt;sysproperty key="database.password" value="${maven.jpox.database.password}"/&gt;
+        &lt;arg line="-delete"/&gt;
+        &lt;arg line="${jpoxMetaDataFiles}"/&gt;
+    &lt;/ant:java&gt;
+    &lt;/goal&gt;</pre>
 </div>
 </div>
 <div class="paragraph">
-<p>so we form the parts of the query as before, yet here we just specify it
-all in a single call.</p>
+<p>Hence there are 2 additional <strong>goals</strong>, one for creating all tables
+required by JPOX, and a second for deleting these tables. Clearly this
+has more relevance to <strong>schema generation</strong> than for <strong>existing schemas</strong></p>
+</div>
+<div class="paragraph">
+<p>Where a JDO implementation allows a particular configuration operation,
+a Maven plugin <strong>goal</strong> can be added to deliver this functionality to the
+Maven user. As a result, individual implementations can add as many
+goals as they wish to fulfil their users requirements.</p>
 </div>
 </div>
 <div class="sect2">
-<h3 id="_accessing_fields_a_id_accessing_fields_a">Accessing Fields<a id="Accessing_Fields"></a></h3>
+<h3 id="_using_a_maven_jdo_plugin_a_id_using_a_maven_jdo_plugin_a">Using a Maven JDO plugin<a id="Using_a_Maven_JDO_plugin"></a></h3>
 <div class="paragraph">
-<p>In JDOQL you access fields in the query by referring to the field name.
-For example, if you are querying a class called <em>Product</em> and it has a
-field "price", then you access it like this</p>
+<p>Using the JPOX Maven plugin as an example, the basic enhancement process
+could be invoked as follows:</p>
 </div>
 <div class="literalblock">
 <div class="content">
-<pre>Query query = pm.newQuery(mydomain.Product.class, "price &lt; 150.0");</pre>
+<pre>maven jpox:enhance</pre>
 </div>
 </div>
 <div class="paragraph">
-<p>In addition to the persistent fields, you can also access "public static
-final" fields of any class. You can do this as follows</p>
+<p>The problem with this is that it burdens the developer with having to
+explicitly invoke the enhancement process. As an alternative it is
+possible to integrate bytecode enhancement as an automatic step chained
+off the basic Java compilation process. This is achieved by including
+the following in the project <em>maven.xml</em> file:</p>
 </div>
 <div class="literalblock">
 <div class="content">
-<pre>Query query = pm.newQuery(mydomain.Product.class,
-       "taxPercent &lt; mydomain.Product.TAX_BAND_A");</pre>
-</div>
-</div>
-<div class="paragraph">
-<p>So this will find all products that include a tax percentage less than
-some "BAND A" level. Where you are using "public static final" fields
-you can either fully-qualify the class name or you can include it in the
-"imports" section of the query (see later).</p>
+<pre>&lt;postGoal name="java:compile"&gt;
+    &lt;attainGoal name="jpox:enhance"/&gt;
+&lt;/postGoal&gt;</pre>
 </div>
 </div>
-<div class="sect2">
-<h3 id="_data_types_literals_a_id_data_types_literals_a">Data types : literals<a id="Data_types_:_literals"></a></h3>
 <div class="paragraph">
-<p>JDOQL supports the following literals: IntegerLiteral,
-FloatingPointLiteral, BooleanLiteral, CharacterLiteral, StringLiteral,
-and NullLiteral.</p>
-</div>
+<p>So wherever the <strong>java:compile</strong> goal is called, as a postGoal it runs the
+<strong>jpox:enhance</strong> goal, leaving the developer with JDO enabled classes
+ready to run.</p>
 </div>
-<div class="sect2">
-<h3 id="_operators_precedence_a_id_operators_precedence_a">Operators precedence<a id="Operators_precedence"></a></h3>
 <div class="paragraph">
-<p>The following list describes the operator precedence in JDOQL.</p>
+<p>Maven&#8217;s plugins can be made configurable using properties specified in
+the <em>plugin.properties</em> file. For the JPOX plugin, the following
+properties can be set</p>
 </div>
-<div class="olist arabic">
-<ol class="arabic">
-<li>
-<p>Cast</p>
-</li>
+<div class="ulist">
+<ul>
 <li>
-<p>Unary ("~") ("!")</p>
+<p><strong>maven.jpox.jdo.fileset.dir</strong> : Directory containing the JDO MetaData
+files</p>
 </li>
 <li>
-<p>Unary ("+") ("-")</p>
+<p><strong>maven.jpox.jdo.fileset.include</strong> : Fileset include path for JDO
+MetaData files (default: <strong>*/</strong>.jdo)</p>
 </li>
 <li>
-<p>Multiplicative ("*") ("/") ("%")</p>
+<p><strong>maven.jpox.jdo.fileset.exclude</strong> : Fileset exclude path for JDO
+MetaData files</p>
 </li>
 <li>
-<p>Additive ("+") ("-")</p>
+<p><strong>maven.jpox.database.driver</strong> : Driver for use in connecting to
+datastore</p>
 </li>
 <li>
-<p>Relational ("&gt;=") ("&gt;") ("&#8656;") ("&lt;") ("instanceof")</p>
+<p><strong>maven.jpox.database.url</strong> : URL defining the datastore</p>
 </li>
 <li>
-<p>Equality ("==") ("!=")</p>
+<p><strong>maven.jpox.database.user</strong> : Login name for the datastore</p>
 </li>
 <li>
-<p>Boolean logical AND ("&amp;")</p>
+<p><strong>maven.jpox.database.password</strong> : Password for the datastore</p>
 </li>
-<li>
-<p>Boolean logical OR ("|")</p>
-</li>
-<li>
-<p>Conditional AND ("&amp;&amp;")</p>
-</li>
-<li>
-<p>Conditional OR ("||")</p>
-</li>
-</ol>
-</div>
-</div>
-<div class="sect2">
-<h3 id="_concatenation_expressions_a_id_concatenation_expressions_a">Concatenation Expressions<a id="Concatenation_Expressions"></a></h3>
-<div class="paragraph">
-<p>The concatenation operator(+) concatenates a String to either another
-String or Number. Concatenations of String or Numbers to null results in
-null.</p>
-</div>
-</div>
-<div class="sect2">
-<h3 id="_example_1_use_of_explicit_parameters_a_id_example_1_use_of_explicit_parameters_a">Example 1 - Use of Explicit Parameters<a id="Example_1_-_Use_of_Explicit_Parameters"></a></h3>
-<div class="paragraph">
-<p>Here&#8217;s a simple example for finding the elements of a class with a field
-below a particular threshold level. Here we pass in the threshold value
-(<em>limit</em>), and sort the output in order of ascending price.</p>
-</div>
-<div class="literalblock">
-<div class="content">
-<pre>Declarative JDOQL :
-Query query = pm.newQuery(mydomain.Product.class,"price &lt; limit");
-query.declareParameters("double limit");
-query.setOrdering("price ascending");
-List results = (List)query.execute(150.00);
-
-Single-String JDOQL :
-Query query = pm.newQuery("SELECT FROM mydomain.Product WHERE " +
-                "price &lt; limit PARAMETERS double limit ORDER BY price ASCENDING");
-List results = (List)query.execute(150.00);</pre>
-</div>
+</ul>
 </div>
 <div class="paragraph">
-<p>For completeness, the class is shown here</p>
+<p>For example, the following properties could be included in the Maven
+<em>project.properties</em> file</p>
 </div>
 <div class="literalblock">
 <div class="content">
-<pre>class Product
-{
-    String name;
-    double price;
-    java.util.Date endDate;
-    ...
-}
-
-&lt;jdo&gt;
-    &lt;package name="mydomain"&gt;
-        &lt;class name="Product"&gt;
-            &lt;field name="name"&gt;
-                &lt;column length="100" jdbc-type="VARCHAR"/&gt;
-            &lt;/field&gt;
-            &lt;field name="abreviation"&gt;
-                &lt;column length="20" jdbc-type="VARCHAR"/&gt;
-            &lt;/field&gt;
-            &lt;field name="price"/&gt;
-            &lt;field name="endDate"/&gt;
-        &lt;/class&gt;
-    &lt;/package&gt;
-&lt;/jdo&gt;</pre>
+<pre>maven.jpox.jdo.fileset.dir=${basedir}/jdo
+maven.jpox.jdo.fileset.include=**/*.jdo
+maven.jpox.database.driver=com.mysql.jdbc.Driver
+maven.jpox.database.url=jdbc:mysql://localhost/jpox
+maven.jpox.database.user={my_username}
+maven.jpox.database.password={my_password}</pre>
 </div>
 </div>
 <div class="paragraph">
-<p><br></p>
+<p>This would define the JDO MetaData files residing under the "jdo"
+project directory, with names matching <strong>.jdo and would be used when all
+JDO plugin *goals</strong> (such as <strong>enhance</strong>) are called. The 4 <strong>database</strong>
+properties are used in the <strong>schema-create/schema-delete</strong> goals (as seen
+in the <em>plugin.jelly</em> file earlier).</p>
 </div>
-</div>
-<div class="sect2">
-<h3 id="_example_2_use_of_implicit_parameters_a_id_example_2_use_of_implicit_parameters_a">Example 2 - Use of Implicit Parameters<a id="Example_2_-_Use_of_Implicit_Parameters"></a></h3>
 <div class="paragraph">
-<p>Let&#8217;s repeat the previous query but this time using <em>implicit</em>
-parameters.</p>
+<p>Invocation of the JPOX schema-create optional goal could be achieved as
+follows:</p>
 </div>
 <div class="literalblock">
 <div class="content">
-<pre>Declarative JDOQL :
-Query query = pm.newQuery(mydomain.Product.class,"price &lt; :limit");
-query.setOrdering("price ascending");
-List results = (List)query.execute(150.00);
-
-Single-String JDOQL :
-Query query = pm.newQuery("SELECT FROM mydomain.Product WHERE " +
-                "price &lt; :limit ORDER BY price ASCENDING");
-List results = (List)query.execute(150.00);</pre>
+<pre>maven jpox:schema-create</pre>
 </div>
 </div>
-<div class="paragraph">
-<p>So we omitted the declaration of the parameter and just prefixed it with
-a colon (:)</p>
-</div>
-<div class="paragraph">
-<p><br></p>
-</div>
 </div>
 <div class="sect2">
-<h3 id="_example_3_comparison_against_dates_a_id_example_3_comparison_against_dates_a">Example 3 - Comparison against Dates<a id="Example_3_-_Comparison_against_Dates"></a></h3>
+<h3 id="_conclusion_a_id_conclusion_a">Conclusion<a id="Conclusion"></a></h3>
 <div class="paragraph">
-<p>Here&#8217;s another example using the same Product class as above, but this
-time comparing to a Date field. Because we are using a type in our
-query, we need to <em>import</em> it &#8230;&#8203; just like you would in a Java class if
-you were using it there.</p>
-</div>
-<div class="literalblock">
-<div class="content">
-<pre>Declarative JDOQL :
-Query query = pm.newQuery(domain.Product.class,
-                          "endDate &gt; best_before_limit");
-query.declareImports("import java.util.Date");
-query.declareParameters("Date best_before_limit");
-query.setOrdering("endDate descending");
-Collection results = (Collection)query.execute(my_date_limit);
-
-Single-String JDOQL :
-Query query = pm.newQuery("SELECT FROM mydomain.Product " +
-                "WHERE endDate &gt; best_before_limit " +
-                "PARAMETERS Date best_before_limit " +
-                "import java.util.Date ORDER BY endDate DESC");
-List results = (List)query.execute(my_date_limit);</pre>
-</div>
+<p>This article has attempted to give a feel for both the operation of
+Maven, and how to integrate JDO into a Maven project. The various Maven
+JDO plugins can be downloaded as follows</p>
 </div>
-<div class="paragraph">
-<p><br></p>
+<div class="ulist">
+<ul>
+<li>
+<p>JPOX (1.1.8) - <a href="http://www.jpox.org/">Java Persistent Objects (JPOX)
+project</a></p>
+</li>
+<li>
+<p>TJDO (2.0-beta3) - <a href="http://www.ibiblio.org/maven/maven/plugins/">Ibiblio
+site</a></p>
+</li>
+</ul>
 </div>
 </div>
 <div class="sect2">
-<h3 id="_example_4_instanceof_a_id_example_4_instanceof_a">Example 4 - Instanceof<a id="Example_4_-_Instanceof"></a></h3>
+<h3 id="_about_the_author_a_id_about_the_author_a">About the author<a id="About_the_author"></a></h3>
 <div class="paragraph">
-<p>This example demonstrates use of the "instanceof" operator. We have a
-class A that has a field "b" of type B and B has subclasses B1, B2, B3.
-Clearly the field "b" of A can be of type B, B1, B2, B3 etc, and we want
-to find all objects of type A that have the field "b" that is of type
-B2. We do it like this</p>
-</div>
-<div class="literalblock">
-<div class="content">
-<pre>Declarative JDOQL :
-Query query = pm.newQuery(mydomain.A.class);
-query.setFilter("b instanceof mydomain.B2");
-List results = (List)query.execute();
-
-Single-String JDOQL :
-Query query = pm.newQuery("SELECT FROM mydomain.A WHERE b instanceof mydomain.B2");
-List results = (List)query.execute();</pre>
-</div>
-</div>
-<hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
+<p>Andy Jefferson is an independent software consultant who has been
+working in the IT industry for more than 15 years, primarily in the
+United Kingdom. He is an active participator in several OpenSource
+projects, primarily JPOX, and Apache JDO, and a member of the JSR243
+(JDO2) Expert Group.</p>
 </div>
 <hr>
 </div>
diff --git a/docs/class_types.html b/docs/guides-replication.html
similarity index 78%
copy from docs/class_types.html
copy to docs/guides-replication.html
index 7dac972..a02f3c8 100644
--- a/docs/class_types.html
+++ b/docs/guides-replication.html
@@ -11,7 +11,7 @@
     <meta name="keywords" content="JDO, Apache, Java, Data, Objects"/>
     <meta name="description" content="Apache JDO - Java Data Objects"/>
 
-    <title>JDO Class Types<a id="JDO_Class_Types"></a></title>
+    <title>Data Replication<a id="Data_Replication"></a></title>
 
     <link rel="icon" type="image/png" href="https://apache.github.io/db-jdo-site/images/JDO_32x32.png"/>
 
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -280,7 +280,7 @@ table.CodeRay td.code>pre{padding:0}
         <div class="row-fluid">
             <div class="col-sm-9">
 <!--                <div class="page-title">
-                    <h3>JDO Class Types<a id="JDO_Class_Types"></a></h3>
+                    <h3>Data Replication<a id="Data_Replication"></a></h3>
                 </div>
 -->
                 <div id="doc-content">
@@ -290,95 +290,162 @@ table.CodeRay td.code>pre{padding:0}
 </div>
 <hr>
 <div class="sect1">
-<h2 id="_jdo_class_types_a_id_jdo_class_types_a">JDO Class Types<a id="JDO_Class_Types"></a></h2>
+<h2 id="_data_replication_a_id_data_replication_a">Data Replication<a id="Data_Replication"></a></h2>
 <div class="sectionbody">
 <div class="paragraph">
-<p>JDO provides a means of transparent persistence of objects of user
-defined classes. With JDO there are actually 3 types of classes.</p>
-</div>
-<div class="ulist">
-<ul>
-<li>
-<p><strong>Persistence Capable</strong> classes are classes whose instances can be
-persisted to a datastore. JDO provide the mechanism for persisting these
-instances, and they are core to JDO. These classes need to be <em>enhanced</em>
-according to a JDO Meta-Data specification before use within a JDO
-environment.</p>
-</li>
-<li>
-<p><strong>Persistence Aware</strong> classes are classes that manipulate Persistence
-Capable instances through direct attribute manipulation. These classes
-are typically enhanced with very minimal JDO Meta-Data. The enhancement
-process performs very little changes to these classes.</p>
-</li>
-<li>
-<p><strong>Normal</strong> classes are classes that aren&#8217;t themselves persistable, and
-have no knowledge of persistence either. These classes are totally
-unchanged in JDO, and require no JDO Meta-Data whatsoever.</p>
-</li>
-</ul>
-</div>
-<div class="sect2">
-<h3 id="_persistencecapable_a_id_persistencecapable_a">PersistenceCapable<a id="PersistenceCapable"></a></h3>
-<div class="paragraph">
-<p>Classes are defined as <strong>PersistenceCapable</strong> either by XML MetaData, like
-this</p>
+<p>There are times when you need to replicate data between datastores. In
+many cases datastores themselves provide a means of doing this, however
+if you want to avoid using datastore-specific functionality you can
+utilise JDO to perform this task. JDO2 allows replication by use of
+detach/attach functionality. We demonstrate this with an example</p>
 </div>
 <div class="literalblock">
 <div class="content">
-<pre>&lt;class name="MyClass"&gt;
+<pre>public class ElementHolder
+{
+    long id;
+    private Set elements = new HashSet();
+
     ...
-&lt;/class&gt;</pre>
-</div>
-</div>
-<div class="paragraph">
-<p>or, in JDO2.1, using Annotations. Like this</p>
-</div>
-<div class="literalblock">
-<div class="content">
-<pre>@PersistenceCapable
-public class MyClass
+}
+
+public class Element
+{
+    String name;
+
+    ...
+}
+
+public class SubElement extends Element
 {
+    double value;
+
     ...
 }</pre>
 </div>
 </div>
 <div class="paragraph">
-<p><br></p>
+<p>so we have a 1-N unidirectional (Set) relation, and we define the
+metadata like this</p>
+</div>
+<div class="literalblock">
+<div class="content">
+<pre>&lt;jdo&gt;
+    &lt;package name="org.apache.jdo.test"&gt;
+        &lt;class name="ElementHolder" identity-type="application" detachable="true"&gt;
+            &lt;inheritance strategy="new-table"/&gt;
+            &lt;field name="id" primary-key="true"/&gt;
+            &lt;field name="elements" persistence-modifier="persistent"&gt;
+                &lt;collection element-type="Element"/&gt;
+                &lt;join/&gt;
+            &lt;/field&gt;
+        &lt;/class&gt;
+
+        &lt;class name="Element" identity-type="application" detachable="true"&gt;
+            &lt;inheritance strategy="new-table"/&gt;
+            &lt;field name="name" primary-key="true"/&gt;
+        &lt;/class&gt;
+
+        &lt;class name="SubElement"&gt;
+            &lt;inheritance strategy="new-table"/&gt;
+            &lt;field name="value"/&gt;
+        &lt;/class&gt;
+    &lt;/package&gt;
+&lt;/jdo&gt;</pre>
 </div>
 </div>
-<div class="sect2">
-<h3 id="_persistenceaware_a_id_persistenceaware_a">PersistenceAware<a id="PersistenceAware"></a></h3>
 <div class="paragraph">
-<p>Classes are defined as <strong>PersistenceAware</strong> either by XML MetaData, like
+<p>and so in our application we create some objects in <em>datastore1</em>, like
 this</p>
 </div>
 <div class="literalblock">
 <div class="content">
-<pre>&lt;class name="MyClass" persistence-modifier="persistence-aware"/&gt;</pre>
+<pre>PersistenceManagerFactory pmf1 = JDOHelper.getPersistenceManagerFactory("jdo.1.properties");
+PersistenceManager pm1 = pmf1.getPersistenceManager();
+Transaction tx1 = pm1.currentTransaction();
+Object holderId = null;
+try
+{
+    tx1.begin();
+
+    ElementHolder holder = new ElementHolder(101);
+    holder.addElement(new Element("First Element"));
+    holder.addElement(new Element("Second Element"));
+    holder.addElement(new SubElement("First Inherited Element"));
+    holder.addElement(new SubElement("Second Inherited Element"));
+    pm1.makePersistent(holder);
+
+    tx1.commit();
+    holderId = JDOHelper.getObjectId(holder);
+}
+finally
+{
+    if (tx1.isActive())
+    {
+        tx1.rollback();
+    }
+    pm1.close();
+}</pre>
 </div>
 </div>
 <div class="paragraph">
-<p>or, in JDO2.1, using Annotations. Like this</p>
+<p>and now we want to replicate these objects into <em>datastore2</em>, so we
+detach them from <em>datastore1</em> and attach them to <em>datastore2</em>, like this</p>
 </div>
 <div class="literalblock">
 <div class="content">
-<pre>@PersistenceAware
-public class MyClass
+<pre>// Detach the objects from "datastore1"
+ElementHolder detachedHolder = null;
+pm1 = pmf1.getPersistenceManager();
+tx1 = pm1.currentTransaction();
+try
 {
-    ...
+    pm1.getFetchPlan().setGroups(new String[] {FetchPlan.DEFAULT, FetchPlan.ALL});
+    pm1.getFetchPlan().setMaxFetchDepth(-1);
+
+    tx1.begin();
+
+    ElementHolder holder = (ElementHolder) pm1.getObjectById(holderID);
+    detachedHolder = (ElementHolder) pm1.detachCopy(holder);
+
+    tx1.commit();
+}
+finally
+{
+    if (tx1.isActive())
+    {
+        tx1.rollback();
+    }
+    pm1.close();
+}
+
+// Attach the objects to datastore2
+PersistenceManagerFactory pmf2 = JDOHelper.getPersistenceManagerFactory("jdo.2.properties");
+PersistenceManager pm2 = pmf2.getPersistenceManager();
+Transaction tx2 = pm2.currentTransaction();
+try
+{
+    tx2.begin();
+
+    pm2.makePersistent(detachedHolder);
+
+    tx2.commit();
+}
+finally
+{
+    if (tx2.isActive())
+    {
+        tx2.rollback();
+    }
+    pm2.close();
 }</pre>
 </div>
 </div>
 <div class="paragraph">
-<p><br></p>
+<p>These objects are now replicated into <em>datastore2</em>. Clearly you can
+extend this basic idea and replicate large amounts of data.</p>
 </div>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
-</div>
 </div>
 </div>
                 </div>
diff --git a/docs/guides.html b/docs/guides.html
index 76c1a58..121b8a4 100644
--- a/docs/guides.html
+++ b/docs/guides.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -297,10 +297,6 @@ table.CodeRay td.code>pre{padding:0}
 application.</p>
 </div>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
                 </div>
diff --git a/docs/impls.html b/docs/impls.html
index 165e6f0..ba6da22 100644
--- a/docs/impls.html
+++ b/docs/impls.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -444,10 +444,6 @@ CRM,SFA&#8230;&#8203;), components (EJB&#8230;&#8203;).</p></td>
 </tbody>
 </table>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
 </div>
diff --git a/docs/index.html b/docs/index.html
index ccac324..9468458 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -524,10 +524,6 @@ approved. <a href="http://db.apache.org/jdo/get-involved.html">Get Involved</a>!
 <p><em>Archived articles are <a href="http://db.apache.org/jdo/newshistory.html">here</a></em>.</p>
 </div>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
                 </div>
diff --git a/docs/issuetracking.html b/docs/issuetracking.html
index 9ffa838..e468d72 100644
--- a/docs/issuetracking.html
+++ b/docs/issuetracking.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -348,10 +348,6 @@ Notes for released versions</a></p>
 </ul>
 </div>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
                 </div>
diff --git a/docs/javadoc.html b/docs/javadoc.html
index 2e7abbb..422c939 100644
--- a/docs/javadoc.html
+++ b/docs/javadoc.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -392,10 +392,6 @@ online</a></p>
 <p><a href="api11/apidocs.zip">Download JDO 1.1 javadoc</a></p>
 </div>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
                 </div>
diff --git a/docs/jdo_3_0_overview.html b/docs/jdo_3_0_overview.html
index d952ca7..092704f 100644
--- a/docs/jdo_3_0_overview.html
+++ b/docs/jdo_3_0_overview.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -521,10 +521,6 @@ Boolean getSerializeRead();</pre>
 <p>This concludes our simple overview of JDO3. We hope you enjoy using it</p>
 </div>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
 </div>
diff --git a/docs/jdo_dtd.html b/docs/jdo_dtd.html
index eebf435..17f0440 100644
--- a/docs/jdo_dtd.html
+++ b/docs/jdo_dtd.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -335,10 +335,6 @@ or SYSTEM versions of these.</p>
 <a href="http://xmlns.jcp.org/xml/ns/jdo/jdo_3_0.xsd">XSD</a> specification.</p>
 </div>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
                 </div>
diff --git a/docs/jdo_v_jpa.html b/docs/jdo_v_jpa.html
index a172e4e..1f45017 100644
--- a/docs/jdo_v_jpa.html
+++ b/docs/jdo_v_jpa.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -514,10 +514,6 @@ Map, List, Array, 1-1, 1-N, M-N using PC, Non-PC and interface objects</strong><
 "JDO".</p>
 </div>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
                 </div>
diff --git a/docs/jdo_v_jpa_api.html b/docs/jdo_v_jpa_api.html
index 66c556d..18db922 100644
--- a/docs/jdo_v_jpa_api.html
+++ b/docs/jdo_v_jpa_api.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -370,10 +370,6 @@ pm.getExtent()</p></td>
 </tbody>
 </table>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
                 </div>
diff --git a/docs/jdo_v_jpa_orm.html b/docs/jdo_v_jpa_orm.html
index ea265ba..1b005ca 100644
--- a/docs/jdo_v_jpa_orm.html
+++ b/docs/jdo_v_jpa_orm.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -617,10 +617,6 @@ JoinTable Unidirectional Array</a></p></td>
 </tbody>
 </table>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
 </div>
diff --git a/docs/jdoconfig_dtd.html b/docs/jdoconfig_dtd.html
index c54af3c..cb1b4ec 100644
--- a/docs/jdoconfig_dtd.html
+++ b/docs/jdoconfig_dtd.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -336,10 +336,6 @@ specifications</p>
 <a href="http://xmlns.jcp.org/xml/ns/jdo/jdoconfig_3_0.xsd">XSD</a> specification.</p>
 </div>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
                 </div>
diff --git a/docs/jdohelper.html b/docs/jdohelper.html
index 5966ba4..e5d23f2 100644
--- a/docs/jdohelper.html
+++ b/docs/jdohelper.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -427,10 +427,6 @@ detached</p>
 </ul>
 </div>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
 </div>
diff --git a/docs/jdoql.html b/docs/jdoql.html
index 29305f7..57591b1 100644
--- a/docs/jdoql.html
+++ b/docs/jdoql.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -593,10 +593,6 @@ List results = (List)query.execute();</pre>
 </div>
 </div>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
 </div>
diff --git a/docs/jdoql_methods.html b/docs/jdoql_methods.html
index 4ef9d2c..7d2a528 100644
--- a/docs/jdoql_methods.html
+++ b/docs/jdoql_methods.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -676,10 +676,6 @@ persistent object</p></td>
 </tbody>
 </table>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
 </div>
diff --git a/docs/jdoql_result.html b/docs/jdoql_result.html
index 8ac3aec..551dd5a 100644
--- a/docs/jdoql_result.html
+++ b/docs/jdoql_result.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -446,10 +446,6 @@ Double max_price = (Double)iter.next();</pre>
 <p><br></p>
 </div>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
 </div>
diff --git a/docs/jdoquery_dtd.html b/docs/jdoquery_dtd.html
index 84faabd..06f549c 100644
--- a/docs/jdoquery_dtd.html
+++ b/docs/jdoquery_dtd.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -336,10 +336,6 @@ specification</p>
 <a href="http://xmlns.jcp.org/xml/ns/jdo/jdoquery_3_0.xsd">XSD</a> specification.</p>
 </div>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
                 </div>
diff --git a/docs/mail-lists.html b/docs/mail-lists.html
index f174de1..4253de1 100644
--- a/docs/mail-lists.html
+++ b/docs/mail-lists.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -330,10 +330,6 @@ list!</p>
 </tbody>
 </table>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
                 </div>
diff --git a/docs/metadata.html b/docs/metadata.html
index a6bc189..ff7bf39 100644
--- a/docs/metadata.html
+++ b/docs/metadata.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -349,10 +349,6 @@ can be annotated defining the persistence and, optionally, any ORM
 information.</p>
 </div>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
 </div>
diff --git a/docs/newshistory.html b/docs/newshistory.html
index cf5e347..8838751 100644
--- a/docs/newshistory.html
+++ b/docs/newshistory.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -306,10 +306,6 @@ Corporate Contributor License Agreement (CCLA) between The Apache
 Software Foundation and Sun Microsystems, Inc.</p>
 </div>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
                 </div>
diff --git a/docs/object_retrieval.html b/docs/object_retrieval.html
index 78e0264..a91f94d 100644
--- a/docs/object_retrieval.html
+++ b/docs/object_retrieval.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -372,10 +372,6 @@ datastore. When the objects are retrieved their fields are populated
 according to the Fetch Group.</p>
 </div>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
 </div>
diff --git a/docs/orm_dtd.html b/docs/orm_dtd.html
index a8776fe..320dde7 100644
--- a/docs/orm_dtd.html
+++ b/docs/orm_dtd.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -336,10 +336,6 @@ specification</p>
 <a href="http://xmlns.jcp.org/xml/ns/jdo/orm_3_0.xsd">XSD</a> specification.</p>
 </div>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
                 </div>
diff --git a/docs/pm.html b/docs/pm.html
index ee15ba5..bf23a0b 100644
--- a/docs/pm.html
+++ b/docs/pm.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -530,10 +530,6 @@ catch (Exception e)
 </div>
 </div>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
 </div>
diff --git a/docs/pmf.html b/docs/pmf.html
index cb3faf4..e9ad19c 100644
--- a/docs/pmf.html
+++ b/docs/pmf.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -787,10 +787,6 @@ serializable</p>
 <p><br></p>
 </div>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
 </div>
diff --git a/docs/references.html b/docs/references.html
index 6248c7f..a98a06d 100644
--- a/docs/references.html
+++ b/docs/references.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -364,10 +364,6 @@ Heiko Bobzin. Publisher: Prentice Hall</p>
 <p><br></p>
 </div>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
 </div>
diff --git a/docs/jdoql_result.html b/docs/release-3.0.1.html
similarity index 69%
copy from docs/jdoql_result.html
copy to docs/release-3.0.1.html
index 8ac3aec..b567c89 100644
--- a/docs/jdoql_result.html
+++ b/docs/release-3.0.1.html
@@ -11,7 +11,7 @@
     <meta name="keywords" content="JDO, Apache, Java, Data, Objects"/>
     <meta name="description" content="Apache JDO - Java Data Objects"/>
 
-    <title>JDOQL : Result<a id="JDOQL_:_Result"></a></title>
+    <title>JDO 3.0.1 Distributions<a id="JDO_3.0.1_Distributions"></a></title>
 
     <link rel="icon" type="image/png" href="https://apache.github.io/db-jdo-site/images/JDO_32x32.png"/>
 
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -280,7 +280,7 @@ table.CodeRay td.code>pre{padding:0}
         <div class="row-fluid">
             <div class="col-sm-9">
 <!--                <div class="page-title">
-                    <h3>JDOQL : Result<a id="JDOQL_:_Result"></a></h3>
+                    <h3>JDO 3.0.1 Distributions<a id="JDO_3.0.1_Distributions"></a></h3>
                 </div>
 -->
                 <div id="doc-content">
@@ -290,168 +290,151 @@ table.CodeRay td.code>pre{padding:0}
 </div>
 <hr>
 <div class="sect1">
-<h2 id="_jdoql_result_a_id_jdoql_result_a">JDOQL : Result<a id="JDOQL_:_Result"></a></h2>
+<h2 id="_jdo_3_0_1_distributions_a_id_jdo_3_0_1_distributions_a">JDO 3.0.1 Distributions<a id="JDO_3.0.1_Distributions"></a></h2>
 <div class="sectionbody">
 <div class="paragraph">
-<p>As we have seen, a JDOQL query is made up of different parts. In this
-section we look at the <em>result</em> part of the query. The result is what we
-want returning. By default (when not specifying the result) the objects
-returned will be of the candidate class type, where they match the query
-filter. Firstly let&#8217;s look at what you can include in the <em>result</em>
-clause.</p>
+<p>Use the links below to download Apache JDO from one of our mirrors. For
+more information about the projects see <a href="downloads.html">Downloads</a>.
+For information on running the TCK, see <a href="tck.html">TCK</a>.</p>
+</div>
+<div class="paragraph">
+<p>It is good practice to <a href="#Verifying">verify the integrity</a> of the
+distribution files.</p>
+</div>
+<div class="paragraph">
+<p>You are currently using <strong><a href="http://apache.mirrors.nublue.co.uk/" class="bare">http://apache.mirrors.nublue.co.uk/</a></strong>. If you
+encounter a problem with this mirror, then please select another. If all
+mirrors are failing, there are backup mirrors at the end of the list.
+See <a href="http://www.apache.org/mirrors/">status</a> of mirrors.</p>
+</div>
+<div class="paragraph">
+<p>Other mirrors:</p>
 </div>
 <div class="ulist">
 <ul>
 <li>
-<p><em>this</em> - the candidate instance</p>
+<p><a href="http://apache.mirror.anlx.net/" class="bare">http://apache.mirror.anlx.net/</a></p>
+</li>
+<li>
+<p><a href="http://apache.mirrors.nublue.co.uk/" class="bare">http://apache.mirrors.nublue.co.uk/</a></p>
+</li>
+<li>
+<p><a href="http://mirror.ox.ac.uk/sites/rsync.apache.org/" class="bare">http://mirror.ox.ac.uk/sites/rsync.apache.org/</a></p>
 </li>
 <li>
-<p>A field name</p>
+<p><a href="http://mirror.vorboss.net/apache/" class="bare">http://mirror.vorboss.net/apache/</a></p>
 </li>
 <li>
-<p>A variable</p>
+<p><a href="http://mirrors.ukfast.co.uk/sites/ftp.apache.org/" class="bare">http://mirrors.ukfast.co.uk/sites/ftp.apache.org/</a></p>
 </li>
 <li>
-<p>A parameter (though why you would want a parameter returning is hard
-to see since you input the value in the first place)</p>
+<p><a href="http://www.mirrorservice.org/sites/ftp.apache.org/" class="bare">http://www.mirrorservice.org/sites/ftp.apache.org/</a></p>
 </li>
 <li>
-<p>An aggregate (count(), avg(), sum(), min(), max())</p>
+<p><a href="ftp://ftp.mirrorservice.org/sites/ftp.apache.org/" class="bare">ftp://ftp.mirrorservice.org/sites/ftp.apache.org/</a></p>
 </li>
 <li>
-<p>An expression involving a field (e.g "field1 + 1")</p>
+<p><a href="https://www-eu.apache.org/dist/" class="bare">https://www-eu.apache.org/dist/</a>   (backup)</p>
 </li>
 <li>
-<p>A navigational expression (navigating from one field to another &#8230;&#8203;
-e.g "field1.field4")</p>
+<p><a href="https://www-us.apache.org/dist/" class="bare">https://www-us.apache.org/dist/</a>   (backup)</p>
 </li>
 </ul>
 </div>
 <div class="paragraph">
-<p>The result is specified in JDOQL like this</p>
+<p><br></p>
 </div>
-<div class="literalblock">
-<div class="content">
-<pre>query.setResult("count(field1), field2");</pre>
+<div class="sect2">
+<h3 id="_release_notes_a_id_release_notes_a">Release Notes<a id="Release_Notes"></a></h3>
+<div class="paragraph">
+<p><a href="https://issues.apache.org/jira/secure/ReleaseNote.jspa?version=12317950&amp;styleName=Html&amp;projectId=10630">View
+release notes for JDO 3.0.1</a></p>
 </div>
 </div>
+<div class="sect2">
+<h3 id="_api_a_id_api_a">API<a id="API"></a></h3>
 <div class="paragraph">
-<p>In <strong>Single-String JDOQL</strong> you would specify it directly.</p>
+<p>The api project contains source to build jdo-api.jar, which defines the
+JDO API. The jar file is the only artifact needed for users who wish to
+compile their programs using the JDO API. It can be downloaded
+automatically by maven and placed into the local maven repository if you
+include the proper dependency in your maven project definition. Use
+groupId javax.jdo, artifactId jdo-api, version 3.0 and define your
+remote repository as <a href="http://www.ibiblio.org/maven" class="bare">http://www.ibiblio.org/maven</a>. Alternatively, it can
+be downloaded manually and put into a location of your choice.</p>
 </div>
 <div class="paragraph">
-<p><br></p>
+<p><a href="http://people.apache.org/repo/m1-ibiblio-rsync-repository/javax.jdo/jars/jdo-api-3.0.1.jar">jdo-api-3.0.1.jar</a></p>
 </div>
-<div class="sect2">
-<h3 id="_result_type_a_id_result_type_a">Result type<a id="Result_type"></a></h3>
-<div class="paragraph">
-<p>What you specify in the <em>result</em> defines what form of result you get
-back.</p>
+<div class="paragraph apache org/repo/m1-ibiblio-rsync-repository/javax jdo/jars/jdo-api-3 0 1 jar md5[MD5]">
+<p><a href="http://people.apache.org/repo/m1-ibiblio-rsync-repository/javax.jdo/poms/jdo-api-3.0.1.pom">jdo-api-3.0.1.pom</a></p>
 </div>
-<div class="ulist">
-<ul>
-<li>
-<p><strong>Object</strong> - this is returned if you have only a single row in the
-results and a single column. This is achived when you specified either
-UNIQUE, or just an aggregate (e.g "max(field2)")</p>
-</li>
-<li>
-<p><strong>Object[]</strong> - this is returned if you have only a single row in the
-results, but more than 1 column (e.g "max(field1), avg(field2)")</p>
-</li>
-<li>
-<p><strong>List&lt;Object&gt;</strong> - this is returned if you have only a single column in
-the result, and you don&#8217;t have only aggregates in the result (e.g
-"field2")</p>
-</li>
-<li>
-<p><strong>List&lt;Object[]&gt;</strong> - this is returned if you have more than 1 column in
-the result, and you don&#8217;t have only aggregates in the result (e.g
-"field2, avg(field3)")</p>
-</li>
-</ul>
+<div class="paragraph apache org/repo/m1-ibiblio-rsync-repository/javax jdo/poms/jdo-api-3 0 1 pom md5[MD5]">
+<p><a href="http://apache.mirrors.nublue.co.uk//db/jdo/3.0.1/jdo-api-3.0.1-src.zip">jdo-api-3.0.1-src.zip</a></p>
 </div>
+<div class="paragraph apache org/dist/db/jdo/3 0 1/jdo-api-3 0 1-src zip md5[MD5]">
+<p><a href="http://apache.mirrors.nublue.co.uk//db/jdo/3.0.1/jdo-api-3.0.1-src.tar.gz">jdo-api-3.0.1-src.tar.gz</a></p>
 </div>
-<div class="sect2">
-<h3 id="_aggregates_a_id_aggregates_a">Aggregates<a id="Aggregates"></a></h3>
-<div class="paragraph">
-<p>There are situations when you want to return a single number for a
-column, representing an aggregate of the values of all records. There
-are 5 standard JDO2 aggregate functions available. These are</p>
 </div>
-<div class="ulist">
-<ul>
-<li>
-<p><strong>avg(val)</strong> - returns the average of "val". "val" can be a field,
-numeric field expression or "distinct field".</p>
-</li>
-<li>
-<p><strong>sum(val)</strong> - returns the sum of "val". "val" can be a field, numeric
-field expression, or "distinct field".</p>
-</li>
-<li>
-<p><strong>count(val)</strong> - returns the count of records of "val". "val" can be a
-field, or can be "this", or "distinct field".</p>
-</li>
-<li>
-<p><strong>min(val)</strong> - returns the minimum of "val". "val" can be a field</p>
-</li>
-<li>
-<p><strong>max(val)</strong> - returns the maximum of "val". "val" can be a field</p>
-</li>
-</ul>
+<div class="sect2 apache org/dist/db/jdo/3 0 1/jdo-api-3 0 1-src tar gz md5[MD5]">
+<h3 id="_tck_a_id_tck_a">TCK<a id="TCK"></a></h3>
+<div class="paragraph">
+<p>This is a download for all implementors of JDO, and for those who want
+to check how well an implementation is compliant with the JDO
+specification. The tck2 project contains the JDO 2 Technology
+Compatibility Kit. The source distribution is the only artifact needed
+to be downloaded by the user. The dependencies (including the model20
+jar, util20 jar, enhancer20 jar, api2 jar, and JPOX) are automatically
+downloaded by maven as needed to run the TCK.</p>
 </div>
 <div class="paragraph">
-<p>So to utilise these you could specify something like</p>
+<p><a href="http://apache.mirrors.nublue.co.uk//db/jdo/3.0.1/jdo-tck-3.0.1-src.zip">jdo-tck-3.0.1-src.zip</a></p>
 </div>
-<div class="literalblock">
-<div class="content">
-<pre>Query q = pm.newQuery("SELECT max(price), min(price) FROM mydomain.Product WHERE status == 1");</pre>
+<div class="paragraph apache org/dist/db/jdo/3 0 1/jdo-tck-3 0 1-src zip md5[MD5]">
+<p><a href="http://apache.mirrors.nublue.co.uk//db/jdo/3.0.1/jdo-tck-3.0.1-src.tar.gz">jdo-tck-3.0.1-src.tar.gz</a></p>
 </div>
 </div>
-<div class="paragraph">
-<p>This will return a single row of results with 2 values, the maximum
-price and the minimum price of all products that have status code of 1.</p>
 </div>
-<div class="paragraph">
-<p><br></p>
 </div>
+<div class="sect1 apache org/dist/db/jdo/3 0 1/jdo-tck-3 0 1-src tar gz md5[MD5]">
+<h2 id="_verifying_releases_a_id_verifying_releases_a">Verifying Releases<a id="Verifying_Releases"></a></h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p><a id="Verifying"></a></p>
 </div>
-<div class="sect2">
-<h3 id="_example_use_of_aggregates_a_id_example_use_of_aggregates_a">Example - Use of aggregates<a id="Example_-_Use_of_aggregates"></a></h3>
 <div class="paragraph">
-<p>JDO 2 introduces the ability to use aggregates in queries. Here&#8217;s
-another example using the same Product class as above, but this time
-looking for the maximum price of products that are CD Players. Note that
-the result for this particular query will be of type Double since there
-is a single double precision value being returned via the "result".</p>
+<p>It is essential that you verify the integrity of the downloaded files
+using the PGP signature and/or the MD5 checksum. The checksum is not as
+strong an indicator as the PGP signature is.</p>
 </div>
-<div class="literalblock">
-<div class="content">
-<pre>Declarative JDOQL :
-Query query = pm.newQuery(mydomain.Product.class);
-query.setFilter("name == \"CD Player\"");
-query.setResult("max(this.price)");
-List results = (List)query.execute();
-Iterator iter = c.iterator();
-Double max_price = (Double)iter.next();
-
-Single-String JDOQL :
-Query query = pm.newQuery("SELECT max(price) FROM mydomain.Product WHERE name == \"CD Player\"");
-List results = (List)query.execute();
-Iterator iter = c.iterator();
-Double max_price = (Double)iter.next();</pre>
+<div class="paragraph">
+<p>The PGP signatures can be verified using PGP or GPG. First download the
+<a href="http://www.apache.org/dist/db/jdo/KEYS">KEYS</a> as well as the <code>asc</code>
+signature file for the particular distribution. Make sure you get these
+files from the <a href="http://www.apache.org/dist/db/jdo/">main distribution
+directory</a>, rather than from a mirror. Then verify the signatures using</p>
 </div>
+<div class="paragraph">
+<p>` % pgpk -a KEYS % pgpv release_name.tar.gz.asc` <em>or</em><br>
+` % pgp -ka KEYS % pgp release_name.tar.gz.asc` <em>or</em><br>
+` % gpg --import KEYS % gpg --verify release_name.tar.gz.asc`</p>
 </div>
 <div class="paragraph">
-<p><br></p>
+<p>Alternatively, you can verify the checksums on the files. Unix programs
+called <code>md5</code>/<code>sha1</code> or <code>md5sum</code>/<code>sha1sum</code> are included in many unix
+distributions. <code>*sum</code> is also available as part of
+<a href="http://www.gnu.org/software/textutils/textutils.html">GNU Textutils</a>.
+Windows users can get binary md5 programs from
+<a href="http://www.fourmilab.ch/md5/">http://www.fourmilab.ch/md5</a> and
+<a href="http://www.pc-tools.net/win32/freeware/console/">hhttp://www.pc-tools.net/win32/freeware/console</a>.
+Windows SlavaSoft <a href="http://www.slavasoft.com/fsum/">fsum</a> supports MD5 and
+SHA1.</p>
 </div>
-<hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
+<div class="paragraph">
+<p>We highly recommend verifying the PGP signature, though.</p>
 </div>
 <hr>
 </div>
-</div>
 </div>
                 </div>
             </div>
diff --git a/docs/jdoql_result.html b/docs/release-3.1-rc1.html
similarity index 73%
copy from docs/jdoql_result.html
copy to docs/release-3.1-rc1.html
index 8ac3aec..4781f67 100644
--- a/docs/jdoql_result.html
+++ b/docs/release-3.1-rc1.html
@@ -11,7 +11,7 @@
     <meta name="keywords" content="JDO, Apache, Java, Data, Objects"/>
     <meta name="description" content="Apache JDO - Java Data Objects"/>
 
-    <title>JDOQL : Result<a id="JDOQL_:_Result"></a></title>
+    <title>JDO 3.1-rc1 Distributions<a id="JDO_3.1-rc1_Distributions"></a></title>
 
     <link rel="icon" type="image/png" href="https://apache.github.io/db-jdo-site/images/JDO_32x32.png"/>
 
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -280,7 +280,7 @@ table.CodeRay td.code>pre{padding:0}
         <div class="row-fluid">
             <div class="col-sm-9">
 <!--                <div class="page-title">
-                    <h3>JDOQL : Result<a id="JDOQL_:_Result"></a></h3>
+                    <h3>JDO 3.1-rc1 Distributions<a id="JDO_3.1-rc1_Distributions"></a></h3>
                 </div>
 -->
                 <div id="doc-content">
@@ -290,167 +290,133 @@ table.CodeRay td.code>pre{padding:0}
 </div>
 <hr>
 <div class="sect1">
-<h2 id="_jdoql_result_a_id_jdoql_result_a">JDOQL : Result<a id="JDOQL_:_Result"></a></h2>
+<h2 id="_jdo_3_1_rc1_distributions_a_id_jdo_3_1_rc1_distributions_a">JDO 3.1-rc1 Distributions<a id="JDO_3.1-rc1_Distributions"></a></h2>
 <div class="sectionbody">
 <div class="paragraph">
-<p>As we have seen, a JDOQL query is made up of different parts. In this
-section we look at the <em>result</em> part of the query. The result is what we
-want returning. By default (when not specifying the result) the objects
-returned will be of the candidate class type, where they match the query
-filter. Firstly let&#8217;s look at what you can include in the <em>result</em>
-clause.</p>
-</div>
-<div class="ulist">
-<ul>
-<li>
-<p><em>this</em> - the candidate instance</p>
-</li>
-<li>
-<p>A field name</p>
-</li>
-<li>
-<p>A variable</p>
-</li>
-<li>
-<p>A parameter (though why you would want a parameter returning is hard
-to see since you input the value in the first place)</p>
-</li>
-<li>
-<p>An aggregate (count(), avg(), sum(), min(), max())</p>
-</li>
-<li>
-<p>An expression involving a field (e.g "field1 + 1")</p>
-</li>
-<li>
-<p>A navigational expression (navigating from one field to another &#8230;&#8203;
-e.g "field1.field4")</p>
-</li>
-</ul>
+<p>Use the links below to download Apache JDO from one of our mirrors. For
+more information about the projects see <a href="downloads.html">Downloads</a>.
+For information on running the TCK, see <a href="tck.html">TCK</a>.</p>
 </div>
 <div class="paragraph">
-<p>The result is specified in JDOQL like this</p>
-</div>
-<div class="literalblock">
-<div class="content">
-<pre>query.setResult("count(field1), field2");</pre>
-</div>
+<p>It is good practice to <a href="#Verifying">verify the integrity</a> of the
+distribution files.</p>
 </div>
 <div class="paragraph">
-<p>In <strong>Single-String JDOQL</strong> you would specify it directly.</p>
+<p>You are currently using
+<strong><a href="http://mirror.ox.ac.uk/sites/rsync.apache.org/" class="bare">http://mirror.ox.ac.uk/sites/rsync.apache.org/</a></strong>. If you encounter a
+problem with this mirror, then please select another. If all mirrors are
+failing, there are backup mirrors at the end of the list. See
+<a href="http://www.apache.org/mirrors/">status</a> of mirrors.</p>
 </div>
 <div class="paragraph">
-<p><br></p>
-</div>
-<div class="sect2">
-<h3 id="_result_type_a_id_result_type_a">Result type<a id="Result_type"></a></h3>
-<div class="paragraph">
-<p>What you specify in the <em>result</em> defines what form of result you get
-back.</p>
+<p>Other mirrors:</p>
 </div>
 <div class="ulist">
 <ul>
 <li>
-<p><strong>Object</strong> - this is returned if you have only a single row in the
-results and a single column. This is achived when you specified either
-UNIQUE, or just an aggregate (e.g "max(field2)")</p>
+<p><a href="http://apache.mirror.anlx.net/" class="bare">http://apache.mirror.anlx.net/</a></p>
 </li>
 <li>
-<p><strong>Object[]</strong> - this is returned if you have only a single row in the
-results, but more than 1 column (e.g "max(field1), avg(field2)")</p>
+<p><a href="http://apache.mirrors.nublue.co.uk/" class="bare">http://apache.mirrors.nublue.co.uk/</a></p>
 </li>
 <li>
-<p><strong>List&lt;Object&gt;</strong> - this is returned if you have only a single column in
-the result, and you don&#8217;t have only aggregates in the result (e.g
-"field2")</p>
+<p><a href="http://mirror.ox.ac.uk/sites/rsync.apache.org/" class="bare">http://mirror.ox.ac.uk/sites/rsync.apache.org/</a></p>
 </li>
 <li>
-<p><strong>List&lt;Object[]&gt;</strong> - this is returned if you have more than 1 column in
-the result, and you don&#8217;t have only aggregates in the result (e.g
-"field2, avg(field3)")</p>
+<p><a href="http://mirror.vorboss.net/apache/" class="bare">http://mirror.vorboss.net/apache/</a></p>
 </li>
-</ul>
-</div>
-</div>
-<div class="sect2">
-<h3 id="_aggregates_a_id_aggregates_a">Aggregates<a id="Aggregates"></a></h3>
-<div class="paragraph">
-<p>There are situations when you want to return a single number for a
-column, representing an aggregate of the values of all records. There
-are 5 standard JDO2 aggregate functions available. These are</p>
-</div>
-<div class="ulist">
-<ul>
 <li>
-<p><strong>avg(val)</strong> - returns the average of "val". "val" can be a field,
-numeric field expression or "distinct field".</p>
+<p><a href="http://mirrors.ukfast.co.uk/sites/ftp.apache.org/" class="bare">http://mirrors.ukfast.co.uk/sites/ftp.apache.org/</a></p>
 </li>
 <li>
-<p><strong>sum(val)</strong> - returns the sum of "val". "val" can be a field, numeric
-field expression, or "distinct field".</p>
+<p><a href="http://www.mirrorservice.org/sites/ftp.apache.org/" class="bare">http://www.mirrorservice.org/sites/ftp.apache.org/</a></p>
 </li>
 <li>
-<p><strong>count(val)</strong> - returns the count of records of "val". "val" can be a
-field, or can be "this", or "distinct field".</p>
+<p><a href="ftp://ftp.mirrorservice.org/sites/ftp.apache.org/" class="bare">ftp://ftp.mirrorservice.org/sites/ftp.apache.org/</a></p>
 </li>
 <li>
-<p><strong>min(val)</strong> - returns the minimum of "val". "val" can be a field</p>
+<p><a href="https://www-eu.apache.org/dist/" class="bare">https://www-eu.apache.org/dist/</a>   (backup)</p>
 </li>
 <li>
-<p><strong>max(val)</strong> - returns the maximum of "val". "val" can be a field</p>
+<p><a href="https://www-us.apache.org/dist/" class="bare">https://www-us.apache.org/dist/</a>   (backup)</p>
 </li>
 </ul>
 </div>
 <div class="paragraph">
-<p>So to utilise these you could specify something like</p>
+<p><br></p>
 </div>
-<div class="literalblock">
-<div class="content">
-<pre>Query q = pm.newQuery("SELECT max(price), min(price) FROM mydomain.Product WHERE status == 1");</pre>
+<div class="sect2">
+<h3 id="_release_notes_a_id_release_notes_a">Release Notes<a id="Release_Notes"></a></h3>
+<div class="paragraph">
+<p><a href="https://issues.apache.org/jira/secure/ReleaseNote.jspa?version=12314921&amp;styleName=Html&amp;projectId=10630">View
+release notes for JDO 3.1-rc1</a></p>
 </div>
 </div>
+<div class="sect2">
+<h3 id="_api_a_id_api_a">API<a id="API"></a></h3>
 <div class="paragraph">
-<p>This will return a single row of results with 2 values, the maximum
-price and the minimum price of all products that have status code of 1.</p>
+<p>The api project contains source to build jdo-api.jar, which defines the
+JDO API. The jar file is the only artifact needed for users who wish to
+compile their programs using the JDO API. It can be downloaded
+automatically by maven and placed into the local maven repository if you
+include the proper dependency in your maven project definition. Use
+groupId javax.jdo, artifactId jdo-api, version 3.1-rc1 and define your
+remote repository as <a href="http://www.ibiblio.org/maven" class="bare">http://www.ibiblio.org/maven</a>. Alternatively, it can
+be downloaded manually and put into a location of your choice.</p>
 </div>
 <div class="paragraph">
-<p><br></p>
+<p><a href="http://mirror.ox.ac.uk/sites/rsync.apache.org//db/jdo/3.1-rc1/jdo-api-3.1-rc1.jar">jdo-api-3.1-rc1.jar</a></p>
 </div>
+<div class="paragraph apache org/dist/db/jdo/3 1-rc1/jdo-api-3 1-rc1 jar asc[PGP]">
+<p><a href="http://mirror.ox.ac.uk/sites/rsync.apache.org//db/jdo/3.1-rc1/jdo-api-3.1-rc1.pom">jdo-api-3.1-rc1.pom</a></p>
 </div>
-<div class="sect2">
-<h3 id="_example_use_of_aggregates_a_id_example_use_of_aggregates_a">Example - Use of aggregates<a id="Example_-_Use_of_aggregates"></a></h3>
+<div class="paragraph apache org/dist/db/jdo/3 1-rc1/jdo-api-3 1-rc1 pom asc[PGP]">
+<p><a href="http://mirror.ox.ac.uk/sites/rsync.apache.org//db/jdo/3.1-rc1/jdo-api-3.1-rc1-sources.jar">jdo-api-3.1-rc1-sources.jar</a></p>
+</div>
+</div>
+<div class="sect2 apache org/dist/db/jdo/3 1-rc1/jdo-api-3 1-rc1-sources jar asc[PGP]">
+<h3 id="_tck_a_id_tck_a">TCK<a id="TCK"></a></h3>
 <div class="paragraph">
-<p>JDO 2 introduces the ability to use aggregates in queries. Here&#8217;s
-another example using the same Product class as above, but this time
-looking for the maximum price of products that are CD Players. Note that
-the result for this particular query will be of type Double since there
-is a single double precision value being returned via the "result".</p>
+<p>This is a download for all implementors of JDO, and for those who want
+to check how well an implementation is compliant with the JDO
+specification. The tck project contains the JDO Technology Compatibility
+Kit. The source distribution is the only artifact needed to be
+downloaded by the user. The dependencies are automatically downloaded by
+maven as needed to run the TCK. Please refer to the README.html for
+further details.</p>
+</div>
+<div class="paragraph">
+<p><a href="http://mirror.ox.ac.uk/sites/rsync.apache.org//db/jdo/3.1-rc1/jdo-3.1-rc1-src.zip">jdo-3.1-rc1-src.zip</a></p>
+</div>
+<div class="paragraph apache org/dist/db/jdo/3 1-rc1/jdo-3 1-rc1-src zip asc[PGP]">
+<p><a href="http://mirror.ox.ac.uk/sites/rsync.apache.org//db/jdo/3.1-rc1/jdo-3.1-rc1-src.tar.gz">jdo-3.1-rc1-src.tar.gz</a></p>
+</div>
 </div>
-<div class="literalblock">
-<div class="content">
-<pre>Declarative JDOQL :
-Query query = pm.newQuery(mydomain.Product.class);
-query.setFilter("name == \"CD Player\"");
-query.setResult("max(this.price)");
-List results = (List)query.execute();
-Iterator iter = c.iterator();
-Double max_price = (Double)iter.next();
-
-Single-String JDOQL :
-Query query = pm.newQuery("SELECT max(price) FROM mydomain.Product WHERE name == \"CD Player\"");
-List results = (List)query.execute();
-Iterator iter = c.iterator();
-Double max_price = (Double)iter.next();</pre>
 </div>
 </div>
+<div class="sect1 apache org/dist/db/jdo/3 1-rc1/jdo-3 1-rc1-src tar gz asc[PGP]">
+<h2 id="_verifying_releases_a_id_verifying_releases_a">Verifying Releases<a id="Verifying_Releases"></a></h2>
+<div class="sectionbody">
 <div class="paragraph">
-<p><br></p>
+<p><a id="Verifying"></a></p>
 </div>
-<hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
+<div class="paragraph">
+<p>It is essential that you verify the integrity of the downloaded files
+using the PGP signature.</p>
 </div>
-<hr>
+<div class="paragraph">
+<p>The PGP signatures can be verified using PGP or GPG. First download the
+<a href="http://www.apache.org/dist/db/jdo/KEYS">KEYS</a> as well as the <code>asc</code>
+signature file for the particular distribution. Make sure you get these
+files from the <a href="http://www.apache.org/dist/db/jdo/">main distribution
+directory</a>, rather than from a mirror. Then verify the signatures using</p>
 </div>
+<div class="paragraph">
+<p>` % pgpk -a KEYS % pgpv release_name.tar.gz.asc` <em>or</em><br>
+` % pgp -ka KEYS % pgp release_name.tar.gz.asc` <em>or</em><br>
+` % gpg --import KEYS % gpg --verify release_name.tar.gz.asc`</p>
+</div>
+<hr>
 </div>
 </div>
                 </div>
diff --git a/docs/jdoql_result.html b/docs/release-3.1.html
similarity index 60%
copy from docs/jdoql_result.html
copy to docs/release-3.1.html
index 8ac3aec..a6e7f1c 100644
--- a/docs/jdoql_result.html
+++ b/docs/release-3.1.html
@@ -11,7 +11,7 @@
     <meta name="keywords" content="JDO, Apache, Java, Data, Objects"/>
     <meta name="description" content="Apache JDO - Java Data Objects"/>
 
-    <title>JDOQL : Result<a id="JDOQL_:_Result"></a></title>
+    <title>JDO 3.1 Distributions<a id="JDO_3.1_Distributions"></a></title>
 
     <link rel="icon" type="image/png" href="https://apache.github.io/db-jdo-site/images/JDO_32x32.png"/>
 
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -280,7 +280,7 @@ table.CodeRay td.code>pre{padding:0}
         <div class="row-fluid">
             <div class="col-sm-9">
 <!--                <div class="page-title">
-                    <h3>JDOQL : Result<a id="JDOQL_:_Result"></a></h3>
+                    <h3>JDO 3.1 Distributions<a id="JDO_3.1_Distributions"></a></h3>
                 </div>
 -->
                 <div id="doc-content">
@@ -290,167 +290,260 @@ table.CodeRay td.code>pre{padding:0}
 </div>
 <hr>
 <div class="sect1">
-<h2 id="_jdoql_result_a_id_jdoql_result_a">JDOQL : Result<a id="JDOQL_:_Result"></a></h2>
+<h2 id="_jdo_3_1_distributions_a_id_jdo_3_1_distributions_a">JDO 3.1 Distributions<a id="JDO_3.1_Distributions"></a></h2>
 <div class="sectionbody">
 <div class="paragraph">
-<p>As we have seen, a JDOQL query is made up of different parts. In this
-section we look at the <em>result</em> part of the query. The result is what we
-want returning. By default (when not specifying the result) the objects
-returned will be of the candidate class type, where they match the query
-filter. Firstly let&#8217;s look at what you can include in the <em>result</em>
-clause.</p>
+<p>Use the links below to download Apache JDO from one of our mirrors. For
+more information about the projects see <a href="downloads.html">Downloads</a>.
+For information on running the TCK, see <a href="tck.html">TCK</a>.</p>
+</div>
+<div class="paragraph">
+<p>It is good practice to <a href="#Verifying">verify the integrity</a> of the
+distribution files.</p>
+</div>
+<div class="paragraph">
+<p>You are currently using <strong><a href="http://apache.mirror.anlx.net/" class="bare">http://apache.mirror.anlx.net/</a></strong>. If you
+encounter a problem with this mirror, then please select another. If all
+mirrors are failing, there are backup mirrors at the end of the list.
+See <a href="http://www.apache.org/mirrors/">status</a> of mirrors.</p>
+</div>
+<div class="paragraph">
+<p>Other mirrors:</p>
 </div>
 <div class="ulist">
 <ul>
 <li>
-<p><em>this</em> - the candidate instance</p>
+<p><a href="http://apache.mirror.anlx.net/" class="bare">http://apache.mirror.anlx.net/</a></p>
 </li>
 <li>
-<p>A field name</p>
+<p><a href="http://apache.mirrors.nublue.co.uk/" class="bare">http://apache.mirrors.nublue.co.uk/</a></p>
 </li>
 <li>
-<p>A variable</p>
+<p><a href="http://mirror.ox.ac.uk/sites/rsync.apache.org/" class="bare">http://mirror.ox.ac.uk/sites/rsync.apache.org/</a></p>
 </li>
 <li>
-<p>A parameter (though why you would want a parameter returning is hard
-to see since you input the value in the first place)</p>
+<p><a href="http://mirror.vorboss.net/apache/" class="bare">http://mirror.vorboss.net/apache/</a></p>
 </li>
 <li>
-<p>An aggregate (count(), avg(), sum(), min(), max())</p>
+<p><a href="http://mirrors.ukfast.co.uk/sites/ftp.apache.org/" class="bare">http://mirrors.ukfast.co.uk/sites/ftp.apache.org/</a></p>
 </li>
 <li>
-<p>An expression involving a field (e.g "field1 + 1")</p>
+<p><a href="http://www.mirrorservice.org/sites/ftp.apache.org/" class="bare">http://www.mirrorservice.org/sites/ftp.apache.org/</a></p>
 </li>
 <li>
-<p>A navigational expression (navigating from one field to another &#8230;&#8203;
-e.g "field1.field4")</p>
+<p><a href="ftp://ftp.mirrorservice.org/sites/ftp.apache.org/" class="bare">ftp://ftp.mirrorservice.org/sites/ftp.apache.org/</a></p>
+</li>
+<li>
+<p><a href="https://www-eu.apache.org/dist/" class="bare">https://www-eu.apache.org/dist/</a>   (backup)</p>
+</li>
+<li>
+<p><a href="https://www-us.apache.org/dist/" class="bare">https://www-us.apache.org/dist/</a>   (backup)</p>
 </li>
 </ul>
 </div>
 <div class="paragraph">
-<p>The result is specified in JDOQL like this</p>
-</div>
-<div class="literalblock">
-<div class="content">
-<pre>query.setResult("count(field1), field2");</pre>
-</div>
+<p><br></p>
 </div>
+<div class="sect2">
+<h3 id="_release_notes_a_id_release_notes_a">Release Notes<a id="Release_Notes"></a></h3>
 <div class="paragraph">
-<p>In <strong>Single-String JDOQL</strong> you would specify it directly.</p>
+<p><a href="https://issues.apache.org/jira/secure/ReleaseNote.jspa?version=12325878&amp;styleName=Html&amp;projectId=10630">View
+release notes for JDO 3.1</a></p>
 </div>
-<div class="paragraph">
-<p><br></p>
 </div>
 <div class="sect2">
-<h3 id="_result_type_a_id_result_type_a">Result type<a id="Result_type"></a></h3>
+<h3 id="_api_a_id_api_a">API<a id="API"></a></h3>
 <div class="paragraph">
-<p>What you specify in the <em>result</em> defines what form of result you get
-back.</p>
+<p>The api project contains source to build jdo-api.jar, which defines the
+JDO API. The jar file is the only artifact needed for users who wish to
+compile their programs using the JDO API. It can be downloaded
+automatically by maven and placed into the local maven repository if you
+include the proper dependency in your maven project definition. Use
+groupId javax.jdo, artifactId jdo-api, version 3.1 and define your
+remote repository as <a href="http://www.ibiblio.org/maven" class="bare">http://www.ibiblio.org/maven</a>. Alternatively, it can
+be downloaded manually and put into a location of your choice.</p>
 </div>
 <div class="ulist">
 <ul>
 <li>
-<p><strong>Object</strong> - this is returned if you have only a single row in the
-results and a single column. This is achived when you specified either
-UNIQUE, or just an aggregate (e.g "max(field2)")</p>
+<p><a href="http://apache.mirror.anlx.net/" class="bare">http://apache.mirror.anlx.net/</a></p>
+</li>
+<li>
+<p><a href="http://apache.mirrors.nublue.co.uk/" class="bare">http://apache.mirrors.nublue.co.uk/</a></p>
+</li>
+<li>
+<p><a href="http://mirror.ox.ac.uk/sites/rsync.apache.org/" class="bare">http://mirror.ox.ac.uk/sites/rsync.apache.org/</a></p>
+</li>
+<li>
+<p><a href="http://mirror.vorboss.net/apache/" class="bare">http://mirror.vorboss.net/apache/</a></p>
+</li>
+<li>
+<p><a href="http://mirrors.ukfast.co.uk/sites/ftp.apache.org/" class="bare">http://mirrors.ukfast.co.uk/sites/ftp.apache.org/</a></p>
+</li>
+<li>
+<p><a href="http://www.mirrorservice.org/sites/ftp.apache.org/" class="bare">http://www.mirrorservice.org/sites/ftp.apache.org/</a></p>
+</li>
+<li>
+<p><a href="ftp://ftp.mirrorservice.org/sites/ftp.apache.org/" class="bare">ftp://ftp.mirrorservice.org/sites/ftp.apache.org/</a></p>
+</li>
+<li>
+<p><a href="https://www-eu.apache.org/dist/" class="bare">https://www-eu.apache.org/dist/</a>   (backup)</p>
+</li>
+<li>
+<p><a href="https://www-us.apache.org/dist/" class="bare">https://www-us.apache.org/dist/</a>   (backup)</p>
+</li>
+<li>
+<p><a href="http://apache.mirror.anlx.net/" class="bare">http://apache.mirror.anlx.net/</a></p>
+</li>
+<li>
+<p><a href="http://apache.mirrors.nublue.co.uk/" class="bare">http://apache.mirrors.nublue.co.uk/</a></p>
+</li>
+<li>
+<p><a href="http://mirror.ox.ac.uk/sites/rsync.apache.org/" class="bare">http://mirror.ox.ac.uk/sites/rsync.apache.org/</a></p>
+</li>
+<li>
+<p><a href="http://mirror.vorboss.net/apache/" class="bare">http://mirror.vorboss.net/apache/</a></p>
+</li>
+<li>
+<p><a href="http://mirrors.ukfast.co.uk/sites/ftp.apache.org/" class="bare">http://mirrors.ukfast.co.uk/sites/ftp.apache.org/</a></p>
+</li>
+<li>
+<p><a href="http://www.mirrorservice.org/sites/ftp.apache.org/" class="bare">http://www.mirrorservice.org/sites/ftp.apache.org/</a></p>
+</li>
+<li>
+<p><a href="ftp://ftp.mirrorservice.org/sites/ftp.apache.org/" class="bare">ftp://ftp.mirrorservice.org/sites/ftp.apache.org/</a></p>
+</li>
+<li>
+<p><a href="https://www-eu.apache.org/dist/" class="bare">https://www-eu.apache.org/dist/</a>   (backup)</p>
+</li>
+<li>
+<p><a href="https://www-us.apache.org/dist/" class="bare">https://www-us.apache.org/dist/</a>   (backup)</p>
 </li>
 <li>
-<p><strong>Object[]</strong> - this is returned if you have only a single row in the
-results, but more than 1 column (e.g "max(field1), avg(field2)")</p>
+<p><a href="http://apache.mirror.anlx.net/" class="bare">http://apache.mirror.anlx.net/</a></p>
 </li>
 <li>
-<p><strong>List&lt;Object&gt;</strong> - this is returned if you have only a single column in
-the result, and you don&#8217;t have only aggregates in the result (e.g
-"field2")</p>
+<p><a href="http://apache.mirrors.nublue.co.uk/" class="bare">http://apache.mirrors.nublue.co.uk/</a></p>
 </li>
 <li>
-<p><strong>List&lt;Object[]&gt;</strong> - this is returned if you have more than 1 column in
-the result, and you don&#8217;t have only aggregates in the result (e.g
-"field2, avg(field3)")</p>
+<p><a href="http://mirror.ox.ac.uk/sites/rsync.apache.org/" class="bare">http://mirror.ox.ac.uk/sites/rsync.apache.org/</a></p>
+</li>
+<li>
+<p><a href="http://mirror.vorboss.net/apache/" class="bare">http://mirror.vorboss.net/apache/</a></p>
+</li>
+<li>
+<p><a href="http://mirrors.ukfast.co.uk/sites/ftp.apache.org/" class="bare">http://mirrors.ukfast.co.uk/sites/ftp.apache.org/</a></p>
+</li>
+<li>
+<p><a href="http://www.mirrorservice.org/sites/ftp.apache.org/" class="bare">http://www.mirrorservice.org/sites/ftp.apache.org/</a></p>
+</li>
+<li>
+<p><a href="ftp://ftp.mirrorservice.org/sites/ftp.apache.org/" class="bare">ftp://ftp.mirrorservice.org/sites/ftp.apache.org/</a></p>
+</li>
+<li>
+<p><a href="https://www-eu.apache.org/dist/" class="bare">https://www-eu.apache.org/dist/</a>   (backup)</p>
+</li>
+<li>
+<p><a href="https://www-us.apache.org/dist/" class="bare">https://www-us.apache.org/dist/</a>   (backup)</p>
 </li>
 </ul>
 </div>
 </div>
 <div class="sect2">
-<h3 id="_aggregates_a_id_aggregates_a">Aggregates<a id="Aggregates"></a></h3>
+<h3 id="_tck_a_id_tck_a">TCK<a id="TCK"></a></h3>
 <div class="paragraph">
-<p>There are situations when you want to return a single number for a
-column, representing an aggregate of the values of all records. There
-are 5 standard JDO2 aggregate functions available. These are</p>
+<p>This is a download for all implementors of JDO, and for those who want
+to check how well an implementation is compliant with the JDO
+specification. The tck project contains the JDO Technology Compatibility
+Kit. The source distribution is the only artifact needed to be
+downloaded by the user. The dependencies are automatically downloaded by
+maven as needed to run the TCK. Please refer to the README.html for
+further details.</p>
 </div>
 <div class="ulist">
 <ul>
 <li>
-<p><strong>avg(val)</strong> - returns the average of "val". "val" can be a field,
-numeric field expression or "distinct field".</p>
+<p><a href="http://apache.mirror.anlx.net/" class="bare">http://apache.mirror.anlx.net/</a></p>
+</li>
+<li>
+<p><a href="http://apache.mirrors.nublue.co.uk/" class="bare">http://apache.mirrors.nublue.co.uk/</a></p>
+</li>
+<li>
+<p><a href="http://mirror.ox.ac.uk/sites/rsync.apache.org/" class="bare">http://mirror.ox.ac.uk/sites/rsync.apache.org/</a></p>
+</li>
+<li>
+<p><a href="http://mirror.vorboss.net/apache/" class="bare">http://mirror.vorboss.net/apache/</a></p>
+</li>
+<li>
+<p><a href="http://mirrors.ukfast.co.uk/sites/ftp.apache.org/" class="bare">http://mirrors.ukfast.co.uk/sites/ftp.apache.org/</a></p>
+</li>
+<li>
+<p><a href="http://www.mirrorservice.org/sites/ftp.apache.org/" class="bare">http://www.mirrorservice.org/sites/ftp.apache.org/</a></p>
+</li>
+<li>
+<p><a href="ftp://ftp.mirrorservice.org/sites/ftp.apache.org/" class="bare">ftp://ftp.mirrorservice.org/sites/ftp.apache.org/</a></p>
+</li>
+<li>
+<p><a href="https://www-eu.apache.org/dist/" class="bare">https://www-eu.apache.org/dist/</a>   (backup)</p>
+</li>
+<li>
+<p><a href="https://www-us.apache.org/dist/" class="bare">https://www-us.apache.org/dist/</a>   (backup)</p>
+</li>
+<li>
+<p><a href="http://apache.mirror.anlx.net/" class="bare">http://apache.mirror.anlx.net/</a></p>
+</li>
+<li>
+<p><a href="http://apache.mirrors.nublue.co.uk/" class="bare">http://apache.mirrors.nublue.co.uk/</a></p>
+</li>
+<li>
+<p><a href="http://mirror.ox.ac.uk/sites/rsync.apache.org/" class="bare">http://mirror.ox.ac.uk/sites/rsync.apache.org/</a></p>
+</li>
+<li>
+<p><a href="http://mirror.vorboss.net/apache/" class="bare">http://mirror.vorboss.net/apache/</a></p>
+</li>
+<li>
+<p><a href="http://mirrors.ukfast.co.uk/sites/ftp.apache.org/" class="bare">http://mirrors.ukfast.co.uk/sites/ftp.apache.org/</a></p>
 </li>
 <li>
-<p><strong>sum(val)</strong> - returns the sum of "val". "val" can be a field, numeric
-field expression, or "distinct field".</p>
+<p><a href="http://www.mirrorservice.org/sites/ftp.apache.org/" class="bare">http://www.mirrorservice.org/sites/ftp.apache.org/</a></p>
 </li>
 <li>
-<p><strong>count(val)</strong> - returns the count of records of "val". "val" can be a
-field, or can be "this", or "distinct field".</p>
+<p><a href="ftp://ftp.mirrorservice.org/sites/ftp.apache.org/" class="bare">ftp://ftp.mirrorservice.org/sites/ftp.apache.org/</a></p>
 </li>
 <li>
-<p><strong>min(val)</strong> - returns the minimum of "val". "val" can be a field</p>
+<p><a href="https://www-eu.apache.org/dist/" class="bare">https://www-eu.apache.org/dist/</a>   (backup)</p>
 </li>
 <li>
-<p><strong>max(val)</strong> - returns the maximum of "val". "val" can be a field</p>
+<p><a href="https://www-us.apache.org/dist/" class="bare">https://www-us.apache.org/dist/</a>   (backup)</p>
 </li>
 </ul>
 </div>
-<div class="paragraph">
-<p>So to utilise these you could specify something like</p>
 </div>
-<div class="literalblock">
-<div class="content">
-<pre>Query q = pm.newQuery("SELECT max(price), min(price) FROM mydomain.Product WHERE status == 1");</pre>
 </div>
 </div>
+<div class="sect1">
+<h2 id="_verifying_releases_a_id_verifying_releases_a">Verifying Releases<a id="Verifying_Releases"></a></h2>
+<div class="sectionbody">
 <div class="paragraph">
-<p>This will return a single row of results with 2 values, the maximum
-price and the minimum price of all products that have status code of 1.</p>
+<p><a id="Verifying"></a></p>
 </div>
 <div class="paragraph">
-<p><br></p>
-</div>
+<p>It is essential that you verify the integrity of the downloaded files
+using the PGP signature.</p>
 </div>
-<div class="sect2">
-<h3 id="_example_use_of_aggregates_a_id_example_use_of_aggregates_a">Example - Use of aggregates<a id="Example_-_Use_of_aggregates"></a></h3>
 <div class="paragraph">
-<p>JDO 2 introduces the ability to use aggregates in queries. Here&#8217;s
-another example using the same Product class as above, but this time
-looking for the maximum price of products that are CD Players. Note that
-the result for this particular query will be of type Double since there
-is a single double precision value being returned via the "result".</p>
-</div>
-<div class="literalblock">
-<div class="content">
-<pre>Declarative JDOQL :
-Query query = pm.newQuery(mydomain.Product.class);
-query.setFilter("name == \"CD Player\"");
-query.setResult("max(this.price)");
-List results = (List)query.execute();
-Iterator iter = c.iterator();
-Double max_price = (Double)iter.next();
-
-Single-String JDOQL :
-Query query = pm.newQuery("SELECT max(price) FROM mydomain.Product WHERE name == \"CD Player\"");
-List results = (List)query.execute();
-Iterator iter = c.iterator();
-Double max_price = (Double)iter.next();</pre>
-</div>
+<p>The PGP signatures can be verified using PGP or GPG. First download the
+<a href="http://www.apache.org/dist/db/jdo/KEYS">KEYS</a> as well as the <code>asc</code>
+signature file for the particular distribution. Make sure you get these
+files from the <a href="http://www.apache.org/dist/db/jdo/">main distribution
+directory</a>, rather than from a mirror. Then verify the signatures using</p>
 </div>
 <div class="paragraph">
-<p><br></p>
+<p>` % pgpk -a KEYS % pgpv release_name.tar.gz.asc` <em>or</em><br>
+` % pgp -ka KEYS % pgp release_name.tar.gz.asc` <em>or</em><br>
+` % gpg --import KEYS % gpg --verify release_name.tar.gz.asc`</p>
 </div>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
-</div>
 </div>
 </div>
                 </div>
diff --git a/docs/roadmap.html b/docs/roadmap.html
index f1345d5..c539f03 100644
--- a/docs/roadmap.html
+++ b/docs/roadmap.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -303,10 +303,6 @@ for details of the planned and completed work.</p>
 Idea</a></p>
 </div>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
                 </div>
diff --git a/docs/specifications.html b/docs/specifications.html
index 7432c34..65c2d24 100644
--- a/docs/specifications.html
+++ b/docs/specifications.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -350,10 +350,6 @@ to <a href="mailto:jdo-dev@db.apache.org">jdo-dev@db.apache.org</a>.</p>
 </ul>
 </div>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
                 </div>
diff --git a/docs/state_transition.html b/docs/state_transition.html
index 038b43f..6002037 100644
--- a/docs/state_transition.html
+++ b/docs/state_transition.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -535,10 +535,6 @@ this graphically</p>
 <p><span class="image"><img src="images/state_transition.png" alt="JDO State Transition"></span><br></p>
 </div>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
 </div>
diff --git a/docs/svn.html b/docs/svn.html
index 0844055..8bfa08a 100644
--- a/docs/svn.html
+++ b/docs/svn.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -590,10 +590,6 @@ Apply. OK. OK.) You will have to do this again when you do a clean
 checkout to a new directory.</p>
 </div>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
 </div>
diff --git a/docs/tck.html b/docs/tck.html
index 13c9c2f..5ecc93f 100644
--- a/docs/tck.html
+++ b/docs/tck.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -334,12 +334,7 @@ in the tck directory.</p>
 <p>Vendors must post test results on a publicly accessible web site for
 examination by the public. The posting includes the output of the test
 run, which consists of multiple log files containing configuration
-information and test results. For an example of the required posting,
-please see <a href="tck/final"><a href="http://db.apache.org/jdo/tck/final" class="bare">http://db.apache.org/jdo/tck/final</a></a>.</p>
-</div>
-<hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
+information and test results.</p>
 </div>
 <hr>
 </div>
diff --git a/docs/team-list.html b/docs/team-list.html
index f7e7195..3951119 100644
--- a/docs/team-list.html
+++ b/docs/team-list.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -406,10 +406,6 @@ have ideas, please feel free to suggest them on the mailing list.</p>
 </tbody>
 </table>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
                 </div>
diff --git a/docs/transactions.html b/docs/transactions.html
index 0383ac3..e2e7f47 100644
--- a/docs/transactions.html
+++ b/docs/transactions.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -349,10 +349,6 @@ or on the transaction you call</p>
 </div>
 </div>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
                 </div>
diff --git a/docs/why_jdo.html b/docs/why_jdo.html
index 1421069..0e66b53 100644
--- a/docs/why_jdo.html
+++ b/docs/why_jdo.html
@@ -225,8 +225,8 @@ table.CodeRay td.code>pre{padding:0}
                         <li role="separator" class="divider"></li>
                         <li class="dropdown-header">Guides</li>
                         <li><a href="guides.html">Guides</a></li>
-                        <li><a href="guides/replication.html">Datastore Replication</a></li>
-                        <li><a href="guides/maven-jdo.html">JDO and Maven1</a></li>
+                        <li><a href="guides-replication.html">Datastore Replication</a></li>
+                        <li><a href="guides-maven-jdo.html">JDO and Maven1</a></li>
                         <li role="separator" class="divider"></li>
                         <li><a href="references.html">References</a></li>
                         <li><a href="exceptions.html">Exceptions</a></li>
@@ -483,10 +483,6 @@ choosing a persistence layer for your application.</p>
 </ol>
 </div>
 <hr>
-<div id="footer" class="paragraph">
-<p>Copyright © 2005-2015. All Rights Reserved.</p>
-</div>
-<hr>
 </div>
 </div>
                 </div>