You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by bu...@apache.org on 2015/04/16 00:30:26 UTC

svn commit: r947794 [3/3] - in /websites/staging/isis/trunk: cgi-bin/ content/ content/docs/ content/docs/getting-started/archetype/ content/docs/getting-started/development-environment/cmd-line/ content/docs/getting-started/development-environment/ecl...

Modified: websites/staging/isis/trunk/content/docs/user-guide/user-guide.html
==============================================================================
--- websites/staging/isis/trunk/content/docs/user-guide/user-guide.html (original)
+++ websites/staging/isis/trunk/content/docs/user-guide/user-guide.html Wed Apr 15 22:30:25 2015
@@ -62,17 +62,11 @@
 
 
 
-
-
     <link rel="stylesheet" href="../css/foundation/5.5.1/foundation.css"/>
 
     <script src="../js/foundation/5.5.1/vendor/modernizr.js"></script>
 
-
-
-    <link href="../css/asciidoctor/stylesheets/foundation-potion.css" rel="stylesheet">
-
-
+    <link href="../css/asciidoctor/foundation-potion.css" rel="stylesheet">
 
     <link href="../css/font-awesome/4.3.0/css/font-awesome.min.css" rel="stylesheet">
 
@@ -268,6 +262,8 @@
 
             border-right: none;
 
+            min-height: 2000px;
+
         }
 
     </style>
@@ -491,12 +487,6 @@
           <div class="sect1">
 <h2 id="_core_concepts">1. Core Concepts</h2>
 <div class="sectionbody">
-
-</div>
-</div>
-<div class="sect1">
-<h2 id="_user_guide_core_concepts">2. User Guide: Core Concepts</h2>
-<div class="sectionbody">
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -510,11 +500,7 @@ TODO
 </table>
 </div>
 <div class="sect2">
-<h3 id="_principles">2.1. Principles</h3>
-
-</div>
-<div class="sect2">
-<h3 id="_user_guide_core_concepts_principles">2.2. User Guide: Core Concepts: Principles</h3>
+<h3 id="_principles">1.1. Principles</h3>
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -528,14 +514,14 @@ TODO
 </table>
 </div>
 <div class="sect3">
-<h4 id="_domain_driven_design">2.2.1. Domain-Driven Design</h4>
+<h4 id="_domain_driven_design">1.1.1. Domain-Driven Design</h4>
 <div class="sect4">
 <h5 id="_ubiquitous_language">Ubiquitous Language</h5>
 
 </div>
 </div>
 <div class="sect3">
-<h4 id="_naked_objects_pattern">2.2.2. Naked Objects Pattern</h4>
+<h4 id="_naked_objects_pattern">1.1.2. Naked Objects Pattern</h4>
 <div class="exampleblock">
 <div class="title">Example 1. Object Interface Mapping</div>
 <div class="content">
@@ -553,7 +539,7 @@ TODO
 </div>
 </div>
 <div class="sect3">
-<h4 id="_hexagonal_architecture">2.2.3. Hexagonal Architecture</h4>
+<h4 id="_hexagonal_architecture">1.1.3. Hexagonal Architecture</h4>
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -570,7 +556,7 @@ TODO
 </div>
 </div>
 <div class="sect3">
-<h4 id="_decoupled_modules">2.2.4. Decoupled Modules</h4>
+<h4 id="_decoupled_modules">1.1.4. Decoupled Modules</h4>
 <div class="paragraph">
 <p>Using:</p>
 </div>
@@ -613,7 +599,7 @@ TODO
 </div>
 </div>
 <div class="sect3">
-<h4 id="_focuses_on_its_key_responsibilities">2.2.5. Focuses on its Key Responsibilities</h4>
+<h4 id="_focuses_on_its_key_responsibilities">1.1.5. Focuses on its Key Responsibilities</h4>
 <div class="ulist">
 <ul>
 <li>
@@ -629,18 +615,14 @@ TODO
 </div>
 </div>
 <div class="sect3">
-<h4 id="_testable_applications">2.2.6. Testable Applications</h4>
+<h4 id="_testable_applications">1.1.6. Testable Applications</h4>
 <div class="paragraph">
 <p>While Apache Isis can be used (very effectively) for simple CRUD-style applications, it is also intended to be used for complex business domains.  Ensuring that the business logic in such applications is correct means that the framework must (and does) provide robust testing support, both for developer-level unit testing and business-level (end-to-end) integration testing.</p>
 </div>
 </div>
 </div>
 <div class="sect2">
-<h3 id="_apache_isis_vs">2.3. Apache Isis vs&#8230;&#8203;</h3>
-
-</div>
-<div class="sect2">
-<h3 id="_user_guide_core_concepts_apache_isis_vs">2.4. User Guide: Core Concepts: Apache Isis vs &#8230;&#8203;</h3>
+<h3 id="_apache_isis_vs">1.2. Apache Isis vs &#8230;&#8203;</h3>
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -654,28 +636,24 @@ TODO
 </table>
 </div>
 <div class="sect3">
-<h4 id="_vs_spring">2.4.1. vs Spring</h4>
+<h4 id="_vs_spring">1.2.1. vs Spring</h4>
 
 </div>
 <div class="sect3">
-<h4 id="_vs_jee">2.4.2. vs JEE</h4>
+<h4 id="_vs_jee">1.2.2. vs JEE</h4>
 
 </div>
 <div class="sect3">
-<h4 id="_vs_grails">2.4.3. vs Grails</h4>
+<h4 id="_vs_grails">1.2.3. vs Grails</h4>
 
 </div>
 <div class="sect3">
-<h4 id="_vs_angular">2.4.4. vs Angular</h4>
+<h4 id="_vs_angular">1.2.4. vs Angular</h4>
 
 </div>
 </div>
 <div class="sect2">
-<h3 id="_building_blocks">2.5. Building Blocks</h3>
-
-</div>
-<div class="sect2">
-<h3 id="_user_guide_core_concepts_building_blocks">2.6. User Guide: Core Concepts: Building Blocks</h3>
+<h3 id="_building_blocks">1.3. Building Blocks</h3>
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -689,7 +667,7 @@ TODO
 </table>
 </div>
 <div class="sect3">
-<h4 id="_a_metamodel_with_explicit_and_inferred_semantics">2.6.1. A MetaModel with Explicit and Inferred Semantics</h4>
+<h4 id="_a_metamodel_with_explicit_and_inferred_semantics">1.3.1. A MetaModel with Explicit and Inferred Semantics</h4>
 <div class="ulist">
 <ul>
 <li>
@@ -709,7 +687,7 @@ TODO
 </div>
 </div>
 <div class="sect3">
-<h4 id="_domain_objects_and_domain_services">2.6.2. Domain Objects and Domain Services</h4>
+<h4 id="_domain_objects_and_domain_services">1.3.2. Domain Objects and Domain Services</h4>
 <div class="ulist">
 <ul>
 <li>
@@ -745,17 +723,17 @@ TODO
 </div>
 </div>
 <div class="sect3">
-<h4 id="_properties_collections_and_actions">2.6.3. Properties, Collections and Actions</h4>
+<h4 id="_properties_collections_and_actions">1.3.3. Properties, Collections and Actions</h4>
 
 </div>
 <div class="sect3">
