You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2020/01/31 19:25:45 UTC

[isis] branch master updated (7516c08 -> 2fbfcbe)

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

danhaywood pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git.


    from 7516c08  ISIS-2192: cucumber fixed, I think
     new 9b3a9b6  ISIS-2094: fixes to the verify-isis-release.sh script
     new 5dc6cea  ISIS-2062: docs
     new a06f27a  ISIS-2062: cleans up some of the toc docs
     new f815d68  ISIS-2062: removes references to 'archetype' ...
     new b4332be  ISIS-2062: replaces links to the starter app git repos with the xref: starter apps pages.
     new 37fba97  ISIS-2062: consistency of 'hello world' app -> HelloWorld
     new 6ff6c85  ISIS-2062: docs
     new 71a2e9a  ISIS-2062: updating docs
     new 2fbfcbe  ISIS-2062: docs

The 9 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 README.adoc                                        |   5 -
 antora/playbooks/site-persistence.yml              |   2 +-
 antora/playbooks/site.yml                          |   2 +-
 antora/toc/modules/ROOT/pages/about.adoc           |  10 +-
 .../toc/modules/ROOT/pages/downloads/how-to.adoc   |   2 +-
 .../ROOT/pages/more-thanks/more-thanks.adoc        |   2 +-
 .../what-is-apache-isis/common-use-cases.adoc      |  18 +-
 .../what-is-apache-isis/isis-in-pictures.adoc      |  81 +-------
 .../ROOT/pages/what-is-apache-isis/powered-by.adoc |   6 +-
 .../what-is-apache-isis/powered-by/commapp.adoc    |  22 +--
 .../what-is-apache-isis/powered-by/contactapp.adoc |  19 +-
 .../pages/what-is-apache-isis/powered-by/cqnz.adoc |   5 +-
 .../what-is-apache-isis/powered-by/estatio.adoc    |   9 +-
 .../powered-by/gesconsultor-grc.adoc               |   1 +
 .../powered-by/transport-planner.adoc              |  30 ++-
 .../what-is-apache-isis/screencasts-older.adoc     |   7 +-
 .../pages/what-is-apache-isis/screencasts.adoc     |  97 +++++-----
 antora/toc/modules/ROOT/partials/module-nav.adoc   |   6 +-
 .../modules/comguide/pages/cutting-a-release.adoc  |  23 +--
 .../comguide/pages/post-release-successful.adoc    | 104 -----------
 .../comguide/pages/post-release-unsuccessful.adoc  |  24 +--
 .../release-process-for-interim-releases.adoc      |  16 +-
 .../modules/comguide/pages/verifying-releases.adoc |  31 +--
 .../pages/hints-and-tips/datanucleus-enhancer.adoc |   5 +-
 .../pages/hints-and-tips/enabling-logging.adoc     |   3 +-
 .../how-run-fixtures-on-app-startup.adoc           |   2 +-
 antora/toc/modules/devguide/pages/ide/eclipse.adoc |  61 ++----
 .../toc/modules/devguide/pages/ide/intellij.adoc   | 208 +++++++++------------
 .../modules/mignotes/pages/migrating-to-2.0.0.adoc |  14 +-
 ...mn-1.8.0-to-1.9.0_specify-all-dom-packages.adoc |   2 +-
 .../refguide/modules/ROOT/partials/module-nav.adoc |   2 +-
 .../modules/btb/pages/deployment/neo4j.adoc        |  16 +-
 api/adoc/userguide/modules/btb/pages/i18n.adoc     |  53 +-----
 .../philosophy/hexagonal-architecture-addons.png   | Bin 100666 -> 114818 bytes
 .../philosophy/hexagonal-architecture.pptx         | Bin 263049 -> 259626 bytes
 api/adoc/userguide/modules/fun/pages/about.adoc    |   2 +-
 .../framework-provided.adoc                        |   3 +-
 .../modules/fun/pages/building-blocks/modules.adoc |  31 ++-
 .../types-of-domain-objects/domain-services.adoc   |   5 +-
 .../types-of-domain-objects/view-models.adoc       |  19 +-
 .../apache-isis-vs/event-sourcing.adoc             |   1 -
 .../philosophy/domain-driven-design.adoc           |   1 +
 .../core-concepts/philosophy/how-eases-ddd.adoc    |   2 +-
 .../principles/isis-itself/focuses-on-its-usp.adoc |   1 -
 .../domain-services/registering.adoc               |   6 +-
 .../fun/pages/programming-model/properties.adoc    |  29 +--
 .../pages/programming-model/view-models/dto.adoc   |   2 +-
 .../view-models/dto/generating-xsds.adoc           |   6 +-
 .../main/adoc/modules/applib-ant/pages/Column.adoc |   2 +-
 .../main/adoc/modules/applib-ant/pages/Digits.adoc |   2 +-
 .../pages/DomainServiceLayout/menuOrder.adoc       |   2 +-
 .../adoc/modules/applib-ant/pages/HomePage.adoc    |  14 +-
 .../main/adoc/modules/applib-ant/pages/Inject.adoc |   2 +-
 .../pages/PropertyLayout/labelPosition.adoc        |   2 +-
 .../modules/applib-ant/pages/XmlRootElement.adoc   |   2 +-
 .../pages/classes/AppManifest-bootstrapping.adoc   |  49 ++---
 .../applib-cm/pages/methods/prefixes/choices.adoc  |   2 +-
 .../applib-cm/pages/methods/prefixes/default.adoc  |   4 +-
 .../applib-cm/pages/methods/reserved/cssClass.adoc |   2 +-
 .../applib-cm/pages/methods/reserved/disable.adoc  |   6 +-
 .../applib-cm/pages/methods/reserved/iconName.adoc |   2 +-
 .../applib-cm/pages/methods/reserved/title.adoc    |   2 +-
 .../application-layer-api/BackgroundService.adoc   |   2 +-
 .../pages/core-domain-api/Scratchpad.adoc          |   2 +-
 .../pages/persistence-layer-api/H2ManagerMenu.adoc |   7 +-
 .../persistence-layer-api/IsisJdoSupport.adoc      |   2 +-
 .../persistence-layer-api/RepositoryService.adoc   |   2 +-
 .../ErrorReportingService.adoc                     |   2 +-
 .../presentation-layer-spi/UserProfileService.adoc |   2 +-
 .../FixtureScriptsSpecificationProvider.adoc       |   7 +-
 .../applib-svc/pages/testing/SudoService.adoc      |   2 +-
 .../config/pages/specifying-components.adoc        |  13 +-
 .../ContentNegotiationService.adoc                 |   2 +-
 .../src/main/adoc/modules/core/pages/about.adoc    |   2 +-
 examples/demo/src/main/adoc/antora.yml             |   2 +-
 examples/demo/src/main/adoc/modules/ROOT/nav.adoc  |   1 -
 .../src/main/adoc/modules/ROOT/pages/about.adoc    |  95 ++++++----
 .../adoc/modules/ROOT/partials/module-nav.adoc     |   3 -
 .../flyway/adoc/modules/flyway/pages/about.adoc    |   4 +-
 .../adoc/modules/flyway/partials/module-nav.adoc   |   2 +-
 .../secman/adoc/modules/secman/pages/about.adoc    |   1 -
 .../adoc/modules/secman/pages/shiro-realm.adoc     |   2 +-
 .../adoc/modules/ROOT/partials/module-nav.adoc     |   1 -
 .../src/main/doc/modules/mvn/pages/intro.adoc      |  12 +-
 .../src/main/doc/modules/mvn/pages/validate.adoc   |   2 +-
 .../src/main/doc/modules/mvn/pages/xsd.adoc        |   6 +-
 mappings/adoc/modules/ROOT/pages/about.adoc        |   2 +-
 .../adoc/modules/ROOT/partials/module-nav.adoc     |   4 -
 mavendeps/adoc/modules/mavendeps/pages/about.adoc  |  56 +++---
 .../modules/mavendeps/partials/module-nav.adoc     |   2 +-
 persistence/jdo/{src/main => }/adoc/antora.yml     |   2 +-
 .../images/hints-n-tips/diagnosing-n-plus-1.png    | Bin
 .../party-agreementrole-agreement.png              | Bin
 .../jdo/{src/main => }/adoc/modules/ROOT/nav.adoc  |   0
 .../main => }/adoc/modules/ROOT/pages/about.adoc   |   0
 .../adoc/modules/ROOT/pages/configuring.adoc       |   0
 .../modules/ROOT/pages/configuring/bulk-load.adoc  |   0
 .../disabling-persistence-by-reachability.adoc     |   4 +-
 .../ROOT/pages/configuring/persistence-xml.adoc    |   2 +-
 .../modules/ROOT/pages/configuring/properties.adoc |   0
 .../pages/configuring/using-jndi-data-source.adoc  |   0
 .../adoc/modules/ROOT/pages/db-schemas.adoc        |   0
 .../adoc/modules/ROOT/pages/hints-and-tips.adoc    |   0
 .../pages/hints-and-tips/diagnosing-n-plus-1.adoc  |   0
 .../modules/ROOT/pages/hints-and-tips/java8.adoc   |   0
 .../pages/hints-and-tips/jdoql-and-timestamps.adoc |   0
 .../hints-and-tips/overriding-jdo-annotations.adoc |   0
 .../subtype-entity-not-fully-populated.adoc        |   0
 .../typesafe-queries-and-fetchgroups.adoc          |   0
 .../adoc/modules/ROOT/pages/jdo-mappings.adoc      |   0
 .../mandatory-properties-in-subtypes.adoc          |   0
 .../ROOT/pages/jdo-mappings/mapping-to-a-view.adoc |   0
 .../one-to-m-bidirectional-relationships.adoc      |   0
 .../adoc/modules/ROOT/partials/component-nav.adoc  |   0
 .../adoc/modules/ROOT/partials/module-nav.adoc     |   0
 scripts/verify-isis-release.sh                     |  89 ++++-----
 security/adoc/modules/ROOT/pages/about.adoc        |   2 +-
 .../adoc/modules/ROOT/partials/module-nav.adoc     |   1 -
 .../pages/about/configuring-isis-to-use-shiro.adoc |   6 +-
 .../adoc/modules/shiro/pages/about/ini-realm.adoc  |   4 +-
 .../adoc/modules/ROOT/partials/component-nav.adoc  |   2 -
 starters/adoc/modules/helloworld/pages/about.adoc  |   2 +-
 .../modules/parent-pom/partials/module-nav.adoc    |   2 +-
 starters/adoc/modules/simpleapp/pages/about.adoc   |   4 +-
 .../adoc/modules/ROOT/partials/module-nav.adoc     |   4 -
 .../pages/fixture-scripts/api-and-usage.adoc       |  20 +-
 .../pages/fixture-scripts/sudo-service.adoc        |   2 +-
 .../adoc/modules/specsupport/pages/about.adoc      |  12 +-
 .../adoc/modules/ROOT/partials/module-nav.adoc     |   7 -
 .../adoc/modules/asciidoc/partials/module-nav.adoc |   2 +-
 .../adoc/modules/markdown/partials/module-nav.adoc |   2 +-
 .../sse/adoc/modules/sse/partials/module-nav.adoc  |   2 +-
 .../adoc/modules/ROOT/pages/layout-resources.adoc  |   4 +-
 .../adoc/modules/ROOT/pages/ro-spec.adoc           |   2 +-
 .../action-invocation.adoc                         |   4 +-
 .../simplified-representations/domain-object.adoc  |   2 +-
 .../object-collection.adoc                         |   2 +-
 .../adoc/modules/ROOT/partials/component-nav.adoc  |   2 +
 .../ROOT/pages/customisation/brand-logo.adoc       |   2 +-
 .../pages/customisation/tweaking-css-classes.adoc  |   2 +-
 .../ROOT/pages/features/blob-attachments.adoc      |   2 +-
 .../ROOT/pages/features/bookmarked-pages.adoc      |   2 +-
 .../ROOT/pages/hints-and-tips/per-user-themes.adoc |   2 +-
 .../ROOT/pages/layout/annotation-based.adoc        |   2 +-
 .../adoc/modules/ROOT/pages/layout/file-based.adoc |  10 +-
 .../ROOT/pages/menubars-layout/file-based.adoc     |   2 +-
 146 files changed, 574 insertions(+), 966 deletions(-)
 rename persistence/jdo/{src/main => }/adoc/antora.yml (72%)
 rename persistence/jdo/{src/main => }/adoc/modules/ROOT/images/hints-n-tips/diagnosing-n-plus-1.png (100%)
 rename persistence/jdo/{src/main => }/adoc/modules/ROOT/images/runtime/configuring-datanucleus/disabling-persistence-by-reachability/party-agreementrole-agreement.png (100%)
 rename persistence/jdo/{src/main => }/adoc/modules/ROOT/nav.adoc (100%)
 rename persistence/jdo/{src/main => }/adoc/modules/ROOT/pages/about.adoc (100%)
 rename persistence/jdo/{src/main => }/adoc/modules/ROOT/pages/configuring.adoc (100%)
 rename persistence/jdo/{src/main => }/adoc/modules/ROOT/pages/configuring/bulk-load.adoc (100%)
 rename persistence/jdo/{src/main => }/adoc/modules/ROOT/pages/configuring/disabling-persistence-by-reachability.adoc (96%)
 rename persistence/jdo/{src/main => }/adoc/modules/ROOT/pages/configuring/persistence-xml.adoc (95%)
 rename persistence/jdo/{src/main => }/adoc/modules/ROOT/pages/configuring/properties.adoc (100%)
 rename persistence/jdo/{src/main => }/adoc/modules/ROOT/pages/configuring/using-jndi-data-source.adoc (100%)
 rename persistence/jdo/{src/main => }/adoc/modules/ROOT/pages/db-schemas.adoc (100%)
 rename persistence/jdo/{src/main => }/adoc/modules/ROOT/pages/hints-and-tips.adoc (100%)
 rename persistence/jdo/{src/main => }/adoc/modules/ROOT/pages/hints-and-tips/diagnosing-n-plus-1.adoc (100%)
 rename persistence/jdo/{src/main => }/adoc/modules/ROOT/pages/hints-and-tips/java8.adoc (100%)
 rename persistence/jdo/{src/main => }/adoc/modules/ROOT/pages/hints-and-tips/jdoql-and-timestamps.adoc (100%)
 rename persistence/jdo/{src/main => }/adoc/modules/ROOT/pages/hints-and-tips/overriding-jdo-annotations.adoc (100%)
 rename persistence/jdo/{src/main => }/adoc/modules/ROOT/pages/hints-and-tips/subtype-entity-not-fully-populated.adoc (100%)
 rename persistence/jdo/{src/main => }/adoc/modules/ROOT/pages/hints-and-tips/typesafe-queries-and-fetchgroups.adoc (100%)
 rename persistence/jdo/{src/main => }/adoc/modules/ROOT/pages/jdo-mappings.adoc (100%)
 rename persistence/jdo/{src/main => }/adoc/modules/ROOT/pages/jdo-mappings/mandatory-properties-in-subtypes.adoc (100%)
 rename persistence/jdo/{src/main => }/adoc/modules/ROOT/pages/jdo-mappings/mapping-to-a-view.adoc (100%)
 rename persistence/jdo/{src/main => }/adoc/modules/ROOT/pages/jdo-mappings/one-to-m-bidirectional-relationships.adoc (100%)
 rename persistence/jdo/{src/main => }/adoc/modules/ROOT/partials/component-nav.adoc (100%)
 rename persistence/jdo/{src/main => }/adoc/modules/ROOT/partials/module-nav.adoc (100%)


[isis] 02/09: ISIS-2062: docs

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

danhaywood pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git

commit 5dc6cea83069e9f7a233c672b968fe398439748b
Author: danhaywood <da...@haywood-associates.co.uk>
AuthorDate: Fri Jan 31 16:05:25 2020 +0000

    ISIS-2062: docs
---
 mavendeps/adoc/modules/mavendeps/pages/about.adoc  | 56 ++++++++++------------
 .../modules/mavendeps/partials/module-nav.adoc     |  2 +-
 .../adoc/modules/ROOT/partials/component-nav.adoc  |  2 -
 .../modules/parent-pom/partials/module-nav.adoc    |  2 +-
 .../adoc/modules/specsupport/pages/about.adoc      | 12 ++---
 5 files changed, 34 insertions(+), 40 deletions(-)

diff --git a/mavendeps/adoc/modules/mavendeps/pages/about.adoc b/mavendeps/adoc/modules/mavendeps/pages/about.adoc
index 81ae386..3da2ec8 100644
--- a/mavendeps/adoc/modules/mavendeps/pages/about.adoc
+++ b/mavendeps/adoc/modules/mavendeps/pages/about.adoc
@@ -1,21 +1,20 @@
-= Convenience POMs
+= Aggregator POMs
 :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. http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or ag [...]
 
-The framework provides a number of "convenience" POMs that act as aggregators of other dependencies.
+The framework provides a number of "aggregator" POMs that act as a convenient way to  aggregate together various common dependencies.
 
-For example, when writing unit tests for your domain app,
-it can simply depend on the `isis-mavendeps-unittesting` artifact (rather than have to reference all of JUnit, AssertJ, Spring Boot, Hamcrest, Mockito and so on).
+For example, when writing unit tests for your domain app, it can simply depend on the `isis-mavendeps-unittests` artifact (rather than have to reference all of JUnit, AssertJ, Spring Boot, Hamcrest, Mockito and so on).
 
-Currently five convenience POMs are provided.
+Currently five aggregator POMs are provided.
 
-== isis-mavendeps-webapp
+== Webapp
 
 The `isis-mavendeps-webapp` aggregates the main runtime dependencies of a production webapp.
 
 To use, add the following :
 
 [source,xml]
-.webapp/pom.xml
+.pom.xml
 ----
 <dependencies>
     <dependency>
@@ -49,15 +48,12 @@ For example, see the xref:starters:simpleapp:about.adoc#appmanifest[AppManifest
 
 == Testing and BDD Specs
 
-Three convenience POMs are provided to support  xref:testing:unittestsupport:about.adoc[unit testing], xref:testing:integtestsupport:about.adoc[integ testing] or running xref:testing:specsupport:about.adoc[BDD (Cucumber) specs].
-
-NOTE: in fact, these convenience POMs are just thin wrappers around the corresponding `isis-testing-xxx-applib` modules.
-We've added them for consistency.
+Three aggregator POMs are provided to support  xref:testing:unittestsupport:about.adoc[unit testing], xref:testing:integtestsupport:about.adoc[integ testing] or running xref:testing:specsupport:about.adoc[BDD (Cucumber) specs].
 
 To use them when unit testing, add:
 
 [source,xml]
-.webapp/pom.xml
+.pom.xml
 ----
 <dependencies>
     <dependency>
@@ -72,7 +68,7 @@ To use them when unit testing, add:
 For integration testing, add:
 
 [source,xml]
-.webapp/pom.xml
+.pom.xml
 ----
 <dependencies>
     <dependency>
@@ -87,7 +83,7 @@ For integration testing, add:
 For BDD (Cucumber) specs, within an integration testing context:
 
 [source,xml]
-.webapp/pom.xml
+.pom.xml
 ----
 <dependencies>
     <dependency>
@@ -99,9 +95,9 @@ For BDD (Cucumber) specs, within an integration testing context:
 </dependencies>
 ----
 
-The table below summarises the dependencies that each of these convenience POMs brings in.
+The table below summarises the dependencies that each of these aggregator POMs brings in.
 
-.Dependencies of the Convenience POM for Tests/Specs
+.Dependencies of the Aggregator POM for Tests/Specs
 [cols="3a,^1a,^1a,^1a", options="header"]
 |===
 
@@ -116,19 +112,19 @@ integspecs
 
 |Apache Isis' own xref:testing:unittestsupport:about.adoc[unit test support] +
 with JMock2 extensions to mock classes
-| Y | - | -
+| Y |  |
 
 |Apache Isis' own xref:testing:integtestsupport:about.adoc[integ test support]
-| - | Y | Y
+|   | Y | Y
 
 |Apache Isis' own xref:testing:specsupport:about.adoc[BDD spec support]
-| - | - | Y
+|   |   | Y
 
 | link:https://junit.org/junit5/docs/current/user-guide/[JUnit 5 "jupiter"]
 | Y | Y | Y
 
 | link:https://junit.org/junit5/docs/current/user-guide/#migrating-from-junit4[JUnit 5 "vintage"]
-| Y | - | -
+| Y |   |
 
 | link:https://docs.spring.io/spring-boot/docs/current/reference/html/spring-boot-features.html#boot-features-testing[Spring Boot Test]
 | Y | Y | Y
@@ -143,41 +139,41 @@ with JMock2 extensions to mock classes
 | Y | Y | Y
 
 | link:http://jmock.org/[JMock]
-| Y | - | -
+| Y |   |
 
 | link:https://github.com/approvals/ApprovalTests.Java[Approval tests]
 | Y | Y | Y
 
 | link:http://picocontainer.com/[PicoContainer] +
 (for JMock2 extensions)
-| Y | - | -
+| Y |   |
 
 | Apache Isis xref:refguide:ROOT:about.adoc[Applib]
 | Y | Y | Y
 
 | Apache Isis xref:core:runtime-services:about.adoc[Runtime Services]
-| - | Y | Y
+|   | Y | Y
 
 | Apache Isis xref:security:bypass:about.adoc[Bypass] security
-| - | Y | Y
+|   | Y | Y
 
 | Apache Isis xref:pjdo:ROOT:about.adoc[JDO/DataNucleus]
-| - | Y | Y
+|   | Y | Y
 
 | Apache Isis xref:testing:fakedata:about.adoc[Fake Data]
 | Y | Y | Y
 
 | Apache Isis xref:testing:fixtures:about.adoc[Fixture Scripts]
-| - | Y | Y
+|   | Y | Y
 
 | link:https://github.com/google/guava/wiki[Google's Guava]
-| Y | - | -
+| Y |   |
 
 | link:http://hsqldb.org[HSQLDB]
-| - | Y | Y
+|   | Y | Y
 
 | link:https://www.h2database.com[H2 Database]
-| - | Y | Y
+|   | Y | Y
 
 |===
 
@@ -200,7 +196,7 @@ All you need to do is include this dependency in the webapp module:
 To use, add the following :
 
 [source,xml]
-.webapp/pom.xml
+.pom.xml
 ----
 <dependencies>
     <dependency>
diff --git a/mavendeps/adoc/modules/mavendeps/partials/module-nav.adoc b/mavendeps/adoc/modules/mavendeps/partials/module-nav.adoc
index 9276264..5eb488f 100644
--- a/mavendeps/adoc/modules/mavendeps/partials/module-nav.adoc
+++ b/mavendeps/adoc/modules/mavendeps/partials/module-nav.adoc
@@ -1 +1 @@
-** xref:starters:mavendeps:about.adoc[Convenience POMs]
+* xref:starters:mavendeps:about.adoc[Aggregator POMs]
diff --git a/starters/adoc/modules/ROOT/partials/component-nav.adoc b/starters/adoc/modules/ROOT/partials/component-nav.adoc
index de8307e..077098f 100644
--- a/starters/adoc/modules/ROOT/partials/component-nav.adoc
+++ b/starters/adoc/modules/ROOT/partials/component-nav.adoc
@@ -3,8 +3,6 @@ include::starters:ROOT:partial$module-nav.adoc[]
 include::starters:helloworld:partial$module-nav.adoc[]
 include::starters:simpleapp:partial$module-nav.adoc[]
 
-* Resources
-
 include::starters:parent-pom:partial$module-nav.adoc[]
 include::starters:mavendeps:partial$module-nav.adoc[]
 
diff --git a/starters/adoc/modules/parent-pom/partials/module-nav.adoc b/starters/adoc/modules/parent-pom/partials/module-nav.adoc
index 53b2005..7ec7a9d 100644
--- a/starters/adoc/modules/parent-pom/partials/module-nav.adoc
+++ b/starters/adoc/modules/parent-pom/partials/module-nav.adoc
@@ -1,4 +1,4 @@
-** xref:starters:parent-pom:about.adoc[Parent POM]
+* xref:starters:parent-pom:about.adoc[Parent POM]
 
 
 
diff --git a/testing/specsupport/adoc/modules/specsupport/pages/about.adoc b/testing/specsupport/adoc/modules/specsupport/pages/about.adoc
index 8fd70eb..8cb70ea 100644
--- a/testing/specsupport/adoc/modules/specsupport/pages/about.adoc
+++ b/testing/specsupport/adoc/modules/specsupport/pages/about.adoc
@@ -156,16 +156,16 @@ With the bootstrapping and infrastructure taken care of, let's look at the actua
 [source,gherkin]
 .SimpleObjectSpec_listAllAndCreate.feature
 ----
-@DomainAppDemo                                                          //<1>
-Feature: List and Create New Simple Objects                             //<2>
+Feature: List and Create New Simple Objects                             //<1>
 
-  Scenario: Existing simple objects can be listed and new ones created  //<2>
+  @DomainAppDemo                                                        //<2>
+  Scenario: Existing simple objects can be listed and new ones created  //<1>
     Given there are initially 10 simple objects                         //<3>
     When  I create a new simple object                                  //<3>
     Then  there are 11 simple objects                                   //<3>
 ----
-<1> Tag indicates the fixture to be run
-<2> Provide context, but not actually executed
+<1> Provide context, but not actually executed
+<2> Tag indicates the fixture to be run
 <3> Map onto step definitions
 
 We need a step definition to match the Cucumber tag to a xref:testing:fixtures:about.adoc[fixture script].
@@ -222,7 +222,7 @@ public class SimpleObjectsStepDef {
 }
 ----
 <1> injected domain service being interacted with
-<2> regex to match to feature file specification
+<2> regex to match to feature file specification.
 <3> code that interacts with the domain service.
 This is done using the xref:testing:integtestsupport:about.adoc#wrapper-factory[WrapperFactory] to simulate the UI.
 <4> supporting domain services


[isis] 05/09: ISIS-2062: replaces links to the starter app git repos with the xref: starter apps pages.

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

danhaywood pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git

commit b4332bed088b514daf1d0d36b2944c9fc0d4267a
Author: danhaywood <da...@haywood-associates.co.uk>
AuthorDate: Fri Jan 31 18:07:28 2020 +0000

    ISIS-2062: replaces links to the starter app git repos with the xref: starter apps pages.
---
 antora/toc/modules/ROOT/pages/downloads/how-to.adoc            |  2 +-
 antora/toc/modules/ROOT/pages/more-thanks/more-thanks.adoc     |  2 +-
 .../ROOT/pages/what-is-apache-isis/screencasts-older.adoc      |  4 ++--
 .../modules/ROOT/pages/what-is-apache-isis/screencasts.adoc    |  2 +-
 antora/toc/modules/comguide/pages/verifying-releases.adoc      |  2 +-
 .../devguide/pages/hints-and-tips/datanucleus-enhancer.adoc    |  4 ++--
 .../pages/hints-and-tips/how-run-fixtures-on-app-startup.adoc  |  2 +-
 antora/toc/modules/devguide/pages/ide/eclipse.adoc             |  4 ++--
 api/adoc/userguide/modules/btb/pages/i18n.adoc                 |  2 +-
 api/adoc/userguide/modules/fun/pages/about.adoc                |  2 +-
 .../fun/pages/core-concepts/philosophy/how-eases-ddd.adoc      |  2 +-
 .../modules/fun/pages/programming-model/properties.adoc        |  2 +-
 .../applib-cm/pages/classes/AppManifest-bootstrapping.adoc     |  2 +-
 .../pages/testing/FixtureScriptsSpecificationProvider.adoc     |  2 +-
 .../main/adoc/modules/config/pages/specifying-components.adoc  |  2 +-
 extensions/core/flyway/adoc/modules/flyway/pages/about.adoc    |  2 +-
 .../mavenplugin/src/main/doc/modules/mvn/pages/intro.adoc      |  2 +-
 .../mavenplugin/src/main/doc/modules/mvn/pages/validate.adoc   |  2 +-
 .../configuring/disabling-persistence-by-reachability.adoc     |  2 +-
 .../adoc/modules/ROOT/pages/configuring/persistence-xml.adoc   |  2 +-
 security/adoc/modules/ROOT/pages/about.adoc                    |  2 +-
 .../shiro/pages/about/configuring-isis-to-use-shiro.adoc       |  4 ++--
 .../src/main/adoc/modules/shiro/pages/about/ini-realm.adoc     |  2 +-
 .../modules/fixtures/pages/fixture-scripts/api-and-usage.adoc  | 10 +++++-----
 .../adoc/modules/ROOT/pages/layout-resources.adoc              |  4 ++--
 viewers/wicket/adoc/modules/ROOT/pages/layout/file-based.adoc  |  2 +-
 .../adoc/modules/ROOT/pages/menubars-layout/file-based.adoc    |  2 +-
 27 files changed, 36 insertions(+), 36 deletions(-)

diff --git a/antora/toc/modules/ROOT/pages/downloads/how-to.adoc b/antora/toc/modules/ROOT/pages/downloads/how-to.adoc
index 5a08c5c..405e236 100644
--- a/antora/toc/modules/ROOT/pages/downloads/how-to.adoc
+++ b/antora/toc/modules/ROOT/pages/downloads/how-to.adoc
@@ -12,7 +12,7 @@ Use for prototyping or production.
 
 == Getting Started
 
-If you just want to get going quickly, we suggest using our link:https://github.com/apache/isis-app-helloworld[HelloWorld] or link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter apps.
+If you just want to get going quickly, we suggest using our xref:starters:helloworld:about.adoc[HelloWorld] or xref:starters:simpleapp:about.adoc[SimpleApp] starter apps.
 
 
 
diff --git a/antora/toc/modules/ROOT/pages/more-thanks/more-thanks.adoc b/antora/toc/modules/ROOT/pages/more-thanks/more-thanks.adoc
index 71b3433..8f8f971 100644
--- a/antora/toc/modules/ROOT/pages/more-thanks/more-thanks.adoc
+++ b/antora/toc/modules/ROOT/pages/more-thanks/more-thanks.adoc
@@ -23,7 +23,7 @@ In addition to the http://www.apache.org/foundation/thanks.html[support given to
 
 
 |image::more-thanks/icons8-logo.png[link="http://icons8.com"]
-|Icons8, for selected icons on this website and in the link:https://github.com/apache/isis-app-helloworld[HelloWorld] and link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter apps
+|Icons8, for selected icons on this website and in the xref:starters:helloworld:about.adoc[HelloWorld] and xref:starters:simpleapp:about.adoc[SimpleApp] starter apps
 
 |===
 
diff --git a/antora/toc/modules/ROOT/pages/what-is-apache-isis/screencasts-older.adoc b/antora/toc/modules/ROOT/pages/what-is-apache-isis/screencasts-older.adoc
index 6a06040..7151322 100644
--- a/antora/toc/modules/ROOT/pages/what-is-apache-isis/screencasts-older.adoc
+++ b/antora/toc/modules/ROOT/pages/what-is-apache-isis/screencasts-older.adoc
@@ -80,7 +80,7 @@ Learn more xref:toc:devguide:about.adoc#intellij[here]
 
 |Commands and Auditing (v1.6.0) +
 
-_Configuring the command and auditing add-on modules for the link:https://github.com/apache/isis-app-simpleapp[SimpleApp]._ +
+_Configuring the command and auditing add-on modules for the xref:starters:simpleapp:about.adoc[SimpleApp]._ +
 
 Learn more at the (non-ASF) link:https://platform.incode.org[Incode Platform^]'s command and audit SPI modules
 
@@ -89,7 +89,7 @@ Learn more at the (non-ASF) link:https://platform.incode.org[Incode Platform^]'s
 
 |Security (v1.6.0) +
 
-_Configuring the security add-on module for for the link:https://github.com/apache/isis-app-simpleapp[SimpleApp]._ +
+_Configuring the security add-on module for for the xref:starters:simpleapp:about.adoc[SimpleApp]._ +
 
 Learn more at the (non-ASF) link:https://platform.incode.org[Incode Platform^]'s security SPI module.
 
diff --git a/antora/toc/modules/ROOT/pages/what-is-apache-isis/screencasts.adoc b/antora/toc/modules/ROOT/pages/what-is-apache-isis/screencasts.adoc
index c84beee..2b8c86e 100644
--- a/antora/toc/modules/ROOT/pages/what-is-apache-isis/screencasts.adoc
+++ b/antora/toc/modules/ROOT/pages/what-is-apache-isis/screencasts.adoc
@@ -47,7 +47,7 @@ include::screencasts/playlists.adoc[]
 
 
 //|link:https://www.youtube.com/watch?v=OTNHR5EdAs8[001^] +
-//Generating an app using the link:https://github.com/apache/isis-app-simpleapp[SimpleApp archetype]
+//Generating an app using the xref:starters:simpleapp:about.adoc[SimpleApp archetype]
 //
 //|x||||||||||
 
diff --git a/antora/toc/modules/comguide/pages/verifying-releases.adoc b/antora/toc/modules/comguide/pages/verifying-releases.adoc
index f3528e3..794dc1e 100644
--- a/antora/toc/modules/comguide/pages/verifying-releases.adoc
+++ b/antora/toc/modules/comguide/pages/verifying-releases.adoc
@@ -110,7 +110,7 @@ Alternatively, you can xref:toc:comguide:verifying-releases.adoc#casting-a-vote[
 
 == (Optional) Verifying binary artifacts
 
-You can verify the binary releases by configuring your local Maven install to point to the Maven staging repository (or repositories) and then using them, eg to run the link:https://github.com/apache/isis-app-helloworld[HelloWorld starter app] or the link:https://github.com/apache/isis-app-simpleapp[SimpleApp starter app] (adjust the parent version if required).
+You can verify the binary releases by configuring your local Maven install to point to the Maven staging repository (or repositories) and then using them, eg to run the xref:starters:helloworld:about.adoc[HelloWorld starter app] or the xref:starters:simpleapp:about.adoc[SimpleApp starter app] (adjust the parent version if required).
 
 Configuring your local Maven install amounts to updating the `~/.m2/settings.xml` file:
 
diff --git a/antora/toc/modules/devguide/pages/hints-and-tips/datanucleus-enhancer.adoc b/antora/toc/modules/devguide/pages/hints-and-tips/datanucleus-enhancer.adoc
index 84b3649..c3e1900 100644
--- a/antora/toc/modules/devguide/pages/hints-and-tips/datanucleus-enhancer.adoc
+++ b/antora/toc/modules/devguide/pages/hints-and-tips/datanucleus-enhancer.adoc
@@ -18,7 +18,7 @@ What this means is that the enhancer -- available as both a Maven plugin and as
 
 If working from the Maven command line, JDO enhancement is done using the `datanucleus-maven-plugin`.
 
-Both the link:https://github.com/apache/isis-app-helloworld[HelloWorld] and link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter apps have this plugin pre-configured.
+Both the xref:starters:helloworld:about.adoc[HelloWorld] and xref:starters:simpleapp:about.adoc[SimpleApp] starter apps have this plugin pre-configured.
 
 
 
@@ -39,7 +39,7 @@ It's also a good idea to ensure that every domain module(s) containing entities
 ----
 <1> change as required; typically is the name of the domain module.
 
-Again, the link:https://github.com/apache/isis-app-helloworld[HelloWorld] and link:https://github.com/apache/isis-app-simpleapp[Simpleapp] starter apps do this.
+Again, the xref:starters:helloworld:about.adoc[HelloWorld] and xref:starters:simpleapp:about.adoc[Simpleapp] starter apps do this.
 
 
 [WARNING]
diff --git a/antora/toc/modules/devguide/pages/hints-and-tips/how-run-fixtures-on-app-startup.adoc b/antora/toc/modules/devguide/pages/hints-and-tips/how-run-fixtures-on-app-startup.adoc
index 19f2aa0..e96b159 100644
--- a/antora/toc/modules/devguide/pages/hints-and-tips/how-run-fixtures-on-app-startup.adoc
+++ b/antora/toc/modules/devguide/pages/hints-and-tips/how-run-fixtures-on-app-startup.adoc
@@ -13,7 +13,7 @@ Use events?_
 
 
 The standard approach is to use xref:fixtures:ROOT:about.adoc[fixture scripts].
-These can be run in on start-up typically by being specified in the xref:refguide:applib-cm:classes/AppManifest-bootstrapping.adoc[`AppManifest`], see for example the link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter app.
+These can be run in on start-up typically by being specified in the xref:refguide:applib-cm:classes/AppManifest-bootstrapping.adoc[`AppManifest`], see for example the xref:starters:simpleapp:about.adoc[SimpleApp] starter app.
 
 Alternatively just set `isis.fixtures` and `isis.persistor.datanucleus.install-fixtures` properties.
 
diff --git a/antora/toc/modules/devguide/pages/ide/eclipse.adoc b/antora/toc/modules/devguide/pages/ide/eclipse.adoc
index 98aaf5c..591417a 100644
--- a/antora/toc/modules/devguide/pages/ide/eclipse.adoc
+++ b/antora/toc/modules/devguide/pages/ide/eclipse.adoc
@@ -31,7 +31,7 @@ To install, download each XML file, then go to `Windows > Preferences > Java > E
 
 == Install Project Lombok
 
-The link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter app uses link:http://projectlombok.org[Project Lombok] annotations (`@Getter` and `@Setter` and so on) to reduce the boilerplate.
+The xref:starters:simpleapp:about.adoc[SimpleApp] starter app uses link:http://projectlombok.org[Project Lombok] annotations (`@Getter` and `@Setter` and so on) to reduce the boilerplate.
 For Eclipse IDE this requires an link:https://projectlombok.org/setup/eclipse[installation step]:
 
 * Locate the `lombok.jar` jar file:
@@ -107,7 +107,7 @@ DataNucleus' enhancer uses the domain object model's own classpath to reference
 So, even though your domain objects are unlikely to depend on DataNucleus, these references must still be present.
 
 See the section in xref:toc:devguide:hints-and-tips/datanucleus-enhancer.adoc[DataNucleus enhancer] for details of the contents of the `pom.xml`.
-If you've based your app on either the link:https://github.com/apache/isis-app-helloworld[HelloWorld] or the link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter app, then it'll be set up already.
+If you've based your app on either the xref:starters:helloworld:about.adoc[HelloWorld] or the xref:starters:simpleapp:about.adoc[SimpleApp] starter app, then it'll be set up already.
 
 Then, tell DataNucleus to use the project classpath:
 
diff --git a/api/adoc/userguide/modules/btb/pages/i18n.adoc b/api/adoc/userguide/modules/btb/pages/i18n.adoc
index a5a9608..14f29ef 100644
--- a/api/adoc/userguide/modules/btb/pages/i18n.adoc
+++ b/api/adoc/userguide/modules/btb/pages/i18n.adoc
@@ -119,7 +119,7 @@ Moreover, these messages must be captured in the `.pot` file such that they can
 The first part of the puzzle is tackled by an extension to Apache Isis' programming model.
 Whereas previously the `disableXxx()` / `validateXxx()` / `title()` methods could only return a `java.lang.String`, they may now optionally return a `TranslatableString` (defined in Isis applib) instead.
 
-Here's a (silly) example from the link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter app:
+Here's a (silly) example from the xref:starters:simpleapp:about.adoc[SimpleApp] starter app:
 
 [source,java]
 ----
diff --git a/api/adoc/userguide/modules/fun/pages/about.adoc b/api/adoc/userguide/modules/fun/pages/about.adoc
index 393af3a..ff32fa0 100644
--- a/api/adoc/userguide/modules/fun/pages/about.adoc
+++ b/api/adoc/userguide/modules/fun/pages/about.adoc
@@ -1,7 +1,7 @@
 = Fundamentals
 :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. http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or ag [...]
 
-This guide introduces the xref:userguide:fun:core-concepts.adoc[core concepts] and the xref:userguide:fun:building-blocks.adoc[building blocks] of Apache Isis, and tells you how to get started with the link:https://github.com/apache/isis-app-helloworld[helloworld starter app].
+This guide introduces the xref:userguide:fun:core-concepts.adoc[core concepts] and the xref:userguide:fun:building-blocks.adoc[building blocks] of Apache Isis, and tells you how to get started with the xref:starters:helloworld:about.adoc[HelloWorld] starter app.
 
 It describes in some detail the conventions of Apache Isis' xref:userguide:fun:programming-model.adoc[programming model]s, describes how to influence the xref:vw:ROOT:layout.adoc[UI layout] of your domain objects , and it catalogues various xref:toc:devguide:hints-and-tips.adoc.adoc[FAQ]s.
 
diff --git a/api/adoc/userguide/modules/fun/pages/core-concepts/philosophy/how-eases-ddd.adoc b/api/adoc/userguide/modules/fun/pages/core-concepts/philosophy/how-eases-ddd.adoc
index a6645ef..e0b361b 100644
--- a/api/adoc/userguide/modules/fun/pages/core-concepts/philosophy/how-eases-ddd.adoc
+++ b/api/adoc/userguide/modules/fun/pages/core-concepts/philosophy/how-eases-ddd.adoc
@@ -53,7 +53,7 @@ If we are using code as the primary means of expressing the model, then we need
 We could generate UML diagrams and the like from code. That will work for some members of the business community, but not for everyone. Or we could generate a PDF document from Javadoc comments, but comments aren't code and so the document may be inaccurate.  Anyway, even if we do create such a document, not everyone will read it.
 
 A better way to represent the model is to show it in action as a working prototype.
-As we show in the link:https://github.com/apache/isis-app-helloworld[Getting Started] section, Apache Isis enables this with ease. Such prototypes bring the domain model to life, engaging the audience in a way that a piece of paper never can.
+As we show in the xref:starters:helloworld:about.adoc[Getting Started] section, Apache Isis enables this with ease. Such prototypes bring the domain model to life, engaging the audience in a way that a piece of paper never can.
 
 Moreover, with Apache Isis prototypes, the domain model will come shining through. If there are mistakes or misunderstandings in the domain model (inevitable when building any complex system), they will be obvious to all.
 
diff --git a/api/adoc/userguide/modules/fun/pages/programming-model/properties.adoc b/api/adoc/userguide/modules/fun/pages/programming-model/properties.adoc
index dbbac98..0e37c89 100644
--- a/api/adoc/userguide/modules/fun/pages/programming-model/properties.adoc
+++ b/api/adoc/userguide/modules/fun/pages/programming-model/properties.adoc
@@ -25,7 +25,7 @@ It's also possible (using annotations) to define a link table to hold foreign ke
 Apache Isis recognises some of these annotations for JDO/DataNucleus and JAXB and infers some domain semantics from them (for example, the maximum allowable length of a string property).
 
 Since writing getter and setter methods adds quite a bit of boilerplate, it's common to use link:https://projectlombok.org/[Project Lombok] to code generate these methods at compile time (using Java's annotation processor) simply by adding the `@lombok.Getter` and `@lombok.Setter` annotations to the field.
-The link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter app uses this approach.
+The xref:starters:simpleapp:about.adoc[SimpleApp] starter app uses this approach.
 
 == Value vs Reference Types
 
diff --git a/api/applib/src/main/adoc/modules/applib-cm/pages/classes/AppManifest-bootstrapping.adoc b/api/applib/src/main/adoc/modules/applib-cm/pages/classes/AppManifest-bootstrapping.adoc
index beec4ad..92290ad 100644
--- a/api/applib/src/main/adoc/modules/applib-cm/pages/classes/AppManifest-bootstrapping.adoc
+++ b/api/applib/src/main/adoc/modules/applib-cm/pages/classes/AppManifest-bootstrapping.adoc
@@ -233,7 +233,7 @@ Moreover, these classes recognise that configuration properties fall into two br
 * those that change between environments. +
 + The classic example here is the JDBC URL.
 
-For example, the link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter app's `AppManifest` is defined as:
+For example, the xref:starters:simpleapp:about.adoc[SimpleApp] starter app's `AppManifest` is defined as:
 
 [source,java]
 ----
diff --git a/api/applib/src/main/adoc/modules/applib-svc/pages/testing/FixtureScriptsSpecificationProvider.adoc b/api/applib/src/main/adoc/modules/applib-svc/pages/testing/FixtureScriptsSpecificationProvider.adoc
index 212214f..36e9463 100644
--- a/api/applib/src/main/adoc/modules/applib-svc/pages/testing/FixtureScriptsSpecificationProvider.adoc
+++ b/api/applib/src/main/adoc/modules/applib-svc/pages/testing/FixtureScriptsSpecificationProvider.adoc
@@ -45,7 +45,7 @@ The class is immutable but it has a builder (obtained using `FixturescriptsSpeci
 
 == Implementation
 
-The link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter app has a simple implementation of this service:
+The xref:starters:simpleapp:about.adoc[SimpleApp] starter app has a simple implementation of this service:
 
 [source,java]
 ----
diff --git a/core/config/src/main/adoc/modules/config/pages/specifying-components.adoc b/core/config/src/main/adoc/modules/config/pages/specifying-components.adoc
index 3bae498..95ef43a 100644
--- a/core/config/src/main/adoc/modules/config/pages/specifying-components.adoc
+++ b/core/config/src/main/adoc/modules/config/pages/specifying-components.adoc
@@ -28,7 +28,7 @@ To specify the `AppManifest` as a configuration property, use:
 |`o.a.i.applib.AppManifest` +
 
 By convention this implementation resides in an `myapp-app` Maven module (as opposed to `myapp-dom` or `myapp-fixture`).
-See the link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter app for details.
+See the xref:starters:simpleapp:about.adoc[SimpleApp] starter app for details.
 
 |===
 
diff --git a/extensions/core/flyway/adoc/modules/flyway/pages/about.adoc b/extensions/core/flyway/adoc/modules/flyway/pages/about.adoc
index c720bd3..841b529 100644
--- a/extensions/core/flyway/adoc/modules/flyway/pages/about.adoc
+++ b/extensions/core/flyway/adoc/modules/flyway/pages/about.adoc
@@ -61,7 +61,7 @@ If you want your tests to check your Flyway scripts beforehand, there is nothing
 
 One point to be aware of though is that the DDL syntax may vary between an in-memory database (such as H2) and a typical production database (such as PostgreSQL or SQL Server).
 Luckily, Spring Boot's Flyway integration allows different variants of scripts for different vendors to be stored, in `+db.migration.{vendor}+` package (where `+{vendor}+` is as defined by the https://github.com/spring-projects/spring-boot/blob/v2.2.3.RELEASE/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/jdbc/DatabaseDriver.java[DatabaseDriver] class).
-The link:https://github.com/apache/isis-app-simpleapp[simpleapp starter app] also provides an example of this.
+The xref:starters:simpleapp:about.adoc[simpleapp starter app] also provides an example of this.
 
 
 === Custom schemas
diff --git a/legacy/testing/mavenplugin/src/main/doc/modules/mvn/pages/intro.adoc b/legacy/testing/mavenplugin/src/main/doc/modules/mvn/pages/intro.adoc
index 4f07956..0f71927 100644
--- a/legacy/testing/mavenplugin/src/main/doc/modules/mvn/pages/intro.adoc
+++ b/legacy/testing/mavenplugin/src/main/doc/modules/mvn/pages/intro.adoc
@@ -38,7 +38,7 @@ As noted in the introduction, all the goals require an xref:refguide:applib-cm:c
 This can be extremely minimal; it isn't necessary to use the main `AppManifest` (in the `app` module) used to bootstrap the application, you can instead use a cut-down one.
 This then allows the plugins to be run during the build of the `dom` module, rather than having to run in the context of the `integtest` module.
 
-For example, the link:https://github.com/apache/isis-app-simpleapp[SimpleApp]'s
+For example, the xref:starters:simpleapp:about.adoc[SimpleApp]'s
 manifest is:
 
 [source,java]
diff --git a/legacy/testing/mavenplugin/src/main/doc/modules/mvn/pages/validate.adoc b/legacy/testing/mavenplugin/src/main/doc/modules/mvn/pages/validate.adoc
index 66367e9..61b4b77 100644
--- a/legacy/testing/mavenplugin/src/main/doc/modules/mvn/pages/validate.adoc
+++ b/legacy/testing/mavenplugin/src/main/doc/modules/mvn/pages/validate.adoc
@@ -105,7 +105,7 @@ mvn test -Dskip.isis-validate
 
 == Example of failure
 
-In the link:https://github.com/apache/isis-app-simpleapp[SimpleApp] application the `SimpleObject` defines an `updateName` action.
+In the xref:starters:simpleapp:about.adoc[SimpleApp] application the `SimpleObject` defines an `updateName` action.
 This has a supporting method:
 
 
diff --git a/persistence/jdo/src/main/adoc/modules/ROOT/pages/configuring/disabling-persistence-by-reachability.adoc b/persistence/jdo/src/main/adoc/modules/ROOT/pages/configuring/disabling-persistence-by-reachability.adoc
index d21c4bb..f0eeaf7 100644
--- a/persistence/jdo/src/main/adoc/modules/ROOT/pages/configuring/disabling-persistence-by-reachability.adoc
+++ b/persistence/jdo/src/main/adoc/modules/ROOT/pages/configuring/disabling-persistence-by-reachability.adoc
@@ -26,7 +26,7 @@ We therefore recommend that you disable persistence-by-reachability by adding th
 isis.persistor.datanucleus.impl.datanucleus.persistenceByReachabilityAtCommit=false
 ----
 
-This change has been made to both the link:https://github.com/apache/isis-app-helloworld[HelloWorld] and link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter apps.
+This change has been made to both the xref:starters:helloworld:about.adoc[HelloWorld] and xref:starters:simpleapp:about.adoc[SimpleApp] starter apps.
 
 If you do disable this feature, then you will (of course) need to ensure that you explicitly persist all entities using the `RepositoryService#persist(.)` or `RepositoryService#persistAndFlush(.)` methods.
 
diff --git a/persistence/jdo/src/main/adoc/modules/ROOT/pages/configuring/persistence-xml.adoc b/persistence/jdo/src/main/adoc/modules/ROOT/pages/configuring/persistence-xml.adoc
index f553ea5..b584357 100644
--- a/persistence/jdo/src/main/adoc/modules/ROOT/pages/configuring/persistence-xml.adoc
+++ b/persistence/jdo/src/main/adoc/modules/ROOT/pages/configuring/persistence-xml.adoc
@@ -8,7 +8,7 @@ DataNucleus will for itself also and read the `META-INF/persistence.xml`.
 In theory it can hold mappings and even connection strings.
 However, with Apache Isis we tend to use annotations instead and externalize connection strings. so its definition is extremely simply, specifying just the name of the "persistence unit".
 
-Here's the one provided by the link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter app:
+Here's the one provided by the xref:starters:simpleapp:about.adoc[SimpleApp] starter app:
 
 [source,xml]
 ----
diff --git a/security/adoc/modules/ROOT/pages/about.adoc b/security/adoc/modules/ROOT/pages/about.adoc
index c42d4fa..cea5263 100644
--- a/security/adoc/modules/ROOT/pages/about.adoc
+++ b/security/adoc/modules/ROOT/pages/about.adoc
@@ -32,7 +32,7 @@ Shiro in turn uses the concept of a _realm_ as a source for both authentication
 WARNING: TODO: v2: Spring Boot requires that shiro.ini is on classpath, not in WEB-INF.
 
 Shiro ships with a simple text-based realm -- the `IniRealm` -- which reads users (and password), user roles and role permissions from the `WEB-INF/shiro.ini` file.
-The link:https://github.com/apache/isis-app-helloworld[HelloWorld] and link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter apps are both configured to use this realm.
+The xref:starters:helloworld:about.adoc[HelloWorld] and xref:starters:simpleapp:about.adoc[SimpleApp] starter apps are both configured to use this realm.
 
 Shiro also ships with an implementation of an LDAP-based realm; LDAP is often used to manage user/passwords and corresponding user groups.
 Apache Isis in turn extends this with its `IsisLdapRealm`, which provides more flexibility for both group/role and role/permissions management.
diff --git a/security/shiro/src/main/adoc/modules/shiro/pages/about/configuring-isis-to-use-shiro.adoc b/security/shiro/src/main/adoc/modules/shiro/pages/about/configuring-isis-to-use-shiro.adoc
index 657f186..cb383fd 100644
--- a/security/shiro/src/main/adoc/modules/shiro/pages/about/configuring-isis-to-use-shiro.adoc
+++ b/security/shiro/src/main/adoc/modules/shiro/pages/about/configuring-isis-to-use-shiro.adoc
@@ -9,7 +9,7 @@ The Shiro security mechanism is an integration wih Apache Shiro that implements
 
 [TIP]
 ====
-Both the link:https://github.com/apache/isis-app-helloworld[HelloWorld] and link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter apps are pre-configured to use Apache Shiro, so much of what follows may well have been set up already.
+Both the xref:starters:helloworld:about.adoc[HelloWorld] and xref:starters:simpleapp:about.adoc[SimpleApp] starter apps are pre-configured to use Apache Shiro, so much of what follows may well have been set up already.
 ====
 
 
@@ -17,7 +17,7 @@ Both the link:https://github.com/apache/isis-app-helloworld[HelloWorld] and link
 
 To tell Apache Isis to use Shiro when using an xref:refguide:applib-cm:rgcms.adoc#__rgcms_classes_AppManifest-bootstrapping_bootstrapping_AppManifestAbstract[`AppManifestAbstract.BUILDER`], simply specify the "authMechanism" as "shiro".
 
-For example, the link:https://github.com/apache/isis-app-helloworld[HelloWorld]  starter app bootstraps using:
+For example, the xref:starters:helloworld:about.adoc[HelloWorld]  starter app bootstraps using:
 
 // TODO: v2: this is out of date.
 
diff --git a/security/shiro/src/main/adoc/modules/shiro/pages/about/ini-realm.adoc b/security/shiro/src/main/adoc/modules/shiro/pages/about/ini-realm.adoc
index 0493fa7..54c8da2 100644
--- a/security/shiro/src/main/adoc/modules/shiro/pages/about/ini-realm.adoc
+++ b/security/shiro/src/main/adoc/modules/shiro/pages/about/ini-realm.adoc
@@ -10,7 +10,7 @@ Probably the simplest realm to use is Shiro's built-in `IniRealm`, which reads f
 
 This is suitable for prototyping, but isn't intended for production use, if only because user/password credentials are stored in plain text.
 Nevertheless, it's a good starting point.
-The app generated by both the link:https://github.com/apache/isis-app-helloworld[HelloWorld] and link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter apps are configured to use this realm.
+The app generated by both the xref:starters:helloworld:about.adoc[HelloWorld] and xref:starters:simpleapp:about.adoc[SimpleApp] starter apps are configured to use this realm.
 
 The diagram below shows the Isis and components involved:
 
diff --git a/testing/fixtures/adoc/modules/fixtures/pages/fixture-scripts/api-and-usage.adoc b/testing/fixtures/adoc/modules/fixtures/pages/fixture-scripts/api-and-usage.adoc
index 169caa6..0e910e6 100644
--- a/testing/fixtures/adoc/modules/fixtures/pages/fixture-scripts/api-and-usage.adoc
+++ b/testing/fixtures/adoc/modules/fixtures/pages/fixture-scripts/api-and-usage.adoc
@@ -18,7 +18,7 @@ This is annotated to be rendered on the secondary "Prototyping" menu.
 
 The behaviour of this domain menu service can be refined by providing an implementation of the optional xref:refguide:applib-svc:testing/FixtureScriptsSpecificationProvider.adoc[`FixtureScriptsSpecificationProvider`] SPI.
 
-For example, here's the `FixtureScriptsSpecificationProvider` service that's generated by the link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter apps:
+For example, here's the `FixtureScriptsSpecificationProvider` service that's generated by the xref:starters:simpleapp:about.adoc[SimpleApp] starter apps:
 
 [source,java]
 ----
@@ -69,7 +69,7 @@ If you had defined many fixture scripts then a drop-down might become unwieldy,
 
 ----
 
-You are free, of course, to add additional "convenience" actions into it if you wish for the most commonly used/demo'd setups ; you'll find that the link:https://github.com/apache/isis-app-simpleapp[SimpleApp archetype] adds this additional action:
+You are free, of course, to add additional "convenience" actions into it if you wish for the most commonly used/demo'd setups ; you'll find that the xref:starters:simpleapp:about.adoc[SimpleApp archetype] adds this additional action:
 
 [source,java]
 ----
@@ -95,7 +95,7 @@ However, we strongly recommend that you use it to invoke actions on business obj
 That way, the fixture script will remain valid even if the underlying implementation of the system changes in the future.
 
 For example, here's a fixture script called `RecreateSimpleObjects`.
-(This used to be part of the link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter app, though it now has a more sophisticated design, discussed below):
+(This used to be part of the xref:starters:simpleapp:about.adoc[SimpleApp] starter app, though it now has a more sophisticated design, discussed below):
 
 [source,java]
 ----
@@ -161,7 +161,7 @@ So, in this case, when the fixture script is executed we actually get 6 objects
 
 Fixture scripts can be called from integration tests just the same way that fixture scripts can call one another.
 
-For example, here's an integration test from the link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter app:
+For example, here's an integration test from the xref:starters:simpleapp:about.adoc[SimpleApp] starter app:
 
 // TODO: v2: this will be out of date, no doubt.
 
@@ -243,7 +243,7 @@ public interface PersonaWithFinder<T> {
 }
 ----
 
-The link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter app provides a sample implementation of these interfaces:
+The xref:starters:simpleapp:about.adoc[SimpleApp] starter app provides a sample implementation of these interfaces:
 
 [source,java]
 ----
diff --git a/viewers/restfulobjects/adoc/modules/ROOT/pages/layout-resources.adoc b/viewers/restfulobjects/adoc/modules/ROOT/pages/layout-resources.adoc
index 5ee4482..4af4243 100644
--- a/viewers/restfulobjects/adoc/modules/ROOT/pages/layout-resources.adoc
+++ b/viewers/restfulobjects/adoc/modules/ROOT/pages/layout-resources.adoc
@@ -12,7 +12,7 @@ This chapter provides details of these resources, the link ``Rel``s to access th
 
 The xref:refguide:applib-svc:presentation-layer-spi/MenuBarsService.adoc[`MenuBarsService`] provides the `menu.layout.xml` XML document which defines how to group the various domain service actions into menubars, menus and menu sections.
 
-For example, the link:https://github.com/apache/isis-app-helloworld[Hello World starter app] has the following layout:
+For example, the xref:starters:helloworld:about.adoc[Hello World starter app] has the following layout:
 
 [source,xml]
 ----
@@ -134,7 +134,7 @@ Note that because of dynamic icons (the xref:refguide:applib-cm:methods.adoc#ico
 The xref:refguide:applib-svc:presentation-layer-spi/GridService.adoc[`GridService`] provides an XML document which defines the layout of any of domain object.
 Typically this is the contents of the `Xxx.layout.xml` file (where `Xxx` is the domain type).
 
-For example, in the link:https://github.com/apache/isis-app-helloworld[Hello World starter app] the `HelloWorld` domain object has a layout defined by `HelloWorld.layout.xml`.
+For example, in the xref:starters:helloworld:about.adoc[Hello World starter app] the `HelloWorld` domain object has a layout defined by `HelloWorld.layout.xml`.
 
 The representation returned by the domain object resource (section 14.4 of the RO spec v1.0) has been extended to provide a link to this resource:
 
diff --git a/viewers/wicket/adoc/modules/ROOT/pages/layout/file-based.adoc b/viewers/wicket/adoc/modules/ROOT/pages/layout/file-based.adoc
index ee6580c..b2b3e1b 100644
--- a/viewers/wicket/adoc/modules/ROOT/pages/layout/file-based.adoc
+++ b/viewers/wicket/adoc/modules/ROOT/pages/layout/file-based.adoc
@@ -458,7 +458,7 @@ Ensure the following is defined in the dom project's `pom.xml`:
 </resources>
 ----
 
-If using an Apache Isis link:https://github.com/apache/isis-app-helloworld[HelloWorld] link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter app, then the POM is already correctly configured.
+If using an Apache Isis xref:starters:helloworld:about.adoc[HelloWorld] xref:starters:simpleapp:about.adoc[SimpleApp] starter app, then the POM is already correctly configured.
 
 
 
diff --git a/viewers/wicket/adoc/modules/ROOT/pages/menubars-layout/file-based.adoc b/viewers/wicket/adoc/modules/ROOT/pages/menubars-layout/file-based.adoc
index a2eedfe..61c33c6 100644
--- a/viewers/wicket/adoc/modules/ROOT/pages/menubars-layout/file-based.adoc
+++ b/viewers/wicket/adoc/modules/ROOT/pages/menubars-layout/file-based.adoc
@@ -37,7 +37,7 @@ image::/menubars/020-download.png[width="400px",link="{imagesdir}/menubars/020-d
 The "Default" layout is that currently in use, while the "Fallback" layout is that provided only from the annotations.
 Initially these are identical.
 
-For example, here's a fragment of that provided by the link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter app:
+For example, here's a fragment of that provided by the xref:starters:simpleapp:about.adoc[SimpleApp] starter app:
 
 [source,xml]
 ----


[isis] 09/09: ISIS-2062: docs

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

danhaywood pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git

commit 2fbfcbe26f68a824e5c85dbf9e1d53dd89c18f00
Author: danhaywood <da...@haywood-associates.co.uk>
AuthorDate: Fri Jan 31 19:21:01 2020 +0000

    ISIS-2062: docs
---
 antora/playbooks/site-persistence.yml                       |   2 +-
 antora/playbooks/site.yml                                   |   2 +-
 antora/toc/modules/ROOT/pages/about.adoc                    |   4 ----
 antora/toc/modules/ROOT/partials/module-nav.adoc            |   2 +-
 api/adoc/refguide/modules/ROOT/partials/module-nav.adoc     |   2 +-
 core/security/src/main/adoc/modules/core/pages/about.adoc   |   2 +-
 examples/demo/src/main/adoc/antora.yml                      |   2 +-
 examples/demo/src/main/adoc/modules/ROOT/nav.adoc           |   1 -
 extensions/adoc/modules/ROOT/partials/module-nav.adoc       |   3 ---
 extensions/core/flyway/adoc/modules/flyway/pages/about.adoc |   2 +-
 .../flyway/adoc/modules/flyway/partials/module-nav.adoc     |   2 +-
 incubator/adoc/modules/ROOT/partials/module-nav.adoc        |   1 -
 mappings/adoc/modules/ROOT/pages/about.adoc                 |   2 +-
 mappings/adoc/modules/ROOT/partials/module-nav.adoc         |   4 ----
 persistence/jdo/{src/main => }/adoc/antora.yml              |   2 +-
 .../ROOT/images/hints-n-tips/diagnosing-n-plus-1.png        | Bin
 .../party-agreementrole-agreement.png                       | Bin
 persistence/jdo/{src/main => }/adoc/modules/ROOT/nav.adoc   |   0
 .../jdo/{src/main => }/adoc/modules/ROOT/pages/about.adoc   |   0
 .../{src/main => }/adoc/modules/ROOT/pages/configuring.adoc |   0
 .../adoc/modules/ROOT/pages/configuring/bulk-load.adoc      |   0
 .../configuring/disabling-persistence-by-reachability.adoc  |   0
 .../modules/ROOT/pages/configuring/persistence-xml.adoc     |   0
 .../adoc/modules/ROOT/pages/configuring/properties.adoc     |   0
 .../ROOT/pages/configuring/using-jndi-data-source.adoc      |   0
 .../{src/main => }/adoc/modules/ROOT/pages/db-schemas.adoc  |   0
 .../main => }/adoc/modules/ROOT/pages/hints-and-tips.adoc   |   0
 .../ROOT/pages/hints-and-tips/diagnosing-n-plus-1.adoc      |   0
 .../adoc/modules/ROOT/pages/hints-and-tips/java8.adoc       |   0
 .../ROOT/pages/hints-and-tips/jdoql-and-timestamps.adoc     |   0
 .../pages/hints-and-tips/overriding-jdo-annotations.adoc    |   0
 .../hints-and-tips/subtype-entity-not-fully-populated.adoc  |   0
 .../hints-and-tips/typesafe-queries-and-fetchgroups.adoc    |   0
 .../main => }/adoc/modules/ROOT/pages/jdo-mappings.adoc     |   0
 .../jdo-mappings/mandatory-properties-in-subtypes.adoc      |   0
 .../modules/ROOT/pages/jdo-mappings/mapping-to-a-view.adoc  |   0
 .../jdo-mappings/one-to-m-bidirectional-relationships.adoc  |   0
 .../main => }/adoc/modules/ROOT/partials/component-nav.adoc |   0
 .../main => }/adoc/modules/ROOT/partials/module-nav.adoc    |   0
 security/adoc/modules/ROOT/partials/module-nav.adoc         |   1 -
 subdomains/adoc/modules/ROOT/partials/module-nav.adoc       |   4 ----
 valuetypes/adoc/modules/ROOT/partials/module-nav.adoc       |   7 -------
 .../asciidoc/adoc/modules/asciidoc/partials/module-nav.adoc |   2 +-
 .../markdown/adoc/modules/markdown/partials/module-nav.adoc |   2 +-
 valuetypes/sse/adoc/modules/sse/partials/module-nav.adoc    |   2 +-
 .../adoc/modules/ROOT/partials/component-nav.adoc           |   2 ++
 46 files changed, 15 insertions(+), 38 deletions(-)

diff --git a/antora/playbooks/site-persistence.yml b/antora/playbooks/site-persistence.yml
index 346a003..6516193 100644
--- a/antora/playbooks/site-persistence.yml
+++ b/antora/playbooks/site-persistence.yml
@@ -13,7 +13,7 @@ content:
 
 # persistence
     - url: .
-      start_path: persistence/jdo/src/main/adoc # pjdo
+      start_path: persistence/jdo/adoc # pjdo
       branches: HEAD
 
 
diff --git a/antora/playbooks/site.yml b/antora/playbooks/site.yml
index d5be963..3726fb8 100644
--- a/antora/playbooks/site.yml
+++ b/antora/playbooks/site.yml
@@ -150,7 +150,7 @@ content:
 
 # persistence
     - url: .
-      start_path: persistence/jdo/src/main/adoc # pjdo
+      start_path: persistence/jdo/adoc # pjdo
       branches: HEAD
 
 # security
diff --git a/antora/toc/modules/ROOT/pages/about.adoc b/antora/toc/modules/ROOT/pages/about.adoc
index 9357cf8..a95264c 100644
--- a/antora/toc/modules/ROOT/pages/about.adoc
+++ b/antora/toc/modules/ROOT/pages/about.adoc
@@ -24,10 +24,6 @@
 * xref:starters:helloworld:about.adoc[HelloWorld]
 * xref:starters:simpleapp:about.adoc[SimpleApp]
 
-_Resources_
-
-* xref:starters:parent-pom:about.adoc[Parent POM]
-* xref:starters:mavendeps:about.adoc[Maven Dependencies]
 
 |
 [discrete]
diff --git a/antora/toc/modules/ROOT/partials/module-nav.adoc b/antora/toc/modules/ROOT/partials/module-nav.adoc
index 4243913..09a717e 100644
--- a/antora/toc/modules/ROOT/partials/module-nav.adoc
+++ b/antora/toc/modules/ROOT/partials/module-nav.adoc
@@ -12,7 +12,7 @@
 
 ** Resources
 *** xref:starters:parent-pom:about.adoc[Parent POM]
-*** xref:starters:mavendeps:about.adoc[Maven Dependencies]
+*** xref:starters:mavendeps:about.adoc[Aggregator POMs]
 
 
 * Demos & Tutorials
diff --git a/api/adoc/refguide/modules/ROOT/partials/module-nav.adoc b/api/adoc/refguide/modules/ROOT/partials/module-nav.adoc
index 2c7695d..139597f 100644
--- a/api/adoc/refguide/modules/ROOT/partials/module-nav.adoc
+++ b/api/adoc/refguide/modules/ROOT/partials/module-nav.adoc
@@ -1,2 +1,2 @@
-* xref:refguide:ROOT:about.adoc[About the Reference Guides]
+
 
diff --git a/core/security/src/main/adoc/modules/core/pages/about.adoc b/core/security/src/main/adoc/modules/core/pages/about.adoc
index 037d060..76c316b 100644
--- a/core/security/src/main/adoc/modules/core/pages/about.adoc
+++ b/core/security/src/main/adoc/modules/core/pages/about.adoc
@@ -1,4 +1,4 @@
-= API
+= Security API
 :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. http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or ag [...]
 :page-partial:
 
diff --git a/examples/demo/src/main/adoc/antora.yml b/examples/demo/src/main/adoc/antora.yml
index ae6f4a2..9bff432 100644
--- a/examples/demo/src/main/adoc/antora.yml
+++ b/examples/demo/src/main/adoc/antora.yml
@@ -1,5 +1,5 @@
 name: demoapp
-title: "Tutorial App - Demo"
+title: "Demo App"
 version: master
 start_page: ROOT:about.adoc
 nav:
diff --git a/examples/demo/src/main/adoc/modules/ROOT/nav.adoc b/examples/demo/src/main/adoc/modules/ROOT/nav.adoc
index 2815342..8b13789 100644
--- a/examples/demo/src/main/adoc/modules/ROOT/nav.adoc
+++ b/examples/demo/src/main/adoc/modules/ROOT/nav.adoc
@@ -1,2 +1 @@
-* xref:about.adoc[About]
 
diff --git a/extensions/adoc/modules/ROOT/partials/module-nav.adoc b/extensions/adoc/modules/ROOT/partials/module-nav.adoc
index f6f714c..e69de29 100644
--- a/extensions/adoc/modules/ROOT/partials/module-nav.adoc
+++ b/extensions/adoc/modules/ROOT/partials/module-nav.adoc
@@ -1,3 +0,0 @@
-* xref:extensions:ROOT:about.adoc[About the Extensions]
-
-
diff --git a/extensions/core/flyway/adoc/modules/flyway/pages/about.adoc b/extensions/core/flyway/adoc/modules/flyway/pages/about.adoc
index 841b529..6d324cd 100644
--- a/extensions/core/flyway/adoc/modules/flyway/pages/about.adoc
+++ b/extensions/core/flyway/adoc/modules/flyway/pages/about.adoc
@@ -1,4 +1,4 @@
-= Flyway (Extension)
+= Flyway
 :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. http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or ag [...]
 
 This module provides an very thin layer to use Spring Boot's integration with https://flywaydb.org[Flyway]
diff --git a/extensions/core/flyway/adoc/modules/flyway/partials/module-nav.adoc b/extensions/core/flyway/adoc/modules/flyway/partials/module-nav.adoc
index 8dc6c56..051f3e1 100644
--- a/extensions/core/flyway/adoc/modules/flyway/partials/module-nav.adoc
+++ b/extensions/core/flyway/adoc/modules/flyway/partials/module-nav.adoc
@@ -1,3 +1,3 @@
-** xref:userguide:flyway:about.adoc[Flyway (Extension)]
+** xref:userguide:flyway:about.adoc[Flyway]
 
 
diff --git a/incubator/adoc/modules/ROOT/partials/module-nav.adoc b/incubator/adoc/modules/ROOT/partials/module-nav.adoc
index fbb165d..e69de29 100644
--- a/incubator/adoc/modules/ROOT/partials/module-nav.adoc
+++ b/incubator/adoc/modules/ROOT/partials/module-nav.adoc
@@ -1 +0,0 @@
-* xref:incubator:ROOT:about.adoc[About the Incubator]
diff --git a/mappings/adoc/modules/ROOT/pages/about.adoc b/mappings/adoc/modules/ROOT/pages/about.adoc
index a44aace..5c306be 100644
--- a/mappings/adoc/modules/ROOT/pages/about.adoc
+++ b/mappings/adoc/modules/ROOT/pages/about.adoc
@@ -1,4 +1,4 @@
-= Mappings Catalog
+= Bounded Contexts Mappings Catalog
 :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. http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or ag [...]
 :page-partial:
 
diff --git a/mappings/adoc/modules/ROOT/partials/module-nav.adoc b/mappings/adoc/modules/ROOT/partials/module-nav.adoc
index d19912f..e69de29 100644
--- a/mappings/adoc/modules/ROOT/partials/module-nav.adoc
+++ b/mappings/adoc/modules/ROOT/partials/module-nav.adoc
@@ -1,4 +0,0 @@
-* xref:mappings:ROOT:about.adoc[About the Bounded Context Mappings]
-
-
-
diff --git a/persistence/jdo/src/main/adoc/antora.yml b/persistence/jdo/adoc/antora.yml
similarity index 72%
rename from persistence/jdo/src/main/adoc/antora.yml
rename to persistence/jdo/adoc/antora.yml
index 55fd0a3..9de2b7c 100644
--- a/persistence/jdo/src/main/adoc/antora.yml
+++ b/persistence/jdo/adoc/antora.yml
@@ -1,5 +1,5 @@
 name: pjdo
-title: "DataNucleus ObjectStore"
+title: "JDO/DataNucleus"
 version: master
 start_page: ROOT:about.adoc
 nav:
diff --git a/persistence/jdo/src/main/adoc/modules/ROOT/images/hints-n-tips/diagnosing-n-plus-1.png b/persistence/jdo/adoc/modules/ROOT/images/hints-n-tips/diagnosing-n-plus-1.png
similarity index 100%
rename from persistence/jdo/src/main/adoc/modules/ROOT/images/hints-n-tips/diagnosing-n-plus-1.png
rename to persistence/jdo/adoc/modules/ROOT/images/hints-n-tips/diagnosing-n-plus-1.png
diff --git a/persistence/jdo/src/main/adoc/modules/ROOT/images/runtime/configuring-datanucleus/disabling-persistence-by-reachability/party-agreementrole-agreement.png b/persistence/jdo/adoc/modules/ROOT/images/runtime/configuring-datanucleus/disabling-persistence-by-reachability/party-agreementrole-agreement.png
similarity index 100%
rename from persistence/jdo/src/main/adoc/modules/ROOT/images/runtime/configuring-datanucleus/disabling-persistence-by-reachability/party-agreementrole-agreement.png
rename to persistence/jdo/adoc/modules/ROOT/images/runtime/configuring-datanucleus/disabling-persistence-by-reachability/party-agreementrole-agreement.png
diff --git a/persistence/jdo/src/main/adoc/modules/ROOT/nav.adoc b/persistence/jdo/adoc/modules/ROOT/nav.adoc
similarity index 100%
rename from persistence/jdo/src/main/adoc/modules/ROOT/nav.adoc
rename to persistence/jdo/adoc/modules/ROOT/nav.adoc
diff --git a/persistence/jdo/src/main/adoc/modules/ROOT/pages/about.adoc b/persistence/jdo/adoc/modules/ROOT/pages/about.adoc
similarity index 100%
rename from persistence/jdo/src/main/adoc/modules/ROOT/pages/about.adoc
rename to persistence/jdo/adoc/modules/ROOT/pages/about.adoc
diff --git a/persistence/jdo/src/main/adoc/modules/ROOT/pages/configuring.adoc b/persistence/jdo/adoc/modules/ROOT/pages/configuring.adoc
similarity index 100%
rename from persistence/jdo/src/main/adoc/modules/ROOT/pages/configuring.adoc
rename to persistence/jdo/adoc/modules/ROOT/pages/configuring.adoc
diff --git a/persistence/jdo/src/main/adoc/modules/ROOT/pages/configuring/bulk-load.adoc b/persistence/jdo/adoc/modules/ROOT/pages/configuring/bulk-load.adoc
similarity index 100%
rename from persistence/jdo/src/main/adoc/modules/ROOT/pages/configuring/bulk-load.adoc
rename to persistence/jdo/adoc/modules/ROOT/pages/configuring/bulk-load.adoc
diff --git a/persistence/jdo/src/main/adoc/modules/ROOT/pages/configuring/disabling-persistence-by-reachability.adoc b/persistence/jdo/adoc/modules/ROOT/pages/configuring/disabling-persistence-by-reachability.adoc
similarity index 100%
rename from persistence/jdo/src/main/adoc/modules/ROOT/pages/configuring/disabling-persistence-by-reachability.adoc
rename to persistence/jdo/adoc/modules/ROOT/pages/configuring/disabling-persistence-by-reachability.adoc
diff --git a/persistence/jdo/src/main/adoc/modules/ROOT/pages/configuring/persistence-xml.adoc b/persistence/jdo/adoc/modules/ROOT/pages/configuring/persistence-xml.adoc
similarity index 100%
rename from persistence/jdo/src/main/adoc/modules/ROOT/pages/configuring/persistence-xml.adoc
rename to persistence/jdo/adoc/modules/ROOT/pages/configuring/persistence-xml.adoc
diff --git a/persistence/jdo/src/main/adoc/modules/ROOT/pages/configuring/properties.adoc b/persistence/jdo/adoc/modules/ROOT/pages/configuring/properties.adoc
similarity index 100%
rename from persistence/jdo/src/main/adoc/modules/ROOT/pages/configuring/properties.adoc
rename to persistence/jdo/adoc/modules/ROOT/pages/configuring/properties.adoc
diff --git a/persistence/jdo/src/main/adoc/modules/ROOT/pages/configuring/using-jndi-data-source.adoc b/persistence/jdo/adoc/modules/ROOT/pages/configuring/using-jndi-data-source.adoc
similarity index 100%
rename from persistence/jdo/src/main/adoc/modules/ROOT/pages/configuring/using-jndi-data-source.adoc
rename to persistence/jdo/adoc/modules/ROOT/pages/configuring/using-jndi-data-source.adoc
diff --git a/persistence/jdo/src/main/adoc/modules/ROOT/pages/db-schemas.adoc b/persistence/jdo/adoc/modules/ROOT/pages/db-schemas.adoc
similarity index 100%
rename from persistence/jdo/src/main/adoc/modules/ROOT/pages/db-schemas.adoc
rename to persistence/jdo/adoc/modules/ROOT/pages/db-schemas.adoc
diff --git a/persistence/jdo/src/main/adoc/modules/ROOT/pages/hints-and-tips.adoc b/persistence/jdo/adoc/modules/ROOT/pages/hints-and-tips.adoc
similarity index 100%
rename from persistence/jdo/src/main/adoc/modules/ROOT/pages/hints-and-tips.adoc
rename to persistence/jdo/adoc/modules/ROOT/pages/hints-and-tips.adoc
diff --git a/persistence/jdo/src/main/adoc/modules/ROOT/pages/hints-and-tips/diagnosing-n-plus-1.adoc b/persistence/jdo/adoc/modules/ROOT/pages/hints-and-tips/diagnosing-n-plus-1.adoc
similarity index 100%
rename from persistence/jdo/src/main/adoc/modules/ROOT/pages/hints-and-tips/diagnosing-n-plus-1.adoc
rename to persistence/jdo/adoc/modules/ROOT/pages/hints-and-tips/diagnosing-n-plus-1.adoc
diff --git a/persistence/jdo/src/main/adoc/modules/ROOT/pages/hints-and-tips/java8.adoc b/persistence/jdo/adoc/modules/ROOT/pages/hints-and-tips/java8.adoc
similarity index 100%
rename from persistence/jdo/src/main/adoc/modules/ROOT/pages/hints-and-tips/java8.adoc
rename to persistence/jdo/adoc/modules/ROOT/pages/hints-and-tips/java8.adoc
diff --git a/persistence/jdo/src/main/adoc/modules/ROOT/pages/hints-and-tips/jdoql-and-timestamps.adoc b/persistence/jdo/adoc/modules/ROOT/pages/hints-and-tips/jdoql-and-timestamps.adoc
similarity index 100%
rename from persistence/jdo/src/main/adoc/modules/ROOT/pages/hints-and-tips/jdoql-and-timestamps.adoc
rename to persistence/jdo/adoc/modules/ROOT/pages/hints-and-tips/jdoql-and-timestamps.adoc
diff --git a/persistence/jdo/src/main/adoc/modules/ROOT/pages/hints-and-tips/overriding-jdo-annotations.adoc b/persistence/jdo/adoc/modules/ROOT/pages/hints-and-tips/overriding-jdo-annotations.adoc
similarity index 100%
rename from persistence/jdo/src/main/adoc/modules/ROOT/pages/hints-and-tips/overriding-jdo-annotations.adoc
rename to persistence/jdo/adoc/modules/ROOT/pages/hints-and-tips/overriding-jdo-annotations.adoc
diff --git a/persistence/jdo/src/main/adoc/modules/ROOT/pages/hints-and-tips/subtype-entity-not-fully-populated.adoc b/persistence/jdo/adoc/modules/ROOT/pages/hints-and-tips/subtype-entity-not-fully-populated.adoc
similarity index 100%
rename from persistence/jdo/src/main/adoc/modules/ROOT/pages/hints-and-tips/subtype-entity-not-fully-populated.adoc
rename to persistence/jdo/adoc/modules/ROOT/pages/hints-and-tips/subtype-entity-not-fully-populated.adoc
diff --git a/persistence/jdo/src/main/adoc/modules/ROOT/pages/hints-and-tips/typesafe-queries-and-fetchgroups.adoc b/persistence/jdo/adoc/modules/ROOT/pages/hints-and-tips/typesafe-queries-and-fetchgroups.adoc
similarity index 100%
rename from persistence/jdo/src/main/adoc/modules/ROOT/pages/hints-and-tips/typesafe-queries-and-fetchgroups.adoc
rename to persistence/jdo/adoc/modules/ROOT/pages/hints-and-tips/typesafe-queries-and-fetchgroups.adoc
diff --git a/persistence/jdo/src/main/adoc/modules/ROOT/pages/jdo-mappings.adoc b/persistence/jdo/adoc/modules/ROOT/pages/jdo-mappings.adoc
similarity index 100%
rename from persistence/jdo/src/main/adoc/modules/ROOT/pages/jdo-mappings.adoc
rename to persistence/jdo/adoc/modules/ROOT/pages/jdo-mappings.adoc
diff --git a/persistence/jdo/src/main/adoc/modules/ROOT/pages/jdo-mappings/mandatory-properties-in-subtypes.adoc b/persistence/jdo/adoc/modules/ROOT/pages/jdo-mappings/mandatory-properties-in-subtypes.adoc
similarity index 100%
rename from persistence/jdo/src/main/adoc/modules/ROOT/pages/jdo-mappings/mandatory-properties-in-subtypes.adoc
rename to persistence/jdo/adoc/modules/ROOT/pages/jdo-mappings/mandatory-properties-in-subtypes.adoc
diff --git a/persistence/jdo/src/main/adoc/modules/ROOT/pages/jdo-mappings/mapping-to-a-view.adoc b/persistence/jdo/adoc/modules/ROOT/pages/jdo-mappings/mapping-to-a-view.adoc
similarity index 100%
rename from persistence/jdo/src/main/adoc/modules/ROOT/pages/jdo-mappings/mapping-to-a-view.adoc
rename to persistence/jdo/adoc/modules/ROOT/pages/jdo-mappings/mapping-to-a-view.adoc
diff --git a/persistence/jdo/src/main/adoc/modules/ROOT/pages/jdo-mappings/one-to-m-bidirectional-relationships.adoc b/persistence/jdo/adoc/modules/ROOT/pages/jdo-mappings/one-to-m-bidirectional-relationships.adoc
similarity index 100%
rename from persistence/jdo/src/main/adoc/modules/ROOT/pages/jdo-mappings/one-to-m-bidirectional-relationships.adoc
rename to persistence/jdo/adoc/modules/ROOT/pages/jdo-mappings/one-to-m-bidirectional-relationships.adoc
diff --git a/persistence/jdo/src/main/adoc/modules/ROOT/partials/component-nav.adoc b/persistence/jdo/adoc/modules/ROOT/partials/component-nav.adoc
similarity index 100%
rename from persistence/jdo/src/main/adoc/modules/ROOT/partials/component-nav.adoc
rename to persistence/jdo/adoc/modules/ROOT/partials/component-nav.adoc
diff --git a/persistence/jdo/src/main/adoc/modules/ROOT/partials/module-nav.adoc b/persistence/jdo/adoc/modules/ROOT/partials/module-nav.adoc
similarity index 100%
rename from persistence/jdo/src/main/adoc/modules/ROOT/partials/module-nav.adoc
rename to persistence/jdo/adoc/modules/ROOT/partials/module-nav.adoc
diff --git a/security/adoc/modules/ROOT/partials/module-nav.adoc b/security/adoc/modules/ROOT/partials/module-nav.adoc
index 8b24a54..ce18fa5 100644
--- a/security/adoc/modules/ROOT/partials/module-nav.adoc
+++ b/security/adoc/modules/ROOT/partials/module-nav.adoc
@@ -1,4 +1,3 @@
-* xref:security:ROOT:about.adoc[About the Security Guide]
 
 * xref:security:ROOT:domain-services-api-for-applications.adoc[Domain Services API]
 
diff --git a/subdomains/adoc/modules/ROOT/partials/module-nav.adoc b/subdomains/adoc/modules/ROOT/partials/module-nav.adoc
index de6dadf..e69de29 100644
--- a/subdomains/adoc/modules/ROOT/partials/module-nav.adoc
+++ b/subdomains/adoc/modules/ROOT/partials/module-nav.adoc
@@ -1,4 +0,0 @@
-* xref:incubator:ROOT:about.adoc[About the Subdomains]
-
-
-
diff --git a/valuetypes/adoc/modules/ROOT/partials/module-nav.adoc b/valuetypes/adoc/modules/ROOT/partials/module-nav.adoc
index b3cef64..e69de29 100644
--- a/valuetypes/adoc/modules/ROOT/partials/module-nav.adoc
+++ b/valuetypes/adoc/modules/ROOT/partials/module-nav.adoc
@@ -1,7 +0,0 @@
-* xref:incubator:ROOT:about.adoc[About the Value Types Catalog]
-
-
-
-
-
-
diff --git a/valuetypes/asciidoc/adoc/modules/asciidoc/partials/module-nav.adoc b/valuetypes/asciidoc/adoc/modules/asciidoc/partials/module-nav.adoc
index 298790f..04e713c 100644
--- a/valuetypes/asciidoc/adoc/modules/asciidoc/partials/module-nav.adoc
+++ b/valuetypes/asciidoc/adoc/modules/asciidoc/partials/module-nav.adoc
@@ -1,2 +1,2 @@
-* xref:vw:asciidoc:about.adoc[Asciidoc value type (extension)]
+* xref:vw:asciidoc:about.adoc[Asciidoc]
 
diff --git a/valuetypes/markdown/adoc/modules/markdown/partials/module-nav.adoc b/valuetypes/markdown/adoc/modules/markdown/partials/module-nav.adoc
index afc7d23..a866512 100644
--- a/valuetypes/markdown/adoc/modules/markdown/partials/module-nav.adoc
+++ b/valuetypes/markdown/adoc/modules/markdown/partials/module-nav.adoc
@@ -1,2 +1,2 @@
-* xref:vw:markdown:about.adoc[Markdown value type (extension)]
+* xref:vw:markdown:about.adoc[Markdown]
 
diff --git a/valuetypes/sse/adoc/modules/sse/partials/module-nav.adoc b/valuetypes/sse/adoc/modules/sse/partials/module-nav.adoc
index 2f3a6aa..36195d4 100644
--- a/valuetypes/sse/adoc/modules/sse/partials/module-nav.adoc
+++ b/valuetypes/sse/adoc/modules/sse/partials/module-nav.adoc
@@ -1,2 +1,2 @@
-* xref:vw:sse:about.adoc[SSE (Extension)]
+* xref:vw:sse:about.adoc[SSE]
 
diff --git a/viewers/restfulobjects/adoc/modules/ROOT/partials/component-nav.adoc b/viewers/restfulobjects/adoc/modules/ROOT/partials/component-nav.adoc
index f14d3c8..39c7a3a 100644
--- a/viewers/restfulobjects/adoc/modules/ROOT/partials/component-nav.adoc
+++ b/viewers/restfulobjects/adoc/modules/ROOT/partials/component-nav.adoc
@@ -1,2 +1,4 @@
+include::vro:ROOT:partial$module-nav.adoc[]
+
 * Extensions
 include::vro:cors:partial$module-nav.adoc[]


[isis] 03/09: ISIS-2062: cleans up some of the toc docs

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

danhaywood pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git

commit a06f27a1a5e247712413130c2d47114d384bbcc4
Author: danhaywood <da...@haywood-associates.co.uk>
AuthorDate: Fri Jan 31 16:51:52 2020 +0000

    ISIS-2062: cleans up some of the toc docs
---
 antora/toc/modules/ROOT/pages/about.adoc           |  2 +-
 .../what-is-apache-isis/common-use-cases.adoc      | 18 ++--
 .../what-is-apache-isis/isis-in-pictures.adoc      | 78 ++----------------
 .../ROOT/pages/what-is-apache-isis/powered-by.adoc |  6 +-
 .../what-is-apache-isis/powered-by/commapp.adoc    | 22 ++---
 .../what-is-apache-isis/powered-by/contactapp.adoc | 19 ++---
 .../pages/what-is-apache-isis/powered-by/cqnz.adoc |  5 +-
 .../what-is-apache-isis/powered-by/estatio.adoc    |  9 +-
 .../powered-by/gesconsultor-grc.adoc               |  1 +
 .../powered-by/transport-planner.adoc              | 30 +++----
 .../pages/what-is-apache-isis/screencasts.adoc     | 83 ++++++++++---------
 antora/toc/modules/ROOT/partials/module-nav.adoc   |  2 +-
 .../modules/comguide/pages/cutting-a-release.adoc  |  6 +-
 .../release-process-for-interim-releases.adoc      |  5 --
 .../src/main/adoc/modules/ROOT/pages/about.adoc    | 95 ++++++++++++++--------
 15 files changed, 164 insertions(+), 217 deletions(-)

diff --git a/antora/toc/modules/ROOT/pages/about.adoc b/antora/toc/modules/ROOT/pages/about.adoc
index 0db1dd1..971b5df 100644
--- a/antora/toc/modules/ROOT/pages/about.adoc
+++ b/antora/toc/modules/ROOT/pages/about.adoc
@@ -15,7 +15,7 @@
 * xref:what-is-apache-isis/common-use-cases.adoc[Common Use Cases]
 
 * xref:what-is-apache-isis/screencasts.adoc[Screencasts]
-* xref:what-is-apache-isis/powered-by.adoc[Powered By]
+// * xref:what-is-apache-isis/powered-by.adoc[Powered By]
 
 |
 [discrete]
diff --git a/antora/toc/modules/ROOT/pages/what-is-apache-isis/common-use-cases.adoc b/antora/toc/modules/ROOT/pages/what-is-apache-isis/common-use-cases.adoc
index e54020d..603f9e1 100644
--- a/antora/toc/modules/ROOT/pages/what-is-apache-isis/common-use-cases.adoc
+++ b/antora/toc/modules/ROOT/pages/what-is-apache-isis/common-use-cases.adoc
@@ -8,32 +8,30 @@
 
 Apache Isis is great for rapid prototyping, because all you need to write in order to get an application up-and-running is the domain model objects.
 
-By focussing just on the domain, you'll also find that you start to develop a ubiquitous language - a set of terms and concepts that the entire team (business and technologists alike) have a shared understanding.
-
-Once you've sketched out your domain model, you can then either start-over using your preferred framework, or you might choose to take the domain model forward into more formal specification and testing.
-
+By focusing just on the domain, you'll also find that you start to develop a ubiquitous language - a set of terms and concepts that the entire team (business and technologists alike) have a shared understanding.
 
+If you wish, you could combine this with BDD - the framework integrates with xref:testing:specsupport:about.adoc[Cucumber].
 
+Once you've sketched out your domain model, you can then either start-over using your preferred framework, or you might choose to take the domain model forward into more formal specification and testing.
 
 
-== Deploy as an human-usable webapp
+== Deploy with a generic UI
 
 One of the original motivations for Apache Isis itself was to be able automatically generate a user interface for a domain object model.
 
 Apache Isis' has a pluggable architecture allowing different user interface technologies.
- The principal implementation (as configured by the link:https://github.com/apache/isis-app-simpleapp[SimpleApp archetype]) is the xref:vw:ROOT:about.adoc[Wicket viewer].
-  This provides an appealing default user interface, with the ability to customize the user interface by writing new http://wicket.apache.org[Apache Wicket] components.
-Some third-party components can be found in the (non-ASF) link:https://platform.incode.org[Incode Platform^].
+ The principal implementation is the xref:vw:ROOT:about.adoc[Wicket viewer].
 
+This provides an appealing default user interface, with the ability to customize the user interface by writing new http://wicket.apache.org[Apache Wicket] components.
 
 Deploying on Apache Isis means that the framework also manages object persistence.
 Again this is pluggable, but the principal implementation is the JDO/DataNucleus objectstore.
-Because JDO supports both SQL and NoSQL databases, you can then deploy on a variety of platforms, including the link:https://developers.google.com/appengine/[Google App Engine (GAE)] and link:http://neo4j.com/[Neo4J].
+Because JDO supports both SQL and NoSQL databases, you can then deploy on a variety of platforms, normally relational but also databases such as link:http://neo4j.com/[Neo4J].
 
 
 
 
-== Deploy as a RESTful web service
+== Deploy as a REST API
 
 REST (Representation State Transfer) is an architectural style for building highly scalable distributed systems, using the same principles as the World Wide Web.
 Many commercial web APIs (twitter, facebook, Amazon) are implemented as either pure REST APIs or some approximation therein.
diff --git a/antora/toc/modules/ROOT/pages/what-is-apache-isis/isis-in-pictures.adoc b/antora/toc/modules/ROOT/pages/what-is-apache-isis/isis-in-pictures.adoc
index 9947cd5..6701ab4 100644
--- a/antora/toc/modules/ROOT/pages/what-is-apache-isis/isis-in-pictures.adoc
+++ b/antora/toc/modules/ROOT/pages/what-is-apache-isis/isis-in-pictures.adoc
@@ -1,24 +1,13 @@
-[[isis-in-pictures]]
 = Apache Isis in Pictures
 :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. http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or ag [...]
 
+// TODO: v2: NICE-TO-HAVE: these screenshots should be updated, but first need to port the todoapp over first (which also means the various modules from incode-platform)
 
+On this page we want to show you what an Apache Isis application looks like, running on the xref:vw:ROOT:about.adoc[Wicket viewer].
+The screenshots below are taken from a "Todo" application.
 
-WARNING: TODO: v2 - this material out of date, to be updated (need to migrate much of incode-platform, and port of isis-app-todoapp to github/apache/isis-app-todoapp)
-
-On this page we want to show you what a modern Apache Isis application looks like.
-
-The screenshots below are taken from the Isis Addons' http://github.com/isisaddons/isis-app-todoapp[todoapp example] (non ASF), which you are free to fork and use as you will.
-The corresponding domain classes from which this UI was built can be found https://github.com/isisaddons/isis-app-todoapp/tree/master/dom/src/main/java/todoapp/dom/todoitem[here].
-
-The todoapp also integrates with a number of other modules from the (non-ASF) link:https://platform.incode.org[Incode Platform^].
-Because we expect that most apps will end up using one or more of these modules, we've chosen to include screenshots of those too.
-
-[NOTE]
-====
-These screenshots based on Apache Isis 1.13.x.
-====
-
+NOTE: these screenshots are based on an app running against v1.13  and v1.10 of the framework.
+There have since been a number of UI improvements since these releases.
 
 == Basics
 
@@ -33,8 +22,6 @@ The core framework supports file-based realms, while the xref:security:ROOT:abou
 
 image::what-is-apache-isis/isis-in-pictures/010-login.png[width="800px",link="{imagesdir}/what-is-apache-isis/isis-in-pictures/010-login.png"]
 
-
-
 === Install Fixtures
 
 Apache Isis has lots of features to help you prototype and then fully test your application.
@@ -45,8 +32,6 @@ This is great to act as the starting point for identifying new stories; later on
 
 image::what-is-apache-isis/isis-in-pictures/020-install-fixtures.png[width="800px",link="{imagesdir}/what-is-apache-isis/isis-in-pictures/020-install-fixtures.png"]
 
-
-
 === Dashboard and View Models
 
 Most of the time the end-user interacts with representations of persistent domain entities, but Apache Isis also supports view models which can aggregate data from multiple sources.
@@ -57,9 +42,6 @@ image::what-is-apache-isis/isis-in-pictures/030-dashboard-view-model.png[width="
 In general we recommend to initially focus only on domain entities; this will help drive out a good domain model.
 Later on view models can be introduced in support of specific use cases.
 
-
-
-
 === Domain Entity
 
 The screenshot below is of the todoapp's `ToDoItem` domain entity.
@@ -76,9 +58,6 @@ The benefit of the latter is that it can be updated (and the UI redrawn) without
 
 Any production-ready app will require this metadata but (like the view models discussed above) this metadata can be added gradually on top of the core domain model.
 
-
-
-
 === Edit properties
 
 By default properties on domain entities are editable, meaning they can be changed directly.
@@ -90,9 +69,6 @@ image::what-is-apache-isis/isis-in-pictures/050-edit-property.png[width="800px",
 Note that some of the properties are read-only even in edit mode; individual properties can be made non-editable.
 It is also possible to make all properties disabled and thus enforce changes only through actions (below).
 
-
-
-
 === Actions
 
 The other way to modify an entity is to an invoke an action.
@@ -107,9 +83,6 @@ Or, it might not update any objects at all, but could instead perform some other
 In general though, all actions are associated with some object, and are (at least initially) also implemented by that object: good old-fashioned encapsulation.
 We sometimes use the term "behaviourally complete" for such domain objects.
 
-
-
-
 === Mixins
 
 As an alternative to placing actions (business logic) on a domain object, it can instead be placed inside a mixin object.
@@ -119,13 +92,8 @@ In the screenshot below the highlighted "export as xml" action, the "relative pr
 
 image::what-is-apache-isis/isis-in-pictures/065-contributions.png[width="800px",link="{imagesdir}/what-is-apache-isis/isis-in-pictures/065-contributions.png"]
 
-
 == Extensible Views
 
-[NOTE]
-====
-The remaining screenshots on this page are for v1.10.0 of the framework, which precedes the support for tabbed views introduced in v1.12.0.
-====
 
 The Apache Isis viewer is implemented using http://wicket.apache.org[Apache Wicket], and has been designed to be extensible.
 For example, when a collection of objects is rendered, this is just one of several views, as shown in the selector drop-down:
@@ -149,8 +117,7 @@ image::what-is-apache-isis/isis-in-pictures/090-fullcalendar2-view.png[width="80
 
 
 
-Yet another "view" (though this one is rather simpler) is that provided by the (non-ASF) link:https://platform.incode.org[Incode Platform^]'s excel Wicket component
-This provides a download button to the table as a spreadsheet:
+Yet another "view" (though this one is rather simpler) is that provided by the (non-ASF) link:https://platform.incode.org[Incode Platform^]'s excel Wicket component This provides a download button to the table as a spreadsheet:
 
 image::what-is-apache-isis/isis-in-pictures/100-excel-view-and-docx.png[width="800px",link="{imagesdir}/what-is-apache-isis/isis-in-pictures/100-excel-view-and-docx.png"]
 
@@ -163,26 +130,15 @@ This is _not_ a view but instead is a (contributed) action that uses the (non-AS
 image::what-is-apache-isis/isis-in-pictures/110-docx.png[width="800px",link="{imagesdir}/what-is-apache-isis/isis-in-pictures/110-docx.png"]
 
 
-
-
-[NOTE]
-====
-Please note that the Isis Addons are not part of ASF, but they _are_ all licensed under Apache License 2.0 and are maintained by the Apache Isis committers.
-====
-
-
-
-
 == Security, Auditing and more...
 
 As well as providing extensions to the UI, the (non ASF) Isis Addons provide a rich set of modules to support various cross-cutting concerns.
 
-Under the activity menu are four sets of services which provide support for (non-ASF) link:https://platform.incode.org[Incode Platform^]'s sessionlogger module (for user session logging/auditing) , command module (audit/profiling), audit module (audit object changes) (shown) and (inter-system) event publishing:
+Under the activity menu are four sets of services which provide support on user session logging/auditing, command module (profiling and replay), audit module (audit object changes) and (inter-system) event publishing:
 
 image::what-is-apache-isis/isis-in-pictures/120-auditing.png[width="800px",link="{imagesdir}/what-is-apache-isis/isis-in-pictures/120-auditing.png"]
 
 
-
 In the security menu is access to the rich set of functionality provided by the xref:security:ROOT:about.adoc[SecMan extension]:
 
 image::what-is-apache-isis/isis-in-pictures/130-security.png[width="800px",link="{imagesdir}/what-is-apache-isis/isis-in-pictures/130-security.png"]
@@ -204,9 +160,6 @@ Most apps (the todoapp example included) won't expose these services directly, b
 
 image::what-is-apache-isis/isis-in-pictures/150-appsettings.png[width="800px",link="{imagesdir}/what-is-apache-isis/isis-in-pictures/150-appsettings.png"]
 
-
-
-
 === Multi-tenancy support
 
 One significant feature of the xref:security:ROOT:about.adoc[SecMan extension] is the ability to associate users and objects with a "tenancy".
@@ -219,7 +172,6 @@ image::what-is-apache-isis/isis-in-pictures/160-switch-tenancy.png[width="800px"
 
 For more details, see the xref:security:ROOT:about.adoc[SecMan extension].
 
-
 === Me
 
 Most of the xref:security:ROOT:about.adoc[SecMan extension]'s services are on the security menu, which would normally be provided only to administrators.
@@ -238,7 +190,6 @@ image::what-is-apache-isis/isis-in-pictures/180-app-user-entity.png[width="800px
 If not all of these properties are required, then they can be hidden either using security or though Apache Isis' internal event bus (described below).
 Conversely, additional properties can be "grafted onto" the user using the contributed properties/collections discussed previously.
 
-
 === Themes
 
 Apache Isis' Wicket viewer uses http://getbootstrap.com[Twitter Bootstrap], which means that it can be themed.
@@ -246,9 +197,6 @@ If more than one theme has been configured for the app, then the viewer allows t
 
 image::what-is-apache-isis/isis-in-pictures/190-switch-theme.png[width="800px",link="{imagesdir}/what-is-apache-isis/isis-in-pictures/190-switch-theme.png"]
 
-
-
-
 == REST API
 
 In addition to Apache Isis' Wicket viewer, it also provides a rich REST API with a full set of hypermedia controls, generated automatically from the domain objects (entities and view models).
@@ -266,13 +214,6 @@ From this spec REST clients can be code-generated; it also allows developers to
 
 image::what-is-apache-isis/isis-in-pictures/205-swagger-ui.png[width="800px",link="{imagesdir}/what-is-apache-isis/isis-in-pictures/205-swagger-ui.png"]
 
-
-
-
-
-
-
-
 == Integration Testing Support
 
 Earlier on we noted that Apache Isis allows fixtures to be installed through the UI.
@@ -296,11 +237,6 @@ The wrapper simulates this by throwing an appropriate exception:
 
 image::what-is-apache-isis/isis-in-pictures/230-testing-wrapper-factory.png[width="550px",link="{imagesdir}/what-is-apache-isis/isis-in-pictures/230-testing-wrapper-factory.png"]
 
-
-
-
-
-
 == Internal Event Bus
 
 Contributions, discussed earlier, are an important tool in ensuring that the packages within your Apache Isis application are decoupled; by extracting out actions the order of dependency between packages can effectively be reversed.
diff --git a/antora/toc/modules/ROOT/pages/what-is-apache-isis/powered-by.adoc b/antora/toc/modules/ROOT/pages/what-is-apache-isis/powered-by.adoc
index 529139f..a27db8c 100644
--- a/antora/toc/modules/ROOT/pages/what-is-apache-isis/powered-by.adoc
+++ b/antora/toc/modules/ROOT/pages/what-is-apache-isis/powered-by.adoc
@@ -1,12 +1,11 @@
-[[powered-by]]
 = Powered By
 :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. http://www.apache.org/licenses/license-2.0 . unless required by applicable law or ag [...]
 
 
+// TODO: V2: need to update these, they are getting stale.
 
 
-Deciding whether to use a full stack framework such as Apache Isis means in large part determining to what extent the
-applications you need to develop align with the strengths and philosophy of the framework.
+Deciding whether to use a full stack framework such as Apache Isis means in large part determining to what extent the applications you need to develop align with the strengths and philosophy of the framework.
 This page catalogues a few notable applications that are powered by Apache Isis so you can help make that determination.
 
 [TIP]
@@ -14,7 +13,6 @@ This page catalogues a few notable applications that are powered by Apache Isis
 If you have written an app in Apache Isis that you'd like to share, please mention it on the xref:toc:ROOT:support.adoc#[mailing list].
 ====
 
-
 include::powered-by/estatio.adoc[leveloffset=+1]
 include::powered-by/gesconsultor-grc.adoc[leveloffset=+1]
 include::powered-by/contactapp.adoc[leveloffset=+1]
diff --git a/antora/toc/modules/ROOT/pages/what-is-apache-isis/powered-by/commapp.adoc b/antora/toc/modules/ROOT/pages/what-is-apache-isis/powered-by/commapp.adoc
index 021afd8..61c80e1 100644
--- a/antora/toc/modules/ROOT/pages/what-is-apache-isis/powered-by/commapp.adoc
+++ b/antora/toc/modules/ROOT/pages/what-is-apache-isis/powered-by/commapp.adoc
@@ -1,34 +1,28 @@
 = CommApp
 :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. http://www.apache.org/licenses/license-2.0 . unless required by applicable law or ag [...]
-:page-partial:
+:page-partial:r
 
+// TODO: V2: need to update these, they are getting stale.
 
-CommApp is an application whose domain is that of managing businesses themselves, specifically the commercial aspects
-of a business.  You can get a feel for it from this screenshot:
+CommApp is an application whose domain is that of managing businesses themselves, specifically the commercial aspects of a business.
+You can get a feel for it from this screenshot:
 
 image::powered-by/commapp/screenshot-1.png[width="900px",link="{imagesdir}/powered-by/commapp/screenshot-1.png"]
 
-which shows how the app integrates a number of the (non-ASF) link:https://platform.incode.org[Incode Platform^] components
-(excel, fullcalendar2, gmap3 and wickedcharts).
-
+which shows how the app integrates a number of the (non-ASF) link:https://platform.incode.org[Incode Platform^] components (excel, fullcalendar2, gmap3 and wickedcharts).
 
 == Why Apache Isis?
 
 When making our decision towards a software development framework, we evaluated some few like Spring Framework and Oracle ADF, including a newer semantic framework.
 At that point we faced we needed to choose between being locked in to a framework using many of their proprietary classes, methods and other features, or having to write a lot of code even to get things as CURD operations, and we would be facing significant differences in the code if using relational databases or the newer so called NonSQL databases.
 
-So we added Apache Isis to our evaluation, and we found it to be open in many aspects, including an open architecture and auto-generated UI viewer, as well as equally open and auto-generated REST/SOA web services, seamlessly support both SQL and NoSQL through an open and standard http://datanucleus.org[persistence manager], as well as open security
-(http://shiro.apache.org[Apache Shiro], LDAP) and features such as multi-tenancy.
+So we added Apache Isis to our evaluation, and we found it to be open in many aspects, including an open architecture and auto-generated UI viewer, as well as equally open and auto-generated REST/SOA web services, seamlessly support both SQL and NoSQL through an open and standard http://datanucleus.org[persistence manager], as well as open security (http://shiro.apache.org[Apache Shiro], LDAP) and features such as multi-tenancy.
 
 Our main focus in the code is given to the business domain, with business logic treated as a first class citizen.
 And because our code simply uses non-proprietary Java, we've been able to extend it the normal way.
-Very little code in our application so far can be considered to be framework-specific, the few that is only because we chose to use some
-of the (non-ASF) link:https://platform.incode.org[Incode Platform^] modules that provide our applications with high value, and which are
-open source also.
+Very little code in our application so far can be considered to be framework-specific, the few that is only because we chose to use some of the (non-ASF) link:https://platform.incode.org[Incode Platform^] modules that provide our applications with high value, and which are open source also.
 
-When creating our prototype and then subsequent application, we've found quite amazing support: most of the time the
-Isis team provides same day high quality support, with samples and references, which has helped us find the solution
-to our needs quickly.
+When creating our prototype and then subsequent application, we've found quite amazing support: most of the time the Isis team provides same day high quality support, with samples and references, which has helped us find the solution to our needs quickly.
 The framework is growing rapidly as well, keeping its openness and business domain driven focus.
 The tutorials and documentation is quite comprehensive and very clear.
 We have found all this hard to find in many other open source frameworks.
diff --git a/antora/toc/modules/ROOT/pages/what-is-apache-isis/powered-by/contactapp.adoc b/antora/toc/modules/ROOT/pages/what-is-apache-isis/powered-by/contactapp.adoc
index 684f6e8..90dbb91 100644
--- a/antora/toc/modules/ROOT/pages/what-is-apache-isis/powered-by/contactapp.adoc
+++ b/antora/toc/modules/ROOT/pages/what-is-apache-isis/powered-by/contactapp.adoc
@@ -2,8 +2,9 @@
 :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. http://www.apache.org/licenses/license-2.0 . unless required by applicable law or ag [...]
 :page-partial:
 
+// TODO: V2: need to update these, they are getting stale.
 
-The _Contact App_ is a contact management application (like xref:powered-by.adoc#_powered-by_estatio[Estatio]) developed for and deployed at link:http://eurocommercial.com[Eurocommercial].
+The _Contact App_ is a contact management application developed for and deployed at link:http://eurocommercial.com[Eurocommercial].
 
 This app originated out of our users' need to quickly look up different employees of Eurocommercial's.
 At the same time the app managers would need to be able to easily edit or add to the existing contact information.
@@ -13,19 +14,17 @@ image:https://github.com/incodehq/contactapp/blob/master/docs/contactapp-backend
 
 == Apache Isis with Ionic
 
-Because of the requirements of the app - quick and portable access - we decided to create a mobile app for it
-using the link:http://ionicframework.com/[Ionic Framework]. For the backend we decided to use link:http://isis.apache.org[Apache Isis]
-since this allowed us to rapidly develop the required backend application and surface a REST API to which the
-mobile application could connect. We found that it worked together quite well, and with part of the team
-behind http://github.com/estatio/estatio[Estatio] we were able to create an app that is clear to use and manage.
+Because of the requirements of the app - quick and portable access - we decided to create a mobile app for it using the link:http://ionicframework.com/[Ionic Framework].
+For the backend we decided to use link:http://isis.apache.org[Apache Isis]
+since this allowed us to rapidly develop the required backend application and surface a REST API to which the mobile application could connect.
+We found that it worked together quite well, and with part of the team behind http://github.com/estatio/estatio[Estatio] we were able to create an app that is clear to use and manage.
 
 image:https://github.com/incodehq/contactapp/blob/master/docs/contactapp-frontend.png[width="97%"]
 
 As our first Apache Isis app making use of mobile technologies it opens the doors for more to follow.
-Ionic has proven easy to learn and build apps with, and has a helpful community.  Meanwhile we've used
-Apache Isis' support for xref:userguide:fun:programming-model.adoc#jaxb[JAXB view models]
-and in particular the xref:vro:ROOT:simplified-representations.adoc[simplified REST representations] introduced in v1.12.0.
-The result is code that is easy to follow and enhance.
+Ionic has proven easy to learn and build apps with, and has a helpful community.
+Meanwhile we've used Apache Isis' support for xref:userguide:fun:programming-model.adoc#jaxb[JAXB view models]
+and in particular the xref:vro:ROOT:simplified-representations.adoc[simplified REST representations] introduced in v1.12.0. The result is code that is easy to follow and enhance.
 
 We expect that the scope of _Contact App_ will expand and new features added, these will (almost certainly) remain open source.
 Meanwhile we're now set up nicely to build further mobile apps using this technology stack.
diff --git a/antora/toc/modules/ROOT/pages/what-is-apache-isis/powered-by/cqnz.adoc b/antora/toc/modules/ROOT/pages/what-is-apache-isis/powered-by/cqnz.adoc
index 267c3ce..7257d94 100644
--- a/antora/toc/modules/ROOT/pages/what-is-apache-isis/powered-by/cqnz.adoc
+++ b/antora/toc/modules/ROOT/pages/what-is-apache-isis/powered-by/cqnz.adoc
@@ -2,6 +2,7 @@
 :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. http://www.apache.org/licenses/license-2.0 . unless required by applicable law or ag [...]
 :page-partial:
 
+// TODO: V2: need to update these, they are getting stale.
 
 CQNZ(TM) (pronounced "sequence") is a thematic social network that:
 
@@ -12,7 +13,6 @@ ____
 
 image::powered-by/cqnz/cqnz-advert.png[width="900px",link="{imagesdir}/powered-by/cqnz/cqnz-advert.png"]
 
-
 == Underlying Technology
 
 With regard to the underlying technology, CQNZ(TM) is a mobile application served by a web application using RESTful web services.
@@ -35,6 +35,7 @@ This is also one of the many reasons we choose Apache Isis over Spring Framework
 
 == For more info
 
-For further information, please see our link:https://www.facebook.com/pg/mycqnz/about/?ref=page_internal[facebook page] or visit link:http://cqnz.rocks/[cqnz.rocks].  All images and trademarks property of their respective owners.
+For further information, please see our link:https://www.facebook.com/pg/mycqnz/about/?ref=page_internal[facebook page] or visit link:http://cqnz.rocks/[cqnz.rocks].
+All images and trademarks property of their respective owners.
 
 _Case study provided by Cesar Lugo, Research and Development Director, Vortech IT._
diff --git a/antora/toc/modules/ROOT/pages/what-is-apache-isis/powered-by/estatio.adoc b/antora/toc/modules/ROOT/pages/what-is-apache-isis/powered-by/estatio.adoc
index e360668..e22cd0b 100644
--- a/antora/toc/modules/ROOT/pages/what-is-apache-isis/powered-by/estatio.adoc
+++ b/antora/toc/modules/ROOT/pages/what-is-apache-isis/powered-by/estatio.adoc
@@ -3,10 +3,12 @@
 :page-partial:
 
 
+// TODO: V2: need to update these, they are getting stale.
 
 Estatio is an estate management application developed for and deployed at link:http://www.eurocommercialproperties.com/[Eurocommercial].
 
-Eurocommercial Properties is a Dutch-listed company that owns and operates over 50 shopping centres across Italy, France and Sweden, with income from property of approx. EUR150m per year.
+Eurocommercial Properties is a Dutch-listed company that owns and operates over 50 shopping centres across Italy, France and Sweden, with income from property of approx.
+EUR150m per year.
 Previously the company had used one of the leading software packages for its invoicing; however this had proven on the one hand lacking in key features/functionality for some locales, while overlapping/duplicating the features/capabilities of the general ledger system.
 It had also been found to be extremely difficult to upgrade to new versions of the product (eg multiple regressions).
 
@@ -21,10 +23,10 @@ image::powered-by/estatio/estatio-1.png[width="900px",link="{imagesdir}/powered-
 The development team for the original implementation consisted of just two developers (both of whom are Apache Isis committers); the first version of the application was developed over 2 years and 2 man-years effort.
 Since the initial release - as the scope of the application has grown - the team has expanded to take on a further part-time developer and also some interns.
 
-
 == Supporting Open Source
 
-Much of Apache Isis' recent development has been driven out by the requirements of this application, so you can see for yourself how many of the features in Isis are used in real life.  Much of the (non-ASF) link:https://platform.incode.org[Incode Platform^] also originate from the requirements of Estatio.
+Much of Apache Isis' recent development has been driven out by the requirements of this application, so you can see for yourself how many of the features in Isis are used in real life.
+Much of the (non-ASF) link:https://platform.incode.org[Incode Platform^] also originate from the requirements of Estatio.
 
 Estatio itself is also open source, licensed under Apache Software License and available on link:https://github.com/estatio/estatio[github].
 
@@ -33,6 +35,5 @@ Our heart-felt thanks.
 
 And to learn a little more about the Estatio domain model itself, take a look at both the source code (of course) and also at https://github.com/estatio/estatio/blob/master/adocs/documentation/src/main/asciidoc/auditability.adoc[this documentation], developed to allow Eurocommercial's accountants to understand and audit the application.
 
-
 _Case study provided by Jeroen van der Wal, link:http://incode.org[Incode]_
 
diff --git a/antora/toc/modules/ROOT/pages/what-is-apache-isis/powered-by/gesconsultor-grc.adoc b/antora/toc/modules/ROOT/pages/what-is-apache-isis/powered-by/gesconsultor-grc.adoc
index 7613d61..5f66a95 100644
--- a/antora/toc/modules/ROOT/pages/what-is-apache-isis/powered-by/gesconsultor-grc.adoc
+++ b/antora/toc/modules/ROOT/pages/what-is-apache-isis/powered-by/gesconsultor-grc.adoc
@@ -2,6 +2,7 @@
 :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. http://www.apache.org/licenses/license-2.0 . unless required by applicable law or ag [...]
 :page-partial:
 
+// TODO: V2: need to update these, they are getting stale.
 
 link:http://www.gesconsultor.com[GESCONSULTOR] GRC (currently SandaS GRC) is an IT Governance, Risk and Compliance
 platform to help companies be compliant with IT-related ISO Standards, laws, regulations and best practices.  Its scope
diff --git a/antora/toc/modules/ROOT/pages/what-is-apache-isis/powered-by/transport-planner.adoc b/antora/toc/modules/ROOT/pages/what-is-apache-isis/powered-by/transport-planner.adoc
index 84ee42a..2d1a6d9 100644
--- a/antora/toc/modules/ROOT/pages/what-is-apache-isis/powered-by/transport-planner.adoc
+++ b/antora/toc/modules/ROOT/pages/what-is-apache-isis/powered-by/transport-planner.adoc
@@ -2,21 +2,20 @@
 :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. http://www.apache.org/licenses/license-2.0 . unless required by applicable law or ag [...]
 :page-partial:
 
+// TODO: V2: need to update these, they are getting stale.
 
-
-TransportPlanner is a demo done by link:http://www.sintef.no/home/MARINTEK/[Marintek AS] to show a possible 'solution' to a multimodal transport planning problem. It's a small part of a bigger European funded project.
+TransportPlanner is a demo done by link:http://www.sintef.no/home/MARINTEK/[Marintek AS] to show a possible 'solution' to a multimodal transport planning problem.
+It's a small part of a bigger European funded project.
 
 The domain is that:
 
--  some cargo should be transported from a pickup destination to a delivery destination.
--  A 'client' creates a transport demand
--  A 'logistics service provider' plans a route from pickup to delivery using a shortest path algorithm.
--  The route's waypoints (where cargo is loaded from one providere to another) may be shown on a map.
--  The costs associated with each leg may be shown as a pie chart
+- some cargo should be transported from a pickup destination to a delivery destination.
+- A 'client' creates a transport demand
+- A 'logistics service provider' plans a route from pickup to delivery using a shortest path algorithm.
+- The route's waypoints (where cargo is loaded from one providere to another) may be shown on a map.
+- The costs associated with each leg may be shown as a pie chart
 - The resource usage, i.e. costs and time for each leg, may be shown as a bar chart.
--  An event may be generated (e.g. some customs papers are missing, therefore transport execution stops and a replan
-is necessary).
-
+- An event may be generated (e.g. some customs papers are missing, therefore transport execution stops and a replan is necessary).
 
 [cols="2a,2a"]
 |===
@@ -35,18 +34,15 @@ is necessary).
 
 |===
 
-
-
-
-
-The author, Christian Steinebach, wrote this demo part-time over the course of a few weeks.  He commented:
+The author, Christian Steinebach, wrote this demo part-time over the course of a few weeks.
+He commented:
 
 pass:[<div class="extended-quote"><p>]
 I did not have too much time to get 'something done' ... But although I had a hard time in the beginning with Isis I don't think I would have made it in time using 'conventional' development with database, GUI etc.
 using Apache Isis.
 pass:[</p></div>]
 
-Because this is a demo, there is a lot of room for improvement, but it does show how a relatively simple domain model can be brought 'alive'. The source code is available link:https://www.assembla.com/code/transportplanner/git/nodes[here] (note: it was written against a snapshot version of Apache Isis).
-
+Because this is a demo, there is a lot of room for improvement, but it does show how a relatively simple domain model can be brought 'alive'.
+The source code is available link:https://www.assembla.com/code/transportplanner/git/nodes[here] (note: it was written against a snapshot version of Apache Isis).
 
 _Case study provided by Christian Steinebach, Marintech_
diff --git a/antora/toc/modules/ROOT/pages/what-is-apache-isis/screencasts.adoc b/antora/toc/modules/ROOT/pages/what-is-apache-isis/screencasts.adoc
index 63bc4f6..60cbdef 100644
--- a/antora/toc/modules/ROOT/pages/what-is-apache-isis/screencasts.adoc
+++ b/antora/toc/modules/ROOT/pages/what-is-apache-isis/screencasts.adoc
@@ -1,12 +1,15 @@
-[[screencasts]]
 = Screencasts
 :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. http://www.apache.org/licenses/license-2.0 . unless required by applicable law or ag [...]
+:page-role: -toc
 
 
-
+// TODO: v2: NICE-TO-HAVE: update these screenshots for v2
 
 We've prepared a number of screencasts to help you see what Apache Isis has to offer; the following were recorded using Apache Isis v1.12.x.
 
+NOTE: these screencasts were recorded using v1.12.x.
+There have since been a number of UI improvements since these releases.
+
 While these each follow on from each other, you should be able to watch them in any order; the typical duration is
 3 minutes.
 The number of each screencast (eg 'link:https://www.youtube.com/watch?v=OTNHR5EdAs8[001^]') is a link over
@@ -30,10 +33,10 @@ Finally, you can also find some screencasts for earlier versions of the framewor
 
 
 
-|    11+|[big]#*Playlists*#
+|    11+|*Playlists*
 
 
-12+| [big]#*Archetype, IDE, layouts*#
+12+| *Archetype, IDE, layouts*
 
 include::screencasts/playlists.adoc[]
 
@@ -58,7 +61,7 @@ Importing the generated app into an xref:toc:devguide:ide.adoc[IDE] +
 
 
 |link:https://www.youtube.com/watch?v=xVTjtiJM8XM[003^] +
-Walking through the main classes that make up the SimpleApp: `SimpleObject` persistent entity, `HomePageViewModel` xref:userguide:fun:view-models.adoc[view model] and `SimpleObjects` domain service (repository).
+Walking through the main classes that make up the SimpleApp: `SimpleObject` persistent entity, `HomePageViewModel`xref:userguide:fun:programming-model/view-models.adoc[view model] and `SimpleObjects` domain service (repository).
 ||||x|||||||
 
 
@@ -72,13 +75,13 @@ Using the optional `Xxx.layout.xml` file to provide xref:vw:ROOT:layout.adoc#fil
 
 
 
-12+| [big]#*Fixture scripts, rules, tests*#
+12+| *Fixture scripts, rules, tests*
 
 include::screencasts/playlists.adoc[]
 
 
 |link:https://www.youtube.com/watch?v=pH02g0l2GKY[005^] +
-Using xref:fixtures:ROOT:about.adoc[fixture scripts] to initialize the database, eg while prototyping and for demos
+Using xref:testing:fixtures:about.adoc[fixture scripts] to initialize the database, eg while prototyping and for demos
 ||x|||||||||
 
 
@@ -102,7 +105,7 @@ Writing end-to-end xref:testing:integtestsupport:about.adoc[integration tests] f
 
 
 
-12+| [big]#*Swagger UI*#
+12+| *Swagger UI*
 
 include::screencasts/playlists.adoc[]
 
@@ -121,17 +124,17 @@ Using the Swagger UI to access the xref:vro:ROOT:about.adoc[REST API] automatica
 
 
 
-12+| [big]#*App Manifest*#
-
-
-|link:https://www.youtube.com/watch?v=1sNiR3Y84c0[011^] +
-How the framework uses the xref:refguide:applib-cm:classes/AppManifest-bootstrapping.adoc[`AppManifest`] is used to bootstrap the application
-||||||||||x|
+//12+| *App Manifest*
+//
+//
+//|link:https://www.youtube.com/watch?v=1sNiR3Y84c0[011^] +
+//How the framework uses the xref:refguide:applib-cm:classes/AppManifest-bootstrapping.adoc[`AppManifest`] is used to bootstrap the application
+//||||||||||x|
 
 
 
 
-12+| [big]#*Actions*#
+12+| *Actions*
 
 
 include::screencasts/playlists.adoc[]
@@ -146,7 +149,7 @@ Implementing business logic using a (no-arg) action, and associating with a prop
 
 
 
-12+| [big]#*Titles and icons, UI event subscribers*#
+12+| *Titles and icons, UI event subscribers*
 
 
 include::screencasts/playlists.adoc[]
@@ -166,7 +169,7 @@ Moving the responsibility to specify the icon for a domain object out and into a
 
 
 
-12+| [big]#*Derived collections*#
+12+| *Derived collections*
 
 
 |link:https://www.youtube.com/watch?v=ckT8Lt20SE4[016^] +
@@ -177,18 +180,18 @@ How to implement a derived collection on a domain object.
 
 
 
-12+| [big]#*More on fixture scripts*#
+12+| *More on fixture scripts*
 
 
 |link:https://www.youtube.com/watch?v=l_oZymgb65I[017^] +
-Extending a xref:fixtures:ROOT:about.adoc[fixture script] to more easily demonstrate new functionality.
+Extending a xref:testing:fixtures:about.adoc[fixture script] to more easily demonstrate new functionality.
 ||x|||||||||
 
 
 
 
 
-12+| [big]#*Page size of collections*#
+12+| *Page size of collections*
 
 
 |link:https://www.youtube.com/watch?v=39Hpd7C4Kvo[018^] +
@@ -200,7 +203,7 @@ Using xref:vw:ROOT:layout.adoc#file-based[dynamic (XML) layouts] to specify the
 
 
 
-12+| [big]#*Hints and end-user features*#
+12+| *Hints and end-user features*
 
 
 include::screencasts/playlists.adoc[]
@@ -227,7 +230,7 @@ Demonstrates how the end-user can use bookmarks and breadcrumbs within Apache Is
 
 
 
-12+| [big]#*Decoupling (mixins & subscribers)*#
+12+| *Decoupling (mixins & subscribers)*
 
 
 include::screencasts/playlists.adoc[]
@@ -260,7 +263,7 @@ Using a domain event xref:refguide:applib-cm:classes/super.adoc#AbstractSubscrib
 
 
 
-12+| [big]#*Titles using the @Title annotation*#
+12+| *Titles using the @Title annotation*
 
 
 
@@ -272,7 +275,7 @@ Using the xref:refguide:applib-ant:Title.adoc[`@Title`] annotation (instead of t
 
 
 
-12+| [big]#*Integration testing of mixins*#
+12+| *Integration testing of mixins*
 
 
 
@@ -286,7 +289,7 @@ How to write an xref:testing:integtestsupport:about.adoc[integration test] for a
 
 
 
-12+| [big]#*Removing boilerplate*#
+12+| *Removing boilerplate*
 
 
 
@@ -308,7 +311,7 @@ Using the (non-ASF) link:https://platform.incode.org[Incode Platform^]'s paranam
 
 
 
-12+| [big]#*Action validation*#
+12+| *Action validation*
 
 
 
@@ -328,7 +331,7 @@ How to validate action parameters using the xref:refguide:applib-ant:Parameter.a
 
 
 
-12+| [big]#*Instantiating/Initializing Objects*#
+12+| *Instantiating/Initializing Objects*
 
 
 
@@ -341,7 +344,7 @@ How to instantiate/initialize objects using xref:refguide:applib-svc:persistence
 
 
 
-12+| [big]#*Property and parameter choices*#
+12+| *Property and parameter choices*
 
 
 
@@ -361,7 +364,7 @@ How to provide a set of xref:refguide:applib-cm:methods.adoc#choices[choices] (a
 
 
 |link:https://www.youtube.com/watch?v=fKo6aTPK-gk[035^] +
-How to use the xref:refguide:applib-cm:methods.adoc#choices[choices] supporting methods as a source for default values within a xref:fixtures:ROOT:about.adoc[fixture script].
+How to use the xref:refguide:applib-cm:methods.adoc#choices[choices] supporting methods as a source for default values within a xref:testing:fixtures:about.adoc[fixture script].
 ||x|||||||x||
 
 
@@ -373,7 +376,7 @@ How to use an enum for choices (drop down list) for both a property or an action
 
 
 
-12+| [big]#*Hiding columns*#
+12+| *Hiding columns*
 
 
 
@@ -392,7 +395,7 @@ How to hide properties as columns in tables, using CSS.
 
 
 
-12+| [big]#*Fixture scripts defaults / fake data*#
+12+| *Fixture scripts defaults / fake data*
 
 
 
@@ -412,7 +415,7 @@ Using the (non-ASF) link:https://platform.incode.org[Incode Platform^]'s fakedat
 
 
 
-12+| [big]#*BigDecimals*#
+12+| *BigDecimals*
 
 
 include::screencasts/playlists.adoc[]
@@ -432,7 +435,7 @@ How to use the xref:refguide:applib-ant:Digits.adoc[`@Digits`] annotation for ac
 
 
 
-12+| [big]#*Action parameters*#
+12+| *Action parameters*
 
 
 
@@ -461,7 +464,7 @@ How to use the xref:refguide:applib-cm:methods.adoc#autoComplete[`autoCompleteXx
 
 
 
-12+| [big]#*Excel, Calendars, Maps*#
+12+| *Excel, Calendars, Maps*
 
 
 
@@ -500,7 +503,7 @@ Using derived properties to persist value types (such as gmap3's Location value
 
 
 
-12+| [big]#*View Models*#
+12+| *View Models*
 
 
 
@@ -529,7 +532,7 @@ Adding an action to a xref:userguide:fun:programming-model.adoc#jaxb[(JAXB) view
 
 
 
-12+| [big]#*Renaming*#
+12+| *Renaming*
 
 
 
@@ -567,7 +570,7 @@ Updating the logo for the application as it appears in the header.
 
 
 
-12+| [big]#*Decoupling*#
+12+| *Decoupling*
 
 
 include::screencasts/playlists.adoc[]
@@ -586,7 +589,7 @@ Separating out the responsibilities of the persistent domain entities from those
 
 
 
-12+| [big]#*(Parented) collections*#
+12+| *(Parented) collections*
 
 
 
@@ -615,7 +618,7 @@ How deleting one persistent entity can, if required, automatically delete anothe
 
 
 
-12+| [big]#*Metadata fieldset*#
+12+| *Metadata fieldset*
 
 include::screencasts/playlists.adoc[]
 
@@ -625,7 +628,7 @@ Improving the layout of domain entities by adding a metadata fieldset.
 ||||x|||||||
 
 
-12+| [big]#*for Contributors and Committers*#
+12+| *for Contributors and Committers*
 
 include::screencasts/playlists.adoc[]
 
diff --git a/antora/toc/modules/ROOT/partials/module-nav.adoc b/antora/toc/modules/ROOT/partials/module-nav.adoc
index 2494cbd..a80e452 100644
--- a/antora/toc/modules/ROOT/partials/module-nav.adoc
+++ b/antora/toc/modules/ROOT/partials/module-nav.adoc
@@ -2,7 +2,7 @@
 ** xref:what-is-apache-isis/isis-in-pictures.adoc[Apache Isis in pictures]
 ** xref:what-is-apache-isis/common-use-cases.adoc[Common Use Cases]
 ** xref:what-is-apache-isis/screencasts.adoc[Screencasts]
-** xref:what-is-apache-isis/powered-by.adoc[Powered By]
+// ** xref:what-is-apache-isis/powered-by.adoc[Powered By]
 
 
 * Starter Apps
diff --git a/antora/toc/modules/comguide/pages/cutting-a-release.adoc b/antora/toc/modules/comguide/pages/cutting-a-release.adoc
index ad2ff21..7023825 100644
--- a/antora/toc/modules/comguide/pages/cutting-a-release.adoc
+++ b/antora/toc/modules/comguide/pages/cutting-a-release.adoc
@@ -101,8 +101,8 @@ So, bump to the release version:
 
 [source,bash,subs="attributes+"]
 ----
-mvn versions:set -DnewVersion=${ISISREL}
-git commit -am "${ISISJIRA}: bumps version to ${ISISREL}"
+mvn versions:set -DnewVersion=$ISISREL
+git commit -am "$ISISJIRA: bumps version to $ISISREL"
 ----
 
 so that they should read:
@@ -301,7 +301,7 @@ Therefore:
 ----
 cd core-parent
 mvn versions:set -DnewVersion=2.0.0-SNAPSHOT
-git commit -am "${ISISJIRA}: resetting version"
+git commit -am "$ISISJIRA: resetting version"
 ----
 
 == Push branches
diff --git a/antora/toc/modules/comguide/pages/release-process-for-interim-releases.adoc b/antora/toc/modules/comguide/pages/release-process-for-interim-releases.adoc
index adbe39a..4901d00 100644
--- a/antora/toc/modules/comguide/pages/release-process-for-interim-releases.adoc
+++ b/antora/toc/modules/comguide/pages/release-process-for-interim-releases.adoc
@@ -14,11 +14,6 @@ Since `-SNAPSHOT` changes on a day-to-day basis, the idea is to tag a particular
 Whereas xref:toc:comguide:about.adoc#cutting-a-release.adoc[formal release]s and xref:toc:comguide:release-process-for-snapshots[snapshot release]s are public (released through the Maven repository maintained by Apache Software Foundation), interim releases are non-public and rely on infrastructure provided by a developer team.
 The tagged release resides __not__ in the xref:toc:ROOT:downloads.adoc#\__downloads_source_code[official Apache Isis git repository], but instead in a fork/clone maintained by the developer team.
 
-[NOTE]
-====
-The procedure developed here was put together for the team working on the xref:toc:ROOT:powered-by/powered-by.adoc#_powered-by_estatio[Estatio app], which maintains its own link:https://github.com/incodehq/isis[fork on github] and uses link:https://www.cloudbees.com/[CloudBees] as a Jenkins build server/private Maven repo.
-====
-
 
 == Prerequisites
 
diff --git a/examples/demo/src/main/adoc/modules/ROOT/pages/about.adoc b/examples/demo/src/main/adoc/modules/ROOT/pages/about.adoc
index a94809f..73248bd 100644
--- a/examples/demo/src/main/adoc/modules/ROOT/pages/about.adoc
+++ b/examples/demo/src/main/adoc/modules/ROOT/pages/about.adoc
@@ -1,75 +1,100 @@
-= Demo
+= Demo App
+: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. http://www.apache.org/licenses/license-2.0 . unless required by applicable law or ag [...]
 
-The Demo provides an introduction to the features and components available in Apache Isis.
+The Demo app provides an introduction to some of the features and components available in Apache Isis.
+It is bundled as a Docker image (link:https://hub.docker.com/r/apacheisis/demo-springboot/tags/[apacheisis/demo-springboot]) on Docker Hub.
 
-It allows you to learn the very basics and also to discover some of the more advanced features, the framework has to offer. See the Docker section below on how to get started.
+The app allows you to allow you to learn the very basics with a minimum of hassle.
+You can also use it to discover some of the more advanced features that the framework has to offer.
 
-== Getting Started (Docker)
 
-NOTE: Further on *<tag>* is used as a placeholder for the docker image tag of your choice. When omitted the latest version is used. Actual tag names might be changed without notice. Currently we have tag *nightly*. See https://hub.docker.com/r/apacheisis/demo-springboot/tags/[apacheisis/demo-springboot] (Docker-Hub)
+== Prereqs
 
-=== Prereqs
+Head over to https://www.docker.com/community-edition[Docker] to install the community edition.
 
-Install https://www.docker.com/community-edition[Docker] on your computer.
 
-=== Pulling the Docker Image
+== Running the Docker Image
 
-.pull the Demo image
+* Pull the Demo image
++
+[source,bash]
 ----
-docker pull apacheisis/demo-springboot:<tag>
+docker pull apacheisis/demo-springboot:latest
 ----
 
-=== Running the Docker Image
-
-.run the Demo image
+* Running the Docker Image
++
+[source,bash]
 ----
-docker run --name demo --detach -p8080:8080 apacheisis/demo-springboot:<tag>
+docker run \
+        --name demo \
+        --detach \
+        -p8080:8080 \
+        apacheisis/demo-springboot:latest
 ----
-
-This will start a new Docker container named `demo`.
-
-The Demo can then be accessed at http://localhost:8080/wicket/[].
++
+The Demo app can then be accessed at http://localhost:8080/wicket/[].
 Login with `sven:pass`.
 
-.stop and remove the container named `demo`
+* Stop and remove the container named `demo`
++
+[source,bash]
 ----
 docker stop demo && docker rm demo
 ----
 
-=== Customization (Context Path)
+=== Customization
 
-.run using a _context-path_, add an environment variable eg. `ContextPath=/demo`
+The way in which the app is run by Docker be customised in a couple of ways:
+
+* Specify a different context Path
++
 ----
-docker run --name demo --detach -p8080:8080 -eContextPath=/demo apacheisis/demo-springboot:<tag>
+docker run \
+        --name demo \
+        --detach \
+        -p8080:8080 \
+        -eContextPath=/myPath \
+        apacheisis/demo-springboot:latest
 ----
++
+then access at http://localhost:8080/myPath/wicket/[].
 
-=== Customization (Prototyping)
-
-.run in _prototyping_ mode, add an environment variable `PROTOTYPING=true`.
+* Prototyping mode
++
 ----
-docker run --name demo --detach -p8080:8080 -ePROTOTYPING=true apacheisis/demo-springboot:<tag>
+docker run \
+        --name demo \
+        --detach
+        -p8080:8080 \
+        -ePROTOTYPING=true \
+        apacheisis/demo-springboot
 ----
 
-=== Customization (Attached Console)
-
-To run the container with your console attached, replace the '--detach' argument with '-it'.
-
-.use CTRL-C to stop and detach
+* Attached console
++
 ----
-docker run --name demo -it -p8080:8080 apacheisis/demo-springboot:<tag>
+docker run \
+        --name demo \
+        -it \
+        -p8080:8080 \
+        apacheisis/demo-springboot:latest
 ----
++
+To run the container with your console attached, replace the '--detach' argument with '-it'.
+Use CTRL-C to stop and detach
 
 == Contributing
 
 If you like to get involved quickly, please feel free to open new pull requests (at github) or just join the discussion and provide feedback.
 
-If you are interested in contributing to Apache Isis, see the https://isis.apache.org/guides/dg/dg.html[Developers' Guide] for details. 
+If you are interested in contributing to Apache Isis, see the https://isis.apache.org/guides/dg/dg.html[Developers' Guide] for details.
 
 
 == Credits
 
-This Demo App uses icons made by link:http://www.freepik.com[Freepik] and
+* This Demo App uses icons made by link:http://www.freepik.com[Freepik] and
 link:https://www.flaticon.com/authors/smashicons[Smashicons].
 These are licensed by link:http://creativecommons.org/licenses/by/3.0/[Creative Commons BY 3.0^]
 
-We use link:https://github.com/asciidoctor/asciidoctorj[AsciidoctorJ] for Asciidoc rendering.
+* We use link:https://github.com/asciidoctor/asciidoctorj[AsciidoctorJ] for Asciidoc rendering.


[isis] 04/09: ISIS-2062: removes references to 'archetype' ...

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

danhaywood pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git

commit f815d68fad6eb3ad0c537ecfa0c31c422abd0c04
Author: danhaywood <da...@haywood-associates.co.uk>
AuthorDate: Fri Jan 31 17:26:47 2020 +0000

    ISIS-2062: removes references to 'archetype' ...
    
    ... instead we now have starter apps
---
 .../toc/modules/ROOT/pages/downloads/how-to.adoc   |   2 +-
 .../ROOT/pages/more-thanks/more-thanks.adoc        |   2 +-
 .../pages/what-is-apache-isis/screencasts.adoc     |  16 ++--
 .../modules/comguide/pages/cutting-a-release.adoc  |  17 +---
 .../comguide/pages/post-release-successful.adoc    | 104 ---------------------
 .../comguide/pages/post-release-unsuccessful.adoc  |  24 +----
 .../release-process-for-interim-releases.adoc      |  11 +--
 .../modules/comguide/pages/verifying-releases.adoc |  31 +-----
 .../pages/hints-and-tips/datanucleus-enhancer.adoc |   5 +-
 .../pages/hints-and-tips/enabling-logging.adoc     |   3 +-
 .../how-run-fixtures-on-app-startup.adoc           |   2 +-
 antora/toc/modules/devguide/pages/ide/eclipse.adoc |  61 ++++--------
 .../modules/mignotes/pages/migrating-to-2.0.0.adoc |  14 ++-
 .../modules/btb/pages/deployment/neo4j.adoc        |  14 ---
 api/adoc/userguide/modules/btb/pages/i18n.adoc     |  53 ++---------
 .../fun/pages/programming-model/properties.adoc    |  25 ++---
 .../pages/classes/AppManifest-bootstrapping.adoc   |  41 ++------
 .../pages/persistence-layer-api/H2ManagerMenu.adoc |   7 +-
 .../FixtureScriptsSpecificationProvider.adoc       |   7 +-
 .../config/pages/specifying-components.adoc        |  13 +--
 .../src/main/doc/modules/mvn/pages/intro.adoc      |   6 +-
 .../disabling-persistence-by-reachability.adoc     |   4 +-
 .../ROOT/pages/configuring/persistence-xml.adoc    |   2 +-
 security/adoc/modules/ROOT/pages/about.adoc        |   2 +-
 .../pages/about/configuring-isis-to-use-shiro.adoc |   6 +-
 .../adoc/modules/shiro/pages/about/ini-realm.adoc  |   2 +-
 starters/adoc/modules/helloworld/pages/about.adoc  |   2 +-
 starters/adoc/modules/simpleapp/pages/about.adoc   |   2 +-
 .../pages/fixture-scripts/api-and-usage.adoc       |  18 ++--
 .../adoc/modules/ROOT/pages/layout/file-based.adoc |   2 +-
 .../ROOT/pages/menubars-layout/file-based.adoc     |   2 +-
 31 files changed, 110 insertions(+), 390 deletions(-)

diff --git a/antora/toc/modules/ROOT/pages/downloads/how-to.adoc b/antora/toc/modules/ROOT/pages/downloads/how-to.adoc
index fd99b00..5a08c5c 100644
--- a/antora/toc/modules/ROOT/pages/downloads/how-to.adoc
+++ b/antora/toc/modules/ROOT/pages/downloads/how-to.adoc
@@ -12,7 +12,7 @@ Use for prototyping or production.
 
 == Getting Started
 
-If you just want to get going quickly, we suggest using our link:https://github.com/apache/isis-app-simpleapp[Maven archetype].
+If you just want to get going quickly, we suggest using our link:https://github.com/apache/isis-app-helloworld[HelloWorld] or link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter apps.
 
 
 
diff --git a/antora/toc/modules/ROOT/pages/more-thanks/more-thanks.adoc b/antora/toc/modules/ROOT/pages/more-thanks/more-thanks.adoc
index fdc0984..71b3433 100644
--- a/antora/toc/modules/ROOT/pages/more-thanks/more-thanks.adoc
+++ b/antora/toc/modules/ROOT/pages/more-thanks/more-thanks.adoc
@@ -23,7 +23,7 @@ In addition to the http://www.apache.org/foundation/thanks.html[support given to
 
 
 |image::more-thanks/icons8-logo.png[link="http://icons8.com"]
-|Icons8, for selected icons on this website and in the link:https://github.com/apache/isis/tree/master/example/application/simpleapp/dom/src/main/resources/images[simpleapp] used to generate the link:https://github.com/apache/isis-app-simpleapp[simpleapp archetype]
+|Icons8, for selected icons on this website and in the link:https://github.com/apache/isis-app-helloworld[HelloWorld] and link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter apps
 
 |===
 
diff --git a/antora/toc/modules/ROOT/pages/what-is-apache-isis/screencasts.adoc b/antora/toc/modules/ROOT/pages/what-is-apache-isis/screencasts.adoc
index 60cbdef..c84beee 100644
--- a/antora/toc/modules/ROOT/pages/what-is-apache-isis/screencasts.adoc
+++ b/antora/toc/modules/ROOT/pages/what-is-apache-isis/screencasts.adoc
@@ -36,20 +36,20 @@ Finally, you can also find some screencasts for earlier versions of the framewor
 |    11+|*Playlists*
 
 
-12+| *Archetype, IDE, layouts*
+12+| *IDE, layouts*
 
 include::screencasts/playlists.adoc[]
 
 
-|https://www.youtube.com/watch?v=RQ_FFYd7npU[000^] +
-Searching and using the Apache Isis docs
-|x||||||||||
-
+//|https://www.youtube.com/watch?v=RQ_FFYd7npU[000^] +
+//Searching and using the Apache Isis docs
+//|x||||||||||
 
-|link:https://www.youtube.com/watch?v=OTNHR5EdAs8[001^] +
-Generating an app using the link:https://github.com/apache/isis-app-simpleapp[SimpleApp archetype]
 
-|x||||||||||
+//|link:https://www.youtube.com/watch?v=OTNHR5EdAs8[001^] +
+//Generating an app using the link:https://github.com/apache/isis-app-simpleapp[SimpleApp archetype]
+//
+//|x||||||||||
 
 
 
diff --git a/antora/toc/modules/comguide/pages/cutting-a-release.adoc b/antora/toc/modules/comguide/pages/cutting-a-release.adoc
index 7023825..6bd36fa 100644
--- a/antora/toc/modules/comguide/pages/cutting-a-release.adoc
+++ b/antora/toc/modules/comguide/pages/cutting-a-release.adoc
@@ -411,7 +411,7 @@ I've just cut a new release for Apache Isis Framework.
 The source code artifacts have been uploaded to staging repositories on repository.apache.org.
 For each zip there is a corresponding signature file (append .asc to the zip's url).
 
-In the source code repo the code has been tagged as isis-{isisnext}-RC1, helloworld-archetype-{isisnext}-RC1 and simpleapp-archetype-{isisnext}-RC1; see https://github.com/apache/isis/tags
+In the source code repo the code has been tagged as isis-{isisnext}-RC1; see https://github.com/apache/isis/tags
 
 To verify the source code, you can use the following commands (in an empty directory):
 
@@ -423,25 +423,12 @@ To verify the source code, you can use the following commands (in an empty direc
 
     rm -rf isis-$VERSION*
 
-    curl -O -L https://raw.githubusercontent.com/apache/isis/06f947ad7a0968c34d8e6941a77e12aa0196cd17/scripts/verify-isis-release.sh
+    curl -O -L https://raw.githubusercontent.com/apache/isis/xxxx/scripts/verify-isis-release.sh
 
     chmod +x ./verify-isis-release.sh
     ./verify-isis-release.sh $NEXUSREPONUM $VERSION
 
 
-Assuming this completes successfully, you can then test the two applications generated from the `simpleapp` and `helloworld` archetypes:
-
-    pushd test-simpleapp/myapp
-    mvn -pl webapp jetty:run
-    popd
-
-and
-
-    pushd test-helloworld/myapp
-    mvn jetty:run
-    popd
-
-
 For more details, see https://isis.apache.org/toc/comguide/about.html#verifying-releases
 
 Please verify the release and cast your vote.  The vote will be open for a minimum of 72 hours.
diff --git a/antora/toc/modules/comguide/pages/post-release-successful.adoc b/antora/toc/modules/comguide/pages/post-release-successful.adoc
index 2299302..0fc4987 100644
--- a/antora/toc/modules/comguide/pages/post-release-successful.adoc
+++ b/antora/toc/modules/comguide/pages/post-release-successful.adoc
@@ -21,9 +21,6 @@ If there are not +3 votes after this time then it is perfectly permissible to ke
 
 This section describes the steps to perform if the vote has been successful.
 
-
-
-
 == Inform dev ML
 
 Post the results to the `dev@isis.a.o` mailing list:
@@ -50,8 +47,6 @@ The vote is SUCCESSFUL.
 I'll now go ahead and complete the post-release activities.
 ----
 
-
-
 == Update tags
 
 Replace the `-RCn` tag with another without the qualifier.
@@ -61,8 +56,6 @@ You can do this using the `scripts/promoterctag.sh` script; for example:
 [source,bash,subs="attributes+"]
 ----
 sh scripts/promoterctag.sh isis-{isisnext} RC1
-sh scripts/promoterctag.sh helloworld-archetype-{isisnext} RC1
-sh scripts/promoterctag.sh simpleapp-archetype-{isisnext} RC1
 ----
 
 This script pushes the tag under `refs/tags/rel`.
@@ -70,9 +63,6 @@ As per Apache policy (communicated on 10th Jan 2016 to Apache PMCs), this path i
 
 Then, continue onto the next section for the steps to promote and announce the release.
 
-
-
-
 == Release to Maven Central
 
 From the http://repository.apache.org[ASF Nexus repository], select the staging repository and select 'release' from the top menu.
@@ -83,8 +73,6 @@ image::release-process/nexus-release-1.png[width="600px",link="{imagesdir}/relea
 This moves the release artifacts into an Apache releases repository; from there they will be automatically moved to the Maven repository.
 
 
-
-
 == Release Source Zip
 
 As described in the link:http://www.apache.org/dev/release-publishing.html#distribution_dist[Apache documentation], each Apache TLP has a `release/TLP-name` directory in the distribution Subversion repository at link:https://dist.apache.org/repos/dist[https://dist.apache.org/repos/dist].
@@ -99,9 +87,6 @@ The directory structure of Apache Isis reflects the directory structure in our g
 ----
 isis/
   core/
-  example/
-    archetype/
-      simpleapp/
 ----
 
 If necessary, checkout this directory structure:
@@ -148,47 +133,6 @@ svn delete $fullname-$old_ver-$zip
 
 popd
 
-
-#
-# helloworld-archetype
-#
-type="archetype"
-fullname="helloworld-archetype"
-pushd $type/$fullname
-
-curl -O $repo_root/$type/$fullname/$new_ver/$fullname-$new_ver-$md5
-svn add $fullname-$new_ver-$md5
-curl -O $repo_root/$type/$fullname/$new_ver/$fullname-$new_ver-$asc
-svn add $fullname-$new_ver-$asc
-curl -O $repo_root/$type/$fullname/$new_ver/$fullname-$new_ver-$zip
-svn add $fullname-$new_ver-$zip
-
-svn delete $fullname-$old_ver-$md5
-svn delete $fullname-$old_ver-$asc
-svn delete $fullname-$old_ver-$zip
-
-popd
-
-
-#
-# simpleapp-archetype
-#
-type="archetype"
-fullname="simpleapp-archetype"
-pushd $type/$fullname
-
-curl -O $repo_root/$type/$fullname/$new_ver/$fullname-$new_ver-$md5
-svn add $fullname-$new_ver-$md5
-curl -O $repo_root/$type/$fullname/$new_ver/$fullname-$new_ver-$asc
-svn add $fullname-$new_ver-$asc
-curl -O $repo_root/$type/$fullname/$new_ver/$fullname-$new_ver-$zip
-svn add $fullname-$new_ver-$zip
-
-svn delete $fullname-$old_ver-$md5
-svn delete $fullname-$old_ver-$asc
-svn delete $fullname-$old_ver-$zip
-
-popd
 ----
 
 [source,bash,subs="attributes+"]
@@ -198,8 +142,6 @@ sh upd.sh {isiscurr} {isisnext}
 
 The script downloads the artifacts from the Nexus release repository, adds the artifacts to subversion and deletes the previous version.
 
-
-
 Double check that the files are correct; there is sometimes a small delay in the files becoming available in the release repository.
 It should be sufficient to check just the `md5` or `.asc` files that these look valid (aren't HTML 404 error pages):
 
@@ -217,8 +159,6 @@ svn commit -m "publishing isis source releases to dist.apache.org"
 
 If the files are invalid, then revert using `svn revert . --recursive` and try again in a little while.
 
-
-
 == Update JIRA
 
 === Generate Release Notes
@@ -236,33 +176,25 @@ This script uses 'jq' to parse JSON.
 See the script itself for details of how to install this utility.
 ====
 
-
 === Close tickets
 
 Close all JIRA tickets for the release, or moved to future releases if not yet addressed.
 Any tickets that were partially implemented should be closed, and new tickets created for the functionality on the ticket not yet implemented.
 
-
-
 === Mark the version as released
 
 In JIRA, go to the link:https://issues.apache.org/jira/plugins/servlet/project-config/ISIS/versions[administration section] for the Apache Isis project and update the version as being released.
 
 In the link:https://issues.apache.org/jira/secure/RapidBoard.jspa?rapidView=87[Kanban view] this will have the effect of marking all tickets as released (clearing the "done" column).
 
-
 === Create new JIRA
 
 Create a new JIRA ticket as a catch-all for the _next_ release.
 
-
 === Update the ASF Reporter website
 
 Log the new release in the link:https://reporter.apache.org/addrelease.html?isis[ASF Reporter website].
 
-
-
-
 == Release image to Docker hub
 
 This is currently a placeholder.
@@ -275,8 +207,6 @@ TODO:
 
 * Once this has been implemented, we also need to update the documentation for helloworld and simpleapp in order to explain how to build and deploy a skinny war to a running container.
 
-
-
 The idea is to use `isis-webdocker` to create a new image, then upload.
 
 Prereqs are:
@@ -301,7 +231,6 @@ Prereqs are:
 
 \... because `isis-webdocker/pom.xml` references `docker-hub`.
 
-
 [source,bash]
 ----
 cd core
@@ -313,10 +242,6 @@ mvn -Drevision=$ISISREL \
     deploy
 ----
 
-
-
-
-
 == Update website
 
 In the main `isis` repo (ie containing the asciidoc source):
@@ -327,10 +252,6 @@ Also add a summary line for the release.
 
 * Update the [`site.yml`] file that declares the current and next releases.
 
-* Update any pages (`.adoc`, `.md`, `.html` etc) that describe how to run the archetype, and ensure they reference the correct version.
-+
-A search for `archetypeGroupId=org.apache.isis.archetype` should find these pages.
-
 * update the `doap_isis.rdf` file (which provides a machine-parseable description of the project) with details of the new release.
 Validate using the http://www.w3.org/RDF/Validator/[W3C RDF Validator] service.
 +
@@ -398,8 +319,6 @@ You can take a copy from one of the older named versions, or just use this text:
 
 ** update the menu to reference the new version
 
-** update the version in the archetype.
-
 At this point the files in the root (directly under `content`) will still be out of date; the publish process simply preserves whatever is in `content/versions/current`.
 Also, the `SNAPSHOT` will be missing (above it was renamed to `current`).
 And, we also need to make sure that any future publishing of snapshots has the correct version in the navbar.
@@ -419,7 +338,6 @@ Therefore:
 
 If everything looks ok, then push the changes to make live.
 
-
 == Announce the release
 
 Announce the release to link:mailto:users@isis.apache.org[users mailing list].
@@ -456,18 +374,11 @@ Enjoy!
 [4] http://isis.apache.org/downloads.html
 ----
 
-
-
-
 == Blog post
 
 link:https://blogs.apache.org/roller-ui/login.rol[Log onto] the http://blogs.apache.org/isis/[Apache blog] and create a new post.
 Copy-n-paste the above mailing list announcement should suffice.
 
-
-
-
-
 == Merge in release branch
 
 Because we release from a branch, the changes made in the branch (changes to `pom.xml` made by the `maven-release-plugin`, or any manual edits) should be merged back from the release branch back into the `master` branch:
@@ -481,17 +392,12 @@ git push origin --delete release-{isisnext}-RC1   # remote branch no longer need
 git branch -d release-{isisnext}-RC1              # branch no longer needed
 ----
 
-
-
-
 == Update dependencies
 
 With the release complete, now is a good time to bump versions of dependencies (so that there is a full release cycle to identify any possible issues).
 
 You will probably want to create a new JIRA ticket for these updates (or if minor then use the "catch-all" JIRA ticket raised earlier for the next release).
 
-
-
 === Update parent of Core
 
 Check (via link:http://search.maven.org/#search%7Cga%7C1%7Cg%3A%22org.apache%22%20a%3A%22apache%22[search.maven.org]) whether there is a newer version of the Apache parent `org.apache:apache`.
@@ -510,8 +416,6 @@ If there is, update the `&lt;version&gt;` in the `&lt;parent&gt;` element in the
 
 where `NN` is the updated version number.
 
-
-
 === Update plugin versions
 
 The `maven-versions-plugin` should be used to determine if there are newer versions of any of the plugins used to build Apache Isis.
@@ -526,8 +430,6 @@ grep "\->" /tmp/foo | /bin/sort -u
 Review the generated output and make updates as you see fit.
 (However, if updating, please check by searching for known issues with newer versions).
 
-
-
 === Update dependency versions
 
 The `maven-versions-plugin` should be used to determine if there are newer versions of any of Isis' dependencies.
@@ -561,15 +463,11 @@ For example, here is a report showing both of these cases:
 
 For these artifacts you will need to search http://search.maven.org[Maven central repo] directly yourself to confirm there are no newer dependencies not shown in this list.
 
-
-
 == Code formatting
 
 This is also a good time to make source code has been cleaned up and formatted according to the Apache Isis and ASF conventions.
 Use link:../dg/resources/eclipse/Apache-code-style-formatting.xml[this] Eclipse template and link:../dg/resources/eclipse/isis.importorder[this] import order.
 
-
-
 == Push changes
 
 Finally, push the changes up to origin:
@@ -580,8 +478,6 @@ git fetch    # check no new commits on origin/master
 git push
 ----
 
-
-
 == Release (non-ASF) Modules
 
 The (non-ASF) link:https://platform.incode.org[Incode Platform^] should also be released, as per their link:https://platform.incode.org/pages/committers-guide/committers-guide.html#_release_to_maven_central[release guide].
diff --git a/antora/toc/modules/comguide/pages/post-release-unsuccessful.adoc b/antora/toc/modules/comguide/pages/post-release-unsuccessful.adoc
index 6be5577..b1f7450 100644
--- a/antora/toc/modules/comguide/pages/post-release-unsuccessful.adoc
+++ b/antora/toc/modules/comguide/pages/post-release-unsuccessful.adoc
@@ -50,32 +50,18 @@ The vote is UNSUCCESSFUL.
 
 Tidy up remote branches in the git repo:
 
-* delete the remote branch, for example: +
-+
 [source,bash,subs="attributes+"]
 ----
 git push --delete origin release-{isisnext}-RC1
-----
-
-
-* delete the remote origin server's tags, for example: +
-+
-[source,bash,subs="attributes+"]
-----
 git push --delete origin isis-{isisnext}-RC1
-git push --delete origin helloworld-archetype-{isisnext}-RC1
-git push --delete origin simpleapp-archetype-{isisnext}-RC1
+git tag -d isis-{isisnext}
 ----
 
+These steps:
 
-* delete the tags that were created locally, for example: +
-+
-[source,bash,subs="attributes+"]
-----
-git tag -d isis-{isisnext}
-git tag -d helloworld-archetype-{isisnext}
-git tag -d simpleapp-archetype-{isisnext}
-----
+* delete the remote branch
+* delete the remote origin server's tags
+* delete the tags that were created locally
 
 
 == Tidy up the Nexus repo
diff --git a/antora/toc/modules/comguide/pages/release-process-for-interim-releases.adoc b/antora/toc/modules/comguide/pages/release-process-for-interim-releases.adoc
index 4901d00..9736853 100644
--- a/antora/toc/modules/comguide/pages/release-process-for-interim-releases.adoc
+++ b/antora/toc/modules/comguide/pages/release-process-for-interim-releases.adoc
@@ -14,7 +14,6 @@ Since `-SNAPSHOT` changes on a day-to-day basis, the idea is to tag a particular
 Whereas xref:toc:comguide:about.adoc#cutting-a-release.adoc[formal release]s and xref:toc:comguide:release-process-for-snapshots[snapshot release]s are public (released through the Maven repository maintained by Apache Software Foundation), interim releases are non-public and rely on infrastructure provided by a developer team.
 The tagged release resides __not__ in the xref:toc:ROOT:downloads.adoc#\__downloads_source_code[official Apache Isis git repository], but instead in a fork/clone maintained by the developer team.
 
-
 == Prerequisites
 
 Create a remote fork/clone of the Apache Isis repository (eg using link:http://github.com[github] or link:http://bitbucket.org[bitbucket] or similar), and ensure that your local fork specifies this remote.
@@ -24,22 +23,16 @@ To build it should use the command:
 
 [source,bash]
 ----
-mvn clean install -Dskip.app -Dskip.arch
+mvn clean install -Dskip.app
 ----
 
-that is, skipping the example simpleapp and archetype; only `core` framework is built
-
 The CI server should then also publish the resultant artifacts to a local Maven repository.
 For example, Jenkins provides post-build plugins to perform such a task.
 
-
-
 == Sanity Check
 
 Ensure that the framework builds ok using the same command that your CI server is set up to execute (see section above).
 
-
-
 == Release
 
 Deploy the framework using:
@@ -62,8 +55,6 @@ This will result in a new branch and tagged being pushed to the remote, with an
 
 As noted in the prereqs (above), the CI server configured should then detect the new branch (or tag, if you prefer), build the framework (skipping application and architecture, as in the prerequisites) and then publish the resultant artifacts to a private Maven repo.
 
-
-
 === Implementation details
 
 The script itself:
diff --git a/antora/toc/modules/comguide/pages/verifying-releases.adoc b/antora/toc/modules/comguide/pages/verifying-releases.adoc
index 0945533..f3528e3 100644
--- a/antora/toc/modules/comguide/pages/verifying-releases.adoc
+++ b/antora/toc/modules/comguide/pages/verifying-releases.adoc
@@ -78,10 +78,8 @@ curl http://www.apache.org/dist/isis/KEYS > /tmp/KEYS
 gpg --import /tmp/KEYS
 
 rm -rf isis-$VERSION*
-rm -rf simpleapp-archetype-$VERSION*
-rm -rf helloworld-archetype-$VERSION*
 
-curl -O -L https://gist.githubusercontent.com/danhaywood/9b052f68ef56cfdbeb3eb1603c5f772a/raw/a083599d34a502a18c5ccfd4a4d26f18352ca0e4/verify-isis-release.sh
+curl -O -L https://gist.githubusercontent.com/danhaywood/xxx/raw/xxx/verify-isis-release.sh
 
 chmod +x ./verify-isis-release.sh
 ./verify-isis-release.sh $NEXUSREPONUM $VERSION
@@ -100,31 +98,10 @@ The location of this repository will be in the VOTE email.
 +
 in other words, to confirm that the release was created by an Apache Isis committer
 
-* builds all the framework code from source
-+
-that is, `core`, `simpleapp-archetype` and `helloworld-archetype`
-
-* generates and build an app for each of the two archetypes
+* builds the framework code from source
 
-Assuming this completes successfully, you can then test the two applications generated from the `simpleapp` and `helloworld` archetypes:
+Assuming this completes successfully, you can then test the two starter applications; adjust the version if required.
 
-* Test out simpleapp using:
-+
-[source,bash]
-----
-pushd test-simpleapp/myapp
-mvn -pl webapp jetty:run
-popd
-----
-
-* Test out helloworld using:
-+
-[source,bash]
-----
-pushd test-helloworld/myapp
-mvn jetty:run
-popd
-----
 
 You can if you wish perform some additional optional checks, listed in the sections below.
 Alternatively, you can xref:toc:comguide:verifying-releases.adoc#casting-a-vote[cast your vote].
@@ -133,7 +110,7 @@ Alternatively, you can xref:toc:comguide:verifying-releases.adoc#casting-a-vote[
 
 == (Optional) Verifying binary artifacts
 
-You can verify the binary releases by configuring your local Maven install to point to the Maven staging repository (or repositories) and then using them, eg to run the link:https://github.com/apache/isis-app-helloworld[HelloWorld archetype] or the link:https://github.com/apache/isis-app-simpleapp[SimpleApp archetype] and running the resultant app.
+You can verify the binary releases by configuring your local Maven install to point to the Maven staging repository (or repositories) and then using them, eg to run the link:https://github.com/apache/isis-app-helloworld[HelloWorld starter app] or the link:https://github.com/apache/isis-app-simpleapp[SimpleApp starter app] (adjust the parent version if required).
 
 Configuring your local Maven install amounts to updating the `~/.m2/settings.xml` file:
 
diff --git a/antora/toc/modules/devguide/pages/hints-and-tips/datanucleus-enhancer.adoc b/antora/toc/modules/devguide/pages/hints-and-tips/datanucleus-enhancer.adoc
index b647977..84b3649 100644
--- a/antora/toc/modules/devguide/pages/hints-and-tips/datanucleus-enhancer.adoc
+++ b/antora/toc/modules/devguide/pages/hints-and-tips/datanucleus-enhancer.adoc
@@ -1,4 +1,3 @@
-[[datanucleus-enhancer]]
 = Datanucleus Enhancer
 :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. http://www.apache.org/licenses/license-2.0 . unless required by applicable law or ag [...]
 :page-partial:
@@ -19,7 +18,7 @@ What this means is that the enhancer -- available as both a Maven plugin and as
 
 If working from the Maven command line, JDO enhancement is done using the `datanucleus-maven-plugin`.
 
-Both the link:https://github.com/apache/isis-app-helloworld[HelloWorld] and link:https://github.com/apache/isis-app-simpleapp[SimpleApp] Maven archetypes generate applications that have this plugin pre-configured.
+Both the link:https://github.com/apache/isis-app-helloworld[HelloWorld] and link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter apps have this plugin pre-configured.
 
 
 
@@ -40,7 +39,7 @@ It's also a good idea to ensure that every domain module(s) containing entities
 ----
 <1> change as required; typically is the name of the domain module.
 
-Again, the applications generated by both the link:https://github.com/apache/isis-app-helloworld[HelloWorld] and link:https://github.com/apache/isis-app-simpleapp[Simpleapp] Maven archetypes do this.
+Again, the link:https://github.com/apache/isis-app-helloworld[HelloWorld] and link:https://github.com/apache/isis-app-simpleapp[Simpleapp] starter apps do this.
 
 
 [WARNING]
diff --git a/antora/toc/modules/devguide/pages/hints-and-tips/enabling-logging.adoc b/antora/toc/modules/devguide/pages/hints-and-tips/enabling-logging.adoc
index bb27cbb..f631630 100644
--- a/antora/toc/modules/devguide/pages/hints-and-tips/enabling-logging.adoc
+++ b/antora/toc/modules/devguide/pages/hints-and-tips/enabling-logging.adoc
@@ -16,8 +16,7 @@ As per the http://www.datanucleus.org/products/accessplatform/logging.html[DN lo
 
 * In the JDBC Driver +
 +
-Configure `log4jdbc` JDBC rather than the vanilla driver (see `WEB-INF/persistor_datanucleus.properties`) and configure log4j logging (see `WEB-INF/logging.properties`).
-There are examples of both in the link:https://github.com/apache/isis-app-simpleapp[SimpleApp archetype].
+Configure `log4jdbc` JDBC rather than the vanilla driver (see `application.properties`).
 
 * In the database +
 +
diff --git a/antora/toc/modules/devguide/pages/hints-and-tips/how-run-fixtures-on-app-startup.adoc b/antora/toc/modules/devguide/pages/hints-and-tips/how-run-fixtures-on-app-startup.adoc
index 3d68471..19f2aa0 100644
--- a/antora/toc/modules/devguide/pages/hints-and-tips/how-run-fixtures-on-app-startup.adoc
+++ b/antora/toc/modules/devguide/pages/hints-and-tips/how-run-fixtures-on-app-startup.adoc
@@ -13,7 +13,7 @@ Use events?_
 
 
 The standard approach is to use xref:fixtures:ROOT:about.adoc[fixture scripts].
-These can be run in on start-up typically by being specified in the xref:refguide:applib-cm:classes/AppManifest-bootstrapping.adoc[`AppManifest`], see for example the link:https://github.com/apache/isis-app-simpleapp[SimpleApp archetype].
+These can be run in on start-up typically by being specified in the xref:refguide:applib-cm:classes/AppManifest-bootstrapping.adoc[`AppManifest`], see for example the link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter app.
 
 Alternatively just set `isis.fixtures` and `isis.persistor.datanucleus.install-fixtures` properties.
 
diff --git a/antora/toc/modules/devguide/pages/ide/eclipse.adoc b/antora/toc/modules/devguide/pages/ide/eclipse.adoc
index 36ecbfd..98aaf5c 100644
--- a/antora/toc/modules/devguide/pages/ide/eclipse.adoc
+++ b/antora/toc/modules/devguide/pages/ide/eclipse.adoc
@@ -3,8 +3,6 @@
 :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. http://www.apache.org/licenses/license-2.0 . unless required by applicable law or ag [...]
 :page-partial:
 
-
-
 [NOTE]
 ====
 This material does not constitute an endorsement; Eclipse foundation is not affiliated to Apache Software Foundation in any way.
@@ -18,13 +16,11 @@ This hooks the bytecode enhancement of your domain objects into Eclipse's normal
 
 This plugin needs to be configured for each of your domain modules (usually just one in any given app).
 
-
-
-
-
 == Editor Templates
 
-We provide a set of editor templates.  These are used to add new methods to existing classes.  (These are equivalent to the xref:toc:devguide:about.adoc#live-templates[IntelliJ live templates]):
+We provide a set of editor templates.
+These are used to add new methods to existing classes.
+(These are equivalent to the xref:toc:devguide:about.adoc#live-templates[IntelliJ live templates]):
 
 * `is` (Apache Isis domain objects).  link:./resources/eclipse/isis-templates.xml[Download]
 * `ju` (for JUnit tests) link:./resources/eclipse/junit4-templates.xml[Download]
@@ -33,11 +29,9 @@ We provide a set of editor templates.  These are used to add new methods to exis
 
 To install, download each XML file, then go to `Windows > Preferences > Java > Editor > Templates` and choose `Import`.
 
-
-
 == Install Project Lombok
 
-The link:https://github.com/apache/isis-app-simpleapp[SimpleApp archetype] uses link:http://projectlombok.org[Project Lombok] annotations (`@Getter` and `@Setter` and so on) to reduce the boilerplate.
+The link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter app uses link:http://projectlombok.org[Project Lombok] annotations (`@Getter` and `@Setter` and so on) to reduce the boilerplate.
 For Eclipse IDE this requires an link:https://projectlombok.org/setup/eclipse[installation step]:
 
 * Locate the `lombok.jar` jar file:
@@ -52,7 +46,6 @@ image::eclipse/2017-oxygen/020-lombok-install-into-eclipse.png[width="600px",lin
 
 Then restart Eclipse.
 
-
 == Install the DataNucleus plugin
 
 The DataNucleus plugin hooks into the Eclipse compiler and will automatically enhance the compiled class files:
@@ -76,14 +69,12 @@ image::eclipse/2017-oxygen/050-datanucleus-select-plugin.png[width="600px",link=
 
 Then restart Eclipse
 
-
 == Importing the Project
 
 Use File > Import, then Maven > Existing Maven Projects.
 
 However, you will have some compile errors until you enable annotation processing, discussed below.
 
-
 === Enable Annotation Processing
 
 Both DataNucleus and Project Lombok use annotation processors that must be enabled in Eclipse.
@@ -94,7 +85,6 @@ image::eclipse/2017-oxygen/060-enable-annotation-processor.png[width="600px",lin
 
 Eclipse should automatically add this directory as a source path; at this point all remaining compiler errors should disappear.
 
-
 == Configure DataNucleus
 
 [TIP]
@@ -102,7 +92,6 @@ Eclipse should automatically add this directory as a source path; at this point
 Make sure you are in the 'Java' Perspective, not the 'Java EE' Perspective.
 ====
 
-
 In Eclipse, for the _domain object model_ project(s), first add DataNucleus support:
 
 image::eclipse/eclipse-100-project-support.png[width="600px",link="{imagesdir}/eclipse/eclipse-100-project-support.png"]
@@ -112,15 +101,13 @@ Then turn on Auto-Enhancement:
 
 image::eclipse/eclipse-110-project-support.png[width="600px",link="{imagesdir}/eclipse/eclipse-110-project-support.png"]
 
-
 === Update the classpath
 
 DataNucleus' enhancer uses the domain object model's own classpath to reference DataNucleus JARs.
 So, even though your domain objects are unlikely to depend on DataNucleus, these references must still be present.
 
 See the section in xref:toc:devguide:hints-and-tips/datanucleus-enhancer.adoc[DataNucleus enhancer] for details of the contents of the `pom.xml`.
-Chances are it is already set up from running the link:https://github.com/apache/isis-app-helloworld[HelloWorld] or the link:https://github.com/apache/isis-app-simpleapp[SimpleApp] archetype.
-
+If you've based your app on either the link:https://github.com/apache/isis-app-helloworld[HelloWorld] or the link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter app, then it'll be set up already.
 
 Then, tell DataNucleus to use the project classpath:
 
@@ -130,21 +117,21 @@ When the enhancer runs, it will print out to the console:
 
 image::eclipse/eclipse-120-console.png[width="500px",link="{imagesdir}/eclipse/eclipse-120-console.png"]
 
-
 === Workaround for path limits (the DN plugin to use the persistence.xml)
 
 If running on Windows then the DataNucleus plugin is very likely to hit the Windows path limit.
 
 To fix this, we configure the enhancer to read from the `persistence.xml` file.
 
-As a prerequisite, first make sure that your domain object model has a `persistence.xml` file.  Then specify the `persistence-unit` in the project properties:
+As a prerequisite, first make sure that your domain object model has a `persistence.xml` file.
+Then specify the `persistence-unit` in the project properties:
 
 image::eclipse/eclipse-025-project-properties.png[width="750px",link="{imagesdir}/eclipse/eclipse-025-project-properties.png"]
 
-
 === Workaround: If the enhancer fails
 
-On occasion it appears that Eclipse can attempt to run two instances of the DataNucleus enhancer. This is probably due to multiple Eclipse builders being defined; we've noticed multiple entries in the Eclipse's `Debug` view:
+On occasion it appears that Eclipse can attempt to run two instances of the DataNucleus enhancer.
+This is probably due to multiple Eclipse builders being defined; we've noticed multiple entries in the Eclipse's `Debug` view:
 
 
 image::eclipse/eclipse-210-enhancer-fails-duplicates.png[width="600px",link="{imagesdir}/eclipse/eclipse-210-enhancer-fails-duplicates.png"]
@@ -165,22 +152,12 @@ image::eclipse/eclipse-220-enhancer-fails-duplicates.png[width="600px",link="{im
 
 If you consistently hit problems, then the final recourse is to disable the automatic enhancement and to remember to manually enhance your domain object model before each run.
 
-Not ideal, we know. Please feel free to contribute a better solution :-)
-
-
+Not ideal, we know.
+Please feel free to contribute a better solution :-)
 
 == Running the App
 
-The simpleapp archetype automatically provides a `.launch` configurations in the `webapp` module. You can therefore very simply run the application by right-clicking on one of these files, and choosing "Run As…" or "Debug As…".
-
-
-[NOTE]
-====
-The screencast above shows this in action.
-====
-
-
-
+Create a launch configuration that runs the main class annotated with link:https://docs.spring.io/spring-boot/docs/current/api/org/springframework/boot/autoconfigure/SpringBootApplication.html[@SpringBootApplication].
 
 
 == Other domain projects.
@@ -191,24 +168,18 @@ You might want to do such that each domain project corresponds to a http://www.m
 If you do this, make sure that each project has its own `persistence.xml` file.
 And, remember also to configure Eclipse's DataNucleus plugin for these other domain projects.
 
-
-
 == Advanced
 
 In this section are a couple of options that will reduce the length of the change code/build/deploy/review feedback loop.
 
-
 === Setting up DCEVM
 
-link:http://github.com/dcevm/dcevm[DCEVM] enhances the JVM with true hot-swap adding/removing of methods as well as more
-reliable hot swapping of the implementation of existing methods.
+link:http://github.com/dcevm/dcevm[DCEVM] enhances the JVM with true hot-swap adding/removing of methods as well as more reliable hot swapping of the implementation of existing methods.
 
-In the context of Apache Isis, this is very useful for contributed actions and mixins and also view models; you should
-then be able to write these actions and have them be picked up without restarting the application.
+In the context of Apache Isis, this is very useful for contributed actions and mixins and also view models; you should then be able to write these actions and have them be picked up without restarting the application.
 
-Changing persisting domain entities is more problematic, for two reasons: the JDO/DataNucleus enhancer needs to run on
-domain entities, and also at runtime JDO/DataNucleus would need to rebuild its own metamodel.  You may find that adding
-actions will work, but adding new properties or collections is much less likely to.
+Changing persisting domain entities is more problematic, for two reasons: the JDO/DataNucleus enhancer needs to run on domain entities, and also at runtime JDO/DataNucleus would need to rebuild its own metamodel.
+You may find that adding actions will work, but adding new properties or collections is much less likely to.
 
 For details of setting up DCEVM, see the xref:toc:devguide:about.adoc#advanced_dcevm[corresponding section] in the IntelliJ documentation.
 
diff --git a/antora/toc/modules/mignotes/pages/migrating-to-2.0.0.adoc b/antora/toc/modules/mignotes/pages/migrating-to-2.0.0.adoc
index a49a9e5..e28e9cf 100644
--- a/antora/toc/modules/mignotes/pages/migrating-to-2.0.0.adoc
+++ b/antora/toc/modules/mignotes/pages/migrating-to-2.0.0.adoc
@@ -724,7 +724,19 @@ isis.value-types. +
 
 === No longer any archetypes
 
-TODO: document.
+The archetypes have been replaced by starter apps.
+This has several benefits:
+
+* for users of the framework:
+
+** github repos are now better understood than Maven archetypes
+** it is easier to provide improvements/patches as pull requests
+** a forked repo is immediately under code control
+
+* for committers:
+
+** contributions can be merged in more easiler
+** it simplifies the release process
 
 == 2.0.0-M2 to 2.0.0-M3
 
diff --git a/api/adoc/userguide/modules/btb/pages/deployment/neo4j.adoc b/api/adoc/userguide/modules/btb/pages/deployment/neo4j.adoc
index bc69177..f7332dc 100644
--- a/api/adoc/userguide/modules/btb/pages/deployment/neo4j.adoc
+++ b/api/adoc/userguide/modules/btb/pages/deployment/neo4j.adoc
@@ -6,7 +6,6 @@
 
 Apache Isis has experimental support for Neo4J, courtesy of DataNucleus' http://www.datanucleus.org/products/datanucleus/datastores/neo4j.html[Neo4J Datastore] implementation.
 
-
 [TIP]
 ====
 In addition, the http://github.com/isisaddons/isis-app-neoapp[Isis addons' neoapp] (non-ASF) is configured to run with an embedded Neo4J server running alongside the Apache Isis webapp.
@@ -14,7 +13,6 @@ In addition, the http://github.com/isisaddons/isis-app-neoapp[Isis addons' neoap
 
 The steps below describe the configuration steps required to update an existing app.
 
-
 == ConnectionURL
 
 In `persistor.properties`, update the JDO `ConnectionURL` property, eg:
@@ -45,17 +43,5 @@ Add the following dependency to the `webapp` project's `pom.xml`:
 <1> for Isis v1.9.0, use the value shown.
 For Isis v1.8.0, use 3.2.3.
 
-In the link:https://github.com/apache/isis-app-simpleapp[SimpleApp archetype] this is defined under the "neo4j" profile so can be activated using `-P neo4j`.
-
-
-== Try it out!
-
-If you want to quickly try out neo4j for yourself:
-
-* run the link:https://github.com/apache/isis-app-simpleapp[SimpleApp archetype] (v1.8.0)
-
-* build the app:
 
-* run the app:
 
-If you visit the about page you should see the neo4j JAR files are linked in, and a `neo4j_DB` subdirectory within the `webapp` directory.
diff --git a/api/adoc/userguide/modules/btb/pages/i18n.adoc b/api/adoc/userguide/modules/btb/pages/i18n.adoc
index a20e385..a5a9608 100644
--- a/api/adoc/userguide/modules/btb/pages/i18n.adoc
+++ b/api/adoc/userguide/modules/btb/pages/i18n.adoc
@@ -14,7 +14,6 @@ If no translations are available, then the Wicket viewer falls back to using Wic
 Isis does not translate the values of your domain objects, though.
 So, if you have a domain concept such as `Country` whose name is intended to be localized according to the current user, you will need to model this yourself.
 
-
 == Implementation Approach
 
 Most Java frameworks tackle i18n by using Java's own `ResourceBundle` API.
@@ -24,7 +23,8 @@ However, there are some serious drawbacks in this approach, including:
 * there is no support for plural forms (see this link:http://stackoverflow.com/questions/14326653/java-internationalization-i18n-with-proper-plurals/14327683#14327683[SO answer])
 * there is no tooling support for translators
 
-Apache Isis therefore takes a different approach, drawing inspiration from GNU's https://www.gnu.org/software/gettext/manual/index.html[gettext] API and specifically its `.pot` and `.po` files.  These are intended to be used as follows:
+Apache Isis therefore takes a different approach, drawing inspiration from GNU's https://www.gnu.org/software/gettext/manual/index.html[gettext] API and specifically its `.pot` and `.po` files.
+These are intended to be used as follows:
 
 * the `.pot` (portable object template) file holds the message text to be translated
 * this file is translated into multiple `.po` (portable object) files, one per supported locale
@@ -34,7 +34,6 @@ The name of each `.po` resolved in a very similar way to resource bundles.
 The format of the `.pot` and `.po` files is identical; the only difference is that the `.po` file has translations for each of the message strings.
 These message strings can also have singular and plural forms.
 
-
 [IMPORTANT]
 ====
 Although Apache Isis' implementation is modelled after GNU's API, it does _not_ use any GNU software.
@@ -46,16 +45,12 @@ This design tackles all the issues of ``ResourceBundle``s:
 * the `.po` message format is such that any given message text to translate need only be translated once, even if it appears in multiple places in the application (eg "Name")
 * the `.po` message format includes translations for (optional) plural form as well as singular form
 * there are lots of freely available editors https://www.google.co.uk/search?q=.po+file+editor[to be found], many summarized on this https://www.drupal.org/node/11131[Drupal.org] webpage. +
-+
-In fact, there are also online communities/platforms of translators to assist with translating files.
++ In fact, there are also online communities/platforms of translators to assist with translating files.
 One such is https://crowdin.com/[crowdin] (nb: this link does not imply endorsement).
 
 In Apache Isis' implementation, if the translation is missing from the `.po` file then the original message text from the `.pot` file will be returned.
 In fact, it isn't even necessary for there to be any `.po` files; `.po` translations can be added piecemeal as the need arises.
 
-
-
-
 == `TranslationService`
 
 The cornerstone of Apache Isis' support for i18n is the `TranslationService` service.
@@ -87,9 +82,8 @@ The `translate(...)` methods are closely modelled on GNU's gettext API.
 The first version is used when no translation is required, the second is when both a singular and plural form will be required, with the `num` parameter being used to select which is returned.
 In both cases the `context` parameter provides some contextual information for the translator; this generally corresponds to the class member.
 
-The mode meanwhile determines the behaviour of the service.  More on this below.
-
-
+The mode meanwhile determines the behaviour of the service.
+More on this below.
 
 === `TranslationServicePo`
 
@@ -112,8 +106,6 @@ It is also possible to set a configuration setting in `isis.properties` to force
 When running in write mode the original text is returned to the caller untranslated.
 If in read mode, then the translated `.po` files are read and translations provided as required.
 
-
-
 == Imperative messages
 
 The `TranslationService` is used internally by Apache Isis when building up the metamodel; the name and description of every class, property, collection, action and action parameter is automatically translated.
@@ -122,13 +114,12 @@ Thus the simple act of bootstrapping Apache Isis will cause most of the messages
 However, for an application to be fully internationalized, any validation messages (from either `disableXxx()` or `validateXxx()` supporting methods) and also possibly an object's title (from the `title()` method) will also require translation.
 Moreover, these messages must be captured in the `.pot` file such that they can be translated.
 
-
 === `TranslatableString`
 
 The first part of the puzzle is tackled by an extension to Apache Isis' programming model.
 Whereas previously the `disableXxx()` / `validateXxx()` / `title()` methods could only return a `java.lang.String`, they may now optionally return a `TranslatableString` (defined in Isis applib) instead.
 
-Here's a (silly) example from the link:https://github.com/apache/isis-app-simpleapp[SimpleApp archetype]:
+Here's a (silly) example from the link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter app:
 
 [source,java]
 ----
@@ -192,7 +183,6 @@ msgstr "Ich heisse {firstName} {lastName}."
 
 then the translation would be: "Ich heisse James Bond".
 
-
 The same class is used in xref:refguide:applib-svc:core-domain-api/MessageService.adoc[`MessageService`] so that you can raise translatable info, warning and error messages; each of the relevant methods are overloaded.
 
 For example:
@@ -209,8 +199,6 @@ public interface MessageService {
 ----
 <1> are concatenated together to form the context for the `.pot` file.
 
-
-
 === `TranslatableException`
 
 Another mechanism by which messages can be rendered to the user are as the result of exception messages thrown and recognized by an xref:refguide:applib-svc:presentation-layer-spi/ExceptionRecognizer.adoc[`ExceptionRecognizer`].
@@ -230,13 +218,9 @@ public interface TranslatableException {
 If returns `null`, then the `Exception#getMessage()` is used as a fallback
 <2> the context to use when translating the message
 
-
-
-
 == Wicket Viewer
 
-The xref:vw:ROOT:about.adoc[Wicket viewer] (its labels and messages) is also internationalized using
-the `TranslationService`.
+The xref:vw:ROOT:about.adoc[Wicket viewer] (its labels and messages) is also internationalized using the `TranslationService`.
 This is done through an Isis-specific implementation of the Wicket framework's `org.apache.wicket.Localizer` class, namely `LocalizerForIsis`.
 
 The Wicket `Localizer` defines the following API:
@@ -258,13 +242,11 @@ public String getString(
 For example, `key` might be a value such as "okLabel", while `component` an internal class of the Wicket viewer, such as `EntityPropertiesForm`.
 
 The `LocalizerForIsis` implementation uses the `key` as the `msgId`, while the fully qualified class name of the `component` is used as a context.
-There is one exception to this: if the component is the third-party select2
-component (used for drop-downs), then that class name is used directly.
+There is one exception to this: if the component is the third-party select2 component (used for drop-downs), then that class name is used directly.
 
 In the main, using Isis' i18n support means simply adding the appropriate translations to the `translation.po` file, for each locale that you require.
 If the translations are missing then the original translations from the Wicket resource bundles will be used instead.
 
-
 === Commonly used
 
 Most of the translation requirements can be covered by adding in the following ``msgId``s:
@@ -335,7 +317,7 @@ msgstr "You can only select 1 item"
 === Login/self-sign-up
 
 In addition, there are a reasonably large number of messages that are used for both login and the
- xref:vw:ROOT:features.adoc#user-registration[user registration] (self sign-up) and password reset features.
+xref:vw:ROOT:features.adoc#user-registration[user registration] (self sign-up) and password reset features.
 
 These are:
 
@@ -482,11 +464,6 @@ msgid "usernamePlaceholder"
 msgstr "Username"
 ----
 
-
-
-
-
-
 == Integration Testing
 
 So much for the API; but as noted, it is also necessary to ensure that the required translations are recorded (by the `TranslationService`) into the `.pot` file.
@@ -537,9 +514,6 @@ Behind the scenes Apache Isis uses a JUnit 5 extension (`ExceptionRecognizerTran
 These are simply passed through to the registered xref:refguide:applib-svc:presentation-layer-spi/ExceptionRecognizer.adoc[`ExceptionRecognizer`]s so that any messages are recorded as requiring translation.
 ====
 
-
-
-
 == Escaped strings
 
 Translated messages can be escaped if required, eg to include embedded markup.
@@ -565,9 +539,6 @@ public Integer getQuantity() { /* ... */ }
 ----
 <1> required (even though it won't be used when a translation is read; otherwise the escaped flag is ignored)
 
-
-
-
 == Configuration
 
 There are several different aspects of the translation service that can be configured.
@@ -614,7 +585,6 @@ then:
 
 The basename for translation files is always `translations`; this cannot be altered.
 
-
 === Externalized translation files
 
 Normally Apache Isis configuration files are read from the `WEB-INF` file.
@@ -668,13 +638,11 @@ Note that this default implementation does not support requests made through the
 Registering a different implementation of `LocaleProvider` that taps into appropriate REST (RestEasy?) APIs would be the way to address this.
 ====
 
-
 === `TranslationsResolver`
 
 The `TranslationResolver` is used by the `TranslationService` implementation to lookup translations for a specified locale.
 It is this service that reads from the `WEB-INF/` (or externalized directory).
 
-
 === `TranslationServicePoMenu`
 
 The `TranslationServicePoMenu` provides a couple of menu actions in the UI (prototype mode only) that interacts with the underlying `TranslationServicePo`:
@@ -687,8 +655,7 @@ While this will contain all the translations from the metamodel, it will not nec
 ====
 
 * the `clearTranslationsCache()` action - available only in read mode - will clear the cache so that new translations can be loaded. +
-+
-This allows a translator to edit the appropriate `translations-xx-XX.po` file and check the translation is correct without having to restart the app.
++ This allows a translator to edit the appropriate `translations-xx-XX.po` file and check the translation is correct without having to restart the app.
 
 
 
diff --git a/api/adoc/userguide/modules/fun/pages/programming-model/properties.adoc b/api/adoc/userguide/modules/fun/pages/programming-model/properties.adoc
index d40a607..dbbac98 100644
--- a/api/adoc/userguide/modules/fun/pages/programming-model/properties.adoc
+++ b/api/adoc/userguide/modules/fun/pages/programming-model/properties.adoc
@@ -25,8 +25,7 @@ It's also possible (using annotations) to define a link table to hold foreign ke
 Apache Isis recognises some of these annotations for JDO/DataNucleus and JAXB and infers some domain semantics from them (for example, the maximum allowable length of a string property).
 
 Since writing getter and setter methods adds quite a bit of boilerplate, it's common to use link:https://projectlombok.org/[Project Lombok] to code generate these methods at compile time (using Java's annotation processor) simply by adding the `@lombok.Getter` and `@lombok.Setter` annotations to the field.
-The link:https://github.com/apache/isis-app-helloworld[HelloWorld] and link:https://github.com/apache/isis-app-simpleapp[SimpleApp] archetypes use this approach.
-
+The link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter app uses this approach.
 
 == Value vs Reference Types
 
@@ -71,7 +70,6 @@ For further details on mapping associations, see the JDO/DataNucleus documentati
 For domain entities, 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 the xref:userguide:fun:programming-model.adoc#properties-vs-parameters[Properties vs Parameters] section provides a handy reference of each.
 
-
 == Optional Properties
 
 (For domain entities) JDO/DataNucleus' default is that a property is assumed to be mandatory if it is a primitive type (eg `int`, `boolean`), but optional if a reference type (eg `String`, `BigDecimal` etc).
@@ -120,7 +118,6 @@ private String notes;
 
 If this is omitted then whether editing is enabled or disabled is defined globally, in the `isis.properties` configuration file; see xref:refguide:config:configuring-core.adoc#isis-objects-editing[reference configuration guide] for further details.
 
-
 == Ignoring Properties
 
 By default Apache Isis will automatically render all properties in the xref:vw:ROOT:about.adoc[Wicket UI] or in the xref:vro:ROOT:about.adoc[REST API].
@@ -132,7 +129,6 @@ This is independent of Apache Isis; in other words that property will still be r
 For view models, you can tell JAXB to ignore a property using the `@javax.xml.bind.annotation.XmlTransient` annotation.
 Again, this is independent of Apache Isis.
 
-
 == Derived Properties
 
 Derived properties are those with a getter but no setter.
@@ -168,14 +164,10 @@ AddressService addressService;                                      // <3>
 <2> the lat/long representation of the address, eg "51.503363;-0.127625"
 <3> an injected service that can convert to/from address and latLong.
 
-
-
 == Data types
 
 This section shows specific considerations for various datatypes, in particular how to annotate them for DataNucleus mapping to the persistence object store.
 
-
-
 === ``String``s (Length)
 
 By default JDO/DataNucleus will map string properties to a `VARCHAR(255)`.
@@ -192,8 +184,6 @@ private String firstName
 
 This is a good example of a case where Apache Isis infers domain semantics from the JDO annotation.
 
-
-
 === JODA Dates
 
 Isis' JDO objectstore bundles DataNucleus' http://www.datanucleus.org/documentation/products/plugins.html[built-in support] for Joda `LocalDate` and `LocalDateTime` datatypes, meaning that entity properties of these types will be persisted as appropriate data types in the database tables.
@@ -214,7 +204,6 @@ For example, the `ToDoItem` (in the https://github.com/isisaddons/isis-app-todoa
 private LocalDate dueBy;
 ----
 
-
 === ``BigDecimal``s (Precision)
 
 Working with `java.math.BigDecimal` properties takes a little care due to scale/precision issues.
@@ -227,7 +216,9 @@ For example, suppose we have:
 private BigDecimal impact;
 ----
 
-JDO/DataNucleus creates, at least with HSQL, the table with the field type as NUMERIC(19). No decimal digits are admitted. (Further details http://hsqldb.org/doc/2.0/guide/sqlgeneral-chapt.html#sgc_numeric_types[here]).
+JDO/DataNucleus creates, at least with HSQL, the table with the field type as NUMERIC(19).
+No decimal digits are admitted.
+(Further details http://hsqldb.org/doc/2.0/guide/sqlgeneral-chapt.html#sgc_numeric_types[here]).
 
 What this implies is that, when a record is inserted, a log entry similar to this one appears:
 
@@ -251,8 +242,6 @@ In addition, you should also set the scale of the `BigDecimal`, using `setScale(
 
 More information can be found http://www.opentaps.org/docs/index.php/How_to_Use_Java_BigDecimal:_A_Tutorial[here] and http://www.tutorialspoint.com/java/math/bigdecimal_setscale_rm_roundingmode.htm[here].
 
-
-
 === ``Blob``s
 
 Apache Isis configures JDO/DataNucleus so that the properties of type `org.apache.isis.applib.value.Blob` and `org.apache.isis.applib.value.Clob` can also be persisted.
@@ -301,7 +290,6 @@ There can be differences in behaviour between JDBC drivers.
 
 === ``Clob``s
 
-
 Mapping `Clob`s works in a very similar way to ``Blob``s, but the `jdbcType` and `sqlType` attributes will, respectively, be `CLOB` and `LONGVARCHAR`:
 
 [source,java]
@@ -320,10 +308,10 @@ private Clob doc;
 
 [NOTE]
 ====
-If specifying a `sqlType` of "LONGVARCHAR" does not work, try instead "CLOB".  There can be differences in behaviour between JDBC drivers.
+If specifying a `sqlType` of "LONGVARCHAR" does not work, try instead "CLOB".
+There can be differences in behaviour between JDBC drivers.
 ====
 
-
 === Mapping to VARBINARY or VARCHAR
 
 Instead of mapping to a sqlType of `LONGVARBINARY` (or perhaps `BLOB`), you might instead decide to map to a `VARBINARY`.
@@ -348,6 +336,7 @@ The same argument applies to `LONGVARCHAR` (or `CLOB`); you could instead map to
         sqlType = "VARCHAR", length=2048
 )
 ----
+
 Support and maximum allowed length will vary by database vendor.
 
 
diff --git a/api/applib/src/main/adoc/modules/applib-cm/pages/classes/AppManifest-bootstrapping.adoc b/api/applib/src/main/adoc/modules/applib-cm/pages/classes/AppManifest-bootstrapping.adoc
index ca5761c..beec4ad 100644
--- a/api/applib/src/main/adoc/modules/applib-cm/pages/classes/AppManifest-bootstrapping.adoc
+++ b/api/applib/src/main/adoc/modules/applib-cm/pages/classes/AppManifest-bootstrapping.adoc
@@ -1,7 +1,7 @@
-[[AppManifest-bootstrapping]]
 = `AppManifest` (bootstrapping)
 :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. http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or ag [...]
 
+// TODO: v2: this is all out of date, instead bootstrap with @SpringBootApplication
 
 This section describes how to implement the `AppManifest` interface to bootstrap both an Apache Isis web application, and also its integration tests.
 
@@ -15,7 +15,6 @@ The app manifest can then be used both to bootstrap the application "proper", or
 
 == API
 
-
 The `AppManifest` interface allows the constituent parts of an application to be defined programmatically, most specifically the packages that contain domain services and/or persistent entities.
 Its API is defined as:
 
@@ -39,9 +38,6 @@ public interface AppManifest {
 
 The following sections describe each of these methods in a little more detail.
 
-
-
-
 === `getModules()`
 
 The most significant method (the only one which must return a non-`null` value) is the `getModules()` method.
@@ -87,7 +83,6 @@ public List<Class<?>> getModules() {
 
 As can be seen, the various (non-ASF) link:https://platform.incode.org[Incode Platform^] modules also each provide a module class that can be easily referenced.
 
-
 === `getAdditionalServices()`
 
 We normally we recommend that services are defined exclusively through `getModules()`, and that this method should therefore return an empty list.
@@ -107,9 +102,6 @@ public List<Class<?>> getAdditionalServices() {
 
 If this method returns a non-`null` value, then it overrides the value of `isis.services` configuration property.
 
-
-
-
 === `getAuthenticationMechanism()`
 
 If non-`null`, this method specifies the authentication mechanism to use.
@@ -123,8 +115,6 @@ See the xref:security:ROOT:about.adoc[security guide] for further details on con
 This property is ignored for integration tests (which always uses the `"bypass"` mechanism).
 ====
 
-
-
 === `getAuthorizationMechanism()`
 
 If non-`null`, this method specifies the authorization mechanism to use.
@@ -138,9 +128,6 @@ See the xref:security:ROOT:about.adoc[security guide] for further details on con
 This property is ignored for integration tests (which always uses the `"bypass"` mechanism).
 ====
 
-
-
-
 === `getFixtures()`
 
 If non-`null`, this method specifies the fixture script(s) to be run on startup.
@@ -156,13 +143,9 @@ public List<Class<? extends FixtureScript>> getFixtures() {
 }
 ----
 
-
-
 Note that in order for fixtures to be installed it is also necessary to set the `isis.persistor.datanucleus.install-fixtures` key to `true`.
 This can most easily be done using the `getConfigurationProperties()` method, discussed below.
 
-
-
 === `getConfigurationProperties()`
 
 This method allow arbitrary other configuration properties to be overridden.
@@ -178,8 +161,6 @@ public Map<String, String> getConfigurationProperties() {
 }
 ----
 
-
-
 == Bootstrapping
 
 [NOTE]
@@ -209,8 +190,7 @@ isis.appManifest=domainapp.app.MyAppAppManifest
 ----
 
 * the second is also as a webapp, but from within the context of the IDE. +
-+
-Here, it's common to use the `org.apache.isis.WebServer` class to launch your application from the xref:userguide:btb:about.adoc#cmd-line[command line].
++ Here, it's common to use the `org.apache.isis.WebServer` class to launch your application from the xref:userguide:btb:about.adoc#cmd-line[command line].
 This allows the `AppManifest` to be specified using the `-m` (or `--manifest`) flag: +
 +
 [source,ini]
@@ -219,8 +199,7 @@ java org.apache.isis.WebServer -m com.mycompany.myapp.MyAppAppManifestWithFixtur
 ----
 
 * the third case is within an integration test. +
-+
-The code to boostrap an integration test is shown in the xref:testing:integtestsupport:about.adoc#bootstrapping[testing guide], but once again an `AppManifest` is required.
++ The code to boostrap an integration test is shown in the xref:testing:integtestsupport:about.adoc#bootstrapping[testing guide], but once again an `AppManifest` is required.
 
 In some cases an integration test uses the exact same `AppManifest` as the regular webapp.
 Sometimes though it is necessary to "tweak" the `AppManifest`:
@@ -231,9 +210,11 @@ Sometimes though it is necessary to "tweak" the `AppManifest`:
 
 The next section describes some helper classes that the framework provides to help achieve this.
 
-
 === AppManifestAbstract
 
+CAUTION: TODO: v2: this is all out of date and superceded by Spring Boot
+
+
 [IMPORTANT]
 ====
 The framework-provided `AppManifestAbstract2` and `AppManifestAbstract2.Builder` supercede `AppManifestAbstract`, making it easy to write an `AppManifest` defined by a set of xref:refguide:applib-cm:classes/Module.adoc[`Module`] implementations.
@@ -247,14 +228,12 @@ This takes an instance of a `AppManifestAbstract.Builder` in its constructor; th
 Moreover, these classes recognise that configuration properties fall into two broad classes:
 
 * those that are fixed and do not change between environments. +
-+
-In other words these describe how the application chooses to configure the framework itself, eg global disable of editing of properties, or enabling of auditing.
++ In other words these describe how the application chooses to configure the framework itself, eg global disable of editing of properties, or enabling of auditing.
 
 * those that change between environments. +
-+
-The classic example here is the JDBC URL.
++ The classic example here is the JDBC URL.
 
-For example, the link:https://github.com/apache/isis-app-simpleapp[SimpleApp archetype]'s `AppManifest` is defined as:
+For example, the link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter app's `AppManifest` is defined as:
 
 [source,java]
 ----
@@ -279,7 +258,7 @@ public class DomainAppAppManifest extends AppManifestAbstract {
 }
 ----
 <1> the modules that make up the application; corresponds to `AppManifest#getModules()`
-<2> the (non-changing with environment) set of configuration properties, loaded relative to the manifest itself;  corresponds to `AppManifest#getConfigurationProperties()`
+<2> the (non-changing with environment) set of configuration properties, loaded relative to the manifest itself; corresponds to `AppManifest#getConfigurationProperties()`
 <3> override of components; correponds to both `AppManifest#getAuthenticationMechanism()` and `AppManifest#getAuthorizationMechanism()`
 <4> Pass the builder up to the superclass.
 
diff --git a/api/applib/src/main/adoc/modules/applib-svc/pages/persistence-layer-api/H2ManagerMenu.adoc b/api/applib/src/main/adoc/modules/applib-svc/pages/persistence-layer-api/H2ManagerMenu.adoc
index 076ac6a..b5295fe 100644
--- a/api/applib/src/main/adoc/modules/applib-svc/pages/persistence-layer-api/H2ManagerMenu.adoc
+++ b/api/applib/src/main/adoc/modules/applib-svc/pages/persistence-layer-api/H2ManagerMenu.adoc
@@ -9,7 +9,6 @@ The `H2ManagerMenu` provides a single menu item to redirect to the H2 web consol
 This is only enabled for prototyping, and only if H2 is detected in the underlying JDBC URL.
 The menu appears under the "Prototyping" menu.
 
-
 == API & Implementation
 
 The API of the service is:
@@ -25,7 +24,7 @@ Note that this launches the manager on the same host that the webapp runs, and s
 
 == Additional Configuration
 
-The following additional configuration is also required (all of this is present in the helloworld and simpleapp archetypes):
+The following additional configuration is also required (all of this is present in the helloworld and simpleapp starter apps):
 
 * the h2 jdbc driver is required on the classpath of the webapp:
 +
@@ -38,7 +37,7 @@ The following additional configuration is also required (all of this is present
 </dependency>
 ----
 
-* the `jdbc:h2` URL configuration properties must be defined, eg in `isis.properties`:
+* the `jdbc:h2` URL configuration properties must be defined, eg in `application.properties`:
 +
 [source,ini]
 .isis.properties
@@ -69,12 +68,10 @@ isis.persistor.datanucleus.impl.javax.jdo.option.ConnectionPassword=
 </servlet-mapping>
 ----
 
-
 == Disabling/hiding the menu
 
 The menu can be hidden or disabled by subscribing to its domain event, eg:
 
-
 [source,java]
 ----
 import org.springframework.context.event.EventListener;
diff --git a/api/applib/src/main/adoc/modules/applib-svc/pages/testing/FixtureScriptsSpecificationProvider.adoc b/api/applib/src/main/adoc/modules/applib-svc/pages/testing/FixtureScriptsSpecificationProvider.adoc
index 7798543..212214f 100644
--- a/api/applib/src/main/adoc/modules/applib-svc/pages/testing/FixtureScriptsSpecificationProvider.adoc
+++ b/api/applib/src/main/adoc/modules/applib-svc/pages/testing/FixtureScriptsSpecificationProvider.adoc
@@ -1,4 +1,3 @@
-[[FixtureScriptsSpecificationProvider]]
 = `FixtureScriptsSpec'nProvider`
 :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. http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or ag [...]
 :page-partial:
@@ -15,8 +14,6 @@ Of the two designs, we encourage you to implement this "provider" SPI rather tha
 The primary benefit (apart from decoupling responsibilities) is that it ensures that there is always an instance of `FixtureScripts` available for use.
 ====
 
-
-
 == SPI
 
 The SPI defined by the service is:
@@ -46,11 +43,9 @@ public class FixtureScriptsSpecification {
 
 The class is immutable but it has a builder (obtained using `FixturescriptsSpecification.builder(...)`) for a fluent API.
 
-
-
 == Implementation
 
-The link:https://github.com/apache/isis-app-simpleapp[SimpleApp archetype] has a simple implementation of this service:
+The link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter app has a simple implementation of this service:
 
 [source,java]
 ----
diff --git a/core/config/src/main/adoc/modules/config/pages/specifying-components.adoc b/core/config/src/main/adoc/modules/config/pages/specifying-components.adoc
index f126add..3bae498 100644
--- a/core/config/src/main/adoc/modules/config/pages/specifying-components.adoc
+++ b/core/config/src/main/adoc/modules/config/pages/specifying-components.adoc
@@ -16,7 +16,7 @@ This allows the components, services and entities to be specified from a single
 To specify the `AppManifest` as a configuration property, use:
 
 .Core Configuration Properties (ignored if `isis.appManifest` is present)
-[cols="2a,1,3a", options="header"]
+[cols="2a,1,3a",options="header"]
 |===
 |Property
 |Value +
@@ -28,7 +28,7 @@ To specify the `AppManifest` as a configuration property, use:
 |`o.a.i.applib.AppManifest` +
 
 By convention this implementation resides in an `myapp-app` Maven module (as opposed to `myapp-dom` or `myapp-fixture`).
-See the link:https://github.com/apache/isis-app-simpleapp[SimpleApp archetype] for details.
+See the link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter app for details.
 
 |===
 
@@ -49,17 +49,12 @@ public interface AppManifest {
 
 These can return either:
 
-    * "shiro" - enable integration with Apache Shiro, as described in the xref:security:ROOT:about.adoc[security] user guide
-    * "bypass" - bypass security (in effect, configure a no-op implementation that allows everything).
+* "shiro" - enable integration with Apache Shiro, as described in the xref:security:ROOT:about.adoc[security] user guide
+* "bypass" - bypass security (in effect, configure a no-op implementation that allows everything).
 
 Note that these are actually aliases for concrete implementations.
 It is also possible to specify a fully qualified class name to replace either of the two security components, implementing the appropriate interface.
 
-
-
-
-
-
 == Viewer Configuration
 
 Viewers are specified by way of the filters and servlets in the xref:userguide:btb:web-xml.adoc[`web.xml`] file; these are not bootstrapped by the framework, rather it is the other way around.
diff --git a/legacy/testing/mavenplugin/src/main/doc/modules/mvn/pages/intro.adoc b/legacy/testing/mavenplugin/src/main/doc/modules/mvn/pages/intro.adoc
index 3741a60..4f07956 100644
--- a/legacy/testing/mavenplugin/src/main/doc/modules/mvn/pages/intro.adoc
+++ b/legacy/testing/mavenplugin/src/main/doc/modules/mvn/pages/intro.adoc
@@ -2,6 +2,9 @@
 :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. http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or ag [...]
 
 
+CAUTION: TODO: v2: this has been removed, instead see integtest module for corresponding utilities to perform the same.
+
+
 The Apache Isis Maven plugin defines three goals:
 
 * `validate` +
@@ -81,6 +84,3 @@ We recommend the following:
 
 * run the `xsd` plugin in a new `xsd` submodule; contributed actions are irrelevant for this particular goal; having a separate submodule allows the configuration of both the `xsd` goal (to generate the XSD schemas) and any other XSD-related configuration to be kept in a single place.
 
-The link:https://github.com/apache/isis-app-simpleapp[SimpleApp archetype] reflects these recommendations for the `validate` and `swagger` goals.
-You can find an example of the `xsd` plugin in the (non-ASF) http://github.com/isisaddons/isis-app-todoapp[Isis addons' todoapp] application.
-
diff --git a/persistence/jdo/src/main/adoc/modules/ROOT/pages/configuring/disabling-persistence-by-reachability.adoc b/persistence/jdo/src/main/adoc/modules/ROOT/pages/configuring/disabling-persistence-by-reachability.adoc
index 9059bcf..d21c4bb 100644
--- a/persistence/jdo/src/main/adoc/modules/ROOT/pages/configuring/disabling-persistence-by-reachability.adoc
+++ b/persistence/jdo/src/main/adoc/modules/ROOT/pages/configuring/disabling-persistence-by-reachability.adoc
@@ -26,12 +26,10 @@ We therefore recommend that you disable persistence-by-reachability by adding th
 isis.persistor.datanucleus.impl.datanucleus.persistenceByReachabilityAtCommit=false
 ----
 
-This change has been made to both the link:https://github.com/apache/isis-app-helloworld[HelloWorld] and link:https://github.com/apache/isis-app-simpleapp[SimpleApp] archetypes.
+This change has been made to both the link:https://github.com/apache/isis-app-helloworld[HelloWorld] and link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter apps.
 
 If you do disable this feature, then you will (of course) need to ensure that you explicitly persist all entities using the `RepositoryService#persist(.)` or `RepositoryService#persistAndFlush(.)` methods.
 
-
-
 == The issue in more detail
 
 Consider these entities (http://yuml.me/edit/b8681268[yuml.me/b8681268]):
diff --git a/persistence/jdo/src/main/adoc/modules/ROOT/pages/configuring/persistence-xml.adoc b/persistence/jdo/src/main/adoc/modules/ROOT/pages/configuring/persistence-xml.adoc
index b50127d..f553ea5 100644
--- a/persistence/jdo/src/main/adoc/modules/ROOT/pages/configuring/persistence-xml.adoc
+++ b/persistence/jdo/src/main/adoc/modules/ROOT/pages/configuring/persistence-xml.adoc
@@ -8,7 +8,7 @@ DataNucleus will for itself also and read the `META-INF/persistence.xml`.
 In theory it can hold mappings and even connection strings.
 However, with Apache Isis we tend to use annotations instead and externalize connection strings. so its definition is extremely simply, specifying just the name of the "persistence unit".
 
-Here's the one provided by the link:https://github.com/apache/isis-app-simpleapp[SimpleApp archetype]:
+Here's the one provided by the link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter app:
 
 [source,xml]
 ----
diff --git a/security/adoc/modules/ROOT/pages/about.adoc b/security/adoc/modules/ROOT/pages/about.adoc
index 94befe2..c42d4fa 100644
--- a/security/adoc/modules/ROOT/pages/about.adoc
+++ b/security/adoc/modules/ROOT/pages/about.adoc
@@ -32,7 +32,7 @@ Shiro in turn uses the concept of a _realm_ as a source for both authentication
 WARNING: TODO: v2: Spring Boot requires that shiro.ini is on classpath, not in WEB-INF.
 
 Shiro ships with a simple text-based realm -- the `IniRealm` -- which reads users (and password), user roles and role permissions from the `WEB-INF/shiro.ini` file.
-The link:https://github.com/apache/isis-app-helloworld[HelloWorld] and link:https://github.com/apache/isis-app-simpleapp[SimpleApp] archetypes are both configured to use this realm.
+The link:https://github.com/apache/isis-app-helloworld[HelloWorld] and link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter apps are both configured to use this realm.
 
 Shiro also ships with an implementation of an LDAP-based realm; LDAP is often used to manage user/passwords and corresponding user groups.
 Apache Isis in turn extends this with its `IsisLdapRealm`, which provides more flexibility for both group/role and role/permissions management.
diff --git a/security/shiro/src/main/adoc/modules/shiro/pages/about/configuring-isis-to-use-shiro.adoc b/security/shiro/src/main/adoc/modules/shiro/pages/about/configuring-isis-to-use-shiro.adoc
index 4692cdd..657f186 100644
--- a/security/shiro/src/main/adoc/modules/shiro/pages/about/configuring-isis-to-use-shiro.adoc
+++ b/security/shiro/src/main/adoc/modules/shiro/pages/about/configuring-isis-to-use-shiro.adoc
@@ -9,7 +9,7 @@ The Shiro security mechanism is an integration wih Apache Shiro that implements
 
 [TIP]
 ====
-Both the link:https://github.com/apache/isis-app-helloworld[HelloWorld] and link:https://github.com/apache/isis-app-simpleapp[SimpleApp] archetypes are pre-configured to use Apache Shiro, so much of what follows may well have been set up already.
+Both the link:https://github.com/apache/isis-app-helloworld[HelloWorld] and link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter apps are pre-configured to use Apache Shiro, so much of what follows may well have been set up already.
 ====
 
 
@@ -17,7 +17,9 @@ Both the link:https://github.com/apache/isis-app-helloworld[HelloWorld] and link
 
 To tell Apache Isis to use Shiro when using an xref:refguide:applib-cm:rgcms.adoc#__rgcms_classes_AppManifest-bootstrapping_bootstrapping_AppManifestAbstract[`AppManifestAbstract.BUILDER`], simply specify the "authMechanism" as "shiro".
 
-For example, the link:https://github.com/apache/isis-app-helloworld[HelloWorld archetype] bootstraps using:
+For example, the link:https://github.com/apache/isis-app-helloworld[HelloWorld]  starter app bootstraps using:
+
+// TODO: v2: this is out of date.
 
 [source,java]
 ----
diff --git a/security/shiro/src/main/adoc/modules/shiro/pages/about/ini-realm.adoc b/security/shiro/src/main/adoc/modules/shiro/pages/about/ini-realm.adoc
index 59b7486..0493fa7 100644
--- a/security/shiro/src/main/adoc/modules/shiro/pages/about/ini-realm.adoc
+++ b/security/shiro/src/main/adoc/modules/shiro/pages/about/ini-realm.adoc
@@ -10,7 +10,7 @@ Probably the simplest realm to use is Shiro's built-in `IniRealm`, which reads f
 
 This is suitable for prototyping, but isn't intended for production use, if only because user/password credentials are stored in plain text.
 Nevertheless, it's a good starting point.
-The app generated by both the link:https://github.com/apache/isis-app-helloworld[HelloWorld] and link:https://github.com/apache/isis-app-simpleapp[SimpleApp]  archetypes are configured to use this realm.
+The app generated by both the link:https://github.com/apache/isis-app-helloworld[HelloWorld] and link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter apps are configured to use this realm.
 
 The diagram below shows the Isis and components involved:
 
diff --git a/starters/adoc/modules/helloworld/pages/about.adoc b/starters/adoc/modules/helloworld/pages/about.adoc
index 6238135..eca5cbc 100644
--- a/starters/adoc/modules/helloworld/pages/about.adoc
+++ b/starters/adoc/modules/helloworld/pages/about.adoc
@@ -232,7 +232,7 @@ src/main/java/
   META-INF/
     persistence.xml                     <!--9-->
 ----
-<1> For simplicity, all the Java source files generated by the archetype are placed in a `domainapp` top-level package.
+<1> For simplicity, all the Java source files reside in a `domainapp` top-level package.
 Change as required.
 <2> Defines the 'hello' module.
 Apache Isis can be used for both microservice and monolithic architectures, but for the latter it encourages "modular monoliths" from the start.
diff --git a/starters/adoc/modules/simpleapp/pages/about.adoc b/starters/adoc/modules/simpleapp/pages/about.adoc
index be2f9dc..19a8b10 100644
--- a/starters/adoc/modules/simpleapp/pages/about.adoc
+++ b/starters/adoc/modules/simpleapp/pages/about.adoc
@@ -358,7 +358,7 @@ src/main/java/
   META-INF/
     persistence.xml                     <!--8-->
 ----
-<1> For simplicity, all the Java source files generated by the archetype are placed in a `domainapp` top-level package.
+<1> For simplicity, all the Java source files reside in a `domainapp` top-level package.
 Change as required.
 <2> Defines the 'simple' module.
 Apache Isis can be used for both microservice and monolithic architectures, but for the latter it encourages "modular monoliths" from the start.
diff --git a/testing/fixtures/adoc/modules/fixtures/pages/fixture-scripts/api-and-usage.adoc b/testing/fixtures/adoc/modules/fixtures/pages/fixture-scripts/api-and-usage.adoc
index 2ec15f2..169caa6 100644
--- a/testing/fixtures/adoc/modules/fixtures/pages/fixture-scripts/api-and-usage.adoc
+++ b/testing/fixtures/adoc/modules/fixtures/pages/fixture-scripts/api-and-usage.adoc
@@ -18,7 +18,7 @@ This is annotated to be rendered on the secondary "Prototyping" menu.
 
 The behaviour of this domain menu service can be refined by providing an implementation of the optional xref:refguide:applib-svc:testing/FixtureScriptsSpecificationProvider.adoc[`FixtureScriptsSpecificationProvider`] SPI.
 
-For example, here's the `FixtureScriptsSpecificationProvider` service that's generated by the link:https://github.com/apache/isis-app-simpleapp[SimpleApp archetype]:
+For example, here's the `FixtureScriptsSpecificationProvider` service that's generated by the link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter apps:
 
 [source,java]
 ----
@@ -88,9 +88,6 @@ You are free, of course, to add additional "convenience" actions into it if you
 
 Let's now look at the `FixtureScript` class, where there's a bit more going on.
 
-
-
-
 == `FixtureScript`
 
 A fixture script is ultimately just a block of code that can be executed, so it's up to you how you implement it to set up the system.
@@ -98,7 +95,7 @@ However, we strongly recommend that you use it to invoke actions on business obj
 That way, the fixture script will remain valid even if the underlying implementation of the system changes in the future.
 
 For example, here's a fixture script called `RecreateSimpleObjects`.
-(This used to be part of the link:https://github.com/apache/isis-app-simpleapp[SimpleApp archetype], though the archetype now ships with a more sophisticated design, discussed below):
+(This used to be part of the link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter app, though it now has a more sophisticated design, discussed below):
 
 [source,java]
 ----
@@ -152,7 +149,6 @@ Note that although the fixture script is a view model, it's fine to simply insta
 <9> calling another fixture script (`SimpleObjectCreate`) using the provided `ExecutionContext`
 <10> adding the created object to the list, for the calling object to use.
 
-
 Because this script has exposed a "number" property, it's possible to set this from within the UI.
 For example:
 
@@ -161,13 +157,13 @@ image::prompt-specifying-number.png[width="700px",link="{imagesdir}/prompt-speci
 When this is executed, the framework will parse the text and attempt to reflectively set the corresponding properties on the fixture result.
 So, in this case, when the fixture script is executed we actually get 6 objects created.
 
-
-
 == Using within Tests
 
 Fixture scripts can be called from integration tests just the same way that fixture scripts can call one another.
 
-For example, here's an integration test from the link:https://github.com/apache/isis-app-simpleapp[SimpleApp archetype]:
+For example, here's an integration test from the link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter app:
+
+// TODO: v2: this will be out of date, no doubt.
 
 [source,java]
 ----
@@ -204,8 +200,6 @@ public class SimpleObjectIntegTest extends SimpleAppIntegTest {
 <4> wrap the object (to simulate being interacted with through the UI)
 <5> inject the `FixtureScripts` domain service (just like any other domain service)
 
-
-
 == Personas and Builders
 
 Good integration tests are probably the best way to understand the behaviour of the domain model: better, even, than reading the code itself.
@@ -249,7 +243,7 @@ public interface PersonaWithFinder<T> {
 }
 ----
 
-The link:https://github.com/apache/isis-app-simpleapp[SimpleApp archetype] provides a sample implementation of these interfaces:
+The link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter app provides a sample implementation of these interfaces:
 
 [source,java]
 ----
diff --git a/viewers/wicket/adoc/modules/ROOT/pages/layout/file-based.adoc b/viewers/wicket/adoc/modules/ROOT/pages/layout/file-based.adoc
index 51d6f78..ee6580c 100644
--- a/viewers/wicket/adoc/modules/ROOT/pages/layout/file-based.adoc
+++ b/viewers/wicket/adoc/modules/ROOT/pages/layout/file-based.adoc
@@ -458,7 +458,7 @@ Ensure the following is defined in the dom project's `pom.xml`:
 </resources>
 ----
 
-If using an Apache Isis link:https://github.com/apache/isis-app-helloworld[HelloWorld] link:https://github.com/apache/isis-app-simpleapp[SimpleApp] archetypes, then the POM is already correctly configured.
+If using an Apache Isis link:https://github.com/apache/isis-app-helloworld[HelloWorld] link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter app, then the POM is already correctly configured.
 
 
 
diff --git a/viewers/wicket/adoc/modules/ROOT/pages/menubars-layout/file-based.adoc b/viewers/wicket/adoc/modules/ROOT/pages/menubars-layout/file-based.adoc
index cc9b2b8..a2eedfe 100644
--- a/viewers/wicket/adoc/modules/ROOT/pages/menubars-layout/file-based.adoc
+++ b/viewers/wicket/adoc/modules/ROOT/pages/menubars-layout/file-based.adoc
@@ -37,7 +37,7 @@ image::/menubars/020-download.png[width="400px",link="{imagesdir}/menubars/020-d
 The "Default" layout is that currently in use, while the "Fallback" layout is that provided only from the annotations.
 Initially these are identical.
 
-For example, here's a fragment of that provided by the simpleapp archetype:
+For example, here's a fragment of that provided by the link:https://github.com/apache/isis-app-simpleapp[SimpleApp] starter app:
 
 [source,xml]
 ----


[isis] 06/09: ISIS-2062: consistency of 'hello world' app -> HelloWorld

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

danhaywood pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git

commit 37fba978c42e2cf43b4e0e10f9321ef452b18e49
Author: danhaywood <da...@haywood-associates.co.uk>
AuthorDate: Fri Jan 31 18:08:50 2020 +0000

    ISIS-2062: consistency of 'hello world' app -> HelloWorld
---
 antora/toc/modules/ROOT/pages/about.adoc         | 2 +-
 antora/toc/modules/ROOT/partials/module-nav.adoc | 2 +-
 starters/adoc/modules/simpleapp/pages/about.adoc | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/antora/toc/modules/ROOT/pages/about.adoc b/antora/toc/modules/ROOT/pages/about.adoc
index 971b5df..158765b 100644
--- a/antora/toc/modules/ROOT/pages/about.adoc
+++ b/antora/toc/modules/ROOT/pages/about.adoc
@@ -21,7 +21,7 @@
 [discrete]
 == Starter Apps
 
-* xref:starters:helloworld:about.adoc[Hello World]
+* xref:starters:helloworld:about.adoc[HelloWorld]
 * xref:starters:simpleapp:about.adoc[SimpleApp]
 
 _Resources_
diff --git a/antora/toc/modules/ROOT/partials/module-nav.adoc b/antora/toc/modules/ROOT/partials/module-nav.adoc
index a80e452..4243913 100644
--- a/antora/toc/modules/ROOT/partials/module-nav.adoc
+++ b/antora/toc/modules/ROOT/partials/module-nav.adoc
@@ -7,7 +7,7 @@
 
 * Starter Apps
 
-** xref:starters:helloworld:about.adoc[Hello World]
+** xref:starters:helloworld:about.adoc[HelloWorld]
 ** xref:starters:simpleapp:about.adoc[SimpleApp]
 
 ** Resources
diff --git a/starters/adoc/modules/simpleapp/pages/about.adoc b/starters/adoc/modules/simpleapp/pages/about.adoc
index 19a8b10..b10944f 100644
--- a/starters/adoc/modules/simpleapp/pages/about.adoc
+++ b/starters/adoc/modules/simpleapp/pages/about.adoc
@@ -3,7 +3,7 @@
 
 The quickest way to get started building an application "for real" is to use the `simpleapp` starter app.
 
-As with the xref:starters:helloworld:about.adoc[helloworld] startre app, this will download a very simple one-class domain model, namely the `SimpleObject` entity and a supporting `SimpleObjects` domain service.
+As with the xref:starters:helloworld:about.adoc[HelloWorld] startre app, this will download a very simple one-class domain model, namely the `SimpleObject` entity and a supporting `SimpleObjects` domain service.
 
 However, the app also provides more structure to assist you as your application grows, with multiple Maven modules, and examples of unit tests, integration tests and BDD (cucumber) specs.
 


[isis] 01/09: ISIS-2094: fixes to the verify-isis-release.sh script

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

danhaywood pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git

commit 9b3a9b671fe184cbc921cdf293768336294f8e97
Author: danhaywood <da...@haywood-associates.co.uk>
AuthorDate: Fri Jan 31 15:43:04 2020 +0000

    ISIS-2094: fixes to the verify-isis-release.sh script
    
    ... still need to test it, mind
---
 scripts/verify-isis-release.sh | 89 +++++++++++++++++++++---------------------
 1 file changed, 45 insertions(+), 44 deletions(-)

diff --git a/scripts/verify-isis-release.sh b/scripts/verify-isis-release.sh
index 4f4c7f7..671c36f 100755
--- a/scripts/verify-isis-release.sh
+++ b/scripts/verify-isis-release.sh
@@ -8,13 +8,15 @@
 #
 #
 # prereqs:
-#    curl or wget
+#    curl
 #    gpg
 #    unzip
-#    jdk 7
-#    mvn 3.5.0+
+#    jdk 8
+#    mvn 3.6.0+
 #
 
+# shellcheck disable=SC2164
+
 _execmustpass(){
     echo $@
     $@
@@ -63,7 +65,10 @@ _unpack(){
 _build(){
     echo 'Removing Isis from local repo '$module
     rm -rf ~/.m2/repository/org/apache/isis
-    for module in ./isis*/ ./*archetype*/
+
+    echo 'Building'
+    # previously there were multiple directories, now just the one.
+    for module in ./isis*/
     do
         pushd $module
         _execmustpass mvn clean install -Dskip.git
@@ -71,40 +76,36 @@ _build(){
     done
 }
 
-_generate_simpleapp(){
-    ISISCPN=simpleapp
-    rm -rf test-$ISISCPN
-    mkdir test-$ISISCPN
-    pushd test-$ISISCPN
-
-    _execmustpass mvn archetype:generate  \
-        -D archetypeCatalog=local \
-        -D groupId=com.mycompany \
-        -D artifactId=myapp \
-        -D archetypeGroupId=org.apache.isis.archetype \
-        -D archetypeArtifactId=$ISISCPN-archetype \
-        -B
-
-    pushd myapp
+_download_simpleapp(){
+    APP=simpleapp
+    BRANCH=master
+
+    rm -rf test-$APP
+    mkdir test-$APP
+    pushd test-$APP
+
+    REPO=isis-app-$APP
+    curl "https://codeload.github.com/apache/$REPO/zip/$BRANCH" | jar xv
+    mv $REPO-$BRANCH $REPO
+
+    pushd $REPO
     _execmustpass mvn clean install
     popd; popd
 }
 
-_generate_helloworld(){
-    ISISCPN=helloworld
-    rm -rf test-$ISISCPN
-    mkdir test-$ISISCPN
-    pushd test-$ISISCPN
-
-    _execmustpass mvn archetype:generate  \
-        -D archetypeCatalog=local \
-        -D groupId=com.mycompany \
-        -D artifactId=myapp \
-        -D archetypeGroupId=org.apache.isis.archetype \
-        -D archetypeArtifactId=$ISISCPN-archetype \
-        -B
-
-    pushd myapp
+_download_helloworld(){
+    APP=helloworld
+    BRANCH=master
+
+    rm -rf test-$APP
+    mkdir test-$APP
+    pushd test-$APP
+
+    REPO=isis-app-$APP
+    curl "https://codeload.github.com/apache/$REPO/zip/$BRANCH" | jar xv
+    mv $REPO-$BRANCH $REPO
+
+    pushd $REPO
     _execmustpass mvn clean install
     popd; popd
 }
@@ -139,8 +140,6 @@ fi
 
 cat <<EOF >/tmp/url.txt
 http://repository.apache.org/content/repositories/orgapacheisis-$NEXUSREPONUM/org/apache/isis/core/isis/$VERSION/isis-$VERSION-source-release.zip
-http://repository.apache.org/content/repositories/orgapacheisis-$NEXUSREPONUM/org/apache/isis/archetype/helloworld-archetype/$VERSION/helloworld-archetype-$VERSION-source-release.zip
-http://repository.apache.org/content/repositories/orgapacheisis-$NEXUSREPONUM/org/apache/isis/archetype/simpleapp-archetype/$VERSION/simpleapp-archetype-$VERSION-source-release.zip
 EOF
 
 # The work starts here
@@ -148,21 +147,23 @@ _download
 _verify
 _unpack
 _build
-_generate_simpleapp
-_generate_helloworld
+_download_simpleapp
+_download_helloworld
 
 # print instructions for final testing
 clear
 cat <<EOF
 
-# Test out simpleapp using:
-pushd test-simpleapp/myapp
-mvn -pl webapp jetty:run
+# Test out helloworld using:
+pushd test-helloworld/isis-app-helloworld
+mvn clean install
+mvn spring-boot:run
 popd
 
-# Test out helloworld using:
-pushd test-helloworld/myapp
-mvn jetty:run
+# Test out simpleapp using:
+pushd test-simpleapp/isis-app-simpleapp
+mvn clean install
+mvn -pl webapp spring-boot:run
 popd
 
 EOF
\ No newline at end of file


[isis] 08/09: ISIS-2062: updating docs

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

danhaywood pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git

commit 71a2e9ae3ed44b54c0b91591c558f2fed90edcec
Author: danhaywood <da...@haywood-associates.co.uk>
AuthorDate: Fri Jan 31 19:02:55 2020 +0000

    ISIS-2062: updating docs
---
 README.adoc                                        |   5 -
 antora/toc/modules/ROOT/pages/about.adoc           |   2 +-
 .../what-is-apache-isis/isis-in-pictures.adoc      |   3 +-
 .../what-is-apache-isis/screencasts-older.adoc     |   3 +-
 .../toc/modules/devguide/pages/ide/intellij.adoc   | 208 +++++++++------------
 ...mn-1.8.0-to-1.9.0_specify-all-dom-packages.adoc |   2 +-
 .../modules/btb/pages/deployment/neo4j.adoc        |   4 +-
 .../philosophy/hexagonal-architecture-addons.png   | Bin 100666 -> 114818 bytes
 .../philosophy/hexagonal-architecture.pptx         | Bin 263049 -> 259626 bytes
 .../framework-provided.adoc                        |   3 +-
 .../modules/fun/pages/building-blocks/modules.adoc |  31 ++-
 .../types-of-domain-objects/domain-services.adoc   |   5 +-
 .../types-of-domain-objects/view-models.adoc       |  19 +-
 .../apache-isis-vs/event-sourcing.adoc             |   1 -
 .../principles/isis-itself/focuses-on-its-usp.adoc |   1 -
 .../domain-services/registering.adoc               |   6 +-
 .../fun/pages/programming-model/properties.adoc    |   4 +-
 .../pages/programming-model/view-models/dto.adoc   |   2 +-
 .../view-models/dto/generating-xsds.adoc           |   6 +-
 .../main/adoc/modules/applib-ant/pages/Column.adoc |   2 +-
 .../main/adoc/modules/applib-ant/pages/Digits.adoc |   2 +-
 .../pages/DomainServiceLayout/menuOrder.adoc       |   2 +-
 .../adoc/modules/applib-ant/pages/HomePage.adoc    |  14 +-
 .../main/adoc/modules/applib-ant/pages/Inject.adoc |   2 +-
 .../pages/PropertyLayout/labelPosition.adoc        |   2 +-
 .../modules/applib-ant/pages/XmlRootElement.adoc   |   2 +-
 .../pages/classes/AppManifest-bootstrapping.adoc   |   8 +-
 .../applib-cm/pages/methods/prefixes/choices.adoc  |   2 +-
 .../applib-cm/pages/methods/prefixes/default.adoc  |   4 +-
 .../applib-cm/pages/methods/reserved/cssClass.adoc |   2 +-
 .../applib-cm/pages/methods/reserved/disable.adoc  |   6 +-
 .../applib-cm/pages/methods/reserved/iconName.adoc |   2 +-
 .../applib-cm/pages/methods/reserved/title.adoc    |   2 +-
 .../application-layer-api/BackgroundService.adoc   |   2 +-
 .../pages/core-domain-api/Scratchpad.adoc          |   2 +-
 .../persistence-layer-api/IsisJdoSupport.adoc      |   2 +-
 .../persistence-layer-api/RepositoryService.adoc   |   2 +-
 .../ErrorReportingService.adoc                     |   2 +-
 .../presentation-layer-spi/UserProfileService.adoc |   2 +-
 .../applib-svc/pages/testing/SudoService.adoc      |   2 +-
 .../ContentNegotiationService.adoc                 |   2 +-
 .../secman/adoc/modules/secman/pages/about.adoc    |   1 -
 .../adoc/modules/secman/pages/shiro-realm.adoc     |   2 +-
 .../src/main/doc/modules/mvn/pages/intro.adoc      |   4 -
 .../src/main/doc/modules/mvn/pages/xsd.adoc        |   6 +-
 .../adoc/modules/shiro/pages/about/ini-realm.adoc  |   2 +-
 .../pages/fixture-scripts/sudo-service.adoc        |   2 +-
 .../adoc/modules/ROOT/pages/ro-spec.adoc           |   2 +-
 .../action-invocation.adoc                         |   4 +-
 .../simplified-representations/domain-object.adoc  |   2 +-
 .../object-collection.adoc                         |   2 +-
 .../ROOT/pages/customisation/brand-logo.adoc       |   2 +-
 .../pages/customisation/tweaking-css-classes.adoc  |   2 +-
 .../ROOT/pages/features/blob-attachments.adoc      |   2 +-
 .../ROOT/pages/features/bookmarked-pages.adoc      |   2 +-
 .../ROOT/pages/hints-and-tips/per-user-themes.adoc |   2 +-
 .../ROOT/pages/layout/annotation-based.adoc        |   2 +-
 .../adoc/modules/ROOT/pages/layout/file-based.adoc |   8 +-
 58 files changed, 194 insertions(+), 226 deletions(-)

diff --git a/README.adoc b/README.adoc
index ccf0ae4..b1b97a2 100644
--- a/README.adoc
+++ b/README.adoc
@@ -22,11 +22,6 @@ toc::[]
 == Core Features
 
 Isis automatically generates the UI from the domain classes.
-The following screenshots are taken from the Isis Addons' http://github.com/isisaddons/isis-app-todoapp[todoapp example], which you are free to fork and use as you will.
-The corresponding domain classes from which this UI was built can be found https://github.com/isisaddons/isis-app-todoapp/tree/0669d6e2acc5bcad1d9978a4514a17bcf7beab1f/dom/src/main/java/todoapp/dom/module/todoitem[here].
-
-The todoapp also integrates with a number of other modules provided by the link:https://platform.incode.org[Incode Platform].
-Please note that these modules are not part of ASF, but they *are* all licensed under Apache License 2.0 and are maintained by Apache the Isis committers.
 
 === Sign-in
 
diff --git a/antora/toc/modules/ROOT/pages/about.adoc b/antora/toc/modules/ROOT/pages/about.adoc
index 158765b..9357cf8 100644
--- a/antora/toc/modules/ROOT/pages/about.adoc
+++ b/antora/toc/modules/ROOT/pages/about.adoc
@@ -158,7 +158,7 @@ _Analysis_
 
 _Example Apps_
 
-* https://github.com/isisaddons/isis-app-todoapp[TodoApp]
+* https://github.com/apache/isis-app-todoapp[TodoApp]
 * https://github.com/isisaddons/isis-app-kitchensink[Kitchensink]
 * https://github.com/isisaddons/isis-app-quickstart[Quickstart]
 
diff --git a/antora/toc/modules/ROOT/pages/what-is-apache-isis/isis-in-pictures.adoc b/antora/toc/modules/ROOT/pages/what-is-apache-isis/isis-in-pictures.adoc
index 6701ab4..69c6136 100644
--- a/antora/toc/modules/ROOT/pages/what-is-apache-isis/isis-in-pictures.adoc
+++ b/antora/toc/modules/ROOT/pages/what-is-apache-isis/isis-in-pictures.adoc
@@ -132,7 +132,7 @@ image::what-is-apache-isis/isis-in-pictures/110-docx.png[width="800px",link="{im
 
 == Security, Auditing and more...
 
-As well as providing extensions to the UI, the (non ASF) Isis Addons provide a rich set of modules to support various cross-cutting concerns.
+As well as providing extensions to the UI, the xref:extensions:ROOT:about.adoc[extensions] provide a rich set of modules to support various cross-cutting concerns.
 
 Under the activity menu are four sets of services which provide support on user session logging/auditing, command module (profiling and replay), audit module (audit object changes) and (inter-system) event publishing:
 
@@ -148,7 +148,6 @@ image::what-is-apache-isis/isis-in-pictures/130-security.png[width="800px",link=
 
 In the prototyping menu is the ability to download a GNU gettext `.po` file for translation.
 This file can then be translated into multiple languages so that your app can support different locales.
-Note that this feature is part of Apache Isis core (it is not in Isis Addons):
 
 image::what-is-apache-isis/isis-in-pictures/140-i18n.png[width="800px",link="{imagesdir}/what-is-apache-isis/isis-in-pictures/140-i18n.png"]
 
diff --git a/antora/toc/modules/ROOT/pages/what-is-apache-isis/screencasts-older.adoc b/antora/toc/modules/ROOT/pages/what-is-apache-isis/screencasts-older.adoc
index 7151322..e12dafc 100644
--- a/antora/toc/modules/ROOT/pages/what-is-apache-isis/screencasts-older.adoc
+++ b/antora/toc/modules/ROOT/pages/what-is-apache-isis/screencasts-older.adoc
@@ -25,9 +25,8 @@ _This screencast is for Apache Isis v1.1.0 (ie very out of date)_
 
 |Todo app walkthrough (v.1.4.0) +
 
-_A run-through of the main features of the (non-ASF) http://github.com/isisaddons/isis-app-todoapp[Isis addons' todoapp]_ +
+_A run-through of the main features of the http://github.com/apache/isis-app-todoapp[TodoApp]_
 
-_nb: the todoapp was previously called the 'quickstart' app_
 
 |video::2leQwavWxeg[youtube,width="420px",height="210px"]
 
diff --git a/antora/toc/modules/devguide/pages/ide/intellij.adoc b/antora/toc/modules/devguide/pages/ide/intellij.adoc
index 52e9f8b..c73e8e6 100644
--- a/antora/toc/modules/devguide/pages/ide/intellij.adoc
+++ b/antora/toc/modules/devguide/pages/ide/intellij.adoc
@@ -3,21 +3,18 @@
 :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. http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or ag [...]
 :page-partial:
 
-
-
-
 [NOTE]
 ====
-This material does not constitute an endorsement; JetBrains is not affiliated to Apache Software Foundation in any way.  JetBrains does however provide complimentary copies of the IntelliJ IDE to Apache committers.
+This material does not constitute an endorsement; JetBrains is not affiliated to Apache Software Foundation in any way.
+JetBrains does however provide complimentary copies of the IntelliJ IDE to Apache committers.
 ====
 
 This section describes how to install and setup JetBrains' IntelliJ IDEA, then how to import an application into IntelliJ and run it.
 
-
 == Installing and Setting up
 
-This section covers installation and setup. These notes/screenshots were prepared using IntelliJ Community Edition 14.1.x, but are believed to be compatible with more recent versions/other editions of the IDE.
-
+This section covers installation and setup.
+These notes/screenshots were prepared using IntelliJ Community Edition 14.1.x, but are believed to be compatible with more recent versions/other editions of the IDE.
 
 === Download and Install
 
@@ -58,12 +55,10 @@ Finally, if you are a trendy hipster, set the UI theme to Darcula:
 .IntelliJ Installation Wizard Set UI Theme
 image::intellij-idea/010-installing/070-set-ui-theme.png[width="600px",link="{imagesdir}/intellij-idea/010-installing/070-set-ui-theme.png"]
 
-
-
-
 === New Project
 
-In IntelliJ a project can contain multiple modules; these need not be physically located together.  (If you are previously an Eclipse user, you can think of it as similar to an Eclipse workspace).
+In IntelliJ a project can contain multiple modules; these need not be physically located together.
+(If you are previously an Eclipse user, you can think of it as similar to an Eclipse workspace).
 
 Start off by creating a new project:
 
@@ -76,7 +71,7 @@ We want to create a new *Java* project:
 .IntelliJ Create New Project - Create a Java project
 image::intellij-idea/020-create-new-project/020-java-project-setup-jdk.png[width="500px",link="{imagesdir}/intellij-idea/020-create-new-project/020-java-project-setup-jdk.png"]
 
-We therefore need to specify the JDK.  Apache Isis supports both Java 7 and Java 8.
+We therefore need to specify the JDK. Apache Isis supports both Java 7 and Java 8.
 
 
 .IntelliJ Create New Java Project - Select the JDK
@@ -94,35 +89,33 @@ Finally allow IntelliJ to create the directory for the new project:
 .IntelliJ Create New Project
 image::intellij-idea/020-create-new-project/060-create-dir.png[width="250px",link="{imagesdir}/intellij-idea/020-create-new-project/060-create-dir.png"]
 
-
-
 === File templates
 
-
-Next we recommend you import a set of standard file templates.  These are used to create new classes or supporting files:
+Next we recommend you import a set of standard file templates.
+These are used to create new classes or supporting files:
 
 .File templates
 image::intellij-idea/030-import-settings/040-file-templates.png[width="400px",link="{imagesdir}/intellij-idea/030-import-settings/040-file-templates.png"]
 
-The file templates are provided as a settings JAR file, namely *link:{attachmentsdir}/intellij/isis-settings-file-templates.jar[isis-settings-file-templates.jar]*.  Download this file.
+The file templates are provided as a settings JAR file, namely *link:{attachmentsdir}/intellij/isis-settings-file-templates.jar[isis-settings-file-templates.jar]*.
+Download this file.
 
 Next, import using `File > Import Settings`, specifying the directory that you have downloaded the file to:
 
 .IntelliJ Import Settings - Specify JAR file
 image::intellij-idea/030-import-settings/010-settings-import-jar.png[width="400px",link="{imagesdir}/intellij-idea/030-import-settings/010-settings-import-jar.png"]
 
-Select all the categories (there should just be one), and hit OK.  then hit restart.
-
+Select all the categories (there should just be one), and hit OK. then hit restart.
 
 [WARNING]
 ====
-If importing into IntelliJ 2017.2.3 two categories are shown - "File templates" and "File templates (schemes)". Select all the categories.
+If importing into IntelliJ 2017.2.3 two categories are shown - "File templates" and "File templates (schemes)".
+Select all the categories.
 
-Apparently no categories are shown if importing into IntelliJ 2016.1.1 Community Edition (and perhaps other 2016
-versions).  The file does import ok into IntelliJ 15.0.x, so we think this is a bug in the 2016 version.
+Apparently no categories are shown if importing into IntelliJ 2016.1.1 Community Edition (and perhaps other 2016 versions).
+The file does import ok into IntelliJ 15.0.x, so we think this is a bug in the 2016 version.
 
-The workaround is to extract the `.jar` file locally and copy the files into IntelliJ's `config` directory, somewhere
-in your home directory:
+The workaround is to extract the `.jar` file locally and copy the files into IntelliJ's `config` directory, somewhere in your home directory:
 
 * Windows `<User home>\.IdeaIC2016\config`
 * Linux `~/..IdeaIC2016/config`
@@ -130,11 +123,10 @@ in your home directory:
 
 ====
 
-
-
 === Live templates
 
-We also recommend you import a set  of live templates.  These are used to add new methods to existing classes:
+We also recommend you import a set of live templates.
+These are used to add new methods to existing classes:
 
 .Live templates
 image::intellij-idea/030-import-settings/050-live-templates.png[width="600px",link="{imagesdir}/intellij-idea/030-import-settings/050-live-templates.png"]
@@ -148,19 +140,16 @@ The live templates have a prefix of either:
 The live templates are also provided as a settings JAR file, namely *link:{attachmentsdir}/resources/intellij/isis-settings-live-templates.jar[isis-settings-live-templates.jar]*.
 Download and import (as for the previous settings JAR files).
 
-
-
-
 === Coding Standards
 
-Next, we suggest you import settings for standard ASF/Apache Isis coding conventions.  This file is also
-provided as a settings file, namely *link:{attachmentsdir}/intellij/isis-settings-code-style.jar[isis-settings-code-style.jar]*.  Download and import (as for the above settings JAR files).
-
-
+Next, we suggest you import settings for standard ASF/Apache Isis coding conventions.
+This file is also provided as a settings file, namely *link:{attachmentsdir}/intellij/isis-settings-code-style.jar[isis-settings-code-style.jar]*.
+Download and import (as for the above settings JAR files).
 
 === Other Settings (Compiler)
 
-There are also some other settings that influence the compiler.  We highly recommend you set these.
+There are also some other settings that influence the compiler.
+We highly recommend you set these.
 
 On the *Compiler* Settings page, ensure that `build automatically` is enabled (and optionally `compile independent modules in parallel`):
 
@@ -173,18 +162,13 @@ On the *Annotation Processors* page, enable and adjust for the 'default' setting
 .IntelliJ Annotation Processor Settings
 image::intellij-idea/040-other-settings-compiler/020-annotation-processor.png[width="700px",link="{imagesdir}/intellij-idea/040-other-settings-compiler/020-annotation-processor.png"]
 
-This setting enables the generation of the `Q*` classes for DataNucleus type-safe queries, as well as being required
-for frameworks such as xref:toc:devguide:project-lombok.adoc[Project Lombok].
+This setting enables the generation of the `Q*` classes for DataNucleus type-safe queries, as well as being required for frameworks such as xref:toc:devguide:project-lombok.adoc[Project Lombok].
 
 [NOTE]
 ====
 IntelliJ may also have inferred these settings for specific projects/modules when importing; review the list on the left to see if the default is overridden and fix/delete as required.
 ====
 
-
-
-
-
 === Other Settings (Maven)
 
 There are also some other settings for Maven that we recommend you adjust (though these are less critical):
@@ -199,7 +183,6 @@ Still on the Maven settings page, configure as follows:
 .IntelliJ Maven Settings - Configuration
 image::intellij-idea/042-other-settings-maven/020-maven-configuration.png[width="700px",link="{imagesdir}/intellij-idea/042-other-settings-maven/020-maven-configuration.png"]
 
-
 === Other Settings (Misc)
 
 These settings are optional but also recommended.
@@ -209,19 +192,20 @@ On the *auto import* page, check the `optimize imports on the fly` and `add unam
 .IntelliJ Maven Settings - Auto Import
 image::intellij-idea/044-other-settings-misc/010-auto-import.png[width="700px",link="{imagesdir}/intellij-idea/044-other-settings-misc/010-auto-import.png"]
 
-
-
-
 == Importing Maven Modules
 
-Let's load in some actual code!  We do this by importing the Maven modules.
+Let's load in some actual code!
+We do this by importing the Maven modules.
 
-First up, open up the Maven tool window (`View > Tool Windows > Maven Projects`).  You can then use the 'plus' button to add Maven modules.  In the screenshot you can see we've loaded in Apache Isis core; the modules are listed in the _Maven Projects_ window and corresponding (IntelliJ) modules are shown in the _Projects_ window:
+First up, open up the Maven tool window (`View > Tool Windows > Maven Projects`).
+You can then use the 'plus' button to add Maven modules.
+In the screenshot you can see we've loaded in Apache Isis core; the modules are listed in the _Maven Projects_ window and corresponding (IntelliJ) modules are shown in the _Projects_ window:
 
 .IntelliJ Maven Module Management - Importing Maven modules
 image::intellij-idea/100-maven-module-mgmt/010-maven-modules-view.png[width="730px",link="{imagesdir}/intellij-idea/100-maven-module-mgmt/010-maven-modules-view.png"]
 
-We can then import another module (from some other directory).  For example, here we are importing the Isis Addons' todoapp example:
+We can then import another module (from some other directory).
+For example, here we are importing the TodoApp example:
 
 
 .IntelliJ Maven Module Management - Importing another Module
@@ -232,11 +216,13 @@ You should then see the new Maven module loaded in the _Projects_ window and als
 .IntelliJ Maven Module Management -
 image::intellij-idea/100-maven-module-mgmt/030-other-module-added.png[width="730px",link="{imagesdir}/intellij-idea/100-maven-module-mgmt/030-other-module-added.png"]
 
-If any dependencies are already loaded in the project, then IntelliJ will automatically update the CLASSPATH to resolve to locally held modules (rather from `.m2/repository` folder).  So, for example (assuming that the `<version>` is correct, of course), the Isis todoapp will have local dependencies on the Apache Isis core.
+If any dependencies are already loaded in the project, then IntelliJ will automatically update the CLASSPATH to resolve to locally held modules (rather from `.m2/repository` folder).
+So, for example (assuming that the `<version>` is correct, of course), the Isis todoapp will have local dependencies on the Apache Isis core.
 
 You can press F4 (or use `File > Project Structure`) to see the resolved classpath for any of the modules loaded into the project.
 
-If you want to focus on one set of code (eg the Isis todoapp but not Apache Isis core) then you _could_ remove the module; but better is to ignore those modules.  This will remove them from the _Projects_ window but keep them available in the _Maven Projects_ window for when you next want to work on them:
+If you want to focus on one set of code (eg the Isis todoapp but not Apache Isis core) then you _could_ remove the module; but better is to ignore those modules.
+This will remove them from the _Projects_ window but keep them available in the _Maven Projects_ window for when you next want to work on them:
 
 .IntelliJ Maven Module Management - Ignoring Modules
 image::intellij-idea/100-maven-module-mgmt/040-ignoring-modules.png[width="730px",link="{imagesdir}/intellij-idea/100-maven-module-mgmt/040-ignoring-modules.png"]
@@ -252,26 +238,27 @@ Its classpath dependencies will be adjusted (eg to resolve to Apache Isis core f
 .IntelliJ Maven Module Management - Updated Projects Window
 image::intellij-idea/100-maven-module-mgmt/060-ignored-modules.png[width="730px",link="{imagesdir}/intellij-idea/100-maven-module-mgmt/060-ignored-modules.png"]
 
-
-
 == Running
 
 Let's see how to run both the app and the tests.
 
 === Running the App
 
-Once you've imported your Apache Isis application, we should run it.  We do this by creating a Run configuration, using `Run > Edit Configurations`.
+Once you've imported your Apache Isis application, we should run it.
+We do this by creating a Run configuration, using `Run > Edit Configurations`.
 
 Set up the details as follows:
 
 .IntelliJ Running the App - Run Configuration
 image::intellij-idea/110-running-the-app/010-run-configuration.png[width="600px",link="{imagesdir}/intellij-idea/110-running-the-app/010-run-configuration.png"]
 
-We specify the `Main class` to be `org.apache.isis.WebServer`; this is a wrapper around Jetty.  It's possible to pass program arguments to this (eg to automatically install fixtures), but for now leave this blank.
+We specify the `Main class` to be `org.apache.isis.WebServer`; this is a wrapper around Jetty.
+It's possible to pass program arguments to this (eg to automatically install fixtures), but for now leave this blank.
 
 Also note that `Use classpath of module` is the webapp module for your app, and that the `working directory` is `$MODULE_DIR$`.
 
-Next, and most importantly, configure the DataNucleus enhancer to run for your `dom` goal.  This can be done by defining a Maven goal to run before the app:
+Next, and most importantly, configure the DataNucleus enhancer to run for your `dom` goal.
+This can be done by defining a Maven goal to run before the app:
 
 .IntelliJ Running the App - Datanucleus Enhancer Goal
 image::intellij-idea/110-running-the-app/020-datanucleus-enhancer-goal.png[width="400px",link="{imagesdir}/intellij-idea/110-running-the-app/020-datanucleus-enhancer-goal.png"]
@@ -280,19 +267,23 @@ The `-o` flag in the goal means run off-line; this will run faster.
 
 [WARNING]
 ====
-If you forget to set up the enhancer goal, or don't run it on the correct (dom) module, then you will get all sorts of errors when you startup.  These usually manifest themselves as class cast exception in DataNucleus.
+If you forget to set up the enhancer goal, or don't run it on the correct (dom) module, then you will get all sorts of errors when you startup.
+These usually manifest themselves as class cast exception in DataNucleus.
 ====
 
-You should now be able to run the app using `Run > Run Configuration`.  The same configuration can also be used to debug the app if you so need.
+You should now be able to run the app using `Run > Run Configuration`.
+The same configuration can also be used to debug the app if you so need.
 
 [TIP]
 ====
-Under windows you may get 'Standard error from the DataNucleus tool + org.datanucleus.enhancer.DataNucleusEnhancer : The command line is too long' although 'fork=false' is set in pom.xml. Can be worked around via setting '-Dfork=false' before or after 'datanucleus:enhance -o'.
+Under windows you may get 'Standard error from the DataNucleus tool + org.datanucleus.enhancer.DataNucleusEnhancer : The command line is too long' although 'fork=false' is set in pom.xml.
+Can be worked around via setting '-Dfork=false' before or after 'datanucleus:enhance -o'.
 ====
 
 === Running the Unit Tests
 
-The easiest way to run the unit tests is just to right click on the `dom` module in the _Project Window_, and choose run unit tests.  Hopefully your tests will pass (!).
+The easiest way to run the unit tests is just to right click on the `dom` module in the _Project Window_, and choose run unit tests.
+Hopefully your tests will pass (!).
 
 .IntelliJ Running the App - Unit Tests Run Configuration
 image::intellij-idea/110-running-the-app/030-running-unit-tests.png[width="600px",link="{imagesdir}/intellij-idea/110-running-the-app/030-running-unit-tests.png"]
@@ -304,7 +295,6 @@ image::intellij-idea/110-running-the-app/040-running-unit-tests-run-configuratio
 
 Thereafter, you should run units by selecting this configuration (if you use the right click approach you'll end up with lots of run configurations, all similar).
 
-
 === Running the Integration Tests
 
 Integration tests can be run in the same way as unit tests, however the `dom` module must also have been enhanced.
@@ -322,8 +312,6 @@ image::intellij-idea/400-running-integtests/run-debug-configuration-single-modul
 
 If this radio button is set to one of the other options then you may obtain class loading issues; these result from IntelliJ attempting to run unit tests of the `dom` project that depend on test classes in that module, but using the classpath of the `integtests` module whereby the `dom` test-classes (`test-jar` artifact) are not exposed on the Maven classpath.
 
-
-
 [[intellij-hints-and-tips]]
 == Hints and Tips
 
@@ -341,16 +329,19 @@ This will let you search for any action just by typing its name.
 
 === Switch between Tools & Editors
 
-The Tool Windows are the views around the editor (to left, bottom and right).  It's possible to move these around to your preferred locations.
+The Tool Windows are the views around the editor (to left, bottom and right).
+It's possible to move these around to your preferred locations.
 
 * Use `alt-1` through `alt-9` (or `cmd-1` through `alt-9`) to select the tool windows
 ** Press it twice and the tool window will hide itself; so can use to toggle
-* If in the _Project Window_ (say) and hit enter on a file, then it will be shown in the editor, but (conveniently) the focus remains in the tool window.  To switch to the editor, just press `Esc`.
+* If in the _Project Window_ (say) and hit enter on a file, then it will be shown in the editor, but (conveniently) the focus remains in the tool window.
+To switch to the editor, just press `Esc`.
 ** If in the _Terminal Window_, you'll need to press `Shift-Esc`.
 * If on the editor and want to locate the file in (say) the _Project Window_, use `alt-F1`.
 * To change the size of any tool window, use `ctrl-shift-arrow`
 
-Using these shortcuts you can easily toggle between the tool windows and the editor, without using the mouse.  Peachy!
+Using these shortcuts you can easily toggle between the tool windows and the editor, without using the mouse.
+Peachy!
 
 === Navigating Around
 
@@ -373,7 +364,6 @@ Viewing the structure (ie outline) of a class
 * `ctrl-F12` will pop-up a dialog showing all members
 ** hit `ctrl-F12` again to also see inherited members
 
-
 === Editing
 
 * Extend selection using `ctrl-W`
@@ -388,15 +378,17 @@ Viewing the structure (ie outline) of a class
 
 === Intentions and Code Completion
 
-Massively useful is the "Intentions" popup; IntelliJ tries to guess what you might want to do.  You can activate this using`alt-enter`, whenever you see a lightbulb/tooltip in the margin of the current line.
+Massively useful is the "Intentions" popup; IntelliJ tries to guess what you might want to do.
+You can activate this using`alt-enter`, whenever you see a lightbulb/tooltip in the margin of the current line.
 
-Code completion usually happens whenever you type '.'.  You can also use `ctrl-space` to bring these up.
+Code completion usually happens whenever you type '.'.
+You can also use `ctrl-space` to bring these up.
 
-In certain circumstances (eg in methods0) you can also type `ctrl-shift-space` to get a smart list of methods etc that you might want to call.  Can be useful.
+In certain circumstances (eg in methods0) you can also type `ctrl-shift-space` to get a smart list of methods etc that you might want to call.
+Can be useful.
 
 Last, when invoking a method, use `ctrl-P` to see the parameter types.
 
-
 === Refactoring
 
 Loads of good stuff on the `Refactor` menu; most used are:
@@ -410,10 +402,10 @@ Loads of good stuff on the `Refactor` menu; most used are:
 
 If you can't remember all those shortcuts, just use `ctrl-shift-alt-T` (might want to rebind that to something else!) and get a context-sensitive list of refactorings available for the currently selected object
 
-
 === Plugins
 
-You might want to set up some additional plugins.  You can do this using `File > Settings > Plugins` (or equivalently `File > Other Settings > Configure Plugins`).
+You might want to set up some additional plugins.
+You can do this using `File > Settings > Plugins` (or equivalently `File > Other Settings > Configure Plugins`).
 
 Recommended are:
 
@@ -430,10 +422,10 @@ Some others you might like to explore are:
 .IntelliJ Plugins
 image::intellij-idea/050-some-plugins/020-some-plugins-confirmation.png[width="600px",link="{imagesdir}/intellij-idea/050-some-plugins/020-some-plugins-confirmation.png"]
 
-
 ==== Maven Helper Plugin
 
-This plugin provides a couple of great features.  One is better visualization of dependency trees (similar to Eclipse).
+This plugin provides a couple of great features.
+One is better visualization of dependency trees (similar to Eclipse).
 
 If you open a `pom.xml` file, you'll see an additional "Dependencies" tab:
 
@@ -451,7 +443,6 @@ This menu can also be bound to a keystroke so that it is available as a pop-up:
 
 image::intellij-idea/050-some-plugins/maven-helper/040-maven-quick-run.png[width="600px",link="{imagesdir}/intellij-idea/050-some-plugins/maven-helper/040-maven-quick-run.png"]
 
-
 === Troubleshooting
 
 When a Maven module is imported, IntelliJ generates its own project files (suffix `.ipr`), and the application is actually built from that.
@@ -466,27 +457,26 @@ To fix the issue, try:
 * restart, invalidating caches
 * hit StackOverflow (!)
 
-One thing worth knowing; IntelliJ actively scans the filesystem all the time.  It's therefore (almost always) fine to build the app from the Maven command line; IntelliJ will detect the changes and keep in sync.  If you want to force that, use `File > Synchronize`, `ctrl-alt-Y`.
+One thing worth knowing; IntelliJ actively scans the filesystem all the time.
+It's therefore (almost always) fine to build the app from the Maven command line; IntelliJ will detect the changes and keep in sync.
+If you want to force that, use `File > Synchronize`, `ctrl-alt-Y`.
 
 If you hit an error of "duplicate classes":
 
 image::intellij-idea/060-troubleshooting/010-duplicate-classes.png[width="600px",link="{imagesdir}/intellij-idea/060-troubleshooting/010-duplicate-classes.png"]
 
 then make sure you have correctly configured the xref:toc:devguide:about.adoc#other-settings-compiler[annotation processor]
-settings.  Pay attention in particular to the "Production sources directory" and "Test sources directory", that these
-are set up correctly.
-
-
-
+settings.
+Pay attention in particular to the "Production sources directory" and "Test sources directory", that these are set up correctly.
 
 == Faster turnaround times
 
 In this section are several options that will reduce the time it takes between making a source code edit and seeing the results in the running app. code/build/deploy/review feedback loop.
 
-
 === Using Grade to compile/enhance
 
-Running an Apache Isis application requires that the DataNucleus enhancer runs on the compiled bytecode.  As described xref:toc:devguide:about.adoc#running_the-app[above], the recommended way to do this with IntelliJ is to use a Run configuration that runs the enhancer goal prior to launch.
+Running an Apache Isis application requires that the DataNucleus enhancer runs on the compiled bytecode.
+As described xref:toc:devguide:about.adoc#running_the-app[above], the recommended way to do this with IntelliJ is to use a Run configuration that runs the enhancer goal prior to launch.
 
 Alternative, you can use the following `build.gradle` script in your `dom` module:
 
@@ -523,11 +513,11 @@ task copyClasses << {
 }
 ----
 
-The script is intended to be in the background as a daemon while editing/developing; whenever a change is made to any
-source code, gradle will automatically compile _and_ enhance the code.  In this way it eliminates the need to start up
-Maven and run the enhancer goal.
+The script is intended to be in the background as a daemon while editing/developing; whenever a change is made to any source code, gradle will automatically compile _and_ enhance the code.
+In this way it eliminates the need to start up Maven and run the enhancer goal.
 
-To use, you must disable the IntelliJ's automatic building of the 'dom' project.  This is done using:
+To use, you must disable the IntelliJ's automatic building of the 'dom' project.
+This is done using:
 `File > Settings > Build, Execution, Deployment > Compiler > Excludes`, and then exclude the `.../dom/src/main/java`
 directory:
 
@@ -545,16 +535,14 @@ from the command line (in the `dom` module).
 
 image::intellij-idea/070-advanced/004-gradle-output.png[width="600px",link="{imagesdir}/intellij-idea/070-advanced/004-gradle-output.png"]
 
-
-
-
 === Using Gradle for liveReload
 
 Similarly, gradle can be run to reduce the turn-around time when tweaking the UI (defined by the
- xref:vw:ROOT:layout.adoc#file-based[`*.layout.xml`] file for each domain class), when the app is running.
+xref:vw:ROOT:layout.adoc#file-based[`*.layout.xml`] file for each domain class), when the app is running.
 
-The framework will automatically notice any changes to `.layout.xml` files, but these are read from the classpath (the `target/classes` directory), not the source path.  With IntelliJ these can be copied over manually
-by invoking `Run > Reload Changed Classes`.  Once the browser is refreshed, the new layout will be rendered.
+The framework will automatically notice any changes to `.layout.xml` files, but these are read from the classpath (the `target/classes` directory), not the source path.
+With IntelliJ these can be copied over manually by invoking `Run > Reload Changed Classes`.
+Once the browser is refreshed, the new layout will be rendered.
 
 [NOTE]
 ====
@@ -562,14 +550,12 @@ We've occasionally noticed that this interferes with Wicket's own javascript - s
 The work-around is just to reload the page.
 ====
 
-
 To reduce the turn-around time there are therefore two steps to be automated:
 
 * the copying of the `.layout.xml` files over to the `target/classes` directory
 * the triggering of a page refresh by the browser.
 
-The `layouts.gradle` script takes care of the first of these; whenever a change is made to any `.layout.xml` file, gradle
-will automatically copy over the file to the `target/classes` directory:
+The `layouts.gradle` script takes care of the first of these; whenever a change is made to any `.layout.xml` file, gradle will automatically copy over the file to the `target/classes` directory:
 
 [source,groovy]
 .`layouts.gradle`
@@ -609,6 +595,7 @@ These scripts can be run together using:
 gradle -t --offline -b layouts.gradle &
 gradle -t --offline -b liveReload.gradle &
 ----
+
 from the command line (in the `dom` module):
 
 
@@ -628,23 +615,17 @@ You can confirm the script is loaded correctly using the web browser's developme
 
 image::intellij-idea/070-advanced/006-livereload-js.png[width="800px",link="{imagesdir}/intellij-idea/070-advanced/006-livereload-js.png"]
 
-
-
-
 === Setting up DCEVM
 
-link:http://github.com/dcevm/dcevm[DCEVM] enhances the JVM with true hot-swap adding/removing of methods as well as more
-reliable hot swapping of the implementation of existing methods.
+link:http://github.com/dcevm/dcevm[DCEVM] enhances the JVM with true hot-swap adding/removing of methods as well as more reliable hot swapping of the implementation of existing methods.
 
-In the context of Apache Isis, this is very useful for contributed actions and mixins and also view models; you should
-then be able to write these actions and have them be picked up without restarting the application.
+In the context of Apache Isis, this is very useful for contributed actions and mixins and also view models; you should then be able to write these actions and have them be picked up without restarting the application.
 
-Changing persisting domain entities is more problematic, for two reasons: the JDO/DataNucleus enhancer needs to run on
-domain entities, and also at runtime JDO/DataNucleus would need to rebuild its own metamodel.  You may find that adding
-actions will work, but adding new properties or collections is much less likely to.
+Changing persisting domain entities is more problematic, for two reasons: the JDO/DataNucleus enhancer needs to run on domain entities, and also at runtime JDO/DataNucleus would need to rebuild its own metamodel.
+You may find that adding actions will work, but adding new properties or collections is much less likely to.
 
-To set up DCEVM, download the appropriate JAR from the link:https://dcevm.github.io/[github page], and run the
-installer.  For example:
+To set up DCEVM, download the appropriate JAR from the link:https://dcevm.github.io/[github page], and run the installer.
+For example:
 
 [source,bash]
 ----
@@ -653,11 +634,9 @@ java -jar DCEVM-light-8u51-installer.jar
 
 [TIP]
 ====
-Be sure to run with appropriate privileges to be able to write to the installation directories of the JDK.  If running
-on Windows, that means running as `Administrator`.
+Be sure to run with appropriate privileges to be able to write to the installation directories of the JDK. If running on Windows, that means running as `Administrator`.
 ====
 
-
 After a few seconds this will display a dialog listing all installations of JDK that have been found:
 
 image::intellij-idea/070-advanced/010-dcevm-list-of-found-jdk-installations.png[width="600px",link="{imagesdir}/intellij-idea/070-advanced/010-dcevm-list-of-found-jdk-installations.png"]
@@ -676,12 +655,9 @@ Finally, in the run configuration, select the patched JDK:
 
 image::intellij-idea/070-advanced/040-dcevm-run-configuration.png[width="600px",link="{imagesdir}/intellij-idea/070-advanced/040-dcevm-run-configuration.png"]
 
-
-
-
 === Setting up JRebel
 
 See the repo for the (non-ASF) link:https://github.com/isisaddons/isis-jrebel-plugin[Isis JRebel] plugin.
 
-Note that JRebel is a commercial product, requiring a license.  At the time of writing there is also currently a
-non-commercial free license (though note this comes with some usage conditions).
+Note that JRebel is a commercial product, requiring a license.
+At the time of writing there is also currently a non-commercial free license (though note this comes with some usage conditions).
diff --git a/antora/toc/modules/mignotes/pages/mn-1.8.0-to-1.9.0/mn-1.8.0-to-1.9.0_specify-all-dom-packages.adoc b/antora/toc/modules/mignotes/pages/mn-1.8.0-to-1.9.0/mn-1.8.0-to-1.9.0_specify-all-dom-packages.adoc
index 0c3c8c6..6bde1dc 100644
--- a/antora/toc/modules/mignotes/pages/mn-1.8.0-to-1.9.0/mn-1.8.0-to-1.9.0_specify-all-dom-packages.adoc
+++ b/antora/toc/modules/mignotes/pages/mn-1.8.0-to-1.9.0/mn-1.8.0-to-1.9.0_specify-all-dom-packages.adoc
@@ -14,7 +14,7 @@ Apache Isis automatically scans for certain classes on the classpath in order to
 
 For the last of these we have tightened up the validation, to ensure that each package specified in the `isis.persistor.datanucleus.RegisterEntities.packagePrefix` key does indeed include at least one annotated entity.  This should include any domain classes for addon modules.
 
-For example, the (non-ASF) http://github.com/isisaddons/isis-app-todoapp[Isis addons' todoapp]'s configuration now reads:
+For example, the http://github.com/apache/isis-app-todoapp[TodoApp]'s configuration now reads:
 
 [source,ini]
 ----
diff --git a/api/adoc/userguide/modules/btb/pages/deployment/neo4j.adoc b/api/adoc/userguide/modules/btb/pages/deployment/neo4j.adoc
index f7332dc..1211773 100644
--- a/api/adoc/userguide/modules/btb/pages/deployment/neo4j.adoc
+++ b/api/adoc/userguide/modules/btb/pages/deployment/neo4j.adoc
@@ -6,9 +6,11 @@
 
 Apache Isis has experimental support for Neo4J, courtesy of DataNucleus' http://www.datanucleus.org/products/datanucleus/datastores/neo4j.html[Neo4J Datastore] implementation.
 
+//TODO: v2: need to port this over from http://github.com/isisaddons/isis-app-neoapp
+
 [TIP]
 ====
-In addition, the http://github.com/isisaddons/isis-app-neoapp[Isis addons' neoapp] (non-ASF) is configured to run with an embedded Neo4J server running alongside the Apache Isis webapp.
+The http://github.com/apache/isis-app-neoapp[neoapp] is configured to run with an embedded Neo4J server running alongside the Apache Isis webapp.
 ====
 
 The steps below describe the configuration steps required to update an existing app.
diff --git a/api/adoc/userguide/modules/fun/images/core-concepts/philosophy/hexagonal-architecture-addons.png b/api/adoc/userguide/modules/fun/images/core-concepts/philosophy/hexagonal-architecture-addons.png
index ff271e9..9be6ac1 100644
Binary files a/api/adoc/userguide/modules/fun/images/core-concepts/philosophy/hexagonal-architecture-addons.png and b/api/adoc/userguide/modules/fun/images/core-concepts/philosophy/hexagonal-architecture-addons.png differ
diff --git a/api/adoc/userguide/modules/fun/images/core-concepts/philosophy/hexagonal-architecture.pptx b/api/adoc/userguide/modules/fun/images/core-concepts/philosophy/hexagonal-architecture.pptx
index f6c7adb..d5f5453 100644
Binary files a/api/adoc/userguide/modules/fun/images/core-concepts/philosophy/hexagonal-architecture.pptx and b/api/adoc/userguide/modules/fun/images/core-concepts/philosophy/hexagonal-architecture.pptx differ
diff --git a/api/adoc/userguide/modules/fun/pages/available-domain-services/framework-provided.adoc b/api/adoc/userguide/modules/fun/pages/available-domain-services/framework-provided.adoc
index a630b80..28c1817 100644
--- a/api/adoc/userguide/modules/fun/pages/available-domain-services/framework-provided.adoc
+++ b/api/adoc/userguide/modules/fun/pages/available-domain-services/framework-provided.adoc
@@ -5,12 +5,11 @@
 
 
 Most framework domain services are API: they exist to provide support functionality to the application's domain objects and services.
-In this case an implementation of the service will be available, either by Apache Isis itself or by Isis Addons (non ASF).
+In this case an implementation of the service will be available, either in Apache Isis core or as an extension.
 
 Some framework domain services are SPI: they exist primarily so that the application can influence the framework's behaviour.
 In these cases there is (usually) no default implementation; it is up to the application to provide an implementation.
 
-
 General purpose:
 
 * xref:refguide:applib-svc:core-domain-api/ClockService.adoc[`ClockService`]
diff --git a/api/adoc/userguide/modules/fun/pages/building-blocks/modules.adoc b/api/adoc/userguide/modules/fun/pages/building-blocks/modules.adoc
index 82c7ca5..0a4a8cd 100644
--- a/api/adoc/userguide/modules/fun/pages/building-blocks/modules.adoc
+++ b/api/adoc/userguide/modules/fun/pages/building-blocks/modules.adoc
@@ -4,13 +4,30 @@
 
 
 We tend to use Maven modules as a way to group related domain objects together; we can then reason about all the classes in that module as a single unit.
-By convention there will be a single top-level package corresponding to the module.
 
-For example, the (non-ASF) link:https://platform.incode.org[Incode Platform^]'s http://platform.incode.org/modules/lib/excel/lib-excel.html[Excel] module has a top-level package of `org.incode.module.excel`.
-Within the module there may be various subpackages, but it's the module that defines the namespace.
+There will be a single top-level package corresponding to the module, and this will be aligned with the `<groupId>` and `<artifactId>` of the Maven module in which it resides
+For example, the xref:subdomains:excel:about.adoc[Excel subdomain] module has a top-level package of `org.apache.isis.subdomains.excel`.
+Within the module there may be various subpackages, but it's the top-level package that defines the namespace.
 
-[NOTE]
-====
-TODO: flesh out with details on how modules are used under Spring Boot.
-====
+In this top-level package there will also be a class annotated with Spring's link:https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/context/annotation/Configuration.html[@Configuration] annotation.
+The class is also often anntotated with link:https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/context/annotation/Import.html[@Import], through which the dependencies of this module may appear.
+And there is one other annotation that often appears, namely link:https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/context/annotation/ComponentScan.html[@ComponentScan].
+This indicates that the classpath should be scanned for domain services, entities and xref:testing:fixtures:about.adoc[fixture scripts].
 
+For example, if an application's customer module needs to use the aforementioned Excel subdomain model (perhaps to generate a downloadable report), then this would be expressed using:
+
+[source,java]
+----
+package com.mycompany.modules.customer;
+...
+
+@Configuration                                  // <1>
+@Import({
+    IsisModuleSubdomainsExcelApplib.class       // <2>
+})
+@ComponentScan                                  // <3>
+public class CustomerModule {}
+----
+<1> indicates that this is a module (so far as Spring Boot is concerned)
+<2> indicates a dependency on the Excel module (more precisely, its "applib")
+<3> indicates that the classpath be scanned to find domain services and entities etc under this package, eg a `Customer` entity or a `CustomerRepository` domain service.
diff --git a/api/adoc/userguide/modules/fun/pages/building-blocks/types-of-domain-objects/domain-services.adoc b/api/adoc/userguide/modules/fun/pages/building-blocks/types-of-domain-objects/domain-services.adoc
index da21331..6464217 100644
--- a/api/adoc/userguide/modules/fun/pages/building-blocks/types-of-domain-objects/domain-services.adoc
+++ b/api/adoc/userguide/modules/fun/pages/building-blocks/types-of-domain-objects/domain-services.adoc
@@ -46,11 +46,10 @@ xref:userguide:fun:programming-model.adoc#domain-services[here].
 
 It's worth extending the xref:userguide:fun:core-concepts.adoc#hexagonal-architecture[Hexagonal Architecture] to show where domain services fit in:
 
-.The hexagonal architecture with Isis addons
+.The hexagonal architecture with API and SPI implementations
 image::core-concepts/philosophy/hexagonal-architecture-addons.png[width="700px",link="{imagesdir}/core-concepts/philosophy/hexagonal-architecture-addons.png"]
 
-The (non-ASF) link:https://platform.incode.org[Incode Platform^] provide SPI implementations of the common cross-cutting concerns.
-They also provide a number of APIs for domain objects to invoke (not shown in the diagram).
+The xref:extensions:ROOT:about.adoc[extensions] catalog provide SPI implementations of the common cross-cutting concerns.
 You can also write your own domain services as well, for example to interface with some external CMS system, say.
 
 
diff --git a/api/adoc/userguide/modules/fun/pages/building-blocks/types-of-domain-objects/view-models.adoc b/api/adoc/userguide/modules/fun/pages/building-blocks/types-of-domain-objects/view-models.adoc
index b870fb6..0bcf9a9 100644
--- a/api/adoc/userguide/modules/fun/pages/building-blocks/types-of-domain-objects/view-models.adoc
+++ b/api/adoc/userguide/modules/fun/pages/building-blocks/types-of-domain-objects/view-models.adoc
@@ -22,15 +22,11 @@ Such view models are part of the application layer, not part of the domain layer
 
 We explore these use cases in more detail below.
 
-
 [TIP]
 ====
-Details on how to actually write a view model (the programming model for view models) is
-xref:userguide:fun:programming-model.adoc#view-models[here].
+Details on how to actually write a view model (the programming model for view models) can be found xref:userguide:fun:programming-model.adoc#view-models[here].
 ====
 
-
-
 == Externally-managed entities
 
 Sometimes the entities that make up your application are persisted not in the local database but reside in some other system, for example accessible only through a SOAP web service.
@@ -41,15 +37,12 @@ This proxy would hold the reference to the externally-managed domain entity (eg
 
 The stub/proxy is a type of view model: a view -- if you like -- onto the domain entity managed by the external system.
 
-
-
 == In-memory entities
 
 As a variation on the above, sometimes there are domain objects that are, conceptually at least entities, but whose state is not actually persisted anywhere, merely held in-memory (eg in a hash).
 
 A simple example might be read-only configuration data that is read from a config file (eg log4j appender definitions) but thereafter is presented in the UI just like any other entity.
 
-
 == Application-layer view models
 
 Domain entities (whether locally persisted or managed externally) are the bread-and-butter of Apache Isis applications: the focus after all, should be on the business domain concepts and ensuring that they are solid.
@@ -61,7 +54,7 @@ For example, it may be useful to show a dashboard of the most significant data i
 Obtaining this information by hand (by querying the respective services/repositories) would be tedious and slow; far better to have a dashboard do the job for the end user.
 
 A dashboard object is a model of the most relevant state to the end-user, in other words it is (quite literally) a view model.
- It is not a persisted entity, instead it belongs to the application layer.
+It is not a persisted entity, instead it belongs to the application layer.
 
 A view model need not merely aggregate data; it could also provide actions of its own.
 Most likely these actions will be queries and will always ultimately just delegate down to the appropriate domain-layer service/repository.
@@ -72,7 +65,7 @@ In these cases the view model might have some state of its own, but in most case
 
 .Desire Lines
 ****
-One way to think of application view models is as modelling the "desire line": the commonly-trod path that end-users must follow to get from point A to point B as quickly as possible.
+One way to think of application view models is that they model the "desire line": the commonly-trod path that end-users must follow to get from point A to point B as quickly as possible.
 
 To explain: there are link:http://ask.metafilter.com/62599/Where-the-sidewalk-ends[documented] link:https://sivers.org/walkways[examples] link:http://www.softpanorama.org/People/Wall/larry_wall_articles_and_interviews.shtml[that] architects of university campus will only add in paths some while after the campus buildings are complete: let the pedestrians figure out the routes they want to take.
 The name we like best for this idea is "desire lines", though it has also been called a "desire path", "paving the path" or "paving the sidewalk".
@@ -89,14 +82,11 @@ Then build out the minimum domain entities to support that use case.
 Then, identify if there any view models that could be introduced which would simplify the end-user interactions with the system (perhaps automating several related use cases together).
 ****
 
-
 When developing an Apache Isis application you will most likely start off with the persistent domain entities: `Customer`, `Order`, `Product`, and so on.
 For some applications this may well suffice.
 
 However, if the application needs to integrate with other systems, or if the application needs to support reasonably complex business processes, then you may need to look beyond just domain entities; view models are the tool of choice.
 
-
-
 == DTOs
 
 DTOs (data transfer objects) are simple classes that (according to link:https://en.wikipedia.org/wiki/Data_transfer_object[wikipedia]) "carry data between processes".
@@ -121,7 +111,6 @@ The view model simply needs to implement the xref:refguide:applib-cm:classes/mix
 Details of how to consume such DTOs can be found xref:userguide:fun:programming-model.adoc#dto-consumers[here].
 ====
 
-
 == For REST Clients
 
 The xref:vro:ROOT:about.adoc[Restful Objects] viewer automatically provides a REST API for both domain entities.
@@ -139,7 +128,7 @@ Not so fast, though: the real question is whether the REST API you are exposing
 +
 In this case view models provide an isolation layer which allow you to modify the structure of the underlying domain entities without breaking this API.
 
-* If it's a private API, which is to say that the only clients of the REST API are under your  control, then view models are an unnecessary overhead.
+* If it's a private API, which is to say that the only clients of the REST API are under your control, then view models are an unnecessary overhead.
 
 +
 In this case, just expose domain entities directly.
diff --git a/api/adoc/userguide/modules/fun/pages/core-concepts/apache-isis-vs/event-sourcing.adoc b/api/adoc/userguide/modules/fun/pages/core-concepts/apache-isis-vs/event-sourcing.adoc
index 8bb65d3..6f56e34 100644
--- a/api/adoc/userguide/modules/fun/pages/core-concepts/apache-isis-vs/event-sourcing.adoc
+++ b/api/adoc/userguide/modules/fun/pages/core-concepts/apache-isis-vs/event-sourcing.adoc
@@ -23,6 +23,5 @@ CQRS/event sourcing advocates point out -- correctly -- that this is just how th
 
 In Apache Isis every business action (and indeed, property and collection) emits domain events through the xref:refguide:applib-svc:core-domain-api/EventBusService.adoc[`EventBusService`], and can optionally also be published through the xref:refguide:applib-svc:persistence-layer-spi/PublisherService.adoc[`PublisherService`].
 The former are dispatched and consumed in-process and within the same transaction, and for this reason the xref:refguide:applib-cm:classes/super.adoc#AbstractSubscriber[subscribers] can also veto the events.
-The latter are intended for out-of-process consumption; the (obsolete) http://github.com/isisaddons-legacy/isis-module-publishing[Isis addons' publishing] and the (non-ASF) link:https://platform.incode.org[Incode Platform^]'s publishmq modules provide implementations for dispatching either through a RDBMS database table, or directly through to an link:http://camel.apache.org[ActiveMQ] message queue (eg wired up to link:http://camel.apache.org[Apache Camel] event bus).
 
 
diff --git a/api/adoc/userguide/modules/fun/pages/core-concepts/principles/isis-itself/focuses-on-its-usp.adoc b/api/adoc/userguide/modules/fun/pages/core-concepts/principles/isis-itself/focuses-on-its-usp.adoc
index 42075a4..49a46b4 100644
--- a/api/adoc/userguide/modules/fun/pages/core-concepts/principles/isis-itself/focuses-on-its-usp.adoc
+++ b/api/adoc/userguide/modules/fun/pages/core-concepts/principles/isis-itself/focuses-on-its-usp.adoc
@@ -10,7 +10,6 @@ NOTE: FIXME
 add-ons
 
 * Apache Isis is at heart a metamodel with runtime, and coordinates interations using an AOP set of principles
-* Apache Isis vs Isis Addons
 * Apache Isis vs Shiro vs DataNucleus
 
 
diff --git a/api/adoc/userguide/modules/fun/pages/programming-model/domain-services/registering.adoc b/api/adoc/userguide/modules/fun/pages/programming-model/domain-services/registering.adoc
index 29e064a..15bb26e 100644
--- a/api/adoc/userguide/modules/fun/pages/programming-model/domain-services/registering.adoc
+++ b/api/adoc/userguide/modules/fun/pages/programming-model/domain-services/registering.adoc
@@ -16,9 +16,9 @@ For example:
 public class MyAppManifest implements AppManifest {
     public List<Class<?>> getModules() {
         return Arrays.asList(
-                ToDoAppDomainModule.class,
-                ToDoAppFixtureModule.class,
-                ToDoAppAppModule.class,
+                TodoAppDomainModule.class,
+                TodoAppFixtureModule.class,
+                TodoAppAppModule.class,
                 org.isisaddons.module.audit.AuditModule.class);
     }
     ...
diff --git a/api/adoc/userguide/modules/fun/pages/programming-model/properties.adoc b/api/adoc/userguide/modules/fun/pages/programming-model/properties.adoc
index 0e37c89..7a261f4 100644
--- a/api/adoc/userguide/modules/fun/pages/programming-model/properties.adoc
+++ b/api/adoc/userguide/modules/fun/pages/programming-model/properties.adoc
@@ -194,7 +194,7 @@ See the link:http://db.apache.org/jdo/field_types.html[JDO docs] for more detail
 Moreover, these datatypes are _not_ in the default fetch group, meaning that JDO/DataNucleus will perform an additional `SELECT` query for each attribute.
 To avoid this extra query, the annotation should indicate that the property is in the default fetch group.
 
-For example, the `ToDoItem` (in the https://github.com/isisaddons/isis-app-todoapp[todoapp example app] (not ASF)) defines the `dueBy` property as follows:
+For example, the `ToDoItem` (in the https://github.com/apache/isis-app-todoapp[TodoApp] example app (not ASF)) defines the `dueBy` property as follows:
 
 [source,java]
 ----
@@ -249,7 +249,7 @@ Apache Isis configures JDO/DataNucleus so that the properties of type `org.apach
 As for Joda dates, this requires the `@javax.jdo.annotations.Persistent` annotation.
 However, whereas for dates one would always expect this value to be retrieved eagerly, for blobs and clobs it is not so clear cut.
 
-For example, in the `ToDoItem` class (in the (non-ASF) https://github.com/isisaddons/isis-app-todoapp/blob/0333852ddd18ad67e3356fccf805aa442246790d/dom/src/main/java/todoapp/dom/todoitem/ToDoItem.java#L442[todoapp example app]) the `attachment` property is as follows:
+For example, in the `ToDoItem` class (in the (non-ASF) https://github.com/apache/isis-app-todoapp/blob/0333852ddd18ad67e3356fccf805aa442246790d/dom/src/main/java/todoapp/dom/todoitem/ToDoItem.java#L442[TodoApp] example app) the `attachment` property is as follows:
 
 [source,java]
 ----
diff --git a/api/adoc/userguide/modules/fun/pages/programming-model/view-models/dto.adoc b/api/adoc/userguide/modules/fun/pages/programming-model/view-models/dto.adoc
index e13e482..550c8ef 100644
--- a/api/adoc/userguide/modules/fun/pages/programming-model/view-models/dto.adoc
+++ b/api/adoc/userguide/modules/fun/pages/programming-model/view-models/dto.adoc
@@ -5,7 +5,7 @@
 
 
 JAXB view models can also be used as DTOs.
-The examples in this section uses the DTO for `ToDoItem`, taken from the (non-ASF) http://github.com/isisaddons/isis-app-todoapp[Isis addons' todoapp].
+The examples in this section uses the DTO for `ToDoItem`, taken from the http://github.com/apache/isis-app-todoapp[TodoApp].
 
 This DTO is defined as follows:
 
diff --git a/api/adoc/userguide/modules/fun/pages/programming-model/view-models/dto/generating-xsds.adoc b/api/adoc/userguide/modules/fun/pages/programming-model/view-models/dto/generating-xsds.adoc
index fa3bced..160af7a 100644
--- a/api/adoc/userguide/modules/fun/pages/programming-model/view-models/dto/generating-xsds.adoc
+++ b/api/adoc/userguide/modules/fun/pages/programming-model/view-models/dto/generating-xsds.adoc
@@ -14,7 +14,7 @@ But of course you cannot; the consumer runs in a different process space, and wi
 For integration scenarios you'll therefore generally want to define a DTO in a technology independent fashion, for example using XSD schema.
 This can be generated as a DTO for use within Apache Isis, while still allowing XML instances of the schema to be consumed by any other client.
 
-The (non-ASF) http://github.com/isisaddons/isis-app-todoapp[Isis addons' todoapp] demonstrates how use an XSD to generate a DTO; it's mostly just boilerplate.
+The http://github.com/apache/isis-app-todoapp[TodoApp] demonstrates how use an XSD to generate a DTO; it's mostly just boilerplate.
 In the todoapp it can be found in the `todoapp-xsd` Maven module, whose `pom.xml` is structured as two profiles:
 
 [source,xml]
@@ -61,7 +61,7 @@ The `isis-xsd` profile generates the XSD using the xref:refguide:mvn:xsd.adoc[`x
             <artifactId>isis-maven-plugin</artifactId>
             <version>${isis.version}</version>
             <configuration>
-                <appManifest>todoapp.dom.ToDoAppDomManifest</appManifest>
+                <appManifest>todoapp.dom.TodoAppDomManifest</appManifest>
                 <jaxbClasses>
                     <jaxbClass>todoapp.app.viewmodels.todoitem.v1.ToDoItemV1_1</jaxbClass>
                 </jaxbClasses>
@@ -109,7 +109,7 @@ The `isis-xsd` profile generates the XSD using the xref:refguide:mvn:xsd.adoc[`x
 </build>
 ----
 
-The `todoapp.dom.ToDoAppDomManifest` is a cut-down version of the app manifest that identifies only the `dom` domain services.
+The `todoapp.dom.TodoAppDomManifest` is a cut-down version of the app manifest that identifies only the `dom` domain services.
 
 The `xjc` profile, meanwhile, uses the `maven-jaxb2-plugin` (a wrapper around the `schemagen` JDK tool) to generate a DTO from the XSD generated by the preceding profile:
 
diff --git a/api/applib/src/main/adoc/modules/applib-ant/pages/Column.adoc b/api/applib/src/main/adoc/modules/applib-ant/pages/Column.adoc
index 4f6aa7d..0820918 100644
--- a/api/applib/src/main/adoc/modules/applib-ant/pages/Column.adoc
+++ b/api/applib/src/main/adoc/modules/applib-ant/pages/Column.adoc
@@ -114,7 +114,7 @@ public class PartyRelationship {
 
 Isis provides custom value types for xref:refguide:applib-cm:classes/value-types.adoc#Blob[`Blob`]s and xref:refguide:applib-cm:classes/value-types.adoc#Clob[`Clob`]s.  These value types have multiple internal fields, meaning that they corresponding to multiple columns in the database.  Mapping this correctly requires using  `@Column` within JDO's `@Persistent` annotation.
 
-For example, here's how to map a `Blob` (taken from (non-ASF) http://github.com/isisaddons/isis-app-todoapp[Isis addons' todoapp]):
+For example, here's how to map a `Blob` (taken from http://github.com/apache/isis-app-todoapp[TodoApp]):
 
 [source,java]
 ----
diff --git a/api/applib/src/main/adoc/modules/applib-ant/pages/Digits.adoc b/api/applib/src/main/adoc/modules/applib-ant/pages/Digits.adoc
index aca3e2e..0ff55da 100644
--- a/api/applib/src/main/adoc/modules/applib-ant/pages/Digits.adoc
+++ b/api/applib/src/main/adoc/modules/applib-ant/pages/Digits.adoc
@@ -5,7 +5,7 @@
 
 The `@javax.validation.constraints.Digits` annotation is recognized by Apache Isis as a means to specify the precision for properties and action parameters of type `java.math.BigDecimal`.
 
-For example (taken from the (non-ASF) http://github.com/isisaddons/isis-app-todoapp[Isis addons' todoapp]):
+For example (taken from the http://github.com/apache/isis-app-todoapp[TodoApp]):
 
 [source,java]
 ----
diff --git a/api/applib/src/main/adoc/modules/applib-ant/pages/DomainServiceLayout/menuOrder.adoc b/api/applib/src/main/adoc/modules/applib-ant/pages/DomainServiceLayout/menuOrder.adoc
index 1568398..249b051 100644
--- a/api/applib/src/main/adoc/modules/applib-ant/pages/DomainServiceLayout/menuOrder.adoc
+++ b/api/applib/src/main/adoc/modules/applib-ant/pages/DomainServiceLayout/menuOrder.adoc
@@ -14,7 +14,7 @@ The algorithm works as follows:
 * then, the domain service's top-level name (typically explicitly specified using xref:refguide:applib-ant:DomainServiceLayout.adoc#named[`named()`]) is used to determine the top-level menu item to be rendered on the menu bar
 * finally, if there is more than domain service that has the same name, then the `menuOrder` attribute is used to order those actions on the menu item drop-down.
 
-For example, the screenshot below shows the "prototyping" menu from the (non-ASF) http://github.com/isisaddons/isis-app-todoapp[Isis addons' todoapp]:
+For example, the screenshot below shows the "prototyping" menu from the http://github.com/apache/isis-app-todoapp[TodoApp]:
 
 image::reference-annotations/DomainServiceLayout/menuOrder.png[width="500px",link="{imagesdir}/reference-annotations/DomainServiceLayout/menuOrder.png"]
 
diff --git a/api/applib/src/main/adoc/modules/applib-ant/pages/HomePage.adoc b/api/applib/src/main/adoc/modules/applib-ant/pages/HomePage.adoc
index 598b335..bd7f3c3 100644
--- a/api/applib/src/main/adoc/modules/applib-ant/pages/HomePage.adoc
+++ b/api/applib/src/main/adoc/modules/applib-ant/pages/HomePage.adoc
@@ -5,7 +5,7 @@
 
 The `@HomePage` annotation allows a _single_ (no-arg, query-only) action on a _single_ domain service to be nominated as the action to invoke for the default home page.  This often returns a view model that acts as some sort of dashboard, presenting key information and makeing the most commonly used actions easy to invoke.
 
-For example, the (non-ASF) http://github.com/isisaddons/isis-app-todoapp[Isis addons' todoapp] uses `@HomePage` to return a dashboard of todo items to complete:
+For example, the http://github.com/apache/isis-app-todoapp[TodoApp] uses `@HomePage` to return a dashboard of todo items to complete:
 
 image::reference-annotations/HomePage/HomePage.png[width="800px",link="{imagesdir}/reference-annotations/HomePage/HomePage.png"]
 
@@ -15,25 +15,25 @@ The corresponding code is:
 [source,java]
 ----
 @DomainService(nature = NatureOfService.DOMAIN)
-public class ToDoAppDashboardService  {
+public class TodoAppDashboardService  {
     @Action(
             semantics = SemanticsOf.SAFE
     )
     @HomePage
-    public ToDoAppDashboard lookup() {
-        return serviceRegistry.injectServicesInto(new ToDoAppDashboard());
+    public TodoAppDashboard lookup() {
+        return serviceRegistry.injectServicesInto(new TodoAppDashboard());
     }
     @Inject
     ServiceRegistry serviceRegistry;
 }
 ----
 
-where `ToDoAppDashboard` is:
+where `TodoAppDashboard` is:
 
 [source,java]
 ----
 @DomainObject(nature = Nature.VIEW_MODEL)
-public class ToDoAppDashboard {
+public class TodoAppDashboard {
     public String title() { return "Dashboard"; }
 
     public List<ToDoItem> getNotYetComplete() { /* ... */ }
@@ -44,6 +44,6 @@ public class ToDoAppDashboard {
 ----
 <1> associated using xref:vw:ROOT:layout.adoc#file-based[file-based layout] with the `notYetComplete` collection.
 
-The other two actions shown in the above screenshot -- `exportAsXml` and `downloadLayout` -- are actually contributed to the `ToDoAppDashboard` through various domain services, as is the `downloadLayout` action.
+The other two actions shown in the above screenshot -- `exportAsXml` and `downloadLayout` -- are actually contributed to the `TodoAppDashboard` through various domain services, as is the `downloadLayout` action.
 
 
diff --git a/api/applib/src/main/adoc/modules/applib-ant/pages/Inject.adoc b/api/applib/src/main/adoc/modules/applib-ant/pages/Inject.adoc
index 00ca8a7..f0e38e4 100644
--- a/api/applib/src/main/adoc/modules/applib-ant/pages/Inject.adoc
+++ b/api/applib/src/main/adoc/modules/applib-ant/pages/Inject.adoc
@@ -119,7 +119,7 @@ View models are created identically:
 
 [source,java]
 ----
-ToDoAppDashboard dashboard = repositoryService.instantiate(ToDoAppDashboard.class);
+TodoAppDashboard dashboard = repositoryService.instantiate(TodoAppDashboard.class);
 ----
 
 
diff --git a/api/applib/src/main/adoc/modules/applib-ant/pages/PropertyLayout/labelPosition.adoc b/api/applib/src/main/adoc/modules/applib-ant/pages/PropertyLayout/labelPosition.adoc
index d1bbd74..a8e19ab 100644
--- a/api/applib/src/main/adoc/modules/applib-ant/pages/PropertyLayout/labelPosition.adoc
+++ b/api/applib/src/main/adoc/modules/applib-ant/pages/PropertyLayout/labelPosition.adoc
@@ -30,7 +30,7 @@ public class ToDoItem {
 ----
 
 
-To get an idea of how these are rendered (in the xref:vw:ROOT:about.adoc[Wicket viewer]), we can look at the (non-ASF) http://github.com/isisaddons/isis-app-todoapp[Isis addons' todoapp] that happens to have examples of most of these various label positions.
+To get an idea of how these are rendered (in the xref:vw:ROOT:about.adoc[Wicket viewer]), we can look at the http://github.com/apache/isis-app-todoapp[TodoApp] that happens to have examples of most of these various label positions.
 
 The default `LEFT` label positioning is used by the `cost` property:
 
diff --git a/api/applib/src/main/adoc/modules/applib-ant/pages/XmlRootElement.adoc b/api/applib/src/main/adoc/modules/applib-ant/pages/XmlRootElement.adoc
index 15af553..4d27013 100644
--- a/api/applib/src/main/adoc/modules/applib-ant/pages/XmlRootElement.adoc
+++ b/api/applib/src/main/adoc/modules/applib-ant/pages/XmlRootElement.adoc
@@ -34,7 +34,7 @@ If the view model XML graph is too large to be serialized to a string, then an a
 
 == Example
 
-This example is taken from the (non-ASF) http://github.com/isisaddons/isis-app-todoapp[Isis addons' todoapp]:
+This example is taken from the http://github.com/apache/isis-app-todoapp[TodoApp]:
 
 [source,java]
 ----
diff --git a/api/applib/src/main/adoc/modules/applib-cm/pages/classes/AppManifest-bootstrapping.adoc b/api/applib/src/main/adoc/modules/applib-cm/pages/classes/AppManifest-bootstrapping.adoc
index 92290ad..713f4f8 100644
--- a/api/applib/src/main/adoc/modules/applib-cm/pages/classes/AppManifest-bootstrapping.adoc
+++ b/api/applib/src/main/adoc/modules/applib-cm/pages/classes/AppManifest-bootstrapping.adoc
@@ -59,16 +59,16 @@ This tells the framework that the package and subpackages under `com.mycompany.m
 As is perhaps apparent, the `getModules()` method replaces and overrides both the `isis.services.ServicesInstallerFromAnnotation.packagePrefix` key (usually found in the `isis.properties`  file) and also the`isis.persistor.datanucleus.RegisterEntities.packagePrefix` key (usually found in the `persistor_datanucleus.properties` file).
 The value of the `isis.services-installer` configuration property is also ignored.
 
-For example, the (non-ASF) http://github.com/isisaddons/isis-app-todoapp[Isis addons' todoapp] defines the following:
+For example, the http://github.com/apache/isis-app-todoapp[TodoApp] defines the following:
 
 [source,java]
 ----
 @Override
 public List<Class<?>> getModules() {
     return Arrays.asList(
-            ToDoAppDomainModule.class,
-            ToDoAppFixtureModule.class,
-            ToDoAppAppModule.class,
+            TodoAppDomainModule.class,
+            TodoAppFixtureModule.class,
+            TodoAppAppModule.class,
             org.isisaddons.module.audit.AuditModule.class,
             org.isisaddons.module.command.CommandModule.class,
             org.isisaddons.module.devutils.DevUtilsModule.class,
diff --git a/api/applib/src/main/adoc/modules/applib-cm/pages/methods/prefixes/choices.adoc b/api/applib/src/main/adoc/modules/applib-cm/pages/methods/prefixes/choices.adoc
index 9acba71..9aee459 100644
--- a/api/applib/src/main/adoc/modules/applib-cm/pages/methods/prefixes/choices.adoc
+++ b/api/applib/src/main/adoc/modules/applib-cm/pages/methods/prefixes/choices.adoc
@@ -52,7 +52,7 @@ public class ShoppingCartItem {
 
 Action parameters also support the notion of dependent choices, whereby the list of choices is dependent upon the value of some other argument.
 
-An example can be found in the (non-ASF) http://github.com/isisaddons/isis-app-todoapp[Isis addons' todoapp], whereby `ToDoItem`s are categorized and then can also be subcategorized:
+An example can be found in the http://github.com/apache/isis-app-todoapp[TodoApp], whereby `ToDoItem`s are categorized and then can also be subcategorized:
 
 image::reference-methods/prefixes/choices/dependent.png[width="800px",link="{imagesdir}/reference-methods/prefixes/choices/dependent.png"]
 
diff --git a/api/applib/src/main/adoc/modules/applib-cm/pages/methods/prefixes/default.adoc b/api/applib/src/main/adoc/modules/applib-cm/pages/methods/prefixes/default.adoc
index a6ff33c..59153fe 100644
--- a/api/applib/src/main/adoc/modules/applib-cm/pages/methods/prefixes/default.adoc
+++ b/api/applib/src/main/adoc/modules/applib-cm/pages/methods/prefixes/default.adoc
@@ -60,7 +60,7 @@ public class ShoppingCartItem {
 
 
 Defaults are also supported (of course) for xref:userguide:fun:programming-model.adoc#contributed-action[contributed actions].
-For example, here is a contributed action for updating category/subcategory of the (non-ASF) http://github.com/isisaddons/isis-app-todoapp[Isis addons' todoapp]:
+For example, here is a contributed action for updating category/subcategory of the http://github.com/apache/isis-app-todoapp[TodoApp]:
 
 [source,java]
 ----
@@ -111,7 +111,7 @@ public Integer default2Add(final Integer net, final Integer val) {
 }
 ----
 
-As a more complex example (taken from the (non-ASF) http://github.com/isisaddons/isis-app-kitchensink[Isis addons' kitchensink] app), we can default the NFL region from the NFL league, and then the NFL team based on the region:
+As a more complex example (taken from the link:http://github.com/apache/isis-app-kitchensink[Isis addons' kitchensink] app), we can default the NFL region from the NFL league, and then the NFL team based on the region:
 
 [source,java]
 ----
diff --git a/api/applib/src/main/adoc/modules/applib-cm/pages/methods/reserved/cssClass.adoc b/api/applib/src/main/adoc/modules/applib-cm/pages/methods/reserved/cssClass.adoc
index 7096f1d..aebf2bc 100644
--- a/api/applib/src/main/adoc/modules/applib-cm/pages/methods/reserved/cssClass.adoc
+++ b/api/applib/src/main/adoc/modules/applib-cm/pages/methods/reserved/cssClass.adoc
@@ -12,7 +12,7 @@ This is done both for rendering the object either in a table or when rendering t
 In conjunction with xref:refguide:config:application-specific/application-css.adoc[`application.css`], can therefore provide custom styling of an object instance wherever it is rendered. +
 
 
-For example, the (non-ASF) http://github.com/isisaddons/isis-app-todoapp[Isis addons' todoapp] uses this technique to add a strikethrough for completed todo items.
+For example, the http://github.com/apache/isis-app-todoapp[TodoApp] uses this technique to add a strikethrough for completed todo items.
 This is shown on the home page:
 
 image::reference-methods/reserved/cssClass/strikethrough.png[width="800px",link="{imagesdir}/reference-methods/reserved/cssClass/strikethrough.png"]
diff --git a/api/applib/src/main/adoc/modules/applib-cm/pages/methods/reserved/disable.adoc b/api/applib/src/main/adoc/modules/applib-cm/pages/methods/reserved/disable.adoc
index a7861a3..fbf19e5 100644
--- a/api/applib/src/main/adoc/modules/applib-cm/pages/methods/reserved/disable.adoc
+++ b/api/applib/src/main/adoc/modules/applib-cm/pages/methods/reserved/disable.adoc
@@ -44,7 +44,7 @@ For example:
 ----
 public class ToDoItem ... {
     public static abstract class PropertyDomainEvent<T>
-            extends ToDoAppDomainModule.PropertyDomainEvent<ToDoItem, T> {
+            extends TodoAppDomainModule.PropertyDomainEvent<ToDoItem, T> {
         ...
     }
     ...
@@ -55,8 +55,8 @@ where in turn:
 
 [source,java]
 ----
-public final class ToDoAppDomainModule {
-    private ToDoAppDomainModule(){}
+public final class TodoAppDomainModule {
+    private TodoAppDomainModule(){}
     public abstract static class PropertyDomainEvent<S,T>
             extends org.apache.isis.applib.events.domain.PropertyDomainEvent<S,T> { }
     ...
diff --git a/api/applib/src/main/adoc/modules/applib-cm/pages/methods/reserved/iconName.adoc b/api/applib/src/main/adoc/modules/applib-cm/pages/methods/reserved/iconName.adoc
index b79cde5..7c28285 100644
--- a/api/applib/src/main/adoc/modules/applib-cm/pages/methods/reserved/iconName.adoc
+++ b/api/applib/src/main/adoc/modules/applib-cm/pages/methods/reserved/iconName.adoc
@@ -12,7 +12,7 @@ The `iconName()` allows the icon that to be used to change for individual object
 These are usually quite subtle, for example to reflect the particular status of an object.
 The value returned by the `iconName()` method is added as a suffix to the base icon name.
 
-For example, the (non-ASF) http://github.com/isisaddons/isis-app-todoapp[Isis addons' todoapp] uses this technique to add an overlay for todo items that have been completed:
+For example, the http://github.com/apache/isis-app-todoapp[TodoApp] uses this technique to add an overlay for todo items that have been completed:
 
 image::reference-methods/reserved/iconName/differing.png[width="200px",link="{imagesdir}/reference-methods/reserved/iconName/differing.png"]
 
diff --git a/api/applib/src/main/adoc/modules/applib-cm/pages/methods/reserved/title.adoc b/api/applib/src/main/adoc/modules/applib-cm/pages/methods/reserved/title.adoc
index e9b7698..5f57179 100644
--- a/api/applib/src/main/adoc/modules/applib-cm/pages/methods/reserved/title.adoc
+++ b/api/applib/src/main/adoc/modules/applib-cm/pages/methods/reserved/title.adoc
@@ -21,7 +21,7 @@ public String title() { /* ... */ }
 
 Note that Apache Isis' xref:userguide:btb:i18n.adoc[i18n support] extends this so that titles can also be internationalized.
 
-For example, the (non-ASF) http://github.com/isisaddons/isis-app-todoapp[Isis addons' todoapp] uses this technique to add an overlay for todo items that have been completed:
+For example, the http://github.com/apache/isis-app-todoapp[TodoApp] uses this technique to add an overlay for todo items that have been completed:
 
 [source,java]
 ----
diff --git a/api/applib/src/main/adoc/modules/applib-svc/pages/application-layer-api/BackgroundService.adoc b/api/applib/src/main/adoc/modules/applib-svc/pages/application-layer-api/BackgroundService.adoc
index 228e62d..be4cf9b 100644
--- a/api/applib/src/main/adoc/modules/applib-svc/pages/application-layer-api/BackgroundService.adoc
+++ b/api/applib/src/main/adoc/modules/applib-svc/pages/application-layer-api/BackgroundService.adoc
@@ -13,7 +13,7 @@ The default `BackgroundServiceDefault` implementation works by using a proxy wra
 This is done using xref:runtime-services:ROOT:application-layer/CommandDtoServiceInternal.adoc[`CommandDtoServiceInternal`].
 
 The persistence delegates the persistence of the memento to an appropriate implementation of the companion `BackgroundCommandService2`.
-One such implementation of `BackgroundCommandService` is provided by (non-ASF) http://github.com/isisaddons/isis-module-command[Isis addons' command] module.
+One such implementation of `BackgroundCommandService` is provided by (non-ASF) http://github.com/incodehq/incode-platform[Incode Platform's command] module.
 
 The persisting of commands is only half the story; there needs to be a separate process to read the commands and execute them.
 The `BackgroundCommandExecution` abstract class (discussed xref:refguide:applib-svc:application-layer-api/BackgroundService/BackgroundCommandExecution.adoc[below]) provides infrastructure to do this; the concrete implementation of this class depends on the configured `BackgroundCommandService` (in order to query for the persisted (background) ``Command``s.
diff --git a/api/applib/src/main/adoc/modules/applib-svc/pages/core-domain-api/Scratchpad.adoc b/api/applib/src/main/adoc/modules/applib-svc/pages/core-domain-api/Scratchpad.adoc
index e8cd2eb..e5af2f7 100644
--- a/api/applib/src/main/adoc/modules/applib-svc/pages/core-domain-api/Scratchpad.adoc
+++ b/api/applib/src/main/adoc/modules/applib-svc/pages/core-domain-api/Scratchpad.adoc
@@ -39,7 +39,7 @@ To use an alternative implementation, subclass and use Spring's link:https://doc
 
 The most common use-case is for xref:refguide:applib-ant:Action.adoc#invokeOn[bulk] actions that act upon multiple objects in a list.  The (same) `Scratchpad` service is injected into each of these objects, and so they can use pass information.
 
-For example, the Isis addons example https://github.com/isisaddons/isis-app-todoapp/[todoapp] (not ASF) demonstrates how the `Scratchpad` service can be used to calculate the total cost of the selected `ToDoItem`s:
+For example, the link:https://github.com/apache/isis-app-todoapp/[TodoApp] (not ASF) demonstrates how the `Scratchpad` service can be used to calculate the total cost of the selected `ToDoItem`s:
 
 
 [source,java]
diff --git a/api/applib/src/main/adoc/modules/applib-svc/pages/persistence-layer-api/IsisJdoSupport.adoc b/api/applib/src/main/adoc/modules/applib-svc/pages/persistence-layer-api/IsisJdoSupport.adoc
index 54bd36a..705f028 100644
--- a/api/applib/src/main/adoc/modules/applib-svc/pages/persistence-layer-api/IsisJdoSupport.adoc
+++ b/api/applib/src/main/adoc/modules/applib-svc/pages/persistence-layer-api/IsisJdoSupport.adoc
@@ -91,7 +91,7 @@ public interface IsisJdoSupport {
 The `executeQuery(...)` method supports the common case of obtaining a set of objects that meet some criteria, filtered using the provided `BooleanExpression`.
 To avoid memory leaks, the returned list is cloned and the underlying query closed.
 
-For example, in the (non-ASF) http://github.com/isisaddons/isis-app-todoapp[Isis addons' todoapp] there is an implementation of `ToDoItemRepository` using type-safe queries.
+For example, in the http://github.com/apache/isis-app-todoapp[TodoApp] there is an implementation of `ToDoItemRepository` using type-safe queries.
 The following JDOQL:
 
 [source,sql]
diff --git a/api/applib/src/main/adoc/modules/applib-svc/pages/persistence-layer-api/RepositoryService.adoc b/api/applib/src/main/adoc/modules/applib-svc/pages/persistence-layer-api/RepositoryService.adoc
index 94470c0..8c32c16 100644
--- a/api/applib/src/main/adoc/modules/applib-svc/pages/persistence-layer-api/RepositoryService.adoc
+++ b/api/applib/src/main/adoc/modules/applib-svc/pages/persistence-layer-api/RepositoryService.adoc
@@ -179,7 +179,7 @@ public void addExcludedProduct() {
 There are various implementations of the `Query` API, but these either duplicate functionality of the other overloads of `allMatches(...)` or they are not supported by the JDO/DataNucleus object store.
 The only significant implementation of `Query` to be aware of is `QueryDefault`, which identifies a named query and a set of parameter/argument tuples.
 
-For example, in the (non-ASF) http://github.com/isisaddons/isis-app-todoapp[Isis addons' todoapp] the `ToDoItem` is annotated:
+For example, in the http://github.com/apache/isis-app-todoapp[TodoApp] the `ToDoItem` is annotated:
 
 [source,java]
 ----
diff --git a/api/applib/src/main/adoc/modules/applib-svc/pages/presentation-layer-spi/ErrorReportingService.adoc b/api/applib/src/main/adoc/modules/applib-svc/pages/presentation-layer-spi/ErrorReportingService.adoc
index 0614341..611fded 100644
--- a/api/applib/src/main/adoc/modules/applib-svc/pages/presentation-layer-spi/ErrorReportingService.adoc
+++ b/api/applib/src/main/adoc/modules/applib-svc/pages/presentation-layer-spi/ErrorReportingService.adoc
@@ -75,7 +75,7 @@ By default a stack trace button is not shown if a ticket is returned (but _is_ s
 
 There is no default implementation of this service, but there are a couple of concrete examples of `Ticket` in `core-runtime`.
 
-The (non-ASF) http://github.com/isisaddons/isis-app-kitchensink[Isis addons' kitchensink] app provides an example implementation:
+The (non-ASF) a[Isis addons' kitchensink] app provides an example implementation:
 
 [source,java]
 ----
diff --git a/api/applib/src/main/adoc/modules/applib-svc/pages/presentation-layer-spi/UserProfileService.adoc b/api/applib/src/main/adoc/modules/applib-svc/pages/presentation-layer-spi/UserProfileService.adoc
index d45f3fa..616188e 100644
--- a/api/applib/src/main/adoc/modules/applib-svc/pages/presentation-layer-spi/UserProfileService.adoc
+++ b/api/applib/src/main/adoc/modules/applib-svc/pages/presentation-layer-spi/UserProfileService.adoc
@@ -36,7 +36,7 @@ The framework provides a default implementation of this service, `o.a.i.core.run
 This simply returns the user's name as the user's profile name.
 
 An example implementation can also be found in the (non-ASF)
-http://github.com/isisaddons/isis-app-todoapp[Isis addons' todoapp]:
+http://github.com/apache/isis-app-todoapp[TodoApp]:
 
 image::reference-services-spi/UserProfileService/todoapp.png[width="800px",link="{imagesdir}/reference-services-spi/UserProfileService/todoapp.png"]
 
diff --git a/api/applib/src/main/adoc/modules/applib-svc/pages/testing/SudoService.adoc b/api/applib/src/main/adoc/modules/applib-svc/pages/testing/SudoService.adoc
index 8a536b7..74c1775 100644
--- a/api/applib/src/main/adoc/modules/applib-svc/pages/testing/SudoService.adoc
+++ b/api/applib/src/main/adoc/modules/applib-svc/pages/testing/SudoService.adoc
@@ -48,7 +48,7 @@ The core framework provides a default implementation of this service (`o.a.i.cor
 
 == Usage
 
-A good example can be found in the (non-ASF) http://github.com/isisaddons/isis-app-todoapp[Isis addons' todoapp] which uses the `SudoService` in a fixture script to set up `ToDoItem` objects:
+A good example can be found in the http://github.com/apache/isis-app-todoapp[TodoApp] which uses the `SudoService` in a fixture script to set up `ToDoItem` objects:
 
 [source,java]
 ----
diff --git a/core/runtimeservices/src/main/adoc/modules/runtime-services/pages/presentation-layer/ContentNegotiationService.adoc b/core/runtimeservices/src/main/adoc/modules/runtime-services/pages/presentation-layer/ContentNegotiationService.adoc
index af17686..828c421 100644
--- a/core/runtimeservices/src/main/adoc/modules/runtime-services/pages/presentation-layer/ContentNegotiationService.adoc
+++ b/core/runtimeservices/src/main/adoc/modules/runtime-services/pages/presentation-layer/ContentNegotiationService.adoc
@@ -136,7 +136,7 @@ which returns xref:vro:ROOT:simplified-representations.adoc[simplified represent
 
 == Usage
 
-You can find an example of all these services in the (non-ASF) http://github.com/isisaddons/isis-app-todoapp[Isis addons' todoapp].  This defines a `ToDoItemDto` class that is JAXB annotated (it is in fact generated from an XSD).
+You can find an example of all these services in the http://github.com/apache/isis-app-todoapp[TodoApp].  This defines a `ToDoItemDto` class that is JAXB annotated (it is in fact generated from an XSD).
 
 The example app also includes an implementation of `ContentMappingService` that maps `todoapp.dom.module.todoitem.ToDoItem` entities to `todoapp.dto.module.todoitem.ToDoItemDto` classes.
 
diff --git a/extensions/security/secman/adoc/modules/secman/pages/about.adoc b/extensions/security/secman/adoc/modules/secman/pages/about.adoc
index d0bf967..097863e 100644
--- a/extensions/security/secman/adoc/modules/secman/pages/about.adoc
+++ b/extensions/security/secman/adoc/modules/secman/pages/about.adoc
@@ -6,4 +6,3 @@ This SecMan module provides a complete security subdomain for users, roles, perm
 What that means, of course, that they can also be administered through your Apache Isis application.
 Moreover, the set of permissions (to features) is derived completely from your application's metamodel; in essence the permissions are "type-safe".
 
-NOTE: this extension module builds upon and supercedes the link:https://github.com/isisaddons/isis-module-security[Isis Addons Security Module] (part of the non-ASF https://incode.platform.org[Incode Platform])
diff --git a/extensions/security/secman/adoc/modules/secman/pages/shiro-realm.adoc b/extensions/security/secman/adoc/modules/secman/pages/shiro-realm.adoc
index 658a8f1..e57a5d8 100644
--- a/extensions/security/secman/adoc/modules/secman/pages/shiro-realm.adoc
+++ b/extensions/security/secman/adoc/modules/secman/pages/shiro-realm.adoc
@@ -26,5 +26,5 @@ image::configure-shiro-to-use-isisaddons-security-module-realm-with-delegate-rea
 The xref:security:ROOT:about.adoc[SecMan extension] has many more features than are described here, all of which are described in the module's README.
 The README also explains in detail how to configure an existing app to use this module.
 
-//You can also look at the Isisaddons https://github.com/isisaddons/isis-app-todoapp[todoapp example] (not ASF), which is preconfigured to use the security module.
+//You can also look at the Isisaddons https://github.com/apache/isis-app-todoapp[TodoApp example] (not ASF), which is preconfigured to use the security module.
 
diff --git a/legacy/testing/mavenplugin/src/main/doc/modules/mvn/pages/intro.adoc b/legacy/testing/mavenplugin/src/main/doc/modules/mvn/pages/intro.adoc
index 0f71927..0dc5504 100644
--- a/legacy/testing/mavenplugin/src/main/doc/modules/mvn/pages/intro.adoc
+++ b/legacy/testing/mavenplugin/src/main/doc/modules/mvn/pages/intro.adoc
@@ -24,10 +24,6 @@ This is instead of and preferable to using the JAXB link:https://jaxb.java.net/2
 
 The `validate` goal is by default bound to the `test` phase, and the `swagger` goal is by default bound to the `package` phase; both are typically of your application's `dom` sub-module.
 The `xsd` goal meanwhile defaults to the `generate-resources` phase, and this is generally used in a completely separate sub-module.
-An example can be found in the (non-ASF) http://github.com/isisaddons/isis-app-todoapp[Isis addons' todoapp] example app; the separate submodule that uses the `xsd` goal is (also) called `todoapp-xsd`.
-
-All of these goals require an xref:refguide:applib-cm:classes/AppManifest-bootstrapping.adoc[`AppManifest`] to point the plugin at, so that it knows how to bootstrap an Isis runtime.
-This is discussed below, followed by sections on configuring the two goals.
 
 
 
diff --git a/legacy/testing/mavenplugin/src/main/doc/modules/mvn/pages/xsd.adoc b/legacy/testing/mavenplugin/src/main/doc/modules/mvn/pages/xsd.adoc
index 86e09a6..ceab079 100644
--- a/legacy/testing/mavenplugin/src/main/doc/modules/mvn/pages/xsd.adoc
+++ b/legacy/testing/mavenplugin/src/main/doc/modules/mvn/pages/xsd.adoc
@@ -59,7 +59,7 @@ below shows the overall design:
 image::maven-plugin/xsd-goal.png[width="800px",link="{imagesdir}/maven-plugin/xsd-goal.png"]
 
 For example, here is the `pom.xml` file for the (non-ASF)
-http://github.com/isisaddons/isis-app-todoapp[Isis addons' todoapp] example app's `todoapp-xsd` submodule.
+http://github.com/apache/isis-app-todoapp[TodoApp] example app's `todoapp-xsd` submodule.
 
 First, the usual boilerplate:
 
@@ -76,7 +76,7 @@ First, the usual boilerplate:
     </parent>
 
     <artifactId>todoapp-xsd</artifactId>
-    <name>Isis Addons ToDoApp XSD</name>
+    <name>Isis Addons TodoApp XSD</name>
 
     <dependencies>
         <dependency>
@@ -126,7 +126,7 @@ The `isis-xsd` profile runs the `xsd` goal of the `isis-maven-plugin`; these are
                 <artifactId>isis-maven-plugin</artifactId>
                 <version>${isis.version}</version>
                 <configuration>
-                    <appManifest>todoapp.dom.ToDoAppDomManifest</appManifest>                       <!--2-->
+                    <appManifest>todoapp.dom.TodoAppDomManifest</appManifest>                       <!--2-->
                     <jaxbClasses>                                                                   <!--3-->
                         <jaxbClass>todoapp.app.viewmodels.todoitem.v1_0.ToDoItemDto</jaxbClass>
                         <jaxbClass>todoapp.app.viewmodels.todoitem.v1_1.ToDoItemDto</jaxbClass>
diff --git a/security/shiro/src/main/adoc/modules/shiro/pages/about/ini-realm.adoc b/security/shiro/src/main/adoc/modules/shiro/pages/about/ini-realm.adoc
index 54c8da2..cbe2818 100644
--- a/security/shiro/src/main/adoc/modules/shiro/pages/about/ini-realm.adoc
+++ b/security/shiro/src/main/adoc/modules/shiro/pages/about/ini-realm.adoc
@@ -66,7 +66,7 @@ For example:
 ----
 user_role = *:ToDoItems:*:*,\
             *:ToDoItem:*:*,\
-            *:ToDoAppDashboard:*:*
+            *:TodoAppDashboard:*:*
 analysis_role = *:ToDoItemAnalysis:*:*,\
             *:ToDoItemsByCategoryViewModel:*:*,\
             *:ToDoItemsByDateRangeViewModel:*:*
diff --git a/testing/fixtures/adoc/modules/fixtures/pages/fixture-scripts/sudo-service.adoc b/testing/fixtures/adoc/modules/fixtures/pages/fixture-scripts/sudo-service.adoc
index a0ee7be..17cce42 100644
--- a/testing/fixtures/adoc/modules/fixtures/pages/fixture-scripts/sudo-service.adoc
+++ b/testing/fixtures/adoc/modules/fixtures/pages/fixture-scripts/sudo-service.adoc
@@ -6,7 +6,7 @@
 Sometimes in our fixture scripts we want to perform a business action running as a particular user.
 This might be for the usual reason - so that our fixtures accurately reflect the reality of the system with all business constraints enforced using the `WrapperFactory` - or more straightforwardly it might be simply that the action depends on the identity of the user invoking the action.
 
-An example of the latter case is in the (non-ASF) http://github.com/isisaddons/isis-app-todoapp[Isis addons' todoapp]'s `ToDoItem` class:
+An example of the latter case is in the http://github.com/apache/isis-app-todoapp[TodoApp]'s `ToDoItem` class:
 
 [source,java]
 .Production code that depends on current user
diff --git a/viewers/restfulobjects/adoc/modules/ROOT/pages/ro-spec.adoc b/viewers/restfulobjects/adoc/modules/ROOT/pages/ro-spec.adoc
index c106306..2de340e 100644
--- a/viewers/restfulobjects/adoc/modules/ROOT/pages/ro-spec.adoc
+++ b/viewers/restfulobjects/adoc/modules/ROOT/pages/ro-spec.adoc
@@ -147,7 +147,7 @@ in the RO spec, the main point being to avoid the "N+1" problem of too many (slo
 this feature one can load a grid of data in a single call.  (That said, the xref:vro:ROOT:simplified-representations.adoc[simplified representations]
 supported by Restful Objects viewer also support this use case, albeit in way that deviates from the RO spec).
 
-This link:https://www.youtube.com/watch?v=hSKnqqBQ7Zo[screencast] demonstrates the Restful Object viewer's support for `x-ro-follow-links` parameter, using the (non-ASF) http://github.com/isisaddons/isis-app-kitchensink[Isis addons' kitchensink] app as the example,
+This link:https://www.youtube.com/watch?v=hSKnqqBQ7Zo[screencast] demonstrates the Restful Object viewer's support for `x-ro-follow-links` parameter, using the link:http://github.com/apache/isis-app-kitchensink[Isis addons' kitchensink] app as the example,
 This app contains three entities, `Grandparent`, `Parent` and `Child` that define a hierarchy of 1:m relationships.
 
 
diff --git a/viewers/restfulobjects/adoc/modules/ROOT/pages/simplified-representations/action-invocation.adoc b/viewers/restfulobjects/adoc/modules/ROOT/pages/simplified-representations/action-invocation.adoc
index 2da5b29..565c5d0 100644
--- a/viewers/restfulobjects/adoc/modules/ROOT/pages/simplified-representations/action-invocation.adoc
+++ b/viewers/restfulobjects/adoc/modules/ROOT/pages/simplified-representations/action-invocation.adoc
@@ -10,7 +10,7 @@ When an action is invoked, it can return a domain object, a list, a scalar, or r
 
 If the action returned an object, then the xref:vro:ROOT:simplified-representations.adoc#domain-object[domain object representation] is returned.
 
-For example, using the (non-ASF) http://github.com/isisaddons/isis-app-todoapp[Isis addons' todoapp], accessing
+For example, using the http://github.com/apache/isis-app-todoapp[TodoApp], accessing
 this resource:
 
 [source]
@@ -60,7 +60,7 @@ Content-Type: application/json;profile="urn:org.apache.isis/v1";repr-type="objec
 On the other hand if the action returned a list (a "standalone" collection, then an array representation is returned.
 This is very similar to that returned by a xref:vro:ROOT:simplified-representations.adoc#object-collection[(parented) object collection], though with a slightly different `Content-Type` to distinguish.
 
-For example, using the (non-ASF) http://github.com/isisaddons/isis-app-todoapp[Isis addons' todoapp], accessing
+For example, using the http://github.com/apache/isis-app-todoapp[TodoApp], accessing
 this resource:
 
 [source]
diff --git a/viewers/restfulobjects/adoc/modules/ROOT/pages/simplified-representations/domain-object.adoc b/viewers/restfulobjects/adoc/modules/ROOT/pages/simplified-representations/domain-object.adoc
index fd0b24e..950f1c9 100644
--- a/viewers/restfulobjects/adoc/modules/ROOT/pages/simplified-representations/domain-object.adoc
+++ b/viewers/restfulobjects/adoc/modules/ROOT/pages/simplified-representations/domain-object.adoc
@@ -15,7 +15,7 @@ object) and a `$$title` property (to use as a label, eg the hyperlink text).
 
 In addition, the representation defined by the RO spec is also included, under a special `$$ro` property.
 
-For example, using the (non-ASF) http://github.com/isisaddons/isis-app-todoapp[Isis addons' todoapp], accessing
+For example, using the http://github.com/apache/isis-app-todoapp[TodoApp], accessing
 this resource:
 
 [source]
diff --git a/viewers/restfulobjects/adoc/modules/ROOT/pages/simplified-representations/object-collection.adoc b/viewers/restfulobjects/adoc/modules/ROOT/pages/simplified-representations/object-collection.adoc
index c398cd6..4a0e72a 100644
--- a/viewers/restfulobjects/adoc/modules/ROOT/pages/simplified-representations/object-collection.adoc
+++ b/viewers/restfulobjects/adoc/modules/ROOT/pages/simplified-representations/object-collection.adoc
@@ -11,7 +11,7 @@ pairs of the properties of that object (a grid, again). +
 In addition, the representation defined by the RO spec is also included, as a special object with a single `$$ro`
 property.
 
-For example, using the (non-ASF) http://github.com/isisaddons/isis-app-todoapp[Isis addons' todoapp], accessing
+For example, using the http://github.com/apache/isis-app-todoapp[TodoApp], accessing
 this resource:
 
 [source]
diff --git a/viewers/wicket/adoc/modules/ROOT/pages/customisation/brand-logo.adoc b/viewers/wicket/adoc/modules/ROOT/pages/customisation/brand-logo.adoc
index a53a7d3..bfd9eec 100644
--- a/viewers/wicket/adoc/modules/ROOT/pages/customisation/brand-logo.adoc
+++ b/viewers/wicket/adoc/modules/ROOT/pages/customisation/brand-logo.adoc
@@ -9,7 +9,7 @@ This can be changed to display a png logo instead.
 
 == Screenshots
 
-The screenshot below shows the Isis addons example https://github.com/isisaddons/isis-app-todoapp/[todoapp] (not ASF) with a 'brand logo' image in its header:
+The screenshot below shows the example https://github.com/apache/isis-app-todoapp/[TodoApp] with a 'brand logo' image in its header:
 
 image::brand-logo/brand-logo.png[width="750px",link="{imagesdir}/brand-logo/brand-logo.png"]
 
diff --git a/viewers/wicket/adoc/modules/ROOT/pages/customisation/tweaking-css-classes.adoc b/viewers/wicket/adoc/modules/ROOT/pages/customisation/tweaking-css-classes.adoc
index ea4fba27..e21cece 100644
--- a/viewers/wicket/adoc/modules/ROOT/pages/customisation/tweaking-css-classes.adoc
+++ b/viewers/wicket/adoc/modules/ROOT/pages/customisation/tweaking-css-classes.adoc
@@ -19,7 +19,7 @@ These customizations should generally be added to xref:refguide:config:applicati
 
 == Individual members
 
-For example, the `ToDoItem` object of the Isis addons example https://github.com/isisaddons/isis-app-todoapp/[todoapp] (not ASF) has a `notes` property. The HTML for this will be something like:
+For example, the `ToDoItem` object of the example https://github.com/apache/isis-app-todoapp/[TodoApp] has a `notes` property. The HTML for this will be something like:
 
 [source,html]
 ----
diff --git a/viewers/wicket/adoc/modules/ROOT/pages/features/blob-attachments.adoc b/viewers/wicket/adoc/modules/ROOT/pages/features/blob-attachments.adoc
index c9bbd9d..385d30f 100644
--- a/viewers/wicket/adoc/modules/ROOT/pages/features/blob-attachments.adoc
+++ b/viewers/wicket/adoc/modules/ROOT/pages/features/blob-attachments.adoc
@@ -14,7 +14,7 @@ A class can define a property using either of these types, for example:
 
 == Screenshots
 
-The following screenshots are taken from the Isis addons example https://github.com/isisaddons/isis-app-todoapp[todoapp] (not ASF):
+The following screenshots are taken from the example https://github.com/apache/isis-app-todoapp[TodoApp]:
 
 
 
diff --git a/viewers/wicket/adoc/modules/ROOT/pages/features/bookmarked-pages.adoc b/viewers/wicket/adoc/modules/ROOT/pages/features/bookmarked-pages.adoc
index 8adca4a..a1c2af2 100644
--- a/viewers/wicket/adoc/modules/ROOT/pages/features/bookmarked-pages.adoc
+++ b/viewers/wicket/adoc/modules/ROOT/pages/features/bookmarked-pages.adoc
@@ -15,7 +15,7 @@ Bookmarking is automatic; whenever a bookmarkable object/action is visited, then
 
 == Screenshots
 
-The following screenshot (nb: using a pre 1.8.0 version of the xref:vw:ROOT:about.adoc[Wicket viewer] UI), taken from https://github.com/isisaddons/isis-app-todoapp[Isisaddons example todoapp] (not ASF), shows how the bookmarks are listed in a sliding panel.
+The following screenshot (nb: using a pre 1.8.0 version of the xref:vw:ROOT:about.adoc[Wicket viewer] UI), taken from https://github.com/apache/isis-app-todoapp[Isisaddons example todoapp] (not ASF), shows how the bookmarks are listed in a sliding panel.
 
 image::bookmarked-pages/panel.png[width="800px",link="{imagesdir}/bookmarked-pages/panel.png"]
 
diff --git a/viewers/wicket/adoc/modules/ROOT/pages/hints-and-tips/per-user-themes.adoc b/viewers/wicket/adoc/modules/ROOT/pages/hints-and-tips/per-user-themes.adoc
index 4054c9a..d55a284 100644
--- a/viewers/wicket/adoc/modules/ROOT/pages/hints-and-tips/per-user-themes.adoc
+++ b/viewers/wicket/adoc/modules/ROOT/pages/hints-and-tips/per-user-themes.adoc
@@ -11,7 +11,7 @@ Would this also be possible for the login page, possibly depending on the used h
 
 Yes, you can do this, by installing a custom implementation of the Wicket Bootstrap's `ActiveThemeProvider`.
 
-The http://github.com/isisaddons/isis-app-todoapp[Isis addons' todoapp] (non-ASF) actually link:https://github.com/isisaddons/isis-app-todoapp/tree/61b8114a8e01dbb3c380b31cf09eaed456407570[does this], storing the info via the (non-ASF) http://platform.incode.org/modules/dom/settings/dom-settings.html[Incode Platform's settings module] :
+The http://github.com/apache/isis-app-todoapp[TodoApp] (non-ASF) actually link:https://github.com/apache/isis-app-todoapp/tree/61b8114a8e01dbb3c380b31cf09eaed456407570[does this], storing the info via the (non-ASF) http://platform.incode.org/modules/dom/settings/dom-settings.html[Incode Platform's settings module] :
 
 
 [source,java]
diff --git a/viewers/wicket/adoc/modules/ROOT/pages/layout/annotation-based.adoc b/viewers/wicket/adoc/modules/ROOT/pages/layout/annotation-based.adoc
index 4f3a96b..e73e7b1 100644
--- a/viewers/wicket/adoc/modules/ROOT/pages/layout/annotation-based.adoc
+++ b/viewers/wicket/adoc/modules/ROOT/pages/layout/annotation-based.adoc
@@ -164,7 +164,7 @@ If the sum of all the columns exceeds 12, then the collections are placed undern
 
 == Example Layouts
 
-Below are sketches for the layout of the https://github.com/apache/isis/blob/f38fdb92941172eabb12e0943509f239e6d5925f/example/application/quickstart_wicket_restful_jdo/dom/src/main/java/dom/todo/ToDoItem.java[ToDoItem] class of the Isis addons example https://github.com/isisaddons/isis-app-todoapp/[todoapp] (not ASF):
+Below are sketches for the layout of the https://github.com/apache/isis/blob/f38fdb92941172eabb12e0943509f239e6d5925f/example/application/quickstart_wicket_restful_jdo/dom/src/main/java/dom/todo/ToDoItem.java[ToDoItem] class of the example https://github.com/apache/isis-app-todoapp/[TodoApp]:
 
 The first divides the properties into two equal sized columns (6-6-0) and puts the collections underneath (12):
 
diff --git a/viewers/wicket/adoc/modules/ROOT/pages/layout/file-based.adoc b/viewers/wicket/adoc/modules/ROOT/pages/layout/file-based.adoc
index b2b3e1b..41f11a0 100644
--- a/viewers/wicket/adoc/modules/ROOT/pages/layout/file-based.adoc
+++ b/viewers/wicket/adoc/modules/ROOT/pages/layout/file-based.adoc
@@ -77,7 +77,7 @@ This link:https://www.youtube.com/watch?v=MxewC5Pve5k[screencast] describes the
 == Examples
 
 Probably the easiest way to understand dynamic XML layouts is by example.
-For this we'll use the `ToDoItem` from the (non-ASF) http://github.com/isisaddons/isis-app-todoapp[Isis addons' todoapp]:
+For this we'll use the `ToDoItem` from the http://github.com/apache/isis-app-todoapp[TodoApp]:
 
 image::layout-dynamic-xml/ToDoItem.png[width="940px",link="{imagesdir}/layout-dynamic-xml/ToDoItem.png"]
 
@@ -266,10 +266,10 @@ This section decribes a number of more features useful in more complex layouts.
 
 One feature worth being aware of is that it is possible to render a single feature more than once.
 
-For example, the dashboard home page for the (non-ASF) http://github.com/isisaddons/isis-app-todoapp[Isis addons' todoapp] shows
+For example, the dashboard home page for the http://github.com/apache/isis-app-todoapp[TodoApp] shows
 the "not yet complete" collection of todo items twice, once as a table and also as a calendar:
 
-image::layout-dynamic-xml/ToDoAppDashboard.png[width="940px",link="{imagesdir}/layout-dynamic-xml/ToDoAppDashboard.png"]
+image::layout-dynamic-xml/TodoAppDashboard.png[width="940px",link="{imagesdir}/layout-dynamic-xml/TodoAppDashboard.png"]
 
 
 This is accomplished using the following (slightly abbreviated) layout:
@@ -306,7 +306,7 @@ This might be useful for a complex domain object with multiple tabs; certain pro
 
 === Custom CSS
 
-The ToDoApp's dashboard (above) also shows how custom CSS styles can be associated with specific regions of the layout:
+The TodoApp's dashboard (above) also shows how custom CSS styles can be associated with specific regions of the layout:
 
 [source,xml]
 ----


[isis] 07/09: ISIS-2062: docs

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

danhaywood pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git

commit 6ff6c851c0452a3ea9d22b9172790fdeaa088de3
Author: danhaywood <da...@haywood-associates.co.uk>
AuthorDate: Fri Jan 31 18:19:19 2020 +0000

    ISIS-2062: docs
---
 .../modules/fun/pages/core-concepts/philosophy/domain-driven-design.adoc | 1 +
 1 file changed, 1 insertion(+)

diff --git a/api/adoc/userguide/modules/fun/pages/core-concepts/philosophy/domain-driven-design.adoc b/api/adoc/userguide/modules/fun/pages/core-concepts/philosophy/domain-driven-design.adoc
index 60e3340..9e5d5c8 100644
--- a/api/adoc/userguide/modules/fun/pages/core-concepts/philosophy/domain-driven-design.adoc
+++ b/api/adoc/userguide/modules/fun/pages/core-concepts/philosophy/domain-driven-design.adoc
@@ -42,6 +42,7 @@ This domain model identifies the relevant concepts of the domain, how they relat
 This single domain model provides the vocabulary for the  ubiquitous language for our system.
 
 
+[role="float-left"]
 .Ubiquitous Language
 ****
 Build a common language between the domain experts and developers by using the concepts of the domain model as the primary means of communication. Use the terms in speech, in diagrams, in writing, and when presenting.