-<h4 id="_domain_entities_vs_view_models">2.6.4. Domain Entities vs View Models</h4>
+<h4 id="_domain_entities_vs_view_models">1.3.4. Domain Entities vs View Models</h4>
 <div class="paragraph">
 <p><code>@DomainObject(nature=&#8230;&#8203;)</code></p>
 </div>
 </div>
 <div class="sect3">
-<h4 id="_domain_services">2.6.5. Domain Services</h4>
+<h4 id="_domain_services">1.3.5. Domain Services</h4>
 <div class="paragraph">
 <p>Domain services consist of a set of logically grouped actions, and as such follow the same conventions as for entities. However, a service cannot have (persisted) properties, nor can it have (persisted) collections.</p>
 </div>
@@ -784,15 +762,15 @@ TODO
 </div>
 </div>
 <div class="sect3">
-<h4 id="_value_objects_primitives">2.6.6. Value Objects (Primitives)</h4>
+<h4 id="_value_objects_primitives">1.3.6. Value Objects (Primitives)</h4>
 
 </div>
 <div class="sect3">
-<h4 id="_contributions">2.6.7. Contributions</h4>
+<h4 id="_contributions">1.3.7. Contributions</h4>
 
 </div>
 <div class="sect3">
-<h4 id="_event_bus">2.6.8. Event Bus</h4>
+<h4 id="_event_bus">1.3.8. Event Bus</h4>
 <div class="sect4">
 <h5 id="_registering_domain_services">Registering domain services</h5>
 <div class="paragraph">
@@ -1001,11 +979,8 @@ public interface EmailService {
 </div>
 </div>
 </div>
-</div>
-<div class="sect2">
-<h3 id="_framework_provided_services">2.7. Framework-provided Services</h3>
 <div class="sect3">
-<h4 id="_user_guide_core_concepts_framework_provided_services">2.7.1. User Guide: Core Concepts: Framework-provided Services</h4>
+<h4 id="_framework_provided_services">1.3.9. Framework-provided Services</h4>
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -1136,22 +1111,16 @@ TODO
 </div>
 </div>
 <div class="sect2">
-<h3 id="_honouring_the_single_responsibility_principle">2.8. Honouring the Single Responsibility Principle</h3>
+<h3 id="_honouring_the_single_responsibility_principle">1.4. Honouring the Single Responsibility Principle</h3>
 <div class="sect3">
-<h4 id="_behaviourally_complete_vs_contributions">2.8.1. Behaviourally Complete vs Contributions</h4>
+<h4 id="_behaviourally_complete_vs_contributions">1.4.1. Behaviourally Complete vs Contributions</h4>
 
 </div>
 </div>
 </div>
 </div>
 <div class="sect1">
-<h2 id="_how_tos">3. How-tos</h2>
-<div class="sectionbody">
-
-</div>
-</div>
-<div class="sect1">
-<h2 id="_user_guide_how_tos">4. User Guide: How-tos</h2>
+<h2 id="_how_tos">2. How-tos</h2>
 <div class="sectionbody">
 <div class="admonitionblock note">
 <table>
@@ -1166,11 +1135,7 @@ TODO
 </table>
 </div>
 <div class="sect2">
-<h3 id="_class_structure">4.1. Class Structure</h3>
-
-</div>
-<div class="sect2">
-<h3 id="_user_guide_how_tos_class_members">4.2. User Guide: How-tos: Class Members</h3>
+<h3 id="_class_members">2.1. Class Members</h3>
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -1184,7 +1149,7 @@ TODO
 </table>
 </div>
 <div class="sect3">
-<h4 id="_class_definition">4.2.1. Class Definition</h4>
+<h4 id="_class_definition">2.1.1. Class Definition</h4>
 <div class="paragraph">
 <p>Classes are defined both to Isis and (if any entity) also to JDO/DataNucleus.</p>
 </div>
@@ -1255,11 +1220,11 @@ TODO
 </div>
 </div>
 <div class="sect3">
-<h4 id="_property">4.2.2. Property</h4>
+<h4 id="_property">2.1.2. Property</h4>
 <div class="sect4">
 <h5 id="_value_vs_reference_types">Value vs Reference Types</h5>
 <div class="paragraph">
-<p>The annotations for mapping value types tend to be different for properties vs action parameters, because JDO annotations are only valid on properties.  The table in <a href="#Mapping Value Types">[Mapping Value Types]</a> provides a handy reference for the each.</p>
+<p>The annotations for mapping value types tend to be different for properties vs action parameters, because JDO annotations are only valid on properties.  The table in <a href="#_mapping_value_types">Mapping Value Types</a> provides a handy reference for the each.</p>
 </div>
 </div>
 <div class="sect4">
@@ -1300,63 +1265,56 @@ TODO
 </div>
 </div>
 <div class="sect3">
-<h4 id="_collection">4.2.3. Collection</h4>
-<div class="admonitionblock note">
-<table>
-<tr>
-<td class="icon">
-<i class="fa icon-note" title="Note"></i>
-</td>
-<td class="content">
-<div class="paragraph">
-<p>While Isis support collections of references, the framework (currently) does not support collections of values. That is, it isn&#8217;t possible to define a collection of type <code>Set&lt;String&gt;</code>.</p>
-</div>
-<div class="paragraph">
-<p>Or, actually, you can, because that is a valid mapping supported by JDO/DataNucleus .  However, Isis has no default visualization.</p>
-</div>
-<div class="paragraph">
-<p>The workaround is to mark the collection as <code>@Programmatic</code>, as described in <a href="#Ignoring Methods">[Ignoring Methods]</a>.  This ensures that the collection is ignored by Isis.
-===</p>
+<h4 id="_collection">2.1.3. Collection</h4>
+<div class="listingblock">
+<div class="content">
+<pre>While Isis support collections of references, the framework (currently) does not support collections of values. That is, it isn't possible to define a collection of type `Set&lt;String&gt;`.
+
+Or, actually, you can, because that is a valid mapping supported by JDO/DataNucleus .  However, Isis has no default visualization.
+
+The workaround is to mark the collection as `@Programmatic`, as described in &lt;&lt;Ignoring Methods&gt;&gt;.  This ensures that the collection is ignored by Isis.</pre>
 </div>
-<div class="paragraph">
-<p>## Actions</p>
 </div>
-</td>
-</tr>
-</table>
 </div>
-<div class="paragraph">
-<p>While Isis support actions whose parameters' types are scalar (values such as <code>String</code>, <code>int</code>, or references such as <code>Customer</code>), the framework (currently) does not support parameter types that are collections or maps.</p>
+<div class="sect3">
+<h4 id="_actions">2.1.4. Actions</h4>
+<div class="listingblock">
+<div class="content">
+<pre>While Isis support actions whose parameters' types are scalar (values such as `String`, `int`, or references such as `Customer`), the framework (currently) does not support parameter types that are collections or maps.
+
+The workaround is to mark the collection as `@Programmatic`, as described in &lt;&lt;Ignoring Methods&gt;&gt;.  This ensures that the collection is ignored by Isis.</pre>
 </div>
-<div class="paragraph">
-<p>The workaround is to mark the collection as <code>@Programmatic</code>, as described in <a href="#Ignoring Methods">[Ignoring Methods]</a>.  This ensures that the collection is ignored by Isis.</p>
 </div>
-<div class="exampleblock">
-<div class="content">
-<div class="paragraph">
-<p><mark>#</mark> Optional Action Argument</p>
+<div class="sect4">
+<h5 id="_optional_action_argument">Optional Action Argument</h5>
+
 </div>
-<div class="paragraph">
-<p>## String Length Of Action Parameter</p>
 </div>
-<div class="paragraph">
-<p>## BigDecimal Precision Of Action Parameter</p>
+<div class="sect3">
+<h4 id="_string_length_of_action_parameter">2.1.5. String Length Of Action Parameter</h4>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Mapping String (Length)</p>
+<div class="sect3">
+<h4 id="_bigdecimal_precision_of_action_parameter">2.1.6. BigDecimal Precision Of Action Parameter</h4>
+<div class="sect4">
+<h5 id="_mapping_string_length_2">Mapping String (Length)</h5>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Mapping JODA Dates</p>
+<div class="sect4">
+<h5 id="_mapping_joda_dates_2">Mapping JODA Dates</h5>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Mapping BigDecimals</p>
+<div class="sect4">
+<h5 id="_mapping_bigdecimals_2">Mapping BigDecimals</h5>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Mapping Blobs</p>
+<div class="sect4">
+<h5 id="_mapping_blobs_2">Mapping Blobs</h5>
+
 </div>
-<div class="paragraph">
-<p>## Mapping Value Types</p>
 </div>
+<div class="sect3">
+<h4 id="_mapping_value_types">2.1.7. Mapping Value Types</h4>
 <div class="paragraph">
 <p>table of:
 .
@@ -1384,24 +1342,19 @@ TODO
 |<code>@Column(allowsNull="true")</code>
 |<code>ParameterLayout(optionality=Optionality.OPTIONAL</code>) or <code>@Optional</code></p>
 </div>
-<div class="paragraph">
-<p>## Ignoring Methods</p>
 </div>
+<div class="sect3">
+<h4 id="_ignoring_methods">2.1.8. Ignoring Methods</h4>
 <div class="paragraph">
 <p>Sometimes you want to define a <code>public</code> method on a domain object that is not intended to be rendered in Isis' UI.</p>
 </div>
 <div class="paragraph">
 <p>To exclude such methods, use the <code>@Programmatic</code> annotation.</p>
 </div>
-<div class="paragraph">
-<p>## Entity Relationships</p>
 </div>
-<div class="paragraph">
-<p>= User Guide: How-tos: Entity Relationships
-:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. <a href="http://www.apache.org/licenses/LICENSE-2.0" class="bare">http://www.apache.org/licenses/LICENSE-2.0</a> . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR  CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
-:_basedir: ../
-:_imagesdir: images/</p>
 </div>
+<div class="sect2">
+<h3 id="_entity_relationships">2.2. Entity Relationships</h3>
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -1414,21 +1367,17 @@ TODO
 </tr>
 </table>
 </div>
-<div class="paragraph">
-<p>## Mapping Mandatory and Optional Properties</p>
-</div>
-<div class="paragraph">
-<p>## Managed 1:m bidirectional relationships</p>
+<div class="sect3">
+<h4 id="_mapping_mandatory_and_optional_properties">2.2.1. Mapping Mandatory and Optional Properties</h4>
+
 </div>
-<div class="paragraph">
-<p>## Contributed Members</p>
+<div class="sect3">
+<h4 id="_managed_1_m_bidirectional_relationships">2.2.2. Managed 1-m bidirectional relationships</h4>
+
 </div>
-<div class="paragraph">
-<p>= User Guide: How-tos: Contributed Members
-:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. <a href="http://www.apache.org/licenses/LICENSE-2.0" class="bare">http://www.apache.org/licenses/LICENSE-2.0</a> . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR  CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
-:_basedir: ../
-:_imagesdir: images/</p>
 </div>
+<div class="sect2">
+<h3 id="_contributed_members">2.3. Contributed Members</h3>
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -1441,24 +1390,21 @@ TODO
 </tr>
 </table>
 </div>
-<div class="paragraph">
-<p>## Contributed Action</p>
-</div>
-<div class="paragraph">
-<p>## Contributed Property</p>
+<div class="sect3">
+<h4 id="_contributed_action">2.3.1. Contributed Action</h4>
+
 </div>
-<div class="paragraph">
-<p>## Contributed Collection</p>
+<div class="sect3">
+<h4 id="_contributed_property">2.3.2. Contributed Property</h4>
+
 </div>
-<div class="paragraph">
-<p>## Derived Members</p>
+<div class="sect3">
+<h4 id="_contributed_collection">2.3.3. Contributed Collection</h4>
+
 </div>
-<div class="paragraph">
-<p>= User Guide: How-tos: Derived Members
-:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. <a href="http://www.apache.org/licenses/LICENSE-2.0" class="bare">http://www.apache.org/licenses/LICENSE-2.0</a> . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR  CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
-:_basedir: ../
-:_imagesdir: images/</p>
 </div>
+<div class="sect2">
+<h3 id="_derived_members">2.4. Derived Members</h3>
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -1471,12 +1417,12 @@ TODO
 </tr>
 </table>
 </div>
-<div class="paragraph">
-<p>## Derived Property</p>
-</div>
-<div class="paragraph">
-<p>## Derived Collection</p>
+<div class="sect3">
+<h4 id="_derived_property">2.4.1. Derived Property</h4>
+
 </div>
+<div class="sect3">
+<h4 id="_derived_collection">2.4.2. Derived Collection</h4>
 <div class="sidebarblock">
 <div class="content">
 <div class="title">Inlining query-only repository action</div>
@@ -1498,21 +1444,18 @@ TODO
 </div>
 </div>
 </div>
-<div class="paragraph">
-<p>## Trigger on property change</p>
 </div>
-<div class="paragraph">
-<p>## Trigger on collection change</p>
+<div class="sect3">
+<h4 id="_trigger_on_property_change">2.4.3. Trigger on property change</h4>
+
 </div>
-<div class="paragraph">
-<p>## Object Management (CRUD)</p>
+<div class="sect3">
+<h4 id="_trigger_on_collection_change">2.4.4. Trigger on collection change</h4>
+
 </div>
-<div class="paragraph">
-<p>= User Guide: How-tos: Object Management (CRUD)
-:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. <a href="http://www.apache.org/licenses/LICENSE-2.0" class="bare">http://www.apache.org/licenses/LICENSE-2.0</a> . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR  CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
-:_basedir: ../
-:_imagesdir: images/</p>
 </div>
+<div class="sect2">
+<h3 id="_object_management_crud">2.5. Object Management (CRUD)</h3>
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -1525,27 +1468,25 @@ TODO
 </tr>
 </table>
 </div>
-<div class="paragraph">
-<p>## Injecting Services</p>
-</div>
-<div class="paragraph">
-<p>## Instantiating and Persisting Objects</p>
+<div class="sect3">
+<h4 id="_injecting_services">2.5.1. Injecting Services</h4>
+
 </div>
-<div class="paragraph">
-<p>## Finding Objects</p>
+<div class="sect3">
+<h4 id="_instantiating_and_persisting_objects">2.5.2. Instantiating and Persisting Objects</h4>
+
 </div>
-<div class="paragraph">
-<p>## Deleting Objects</p>
+<div class="sect3">
+<h4 id="_finding_objects">2.5.3. Finding Objects</h4>
+
 </div>
-<div class="paragraph">
-<p>## UI Hints</p>
+<div class="sect3">
+<h4 id="_deleting_objects">2.5.4. Deleting Objects</h4>
+
 </div>
-<div class="paragraph">
-<p>= User Guide: How-tos: UI Hints
-:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. <a href="http://www.apache.org/licenses/LICENSE-2.0" class="bare">http://www.apache.org/licenses/LICENSE-2.0</a> . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR  CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
-:_basedir: ../
-:_imagesdir: images/</p>
 </div>
+<div class="sect2">
+<h3 id="_ui_hints">2.6. UI Hints</h3>
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -1558,27 +1499,30 @@ TODO
 </tr>
 </table>
 </div>
-<div class="paragraph">
-<p>## Icons and Titles</p>
-</div>
-<div class="paragraph">
-<p><mark>#</mark> Object Title</p>
+<div class="sect3">
+<h4 id="_icons_and_titles">2.6.1. Icons and Titles</h4>
+<div class="sect4">
+<h5 id="_object_title">Object Title</h5>
+<div class="sect5">
+<h6 id="_titles_in_tables">Titles in Tables</h6>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark># Titles in Tables</p>
+<div class="sect5">
+<h6 id="_hide_part_of_a_title">Hide part of a title</h6>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark># Hide part of a title</p>
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Object Icon</p>
+<div class="sect4">
+<h5 id="_object_icon">Object Icon</h5>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Object CSS Styling</p>
+<div class="sect4">
+<h5 id="_object_css_styling">Object CSS Styling</h5>
+
 </div>
-<div class="paragraph">
-<p>## Names and Descriptions</p>
 </div>
+<div class="sect3">
+<h4 id="_names_and_descriptions">2.6.2. Names and Descriptions</h4>
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -1591,36 +1535,44 @@ see also i18n (TODO: convert to link)
 </tr>
 </table>
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Name/descr. of an object</p>
+<div class="sect4">
+<h5 id="_name_descr_of_an_object">Name/descr. of an object</h5>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Name/descr. of a property</p>
+<div class="sect4">
+<h5 id="_name_descr_of_a_property">Name/descr. of a property</h5>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Name/descr. of a collection</p>
+<div class="sect4">
+<h5 id="_name_descr_of_a_collection">Name/descr. of a collection</h5>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Name/descr. of an action</p>
+<div class="sect4">
+<h5 id="_name_descr_of_an_action">Name/descr. of an action</h5>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Action Parameters</p>
+<div class="sect4">
+<h5 id="_action_parameters">Action Parameters</h5>
+
 </div>
-<div class="paragraph">
-<p>## Layout</p>
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Layout using annotations</p>
+<div class="sect3">
+<h4 id="_layout">2.6.3. Layout</h4>
+<div class="sect4">
+<h5 id="_layout_using_annotations">Layout using annotations</h5>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Dynamic layouts</p>
+<div class="sect4">
+<h5 id="_dynamic_layouts">Dynamic layouts</h5>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Application menu layout</p>
+<div class="sect4">
+<h5 id="_application_menu_layout">Application menu layout</h5>
+
 </div>
-<div class="paragraph">
-<p>## Standardized font-awesome icons and CSS</p>
 </div>
+<div class="sect3">
+<h4 id="_standardized_font_awesome_icons_and_css">2.6.4. Standardized font-awesome icons and CSS</h4>
 <div class="paragraph">
 <p>Use the following settings in isis.properties to apply CSS and font-awesome icons to object members (properties, collections and actions) based on their names.</p>
 </div>
@@ -1630,15 +1582,10 @@ see also i18n (TODO: convert to link)
 isis.reflector.facet.cssClass.patterns=\</code></pre>
 </div>
 </div>
-<div class="paragraph">
-<p>## Business Rules</p>
 </div>
-<div class="paragraph">
-<p>= User Guide: How-tos: Business Rules
-:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. <a href="http://www.apache.org/licenses/LICENSE-2.0" class="bare">http://www.apache.org/licenses/LICENSE-2.0</a> . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR  CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
-:_basedir: ../
-:_imagesdir: images/</p>
 </div>
+<div class="sect2">
+<h3 id="_business_rules">2.7. Business Rules</h3>
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -1651,84 +1598,93 @@ TODO
 </tr>
 </table>
 </div>
-<div class="paragraph">
-<p>## Visibility ("see it")</p>
-</div>
-<div class="paragraph">
-<p><mark>#</mark> Hide a Property</p>
-</div>
-<div class="paragraph">
-<p><mark>#</mark> Hide a Collection</p>
+<div class="sect3">
+<h4 id="_visibility_see_it">2.7.1. Visibility ("see it")</h4>
+<div class="sect4">
+<h5 id="_hide_a_property">Hide a Property</h5>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Hide an Action</p>
+<div class="sect4">
+<h5 id="_hide_a_collection">Hide a Collection</h5>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Hide a Contributed Property, Collection or Action</p>
+<div class="sect4">
+<h5 id="_hide_an_action">Hide an Action</h5>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> All Members Hidden</p>
+<div class="sect4">
+<h5 id="_hide_a_contributed_property_collection_or_action">Hide a Contributed Property, Collection or Action</h5>
+
 </div>
-<div class="paragraph">
-<p>## Usability ("use it")</p>
+<div class="sect4">
+<h5 id="_all_members_hidden">All Members Hidden</h5>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Disable a Property</p>
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Disable a Collection</p>
+<div class="sect3">
+<h4 id="_usability_use_it">2.7.2. Usability ("use it")</h4>
+<div class="sect4">
+<h5 id="_disable_a_property">Disable a Property</h5>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Disable an Action</p>
+<div class="sect4">
+<h5 id="_disable_a_collection">Disable a Collection</h5>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Disable a Contributed Property, Collection or Action</p>
+<div class="sect4">
+<h5 id="_disable_an_action">Disable an Action</h5>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> All Members Unmodifiable (Disabling the Edit Button)</p>
+<div class="sect4">
+<h5 id="_disable_a_contributed_property_collection_or_action">Disable a Contributed Property, Collection or Action</h5>
+
 </div>
+<div class="sect4">
+<h5 id="_all_members_unmodifiable_disabling_the_edit_button">All Members Unmodifiable (Disabling the Edit Button)</h5>
 <div class="paragraph">
 <p>Sometimes an object is unmodifiable.</p>
 </div>
 <div class="paragraph">
 <p>In the Wicket viewer this means disabling the edit button.</p>
 </div>
-<div class="paragraph">
-<p><mark>#</mark># Declarative</p>
-</div>
+<div class="sect5">
+<h6 id="_declarative">Declarative</h6>
 <div class="paragraph">
 <p><code>@DomainObject(editing=&#8230;&#8203;)</code></p>
 </div>
-<div class="paragraph">
-<p><mark>#</mark># Imperative</p>
 </div>
-<div class="paragraph">
-<p>## Validity ("do it")</p>
+<div class="sect5">
+<h6 id="_imperative">Imperative</h6>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Validate (change to) a Property</p>
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Validate (adding or removing from) a Collection</p>
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Validate (arguments to invoke) an Action</p>
+<div class="sect3">
+<h4 id="_validity_do_it">2.7.3. Validity ("do it")</h4>
+<div class="sect4">
+<h5 id="_validate_change_to_a_property">Validate (change to) a Property</h5>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Validating a Contributed Property, Collection or Action</p>
+<div class="sect4">
+<h5 id="_validate_adding_or_removing_from_a_collection">Validate (adding or removing from) a Collection</h5>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Declarative validation using <code>@MustSatisfy</code></p>
+<div class="sect4">
+<h5 id="_validate_arguments_to_invoke_an_action">Validate (arguments to invoke) an Action</h5>
+
+</div>
+<div class="sect4">
+<h5 id="_validating_a_contributed_property_collection_or_action">Validating a Contributed Property, Collection or Action</h5>
+
+</div>
+<div class="sect4">
+<h5 id="_declarative_validation_using_code_mustsatisfy_code">Declarative validation using <code>@MustSatisfy</code></h5>
+
 </div>
-<div class="paragraph">
-<p>## Drop downs and Defaults</p>
 </div>
-<div class="paragraph">
-<p>= User Guide: How-tos: Business Rules
-:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. <a href="http://www.apache.org/licenses/LICENSE-2.0" class="bare">http://www.apache.org/licenses/LICENSE-2.0</a> . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR  CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
-:_basedir: ../
-:_imagesdir: images/</p>
 </div>
+<div class="sect2">
+<h3 id="_business_rules_2">2.8. Business Rules</h3>
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -1741,51 +1697,54 @@ TODO
 </tr>
 </table>
 </div>
-<div class="paragraph">
-<p>## For Properties</p>
-</div>
-<div class="paragraph">
-<p><mark>#</mark> Choices for Property</p>
+<div class="sect3">
+<h4 id="_for_properties">2.8.1. For Properties</h4>
+<div class="sect4">
+<h5 id="_choices_for_property">Choices for Property</h5>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Auto-complete for property</p>
+<div class="sect4">
+<h5 id="_auto_complete_for_property">Auto-complete for property</h5>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Default for property</p>
+<div class="sect4">
+<h5 id="_default_for_property">Default for property</h5>
+
 </div>
-<div class="paragraph">
-<p>## For Action Parameters</p>
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Choices for action parameter</p>
+<div class="sect3">
+<h4 id="_for_action_parameters">2.8.2. For Action Parameters</h4>
+<div class="sect4">
+<h5 id="_choices_for_action_parameter">Choices for action parameter</h5>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Dependent choices for action params</p>
+<div class="sect4">
+<h5 id="_dependent_choices_for_action_params">Dependent choices for action params</h5>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Auto-complete for action param</p>
+<div class="sect4">
+<h5 id="_auto_complete_for_action_param">Auto-complete for action param</h5>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Default for action param</p>
+<div class="sect4">
+<h5 id="_default_for_action_param">Default for action param</h5>
+
 </div>
-<div class="paragraph">
-<p>## For both Properties and Action Parameters</p>
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Drop-down for limited number of instances</p>
+<div class="sect3">
+<h4 id="_for_both_properties_and_action_parameters">2.8.3. For both Properties and Action Parameters</h4>
+<div class="sect4">
+<h5 id="_drop_down_for_limited_number_of_instances">Drop-down for limited number of instances</h5>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Auto-complete (repository-based)</p>
+<div class="sect4">
+<h5 id="_auto_complete_repository_based">Auto-complete (repository-based)</h5>
+
 </div>
-<div class="paragraph">
-<p>## Triggering Events</p>
 </div>
-<div class="paragraph">
-<p>= User Guide: How-tos: Triggering Events
-:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. <a href="http://www.apache.org/licenses/LICENSE-2.0" class="bare">http://www.apache.org/licenses/LICENSE-2.0</a> . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR  CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
-:_basedir: ../
-:_imagesdir: images/</p>
 </div>
+<div class="sect2">
+<h3 id="_triggering_events">2.9. Triggering Events</h3>
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -1798,12 +1757,12 @@ TODO
 </tr>
 </table>
 </div>
-<div class="paragraph">
-<p>## Publishing and Subscribing to Events (Pulling Changes)</p>
-</div>
-<div class="paragraph">
-<p>## Pushing Changes</p>
+<div class="sect3">
+<h4 id="_publishing_and_subscribing_to_events_pulling_changes">2.9.1. Publishing and Subscribing to Events (Pulling Changes)</h4>
+
 </div>
+<div class="sect3">
+<h4 id="_pushing_changes">2.9.2. Pushing Changes</h4>
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -1811,14 +1770,13 @@ TODO
 <i class="fa icon-note" title="Note"></i>
 </td>
 <td class="content">
-this technique is much less powerful than the event bus described in <a href="#Publishing and Subscribing to Events (Pulling Changes)">[Publishing and Subscribing to Events (Pulling Changes)]</a>).  We present it mostly for completeness.
+this technique is much less powerful than the event bus described in <a href="#_publishing_and_subscribing_to_events_pulling_changes">Publishing and Subscribing to Events (Pulling Changes)</a>).  We present it mostly for completeness.
 </td>
 </tr>
 </table>
 </div>
-<div class="paragraph">
-<p><mark>#</mark> When a property is changed</p>
-</div>
+<div class="sect4">
+<h5 id="_when_a_property_is_changed">When a property is changed</h5>
 <div class="paragraph">
 <p>If you want to invoke functionality whenever a property is changed by the user, then you should create a supporting <code>modifyXxx()</code> method and include the functionality within that. The syntax is:</p>
 </div>
@@ -1886,9 +1844,9 @@ this technique is much less powerful tha
 }</code></pre>
 </div>
 </div>
-<div class="paragraph">
-<p><mark>#</mark> When a collection is added to or removed from</p>
 </div>
+<div class="sect4">
+<h5 id="_when_a_collection_is_added_to_or_removed_from">When a collection is added to or removed from</h5>
 <div class="paragraph">
 <p>A collection may have a corresponding <code>addToXxx()</code> and/or
 <code>removeFromXxx()</code> method. If present, and direct manipulation of the
@@ -1973,15 +1931,11 @@ methods for properties (see ?).</p>
 </tr>
 </table>
 </div>
-<div class="paragraph">
-<p>## Tips n Tricks</p>
 </div>
-<div class="paragraph">
-<p>= User Guide: How-tos: Tips n Tricks
-:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. <a href="http://www.apache.org/licenses/LICENSE-2.0" class="bare">http://www.apache.org/licenses/LICENSE-2.0</a> . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR  CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
-:_basedir: ../
-:_imagesdir: images/</p>
 </div>
+</div>
+<div class="sect2">
+<h3 id="_tips_n_tricks">2.10. Tips n Tricks</h3>
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -1994,23 +1948,18 @@ TODO
 </tr>
 </table>
 </div>
-<div class="paragraph">
-<p>## Are You Sure? idiom</p>
-</div>
-<div class="paragraph">
-<p>== How Tos: Tips n Tricks: 'Are you sure?' idiom
-:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. <a href="http://www.apache.org/licenses/LICENSE-2.0" class="bare">http://www.apache.org/licenses/LICENSE-2.0</a> . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR  CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
-:_basedir: ../
-:_imagesdir: images/</p>
-</div>
+<div class="sect3">
+<h4 id="_are_you_sure_idiom">2.10.1. Are You Sure? idiom</h4>
+<div class="sect4">
+<h5 id="_how_tos_tips_n_tricks_are_you_sure_idiom">How Tos: Tips n Tricks: 'Are you sure?' idiom</h5>
 <div class="paragraph">
 <p>If providing an action that will perform irreversible changes, include a
 mandatory boolean parameter that must be explicitly checked by the end-user
 in order for the action to proceed.</p>
 </div>
-<div class="paragraph">
-<p>== Screenshots</p>
 </div>
+<div class="sect4">
+<h5 id="_screenshots">Screenshots</h5>
 <div class="paragraph">
 <p>For example:</p>
 </div>
@@ -2038,9 +1987,9 @@ in order for the action to proceed.</p>
 <img src="images//user-guide-how-tos-tips-n-tricks-are-you-sure-sad-case.png" alt="user guide how tos tips n tricks are you sure sad case">
 </div>
 </div>
-<div class="paragraph">
-<p>== Code example</p>
 </div>
+<div class="sect4">
+<h5 id="_code_example">Code example</h5>
 <div class="paragraph">
 <p>The code for this is pretty simple:</p>
 </div>
@@ -2064,9 +2013,10 @@ in order for the action to proceed.</p>
 <p>Note that the action itself does not use the boolean parameter, it is only
 used by the supporting <code>validateXxx()</code> method.</p>
 </div>
-<div class="paragraph">
-<p>## To review&#8230;&#8203;</p>
 </div>
+</div>
+<div class="sect3">
+<h4 id="_to_review">2.10.2. To review&#8230;&#8203;</h4>
 <div class="paragraph">
 <p>Most of these will move elsewhere, I think:</p>
 </div>
@@ -2092,27 +2042,21 @@ used by the supporting <code>validateXxx
 </li>
 </ul>
 </div>
-<div class="paragraph">
-<p>## Overriding JDO Annotations</p>
 </div>
-<div class="paragraph">
-<p>== How Tos: Tips n Tricks: Overriding JDO Annotations
-:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. <a href="http://www.apache.org/licenses/LICENSE-2.0" class="bare">http://www.apache.org/licenses/LICENSE-2.0</a> . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR  CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
-:_basedir: ../
-:_imagesdir: images/</p>
+<div class="sect3">
+<h4 id="_overriding_jdo_annotations">2.10.3. Overriding JDO Annotations</h4>
+<div class="sect4">
+<h5 id="_how_tos_tips_n_tricks_overriding_jdo_annotations">How Tos: Tips n Tricks: Overriding JDO Annotations</h5>
+
 </div>
-<div class="paragraph">
-<p>## Render abstract properties in tables</p>
 </div>
-<div class="paragraph">
-<p>## Error Handling</p>
+<div class="sect3">
+<h4 id="_render_abstract_properties_in_tables">2.10.4. Render abstract properties in tables</h4>
+
 </div>
-<div class="paragraph">
-<p>= User Guide: How-tos: Error Handling
-:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. <a href="http://www.apache.org/licenses/LICENSE-2.0" class="bare">http://www.apache.org/licenses/LICENSE-2.0</a> . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR  CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
-:_basedir: ../
-:_imagesdir: images/</p>
 </div>
+<div class="sect2">
+<h3 id="_error_handling">2.11. Error Handling</h3>
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -2125,21 +2069,17 @@ TODO
 </tr>
 </table>
 </div>
-<div class="paragraph">
-<p>## Raise message/errors to users</p>
-</div>
-<div class="paragraph">
-<p>## Exception Recognizers</p>
+<div class="sect3">
+<h4 id="_raise_message_errors_to_users">2.11.1. Raise message/errors to users</h4>
+
 </div>
-<div class="paragraph">
-<p>## i18n</p>
+<div class="sect3">
+<h4 id="_exception_recognizers">2.11.2. Exception Recognizers</h4>
+
 </div>
-<div class="paragraph">
-<p>= User Guide: How-tos: i18n
-:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. <a href="http://www.apache.org/licenses/LICENSE-2.0" class="bare">http://www.apache.org/licenses/LICENSE-2.0</a> . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR  CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
-:_basedir: ../
-:_imagesdir: images/</p>
 </div>
+<div class="sect2">
+<h3 id="_i18n">2.12. i18n</h3>
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -2152,15 +2092,9 @@ TODO
 </tr>
 </table>
 </div>
-<div class="paragraph">
-<p>## Multi-tenancy</p>
-</div>
-<div class="paragraph">
-<p>= User Guide: How-tos: Multi-tenancy
-:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. <a href="http://www.apache.org/licenses/LICENSE-2.0" class="bare">http://www.apache.org/licenses/LICENSE-2.0</a> . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR  CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
-:_basedir: ../
-:_imagesdir: images/</p>
 </div>
+<div class="sect2">
+<h3 id="_multi_tenancy">2.13. Multi-tenancy</h3>
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -2173,15 +2107,9 @@ TODO
 </tr>
 </table>
 </div>
-<div class="paragraph">
-<p>## Persistence Lifecycle</p>
-</div>
-<div class="paragraph">
-<p>= User Guide: How-tos: Persistence Lifecycle
-:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. <a href="http://www.apache.org/licenses/LICENSE-2.0" class="bare">http://www.apache.org/licenses/LICENSE-2.0</a> . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR  CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
-:_basedir: ../
-:_imagesdir: images/</p>
 </div>
+<div class="sect2">
+<h3 id="_persistence_lifecycle">2.14. Persistence Lifecycle</h3>
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -2194,15 +2122,12 @@ TODO
 </tr>
 </table>
 </div>
-<div class="paragraph">
-<p>## Reference</p>
 </div>
-<div class="paragraph">
-<p>= User Guide: Reference
-:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. <a href="http://www.apache.org/licenses/LICENSE-2.0" class="bare">http://www.apache.org/licenses/LICENSE-2.0</a> . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR  CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
-:_basedir: ../
-:_imagesdir: images/</p>
 </div>
+</div>
+<div class="sect1">
+<h2 id="_reference">3. Reference</h2>
+<div class="sectionbody">
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -2215,15 +2140,8 @@ TODO
 </tr>
 </table>
 </div>
-<div class="paragraph">
-<p>## Recognized Methods</p>
-</div>
-<div class="paragraph">
-<p>= User Guide: Reference: Recognized Methods
-:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. <a href="http://www.apache.org/licenses/LICENSE-2.0" class="bare">http://www.apache.org/licenses/LICENSE-2.0</a> . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR  CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
-:_basedir: ../
-:_imagesdir: images/</p>
-</div>
+<div class="sect2">
+<h3 id="_recognized_methods">3.1. Recognized Methods</h3>
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -2236,15 +2154,9 @@ TODO
 </tr>
 </table>
 </div>
-<div class="paragraph">
-<p>## Recognized Annotations</p>
-</div>
-<div class="paragraph">
-<p>= User Guide: Reference: Recognized Annotations
-:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. <a href="http://www.apache.org/licenses/LICENSE-2.0" class="bare">http://www.apache.org/licenses/LICENSE-2.0</a> . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR  CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
-:_basedir: ../
-:_imagesdir: images/</p>
 </div>
+<div class="sect2">
+<h3 id="_recognized_annotations">3.2. Recognized Annotations</h3>
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -2257,15 +2169,9 @@ TODO
 </tr>
 </table>
 </div>
-<div class="paragraph">
-<p>## Domain Services</p>
-</div>
-<div class="paragraph">
-<p>= User Guide: Reference: Domain Services
-:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. <a href="http://www.apache.org/licenses/LICENSE-2.0" class="bare">http://www.apache.org/licenses/LICENSE-2.0</a> . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR  CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
-:_basedir: ../
-:_imagesdir: images/</p>
 </div>
+<div class="sect2">
+<h3 id="_domain_services_2">3.3. Domain Services</h3>
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -2278,15 +2184,9 @@ TODO
 </tr>
 </table>
 </div>
-<div class="paragraph">
-<p>## Value Types</p>
-</div>
-<div class="paragraph">
-<p>= User Guide: Reference: Domain Services
-:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. <a href="http://www.apache.org/licenses/LICENSE-2.0" class="bare">http://www.apache.org/licenses/LICENSE-2.0</a> . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR  CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
-:_basedir: ../
-:_imagesdir: images/</p>
 </div>
+<div class="sect2">
+<h3 id="_value_types">3.4. Value Types</h3>
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -2299,15 +2199,25 @@ TODO
 </tr>
 </table>
 </div>
-<div class="paragraph">
-<p>## Applib Utility Classes</p>
+<div class="sect3">
+<h4 id="_jdk">3.4.1. JDK</h4>
+
 </div>
-<div class="paragraph">
-<p>= User Guide: Reference: Domain Services
-:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. <a href="http://www.apache.org/licenses/LICENSE-2.0" class="bare">http://www.apache.org/licenses/LICENSE-2.0</a> . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR  CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
-:_basedir: ../
-:_imagesdir: images/</p>
+<div class="sect3">
+<h4 id="_jodatime">3.4.2. JodaTime</h4>
+
+</div>
+<div class="sect3">
+<h4 id="_isis_applib">3.4.3. Isis Applib</h4>
+
+</div>
+</div>
+<div class="sect2">
+<h3 id="_applib_utility_classes">3.5. Applib Utility Classes</h3>
+
 </div>
+<div class="sect2">
+<h3 id="_applib_utility_classes_2">3.6. Applib Utility Classes</h3>
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -2320,15 +2230,9 @@ TODO
 </tr>
 </table>
 </div>
-<div class="paragraph">
-<p>## Convenience Superclasses</p>
-</div>
-<div class="paragraph">
-<p>= User Guide: Reference: Convenience Superclasses
-:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. <a href="http://www.apache.org/licenses/LICENSE-2.0" class="bare">http://www.apache.org/licenses/LICENSE-2.0</a> . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR  CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
-:_basedir: ../
-:_imagesdir: images/</p>
 </div>
+<div class="sect2">
+<h3 id="_convenience_superclasses">3.7. Convenience Superclasses</h3>
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -2341,15 +2245,12 @@ TODO
 </tr>
 </table>
 </div>
-<div class="paragraph">
-<p>## Testing</p>
 </div>
-<div class="paragraph">
-<p>= User Guide: Testing
-:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. <a href="http://www.apache.org/licenses/LICENSE-2.0" class="bare">http://www.apache.org/licenses/LICENSE-2.0</a> . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR  CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
-:_basedir: ../
-:_imagesdir: images/</p>
 </div>
+</div>
+<div class="sect1">
+<h2 id="_testing">4. Testing</h2>
+<div class="sectionbody">
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -2362,36 +2263,39 @@ TODO
 </tr>
 </table>
 </div>
-<div class="paragraph">
-<p>## Unit Test Support</p>
+<div class="sect2">
+<h3 id="_unit_test_support">4.1. Unit Test Support</h3>
+
 </div>
-<div class="paragraph">
-<p>## Integration Test Support</p>
+<div class="sect2">
+<h3 id="_integration_test_support">4.2. Integration Test Support</h3>
+
 </div>
-<div class="paragraph">
-<p>## BDD/Integ Test Support</p>
+<div class="sect2">
+<h3 id="_bdd_integ_test_support">4.3. BDD/Integ Test Support</h3>
+
 </div>
-<div class="paragraph">
-<p>## Fixture Scripts</p>
+<div class="sect2">
+<h3 id="_fixture_scripts">4.4. Fixture Scripts</h3>
+
 </div>
-<div class="paragraph">
-<p>## SudoService (1.9.0-SNAPSHOT)</p>
+<div class="sect2">
+<h3 id="_sudoservice_1_9_0_snapshot">4.5. SudoService (1.9.0-SNAPSHOT)</h3>
+
 </div>
-<div class="paragraph">
-<p>## IsisConfigurationForJdoIntegTests</p>
+<div class="sect2">
+<h3 id="_isisconfigurationforjdointegtests">4.6. IsisConfigurationForJdoIntegTests</h3>
+
 </div>
-<div class="paragraph">
-<p>## Isis CmdLine Arguments (for prototyping)</p>
+<div class="sect2">
+<h3 id="_isis_cmdline_arguments_for_prototyping">4.7. Isis CmdLine Arguments (for prototyping)</h3>
+
 </div>
-<div class="paragraph">
-<p>## Wicket Viewer</p>
 </div>
-<div class="paragraph">
-<p>= Wicket Viewer
-:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. <a href="http://www.apache.org/licenses/LICENSE-2.0" class="bare">http://www.apache.org/licenses/LICENSE-2.0</a> . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR  CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
-:_basedir: ../
-:_imagesdir: images/</p>
 </div>
+<div class="sect1">
+<h2 id="_wicket_viewer">5. Wicket Viewer</h2>
+<div class="sectionbody">
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -2404,105 +2308,125 @@ TODO
 </tr>
 </table>
 </div>
-<div class="paragraph">
-<p>## Features/end-user usage</p>
+<div class="sect2">
+<h3 id="_features_end_user_usage">5.1. Features/end-user usage</h3>
+<div class="sect3">
+<h4 id="_file_upload_download">5.1.1. File upload/download</h4>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> File upload/download</p>
+<div class="sect3">
+<h4 id="_bookmarked_pages_sliding_panel">5.1.2. Bookmarked pages (sliding panel)</h4>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Bookmarked pages (sliding panel)</p>
+<div class="sect3">
+<h4 id="_recent_pages_drop_down">5.1.3. Recent pages (drop down)</h4>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Recent pages (drop down)</p>
+<div class="sect3">
+<h4 id="_hints_and_copy_url">5.1.4. Hints and copy URL</h4>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Hints and copy URL</p>
+<div class="sect3">
+<h4 id="_user_registration">5.1.5. User Registration</h4>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> User Registration</p>
 </div>
-<div class="paragraph">
-<p>## Configuration</p>
+<div class="sect2">
+<h3 id="_configuration">5.2. Configuration</h3>
+<div class="sect3">
+<h4 id="_brand_logo">5.2.1. Brand logo</h4>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Brand logo</p>
+<div class="sect3">
+<h4 id="_suppressing_sign_up">5.2.2. Suppressing 'sign up'</h4>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Suppressing 'sign up'</p>
+<div class="sect3">
+<h4 id="_suppressing_password_reset">5.2.3. Suppressing 'password reset'</h4>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Suppressing 'password reset'</p>
+<div class="sect3">
+<h4 id="_suppressing_remember_me">5.2.4. Suppressing 'remember me'</h4>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Suppressing 'remember me'</p>
+<div class="sect3">
+<h4 id="_number_of_bookmarked_pages">5.2.5. Number of bookmarked pages</h4>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Number of bookmarked pages</p>
+<div class="sect3">
+<h4 id="_stripped_wicket_tags">5.2.6. Stripped Wicket tags</h4>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Stripped Wicket tags</p>
+<div class="sect3">
+<h4 id="_disabling_modal_dialogs">5.2.7. Disabling modal dialogs</h4>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Disabling modal dialogs</p>
+<div class="sect3">
+<h4 id="_showing_a_theme_chooser">5.2.8. Showing a theme chooser</h4>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Showing a theme chooser</p>
+<div class="sect3">
+<h4 id="_suppressing_header_and_footer_embedded_view">5.2.9. Suppressing header and footer (embedded view)</h4>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Suppressing header and footer (embedded view)</p>
 </div>
-<div class="paragraph">
-<p>## Application-specific Customisation</p>
+<div class="sect2">
+<h3 id="_application_specific_customisation">5.3. Application-specific Customisation</h3>
+<div class="sect3">
+<h4 id="_customising_the_welcome_page">5.3.1. Customising the Welcome page</h4>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Customising the Welcome page</p>
+<div class="sect3">
+<h4 id="_customising_the_about_page">5.3.2. Customising the About page</h4>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Customising the About page</p>
+<div class="sect3">
+<h4 id="_specifying_a_default_theme">5.3.3. Specifying a default theme</h4>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Specifying a default theme</p>
+<div class="sect3">
+<h4 id="_tweaking_css_classes">5.3.4. Tweaking CSS classes</h4>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Tweaking CSS classes</p>
+<div class="sect3">
+<h4 id="_custom_javascript">5.3.5. Custom Javascript</h4>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Custom Javascript</p>
+<div class="sect3">
+<h4 id="_auto_refresh_page">5.3.6. Auto-refresh page</h4>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Auto-refresh page</p>
 </div>
+<div class="sect2">
+<h3 id="_extending_the_viewer">5.4. Extending the viewer</h3>
 <div class="paragraph">
-<p>## Extending the viewer</p>
+<p>Discussed in <a href="#_extending_the_wicket_viewer">Extending the Wicket viewer</a></p>
 </div>
-<div class="paragraph">
-<p>Discussed in <a href="#Extending the Wicket viewer">[Extending the Wicket viewer]</a></p>
 </div>
-<div class="paragraph">
-<p>## Isis Add-ons (not ASF)</p>
+<div class="sect2">
+<h3 id="_isis_add_ons_not_asf">5.5. Isis Add-ons (not ASF)</h3>
+<div class="sect3">
+<h4 id="_excel_download">5.5.1. Excel download</h4>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Excel download</p>
+<div class="sect3">
+<h4 id="_fullcalendar2">5.5.2. Fullcalendar2</h4>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Fullcalendar2</p>
+<div class="sect3">
+<h4 id="_gmap3">5.5.3. Gmap3</h4>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Gmap3</p>
+<div class="sect3">
+<h4 id="_wicked_charts">5.5.4. Wicked charts</h4>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Wicked charts</p>
 </div>
-<div class="paragraph">
-<p>## Restful Objects Viewer</p>
 </div>
-<div class="paragraph">
-<p>= Restful Viewer
-:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. <a href="http://www.apache.org/licenses/LICENSE-2.0" class="bare">http://www.apache.org/licenses/LICENSE-2.0</a> . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR  CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
-:_basedir: ../
-:_imagesdir: images/</p>
 </div>
+<div class="sect1">
+<h2 id="_restful_viewer">6. Restful Viewer</h2>
+<div class="sectionbody">
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -2515,49 +2439,54 @@ TODO
 </tr>
 </table>
 </div>
-<div class="paragraph">
-<p>## Features</p>
+<div class="sect2">
+<h3 id="_features">6.1. Features</h3>
+<div class="sect3">
+<h4 id="_restful_objects_specification">6.1.1. Restful Objects Specification</h4>
+
 </div>
-<div class="paragraph">
-<p><mark># Restful Objects Specification
-</mark># Pretty printing</p>
+<div class="sect3">
+<h4 id="_pretty_printing">6.1.2. Pretty printing</h4>
+
 </div>
-<div class="paragraph">
-<p>## Configuration</p>
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Honor UI hints</p>
+<div class="sect2">
+<h3 id="_configuration_2">6.2. Configuration</h3>
+<div class="sect3">
+<h4 id="_honor_ui_hints">6.2.1. Honor UI hints</h4>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Suppressing elements of the representations</p>
+<div class="sect3">
+<h4 id="_suppressing_elements_of_the_representations">6.2.2. Suppressing elements of the representations</h4>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Simplified object representation</p>
+<div class="sect3">
+<h4 id="_simplified_object_representation">6.2.3. Simplified object representation</h4>
+
 </div>
-<div class="paragraph">
-<p>## Extending the viewer</p>
 </div>
+<div class="sect2">
+<h3 id="_extending_the_viewer_2">6.3. Extending the viewer</h3>
 <div class="paragraph">
-<p>Discussed in <a href="#Extending the Restful viewer">[Extending the Restful viewer]</a></p>
+<p>Discussed in <a href="#_extending_the_restful_viewer">Extending the Restful viewer</a></p>
 </div>
-<div class="paragraph">
-<p>## Hints and Tips</p>
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Using Chrome Tools</p>
+<div class="sect2">
+<h3 id="_hints_and_tips">6.4. Hints and Tips</h3>
+<div class="sect3">
+<h4 id="_using_chrome_tools">6.4.1. Using Chrome Tools</h4>
+
+</div>
+<div class="sect3">
+<h4 id="_angularjs_tips">6.4.2. AngularJS Tips</h4>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> AngularJS Tips</p>
 </div>
-<div class="paragraph">
-<p>## Configuration and Deployment</p>
 </div>
-<div class="paragraph">
-<p>= User Guide: Configuration and Deployment
-:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. <a href="http://www.apache.org/licenses/LICENSE-2.0" class="bare">http://www.apache.org/licenses/LICENSE-2.0</a> . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR  CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
-:_basedir: ../
-:_imagesdir: images/</p>
 </div>
+<div class="sect1">
+<h2 id="_configuration_and_deployment">7. Configuration and Deployment</h2>
+<div class="sectionbody">
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -2570,21 +2499,19 @@ TODO
 </tr>
 </table>
 </div>
-<div class="paragraph">
-<p>## Configuration Files</p>
-</div>
+<div class="sect2">
+<h3 id="_configuration_files">7.1. Configuration Files</h3>
 <div class="paragraph">
 <p>Isis' own configuration properties are simple key-value pairs, typically held in in the <code>WEBINF/isis.properties</code> file.</p>
 </div>
-<div class="paragraph">
-<p>## Configuring the Webapp</p>
 </div>
+<div class="sect2">
+<h3 id="_configuring_the_webapp">7.2. Configuring the Webapp</h3>
 <div class="paragraph">
 <p>When running an Isis webapp, configuration properties are read from configuration files held in the <code>WEB-INF</code> directory.</p>
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Isis configuration</p>
-</div>
+<div class="sect3">
+<h4 id="_isis_configuration">7.2.1. Isis configuration</h4>
 <div class="paragraph">
 <p>The <code>WEBINF/isis.properties</code> file is always read and must exist.</p>
 </div>
@@ -2610,96 +2537,106 @@ TODO
 </li>
 </ul>
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Shiro configuration</p>
 </div>
+<div class="sect3">
+<h4 id="_shiro_configuration">7.2.2. Shiro configuration</h4>
 <div class="paragraph">
 <p><code>WEB-INF/shiro.ini</code></p>
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Configuring Isis to use Shiro</p>
 </div>
+<div class="sect3">
+<h4 id="_configuring_isis_to_use_shiro">7.2.3. Configuring Isis to use Shiro</h4>
 <div class="paragraph">
-<p>For more on some specific use cases, see <a href="#Configuring Shiro">[Configuring Shiro]</a></p>
+<p>For more on some specific use cases, see <a href="#_configuring_shiro">Configuring Shiro</a></p>
 </div>
-<div class="paragraph">
-<p><mark>#</mark> JDO/DataNucleus configuration</p>
 </div>
+<div class="sect3">
+<h4 id="_jdo_datanucleus_configuration">7.2.4. JDO/DataNucleus configuration</h4>
 <div class="paragraph">
 <p>Any Isis properties with the prefix <code>isis.persistor.datanucleus.impl</code> are passed through directly to the JDO/DataNucleus objectstore (with the prefix stripped off, of course).</p>
 </div>
 <div class="paragraph">
 <p>DataNucleus will itself search for additional XML mapping files, eg <code>mappings.jdo</code>.  These an be used to override any annotations of annotated entities.</p>
 </div>
-<div class="paragraph">
-<p>## Configuring the Integration Tests</p>
 </div>
+</div>
+<div class="sect2">
+<h3 id="_configuring_the_integration_tests">7.3. Configuring the Integration Tests</h3>
 <div class="paragraph">
 <p>Integration tests are configured programmatically, with a default set of properties to bootstrap the JDO/DataNucleus objectstore using an HSQLDB in-memory database.</p>
 </div>
 <div class="paragraph">
 <p>These can be overridden by subclassing <code>IsisConfigurationForJdoIntegTests</code>.</p>
 </div>
-<div class="paragraph">
-<p>## Isis Configuration Properties</p>
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Deployment Types</p>
+<div class="sect2">
+<h3 id="_isis_configuration_properties">7.4. Isis Configuration Properties</h3>
+<div class="sect3">
+<h4 id="_deployment_types">7.4.1. Deployment Types</h4>
+
 </div>
-<div class="paragraph">
-<p>## Configuring Shiro</p>
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Configuring Shiro to use LDAP</p>
+<div class="sect2">
+<h3 id="_configuring_shiro">7.5. Configuring Shiro</h3>
+<div class="sect3">
+<h4 id="_configuring_shiro_to_use_ldap">7.5.1. Configuring Shiro to use LDAP</h4>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Format of Isis Permissions</p>
+<div class="sect3">
+<h4 id="_format_of_isis_permissions">7.5.2. Format of Isis Permissions</h4>
+
 </div>
-<div class="paragraph">
-<p>## Configuring DataNucleus</p>
 </div>
-<div class="paragraph">
-<p><mark>#</mark> persistence.xml file</p>
+<div class="sect2">
+<h3 id="_configuring_datanucleus">7.6. Configuring DataNucleus</h3>
+<div class="sect3">
+<h4 id="_persistence_xml_file">7.6.1. persistence.xml file</h4>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Eagerly Registering Entity Types</p>
+<div class="sect3">
+<h4 id="_eagerly_registering_entity_types">7.6.2. Eagerly Registering Entity Types</h4>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Disabling persistence-by-reachability</p>
+<div class="sect3">
+<h4 id="_disabling_persistence_by_reachability">7.6.3. Disabling persistence-by-reachability</h4>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Transaction Management</p>
+<div class="sect3">
+<h4 id="_transaction_management">7.6.4. Transaction Management</h4>
+
 </div>
-<div class="paragraph">
-<p>## Deployment</p>
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Externalized Configuration</p>
+<div class="sect2">
+<h3 id="_deployment">7.7. Deployment</h3>
+<div class="sect3">
+<h4 id="_externalized_configuration">7.7.1. Externalized Configuration</h4>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> JVM Args</p>
+<div class="sect3">
+<h4 id="_jvm_args">7.7.2. JVM Args</h4>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Using a JNDI Datasource</p>
+<div class="sect3">
+<h4 id="_using_a_jndi_datasource">7.7.3. Using a JNDI Datasource</h4>
+
 </div>
-<div class="paragraph">
-<p>## NoSQL Support</p>
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Deploying on the Google App Engine</p>
+<div class="sect2">
+<h3 id="_nosql_support">7.8. NoSQL Support</h3>
+<div class="sect3">
+<h4 id="_deploying_on_the_google_app_engine">7.8.1. Deploying on the Google App Engine</h4>
+
+</div>
+<div class="sect3">
+<h4 id="_using_neo4j">7.8.2. Using Neo4J</h4>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Using Neo4J</p>
 </div>
-<div class="paragraph">
-<p>## Isis Addons (Modules)</p>
 </div>
-<div class="paragraph">
-<p>= User Guide: Isis Addons (not ASF)
-:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. <a href="http://www.apache.org/licenses/LICENSE-2.0" class="bare">http://www.apache.org/licenses/LICENSE-2.0</a> . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR  CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
-:_basedir: ../
-:_imagesdir: images/</p>
 </div>
+<div class="sect1">
+<h2 id="_isis_addons_not_asf">8. Isis Addons (not ASF)</h2>
+<div class="sectionbody">
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -2724,60 +2661,106 @@ Note that Isis addons, while maintained
 </tr>
 </table>
 </div>
-<div class="paragraph">
-<p>## Command Service (persistence)</p>
+<div class="sect2">
+<h3 id="_command_service_persistence">8.1. Command Service (persistence)</h3>
+<div class="sect3">
+<h4 id="_api">8.1.1. API</h4>
+
 </div>
-<div class="paragraph">
-<p><mark># API
-</mark># Isis addons implementation  (not ASF)</p>
+<div class="sect3">
+<h4 id="_isis_addons_implementation_not_asf">8.1.2. Isis addons implementation  (not ASF)</h4>
+
 </div>
-<div class="paragraph">
-<p>## Background Command Service</p>
 </div>
-<div class="paragraph">
-<p><mark># API
-</mark># Background Execution
-<mark>#</mark> Isis addons implementation (not ASF)</p>
+<div class="sect2">
+<h3 id="_background_command_service">8.2. Background Command Service</h3>
+<div class="sect3">
+<h4 id="_api_2">8.2.1. API</h4>
+
 </div>
-<div class="paragraph">
-<p>## Auditing</p>
+<div class="sect3">
+<h4 id="_background_execution">8.2.2. Background Execution</h4>
+
 </div>
-<div class="paragraph">
-<p><mark># Auditing API
-</mark># Isis addons implementation (not ASF)</p>
+<div class="sect3">
+<h4 id="_isis_addons_implementation_not_asf_2">8.2.3. Isis addons implementation (not ASF)</h4>
+
 </div>
-<div class="paragraph">
-<p>## Publishing Service</p>
 </div>
-<div class="paragraph">
-<p><mark># API
-</mark># Isis addons implementation (not ASF)
-<mark>#</mark> Event Serializer per RO Spec (out-of-date)</p>
+<div class="sect2">
+<h3 id="_auditing">8.3. Auditing</h3>
+<div class="sect3">
+<h4 id="_auditing_api">8.3.1. Auditing API</h4>
+
 </div>
-<div class="paragraph">
-<p>## Other Isis Addons</p>
+<div class="sect3">
+<h4 id="_isis_addons_implementation_not_asf_3">8.3.2. Isis addons implementation (not ASF)</h4>
+
 </div>
-<div class="paragraph">
-<p><mark># Developer Utilities (not ASF)
-</mark># Docx Mail merge (not ASF)
-<mark># Excel download/upload (not ASF)
-</mark># Fake Data (not ASF)
-<mark># Poly (not ASF)
-</mark># Security (not ASF)
-<mark># Session Logger (not ASF)
-</mark># Settings (not ASF)
-<mark># String interpolator (not ASF)
-</mark># Tags (not ASF)</p>
 </div>
-<div class="paragraph">
-<p>## Integrating with other Systems</p>
+<div class="sect2">
+<h3 id="_publishing_service">8.4. Publishing Service</h3>
+<div class="sect3">
+<h4 id="_api_3">8.4.1. API</h4>
+
+</div>
+<div class="sect3">
+<h4 id="_isis_addons_implementation_not_asf_4">8.4.2. Isis addons implementation (not ASF)</h4>
+
+</div>
+<div class="sect3">
+<h4 id="_event_serializer_per_ro_spec_out_of_date">8.4.3. Event Serializer per RO Spec (out-of-date)</h4>
+
+</div>
+</div>
+<div class="sect2">
+<h3 id="_other_isis_addons">8.5. Other Isis Addons</h3>
+<div class="sect3">
+<h4 id="_developer_utilities_not_asf">8.5.1. Developer Utilities (not ASF)</h4>
+
+</div>
+<div class="sect3">
+<h4 id="_docx_mail_merge_not_asf">8.5.2. Docx Mail merge (not ASF)</h4>
+
+</div>
+<div class="sect3">
+<h4 id="_excel_download_upload_not_asf">8.5.3. Excel download/upload (not ASF)</h4>
+
+</div>
+<div class="sect3">
+<h4 id="_fake_data_not_asf">8.5.4. Fake Data (not ASF)</h4>
+
+</div>
+<div class="sect3">
+<h4 id="_poly_not_asf">8.5.5. Poly (not ASF)</h4>
+
+</div>
+<div class="sect3">
+<h4 id="_security_not_asf">8.5.6. Security (not ASF)</h4>
+
+</div>
+<div class="sect3">
+<h4 id="_session_logger_not_asf">8.5.7. Session Logger (not ASF)</h4>
+
+</div>
+<div class="sect3">
+<h4 id="_settings_not_asf">8.5.8. Settings (not ASF)</h4>
+
+</div>
+<div class="sect3">
+<h4 id="_string_interpolator_not_asf">8.5.9. String interpolator (not ASF)</h4>
+
+</div>
+<div class="sect3">
+<h4 id="_tags_not_asf">8.5.10. Tags (not ASF)</h4>
+
+</div>
 </div>
-<div class="paragraph">
-<p>= User Guide: Integrating with Other Systems
-:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. <a href="http://www.apache.org/licenses/LICENSE-2.0" class="bare">http://www.apache.org/licenses/LICENSE-2.0</a> . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR  CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
-:_basedir: ../
-:_imagesdir: images/</p>
 </div>
+</div>
+<div class="sect1">
+<h2 id="_integrating_with_other_systems">9. Integrating with Other Systems</h2>
+<div class="sectionbody">
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -2790,21 +2773,17 @@ TODO
 </tr>
 </table>
 </div>
-<div class="paragraph">
-<p>## Non UI Execution</p>
-</div>
+<div class="sect2">
+<h3 id="_non_ui_execution">9.1. Non UI Execution</h3>
 <div class="paragraph">
 <p>Using <code>IsisSessionTemplate</code></p>
 </div>
-<div class="paragraph">
-<p>## Extending</p>
 </div>
-<div class="paragraph">
-<p>= User Guide: How-tos: Extending
-:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. <a href="http://www.apache.org/licenses/LICENSE-2.0" class="bare">http://www.apache.org/licenses/LICENSE-2.0</a> . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR  CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
-:_basedir: ../
-:_imagesdir: images/</p>
 </div>
+</div>
+<div class="sect1">
+<h2 id="_extending">10. Extending</h2>
+<div class="sectionbody">
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -2817,15 +2796,12 @@ TODO
 </tr>
 </table>
 </div>
-<div class="paragraph">
-<p>## Extending the Programming Model</p>
-</div>
-<div class="paragraph">
-<p>= User Guide: How-tos: Extending: Programming Model
-:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. <a href="http://www.apache.org/licenses/LICENSE-2.0" class="bare">http://www.apache.org/licenses/LICENSE-2.0</a> . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR  CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
-:_basedir: ../
-:_imagesdir: images/</p>
+<div class="sect2">
+<h3 id="_extending_the_programming_model">10.1. Extending the Programming Model</h3>
+
 </div>
+<div class="sect2">
+<h3 id="_programming_model">10.2. Programming Model</h3>
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -2838,48 +2814,54 @@ TODO
 </tr>
 </table>
 </div>
-<div class="paragraph">
-<p>## Disallowing deprecated annotations</p>
+<div class="sect3">
+<h4 id="_disallowing_deprecated_annotations">10.2.1. Disallowing deprecated annotations</h4>
+
 </div>
-<div class="paragraph">
-<p>## Custom validator</p>
+<div class="sect3">
+<h4 id="_custom_validator">10.2.2. Custom validator</h4>
+
 </div>
-<div class="paragraph">
-<p>## Finetuning the Programming Model</p>
+<div class="sect3">
+<h4 id="_finetuning_the_programming_model">10.2.3. Finetuning the Programming Model</h4>
+
 </div>
-<div class="paragraph">
-<p>## Layout metadata reader</p>
+<div class="sect3">
+<h4 id="_layout_metadata_reader">10.2.4. Layout metadata reader</h4>
+
 </div>
-<div class="paragraph">
-<p>## Listener to create DB schema objects</p>
+<div class="sect3">
+<h4 id="_listener_to_create_db_schema_objects">10.2.5. Listener to create DB schema objects</h4>
+
 </div>
-<div class="paragraph">
-<p>## Extending the Wicket viewer</p>
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Writing a custom theme</p>
+<div class="sect2">
+<h3 id="_extending_the_wicket_viewer">10.3. Extending the Wicket viewer</h3>
+<div class="sect3">
+<h4 id="_writing_a_custom_theme">10.3.1. Writing a custom theme</h4>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Replacing page elements</p>
+<div class="sect3">
+<h4 id="_replacing_page_elements">10.3.2. Replacing page elements</h4>
+
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Custom pages</p>
+<div class="sect3">
+<h4 id="_custom_pages">10.3.3. Custom pages</h4>
+
 </div>
-<div class="paragraph">
-<p>## Extending the Restful viewer</p>
 </div>
-<div class="paragraph">
-<p><mark>#</mark> Custom Representations</p>
+<div class="sect2">
+<h3 id="_extending_the_restful_viewer">10.4. Extending the Restful viewer</h3>
+<div class="sect3">
+<h4 id="_custom_representations">10.4.1. Custom Representations</h4>
+
 </div>
-<div class="paragraph">
-<p>## Troubleshooting</p>
 </div>
-<div class="paragraph">
-<p>= User Guide: How-tos: Trouble Shooting
-:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. <a href="http://www.apache.org/licenses/LICENSE-2.0" class="bare">http://www.apache.org/licenses/LICENSE-2.0</a> . Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR  CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
-:_basedir: ../
-:_imagesdir: images/</p>
 </div>
+</div>
+<div class="sect1">
+<h2 id="_trouble_shooting">11. Trouble Shooting</h2>
+<div class="sectionbody">
 <div class="admonitionblock note">
 <table>
 <tr>
@@ -2892,15 +2874,12 @@ TODO
 </tr>
 </table>
 </div>
-<div class="paragraph">
-<p>## JDO/DataNucleus Logging</p>
-</div>
-<div class="paragraph">
-<p>= User Guide: How-tos: Trouble Shooting: DataNucleus Logging

[... 543 lines stripped ...]