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 2017/03/08 00:01:47 UTC

[1/2] isis git commit: ISIS-1594: edit button for docs.

Repository: isis
Updated Branches:
  refs/heads/master c531f7e48 -> cf84ab178


http://git-wip-us.apache.org/repos/asf/isis/blob/cf84ab17/adocs/documentation/src/main/asciidoc/isis-in-pictures.adoc
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/isis-in-pictures.adoc b/adocs/documentation/src/main/asciidoc/isis-in-pictures.adoc
index e76c418..885da34 100644
--- a/adocs/documentation/src/main/asciidoc/isis-in-pictures.adoc
+++ b/adocs/documentation/src/main/asciidoc/isis-in-pictures.adoc
@@ -6,14 +6,14 @@
 
 
 
-pass:[<br/><br/><br/>]
-
 
 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 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 http://www.isisaddons.org[Isis Addons] modules.  Because we expect that most apps will end up using one or more of these addons, we've chosen to include screenshots of those too.
+The todoapp also integrates with a number of other http://www.isisaddons.org[Isis Addons] modules.
+Because we expect that most apps will end up using one or more of these addons, we've chosen to include screenshots of those too.
 
 
 == Basics
@@ -22,7 +22,9 @@ Let's start with the basics...
 
 === Sign-in
 
-Apache Isis integrates with http://shiro.apache.org[Apache Shiro]. The core framework supports file-based realms, while the Isis Addons http://github.com/isisaddons/isis-module-security[security module] (non ASF) provides a well-features subdomain of users, roles and permissions against features derived from the Apache Isis metamodel. The example todoapp integrates with the security module.
+Apache Isis integrates with http://shiro.apache.org[Apache Shiro].
+The core framework supports file-based realms, while the Isis Addons http://github.com/isisaddons/isis-module-security[security module] (non ASF) provides a well-features subdomain of users, roles and permissions against features derived from the Apache Isis metamodel.
+The example todoapp integrates with the security module.
 
 
 image::{_imagesdir}/isis-in-pictures/010-login.png[width="800px",link="{_imagesdir}/isis-in-pictures/010-login.png"]
@@ -31,7 +33,10 @@ image::{_imagesdir}/isis-in-pictures/010-login.png[width="800px",link="{_imagesd
 
 === Install Fixtures
 
-Apache Isis has lots of features to help you prototype and then fully test your application. One such are fixture scripts, which allow pre-canned data to be installed in the running application. This is great to act as the starting point for identifying new stories; later on when the feature is being implemented, the same fixture script can be re-used within that feature's integration tests. (More on tests later).
+Apache Isis has lots of features to help you prototype and then fully test your application.
+One such are fixture scripts, which allow pre-canned data to be installed in the running application.
+This is great to act as the starting point for identifying new stories; later on when the feature is being implemented, the same fixture script can be re-used within that feature's integration tests.
+(More on tests later).
 
 
 image::{_imagesdir}/isis-in-pictures/020-install-fixtures.png[width="800px",link="{_imagesdir}/isis-in-pictures/020-install-fixtures.png"]
@@ -40,23 +45,30 @@ image::{_imagesdir}/isis-in-pictures/020-install-fixtures.png[width="800px",link
 
 === 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. The todoapp example uses a "dashboard" view model to list todo items not yet done vs those completed.
+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.
+The todoapp example uses a "dashboard" view model to list todo items not yet done vs those completed.
 
 image::{_imagesdir}/isis-in-pictures/030-dashboard-view-model.png[width="800px",link="{_imagesdir}/isis-in-pictures/030-dashboard-view-model.png"]
 
-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.
+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. Like all web pages, this UI is generated at runtime, directly from the domain object itself. There are no controllers or HTML to write.
+The screenshot below is of the todoapp's `ToDoItem` domain entity.
+Like all web pages, this UI is generated at runtime, directly from the domain object itself.
+There are no controllers or HTML to write.
 
 
 image::{_imagesdir}/isis-in-pictures/040-domain-entity.png[width="800px",link="{_imagesdir}/isis-in-pictures/040-domain-entity.png"]
 
-In addition to the domain entity, Apache Isis allows layout metadata hints to be provided, for example to specify the grouping of properties, the positioning of those groups into columns, the association of actions (the buttons) with properties or collections, the icons on the buttons, and so on. This metadata can be specified either as annotations or in JSON form; the benefit of the latter is that it can be updated (and the UI redrawn) without restarting the app.
+
+In addition to the domain entity, Apache Isis allows layout metadata hints to be provided, for example to specify the grouping of properties, the positioning of those groups into columns, the association of actions (the buttons) with properties or collections, the icons on the buttons, and so on.
+This metadata can be specified either as annotations or in XML form.
+The benefit of the latter is that it can be updated (and the UI redrawn) without restarting the app.
 
 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.
 
@@ -65,57 +77,60 @@ Any production-ready app will require this metadata but (like the view models di
 
 === Edit properties
 
-By default properties on domain entities are editable, meaning they can be changed directly. In the todoapp example, the `ToDoItem`'s description is one such editable property:
+By default properties on domain entities are editable, meaning they can be changed directly.
+In the todoapp example, the `ToDoItem`'s description is one such editable property:
 
 image::{_imagesdir}/isis-in-pictures/050-edit-property.png[width="800px",link="{_imagesdir}/isis-in-pictures/050-edit-property.png"]
 
 
-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).
+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. In the screenshot below the ``ToDoItem``'s category and subcategory can be updated together using an action:
+The other way to modify an entity is to an invoke an action.
+In the screenshot below the ``ToDoItem``'s category and subcategory can be updated together using an action:
 
 image::{_imagesdir}/isis-in-pictures/060-invoke-action.png[width="800px",link="{_imagesdir}/isis-in-pictures/060-invoke-action.png"]
 
 
-There are no limitations on what an action can do; it might just update a single object, it could update multiple objects. Or, it might not update any objects at all, but could instead perform some other activity, such as sending out email or printing a document.
+There are no limitations on what an action can do; it might just update a single object, it could update multiple objects.
+Or, it might not update any objects at all, but could instead perform some other activity, such as sending out email or printing a document.
 
-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.
+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.  When an object is rendered by Apache Isis, the mixin "contributes" its behaviour to the domain object (similar to aspect-oriented traits).
+As an alternative to placing actions (business logic) on a domain object, it can instead be placed inside a mixin object.
+When an object is rendered by Apache Isis, the mixin "contributes" its behaviour to the domain object (similar to aspect-oriented traits).
 
 In the screenshot below the highlighted "export as xml" action, the "relative priority" property (and "previous" and "next" actions) the "similar to" collection and the two "as DTO" actions are all contributed by mixins:
 
 image::{_imagesdir}/isis-in-pictures/065-contributions.png[width="800px",link="{_imagesdir}/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 more recent support
-for tabbed views introduced in v1.12.0.
+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:
+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:
 
 image::{_imagesdir}/isis-in-pictures/070-pluggable-views.png[width="800px",link="{_imagesdir}/isis-in-pictures/070-pluggable-views.png"]
 
 
-The (non-ASF) link:http://isisaddons.org[Isis Addons] library provides a number of such extensions.  For example, the https://github.com/isisaddons/isis-wicket-gmap3[gmap3 component] will render any domain entity (such as `ToDoItem`) that implements its `Locatable` interface:
+The (non-ASF) link:http://isisaddons.org[Isis Addons] library provides a number of such extensions.
+For example, the https://github.com/isisaddons/isis-wicket-gmap3[gmap3 component] will render any domain entity (such as `ToDoItem`) that implements its `Locatable` interface:
 
 image::{_imagesdir}/isis-in-pictures/080-gmap3-view.png[width="800px",link="{_imagesdir}/isis-in-pictures/080-gmap3-view.png"]
 
@@ -130,14 +145,16 @@ image::{_imagesdir}/isis-in-pictures/090-fullcalendar2-view.png[width="800px",li
 
 
 
-Yet another "view" (though this one is rather simpler) is that provided by the Isis Addons https://github.com/isisaddons/isis-wicket-excel[excel component] (non ASF). 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 Isis Addons https://github.com/isisaddons/isis-wicket-excel[excel component] (non ASF).
+This provides a download button to the table as a spreadsheet:
 
 image::{_imagesdir}/isis-in-pictures/100-excel-view-and-docx.png[width="800px",link="{_imagesdir}/isis-in-pictures/100-excel-view-and-docx.png"]
 
 
 
 
-The screenshot above also shows an "export to Word" action. This is _not_ a view but instead is a (contributed) action that uses the Isis Addons https://github.com/isisaddons/isis-module-docx[docx module] (non ASF) to perform a "mail-merge":
+The screenshot above also shows an "export to Word" action.
+This is _not_ a view but instead is a (contributed) action that uses the Isis Addons https://github.com/isisaddons/isis-module-docx[docx module] (non ASF) to perform a "mail-merge":
 
 image::{_imagesdir}/isis-in-pictures/110-docx.png[width="800px",link="{_imagesdir}/isis-in-pictures/110-docx.png"]
 
@@ -154,30 +171,32 @@ Please note that the Isis Addons are not part of ASF, but they _are_ all license
 
 == Security, Auditing and more...
 
-As well as providing extensions to the UI, the Isis Addons provide a rich set of modules to support various cross-cutting concerns.
+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 https://github.com/isisaddons/isis-module-sessionlogger[user session logging/auditing] (non ASF), https://github.com/isisaddons/isis-module-command[command profiling] (non ASF), https://github.com/isisaddons/isis-module-audit[(object change) auditing] (shown, non-ASF) and (inter-system) https://github.com/isisaddons/isis-module-publishing[event publishing] (non ASF):
+Under the activity menu are four sets of services which provide support for https://github.com/isisaddons/isis-module-sessionlogger[user session logging/auditing] , https://github.com/isisaddons/isis-module-command[command profiling], https://github.com/isisaddons/isis-module-audit[(object change) auditing] (shown) and (inter-system) https://github.com/isisaddons/isis-module-publishmq[event publishmq]:
 
 image::{_imagesdir}/isis-in-pictures/120-auditing.png[width="800px",link="{_imagesdir}/isis-in-pictures/120-auditing.png"]
 
 
 
-
-In the security menu is access to the rich set of functionality provided by the Isis Addons https://github.com/isisaddons/isis-module-security[security module] (non ASF):
+In the security menu is access to the rich set of functionality provided by the Isis Addons https://github.com/isisaddons/isis-module-security[security module]:
 
 image::{_imagesdir}/isis-in-pictures/130-security.png[width="800px",link="{_imagesdir}/isis-in-pictures/130-security.png"]
 
 
 
 
-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):
+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::{_imagesdir}/isis-in-pictures/140-i18n.png[width="800px",link="{_imagesdir}/isis-in-pictures/140-i18n.png"]
 
 
 
 
-The Isis Addons also provides a module for managing application and user https://github.com/isisaddons/isis-module-settings[settings] (non ASF). Most apps (the todoapp example included) won't expose these services directly, but will usually wrap them in their own app-specific settings service that trivially delegates to the settings module's services:
+The Isis Addons also provides a module for managing application and user https://github.com/isisaddons/isis-module-settings[settings].
+Most apps (the todoapp example included) won't expose these services directly, but will usually wrap them in their own app-specific settings service that trivially delegates to the settings module's services:
 
 image::{_imagesdir}/isis-in-pictures/150-appsettings.png[width="800px",link="{_imagesdir}/isis-in-pictures/150-appsettings.png"]
 
@@ -186,7 +205,10 @@ image::{_imagesdir}/isis-in-pictures/150-appsettings.png[width="800px",link="{_i
 
 === Multi-tenancy support
 
-Of the various Isis Addons, the https://github.com/isisaddons/isis-module-security[security module] has the most features. One significant feature is the ability to associate users and objects with a "tenancy". The todoapp uses this feature so that different users' list of todo items are kept separate from one another. A user with administrator is able to switch their own "tenancy" to the tenancy of some other user, in order to access the objects in that tenancy:
+Of the various Isis Addons, the https://github.com/isisaddons/isis-module-security[security module] has the most features.
+One significant feature is the ability to associate users and objects with a "tenancy".
+The todoapp uses this feature so that different users' list of todo items are kept separate from one another.
+A user with administrator is able to switch their own "tenancy" to the tenancy of some other user, in order to access the objects in that tenancy:
 
 image::{_imagesdir}/isis-in-pictures/160-switch-tenancy.png[width="800px",link="{_imagesdir}/isis-in-pictures/160-switch-tenancy.png"]
 
@@ -197,7 +219,8 @@ For more details, see the https://github.com/isisaddons/isis-module-security[sec
 
 === Me
 
-Most of the https://github.com/isisaddons/isis-module-security[security module]'s services are on the security module, which would normally be provided only to administrators. Kept separate is the "me" action:
+Most of the https://github.com/isisaddons/isis-module-security[security module]'s services are on the security module, which would normally be provided only to administrators.
+Kept separate is the "me" action:
 
 image::{_imagesdir}/isis-in-pictures/170-me.png[width="800px",link="{_imagesdir}/isis-in-pictures/170-me.png"]
 
@@ -209,12 +232,14 @@ image::{_imagesdir}/isis-in-pictures/180-app-user-entity.png[width="800px",link=
 
 
 
-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.
+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. If more than one theme has been configured for the app, then the viewer allows the end-user to switch their theme:
+Apache Isis' Wicket viewer uses http://getbootstrap.com[Twitter Bootstrap], which means that it can be themed.
+If more than one theme has been configured for the app, then the viewer allows the end-user to switch their theme:
 
 image::{_imagesdir}/isis-in-pictures/190-switch-theme.png[width="800px",link="{_imagesdir}/isis-in-pictures/190-switch-theme.png"]
 
@@ -223,14 +248,17 @@ image::{_imagesdir}/isis-in-pictures/190-switch-theme.png[width="800px",link="{_
 
 == 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).  The framework provides two default representations, one an implementation of the http://restfulobjects.org[Restful Objects] spec, the other a simplified representation suitable for custom Javascript apps.  Other representations can be plugged in.
+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).
+The framework provides two default representations, one an implementation of the http://restfulobjects.org[Restful Objects] spec, the other a simplified representation suitable for custom Javascript apps.
+Other representations can be plugged in.
 
 The screenshot below shows accessing the Restful Objects representation API accessed through a Chrome plugin:
 
 image::{_imagesdir}/isis-in-pictures/200-rest-api.png[width="800px",link="{_imagesdir}/isis-in-pictures/200-rest-api.png"]
 
 
-The framework also automatically integrates with Swagger, generating a Swagger spec from the underlying domain object model.  From this spec REST clients can be code-generated; it also allows developers to play with the REST API through the Swagger UI:
+The framework also automatically integrates with Swagger, generating a Swagger spec from the underlying domain object model.
+From this spec REST clients can be code-generated; it also allows developers to play with the REST API through the Swagger UI:
 
 
 image::{_imagesdir}/isis-in-pictures/205-swagger-ui.png[width="800px",link="{_imagesdir}/isis-in-pictures/205-swagger-ui.png"]
@@ -244,19 +272,24 @@ image::{_imagesdir}/isis-in-pictures/205-swagger-ui.png[width="800px",link="{_im
 
 == Integration Testing Support
 
-Earlier on we noted that Apache Isis allows fixtures to be installed through the UI. These same fixture scripts can be reused within integration tests. For example, the code snippet below shows how the `FixtureScripts` service injected into an integration test can then be used to set up data:
+Earlier on we noted that Apache Isis allows fixtures to be installed through the UI.
+These same fixture scripts can be reused within integration tests.
+For example, the code snippet below shows how the `FixtureScripts` service injected into an integration test can then be used to set up data:
 
 image::{_imagesdir}/isis-in-pictures/210-fixture-scripts.png[width="500px",link="{_imagesdir}/isis-in-pictures/210-fixture-scripts.png"]
 
 
 
-The tests themselves are run in junit. While these are integration tests (so talking to a real database), they are no more complex than a regular unit test:
+The tests themselves are run in junit.
+While these are integration tests (so talking to a real database), they are no more complex than a regular unit test:
 
 image::{_imagesdir}/isis-in-pictures/220-testing-happy-case.png[width="400px",link="{_imagesdir}/isis-in-pictures/220-testing-happy-case.png"]
 
 
 
-To simulate the business rules enforced by Apache Isis, the domain object can be "wrapped" in a proxy. For example, if using the Wicket viewer then Apache Isis will enforce the rule (implemented in the `ToDoItem` class itself) that a completed item cannot have the "completed" action invoked upon it. The wrapper simulates this by throwing an appropriate exception:
+To simulate the business rules enforced by Apache Isis, the domain object can be "wrapped" in a proxy.
+For example, if using the Wicket viewer then Apache Isis will enforce the rule (implemented in the `ToDoItem` class itself) that a completed item cannot have the "completed" action invoked upon it.
+The wrapper simulates this by throwing an appropriate exception:
 
 image::{_imagesdir}/isis-in-pictures/230-testing-wrapper-factory.png[width="550px",link="{_imagesdir}/isis-in-pictures/230-testing-wrapper-factory.png"]
 
@@ -269,7 +302,8 @@ image::{_imagesdir}/isis-in-pictures/230-testing-wrapper-factory.png[width="550p
 
 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.
 
-Another important tool to ensure your codebase remains maintainable is Apache Isis' internal event bus. It is probably best explained by example; the code below says that the "complete" action should emit a `ToDoItem.Completed` event:
+Another important tool to ensure your codebase remains maintainable is Apache Isis' internal event bus.
+It is probably best explained by example; the code below says that the "complete" action should emit a `ToDoItem.Completed` event:
 
 image::{_imagesdir}/isis-in-pictures/240-domain-events.png[width="400px",link="{_imagesdir}/isis-in-pictures/240-domain-events.png"]
 
@@ -290,7 +324,12 @@ image::{_imagesdir}/isis-in-pictures/260-domain-event-test.png[width="850px",lin
 
 
 
-In fact, the domain event is fired not once, but (up to) 5 times. It is called 3 times prior to execution, to check that the action is visible, enabled and that arguments are valid. It is then additionally called prior to execution, and also called after execution. What this means is that a subscriber can in either veto access to an action of some publishing object, and/or it can perform cascading updates if the action is allowed to proceed.
+In fact, the domain event is fired not once, but (up to) 5 times.
+It is called 3 times prior to execution, to check that the action is visible, enabled and that arguments are valid.
+It is then additionally called prior to execution, and also called after execution.
+What this means is that a subscriber can in either veto access to an action of some publishing object, and/or it can perform cascading updates if the action is allowed to proceed.
 
-Moreover, domain events are fired for all properties and collections, not just actions. Thus, subscribers can therefore switch on or switch off different parts of an application. Indeed, the example todoapp demonstrates this.
+Moreover, domain events are fired for all properties and collections, not just actions.
+Thus, subscribers can therefore switch on or switch off different parts of an application.
+Indeed, the example todoapp demonstrates this.
 

http://git-wip-us.apache.org/repos/asf/isis/blob/cf84ab17/adocs/documentation/src/main/asciidoc/migration-notes.adoc
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/migration-notes.adoc b/adocs/documentation/src/main/asciidoc/migration-notes.adoc
index 0440de2..34c593b 100644
--- a/adocs/documentation/src/main/asciidoc/migration-notes.adoc
+++ b/adocs/documentation/src/main/asciidoc/migration-notes.adoc
@@ -6,6 +6,9 @@
 
 
 
+Consult these notes when migrating to new versions of the framework.
+
+
 
 include::_migration-notes_1.13.0-to-1.14.0.adoc[leveloffset=+1]
 include::_migration-notes_1.12.0-to-1.13.0.adoc[leveloffset=+1]

http://git-wip-us.apache.org/repos/asf/isis/blob/cf84ab17/adocs/documentation/src/main/asciidoc/more-thanks.adoc
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/more-thanks.adoc b/adocs/documentation/src/main/asciidoc/more-thanks.adoc
index 5df6464..4db6b98 100644
--- a/adocs/documentation/src/main/asciidoc/more-thanks.adoc
+++ b/adocs/documentation/src/main/asciidoc/more-thanks.adoc
@@ -6,7 +6,6 @@
 :toc: right
 
 
-pass:[<br/><br/><br/>]
 
 In addition to the http://www.apache.org/foundation/thanks.html[support given to Apache Foundation as a whole], we in the Apache Isis community would also like to extend our thanks to:
 
@@ -38,8 +37,6 @@ Also to:
 
 - link:https://github.com/mojavelinux[Dan Allen] for his fantastic work on link:https://github.com/asciidoctor/asciidoctor[Asciidoctor]
 
-- link:https://github.com/lukehutch[Luke Hutchison] for his link:https://github.com/lukehutch/fast-classpath-scanner[fast-classpath-scanner], in particular for merging in our PR for Java 7 support and releasing so quickly
-
 - link:https://github.com/krasa/MavenHelper[Vojtech Krasa] for his super https://github.com/krasa/MavenHelper[MavenHelper] plugin to IntelliJ
 
 and to many others who contribute their free time and passion to open source.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/isis/blob/cf84ab17/adocs/documentation/src/main/asciidoc/powered-by.adoc
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/powered-by.adoc b/adocs/documentation/src/main/asciidoc/powered-by.adoc
index 5c13486..b44543b 100644
--- a/adocs/documentation/src/main/asciidoc/powered-by.adoc
+++ b/adocs/documentation/src/main/asciidoc/powered-by.adoc
@@ -7,9 +7,6 @@
 
 
 
-pass:[<br/><br/>]
-
-
 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.
 

http://git-wip-us.apache.org/repos/asf/isis/blob/cf84ab17/adocs/documentation/src/main/asciidoc/screencasts-older.adoc
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/screencasts-older.adoc b/adocs/documentation/src/main/asciidoc/screencasts-older.adoc
index 7687687..6af6928 100644
--- a/adocs/documentation/src/main/asciidoc/screencasts-older.adoc
+++ b/adocs/documentation/src/main/asciidoc/screencasts-older.adoc
@@ -7,9 +7,8 @@
 
 
 
-pass:[<br/><br/>]
-
-These screencasts refer to older versions of the framework, but you may still find them of use.  More recent screencasts can be found link:./screencasts.html[here].
+These screencasts refer to older versions of the framework, but you may still find them of use.
+More recent screencasts can be found link:./screencasts.html[here].
 
 
 == Getting Started

http://git-wip-us.apache.org/repos/asf/isis/blob/cf84ab17/adocs/documentation/src/main/asciidoc/screencasts.adoc
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/screencasts.adoc b/adocs/documentation/src/main/asciidoc/screencasts.adoc
index 0f05d66..62dbf62 100644
--- a/adocs/documentation/src/main/asciidoc/screencasts.adoc
+++ b/adocs/documentation/src/main/asciidoc/screencasts.adoc
@@ -7,17 +7,18 @@
 
 
 
-pass:[<br/><br/>]
-
 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.
 
 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
+3 minutes.
+The number of each screencast (eg 'link:https://www.youtube.com/watch?v=OTNHR5EdAs8[001^]') is a link over
 to youtube.
 
-Or, if you have a little more time, you can watch the screencasts by playlist.  You can either watch
+Or, if you have a little more time, you can watch the screencasts by playlist.
+You can either watch
 link:https://www.youtube.com/playlist?list=PLbRpnAmQ6xsA-m4d2iwAuWrX1icJz0SnM[ALL] of them one after the other, or you
-can use one of the themed playlists to explore particular aspects of the framework.  The table below indicates which screencasts are in which playlist.
+can use one of the themed playlists to explore particular aspects of the framework.
+The table below indicates which screencasts are in which playlist.
 
 There are some screencasts relating to the Apache Isis documentation: link:https://www.youtube.com/watch?v=vJYeuVfrctc[using/searching^] docs, and link:https://www.youtube.com/watch?v=RQ_FFYd7npU[contributing patches/editing ^].
 
@@ -26,7 +27,6 @@ Finally, you can also find some screencasts for earlier versions of the framewor
 
 
 
-
 [cols="2a,1a,1a,1a,1a,1a,1a,1a,1a,1a,1a,1a"]
 |===
 

http://git-wip-us.apache.org/repos/asf/isis/blob/cf84ab17/adocs/template/document.html.erb
----------------------------------------------------------------------
diff --git a/adocs/template/document.html.erb b/adocs/template/document.html.erb
index cbd19ac..d73aa91 100644
--- a/adocs/template/document.html.erb
+++ b/adocs/template/document.html.erb
@@ -167,6 +167,7 @@
 
         div#doc-content {
             margin-top: 30px;
+            padding-top: 30px;
         }
 
         div.documentation-page table.frame-all {
@@ -351,18 +352,18 @@
         }
     </style>
 
+    <style>
+        .tocify {
+            margin-top: 80px;
+        }
+    </style>
+
 
 </script>
 
 </head>
 <body>
 
-<<div class="github-fork-ribbon-wrapper right" style="position: fixed;">
-    <div class="github-fork-ribbon">
-        <a href="https://github.com/apache/isis#fork-destination-box">Fork me on GitHub</a>
-    </div>
-</div>
-
 
 <div class="row">
 


[2/2] isis git commit: ISIS-1594: edit button for docs.

Posted by da...@apache.org.
ISIS-1594: edit button for docs.

Also: removal of pass:[<br/><br/>] for spacing (using CSS instead)
Also: removal of github fork banner - breaks mobile web site


Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/cf84ab17
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/cf84ab17
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/cf84ab17

Branch: refs/heads/master
Commit: cf84ab1788071b31d5748e7451465fa33527dc8c
Parents: c531f7e
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Wed Mar 8 00:01:38 2017 +0000
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Wed Mar 8 00:01:38 2017 +0000

----------------------------------------------------------------------
 adocs/documentation/monitor.sh                  |   2 +-
 adocs/documentation/pom-pdf.xml                 | 228 ++++++++
 adocs/documentation/pom.xml                     |  71 +--
 adocs/documentation/pom.xml.new                 | 572 +++++++++++++++++++
 adocs/documentation/publish.sh                  |   4 +-
 .../asciidoc/articles-and-presentations.adoc    |   2 -
 adocs/documentation/src/main/asciidoc/asf.adoc  |   2 -
 .../documentation/src/main/asciidoc/books.adoc  |  14 +-
 .../src/main/asciidoc/cheat-sheet.adoc          |   2 -
 .../src/main/asciidoc/common-use-cases.adoc     |   3 -
 .../src/main/asciidoc/documentation.adoc        |   1 -
 .../asciidoc/downloadable-presentations.adoc    |   4 +-
 .../src/main/asciidoc/downloads.adoc            |  32 +-
 adocs/documentation/src/main/asciidoc/help.adoc |   1 -
 .../src/main/asciidoc/how-isis-works.adoc       |   2 -
 .../documentation/src/main/asciidoc/icons.adoc  |   6 +-
 .../src/main/asciidoc/isis-in-pictures.adoc     | 127 ++--
 .../src/main/asciidoc/migration-notes.adoc      |   3 +
 .../src/main/asciidoc/more-thanks.adoc          |   3 -
 .../src/main/asciidoc/powered-by.adoc           |   3 -
 .../src/main/asciidoc/screencasts-older.adoc    |   5 +-
 .../src/main/asciidoc/screencasts.adoc          |  12 +-
 adocs/template/document.html.erb                |  13 +-
 23 files changed, 956 insertions(+), 156 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/isis/blob/cf84ab17/adocs/documentation/monitor.sh
----------------------------------------------------------------------
diff --git a/adocs/documentation/monitor.sh b/adocs/documentation/monitor.sh
index 69437a8..fc587f5 100644
--- a/adocs/documentation/monitor.sh
+++ b/adocs/documentation/monitor.sh
@@ -1,2 +1,2 @@
 #!/usr/bin/env bash
-mvn compile -Dskip.pdf -o && ruby monitor.rb -b
+mvn compile -o && ruby monitor.rb -b

http://git-wip-us.apache.org/repos/asf/isis/blob/cf84ab17/adocs/documentation/pom-pdf.xml
----------------------------------------------------------------------
diff --git a/adocs/documentation/pom-pdf.xml b/adocs/documentation/pom-pdf.xml
new file mode 100644
index 0000000..ba19d35
--- /dev/null
+++ b/adocs/documentation/pom-pdf.xml
@@ -0,0 +1,228 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+<!--
+    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 agreed to in writing,
+    software distributed under the License is distributed on an
+    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, either express or implied.  See the License for the
+    specific language governing permissions and limitations
+    under the License.
+-->
+    <modelVersion>4.0.0</modelVersion>
+
+    <!--
+    Heavily adapted from deltaspike's Asciidoctor website; many thanks!
+    -->
+
+    <parent>
+        <groupId>org.apache</groupId>
+        <artifactId>apache</artifactId>
+        <version>14</version>
+        <relativePath/>
+    </parent>
+
+    <groupId>org.apache.isis.docs</groupId>
+    <artifactId>isis-documentation-pdf</artifactId>
+    <version>1.14.0-SNAPSHOT</version>
+    <packaging>pom</packaging>
+
+    <name>Apache Isis Docs</name>
+    <description>
+        Apache Isis Website and Documentation, written using Asciidoctor
+    </description>
+    <url>http://isis.apache.org</url>
+
+    <properties>
+        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+
+        <asciidoctor.maven.plugin.version>1.5.3</asciidoctor.maven.plugin.version>
+        <asciidoctorj.pdf.version>1.5.0-alpha.11</asciidoctorj.pdf.version>
+        <asciidoctorj.version>1.5.4</asciidoctorj.version>
+        <asciidoctorj.diagram.version>1.5.0</asciidoctorj.diagram.version>
+        <incode-asciidoctor-extension-monotree.version>0.0.2</incode-asciidoctor-extension-monotree.version>
+        <jruby.version>1.7.21</jruby.version>
+
+        <svn.scmPubCheckoutDirectory>${project.build.directory}/co-site</svn.scmPubCheckoutDirectory>
+
+        <build.dir>${project.basedir}/target/site</build.dir>
+
+        <isis-site.dir>../../../isis-site/content</isis-site.dir>
+        <redirects.dir>../redirects/content</redirects.dir>
+        <message>updating content (built from adocs/documentation in isis.git repo)</message>
+    </properties>
+
+    <scm>
+        <connection>scm:git:https://git-wip-us.apache.org/repos/asf/isis.git</connection>
+        <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/isis.git</developerConnection>
+        <url>https://git-wip-us.apache.org/repos/asf/isis.git</url>
+        <tag>HEAD</tag>
+    </scm>
+
+    <repositories>
+        <repository>
+            <id>rubygems-proxy-releases</id>
+            <name>RubyGems.org Proxy (Releases)</name>
+            <url>http://rubygems-proxy.torquebox.org/releases</url>
+            <releases>
+                <enabled>true</enabled>
+            </releases>
+            <snapshots>
+                <enabled>false</enabled>
+            </snapshots>
+        </repository>
+    </repositories>
+
+    <build>
+        <pluginManagement>
+            <plugins>
+                <plugin>
+                    <groupId>de.saumya.mojo</groupId>
+                    <artifactId>gem-maven-plugin</artifactId>
+                    <version>1.0.5</version>
+                    <configuration>
+                        <!-- align JRuby version with AsciidoctorJ to avoid redundant downloading -->
+                        <jrubyVersion>${jruby.version}</jrubyVersion>
+                        <gemHome>${project.build.directory}/gems</gemHome>
+                        <gemPath>${project.build.directory}/gems</gemPath>
+                    </configuration>
+                    <executions>
+                        <execution>
+                            <goals>
+                                <goal>initialize</goal>
+                            </goals>
+                        </execution>
+                    </executions>
+                </plugin>
+                <plugin>
+                    <groupId>org.asciidoctor</groupId>
+                    <artifactId>asciidoctor-maven-plugin</artifactId>
+                    <version>${asciidoctor.maven.plugin.version}</version>
+                    <dependencies>
+                        <dependency>
+                            <groupId>org.asciidoctor</groupId>
+                            <artifactId>asciidoctorj-pdf</artifactId>
+                            <version>${asciidoctorj.pdf.version}</version>
+                        </dependency>
+                        <!-- Comment this section to use the default jruby artifact provided by the plugin -->
+                        <dependency>
+                            <groupId>org.jruby</groupId>
+                            <artifactId>jruby-complete</artifactId>
+                            <version>${jruby.version}</version>
+                        </dependency>
+                        <!-- Comment this section to use the default AsciidoctorJ artifact provided by the plugin -->
+                        <dependency>
+                            <groupId>org.asciidoctor</groupId>
+                            <artifactId>asciidoctorj</artifactId>
+                            <version>${asciidoctorj.version}</version>
+                        </dependency>
+                        <dependency>
+                            <groupId>org.asciidoctor</groupId>
+                            <artifactId>asciidoctorj-diagram</artifactId>
+                            <version>${asciidoctorj.diagram.version}</version>
+                        </dependency>
+                        <dependency>
+                            <groupId>org.incode.asciidoctor.monotree</groupId>
+                            <artifactId>incode-asciidoctor-extension-monotree</artifactId>
+                            <version>${incode-asciidoctor-extension-monotree.version}</version>
+                        </dependency>
+                    </dependencies>
+                    <configuration>
+                        <!-- If you set baseDir to ${project.basedir}, top-level includes are resolved relative to the project root -->
+                        <!--
+                        <baseDir>${project.basedir}</baseDir>
+                        -->
+                        <!-- Attributes common to all output formats -->
+                        <attributes>
+                            <endpoint-url>http://isis.apache.org</endpoint-url>
+                            <sourcedir>${project.build.sourceDirectory}</sourcedir>
+                            <project-version>${project.version}</project-version>
+                        </attributes>
+                        <requires>
+                            <require>asciidoctor-diagram</require>
+                        </requires>
+                    </configuration>
+                </plugin>
+            </plugins>
+        </pluginManagement>
+    </build>
+
+    <dependencies>
+        <dependency>
+            <groupId>rubygems</groupId>
+            <artifactId>asciidoctor-diagram</artifactId>
+            <version>1.2.1</version>
+            <type>gem</type>
+            <scope>provided</scope>
+            <exclusions>
+                <exclusion>
+                    <groupId>rubygems</groupId>
+                    <artifactId>asciidoctor</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+    </dependencies>
+
+    <profiles>
+
+        <profile>
+            <id>pdf</id>
+            <activation>
+                <property>
+                    <name>!skip.pdf</name>
+                </property>
+            </activation>
+            <build>
+                <plugins>
+                    <plugin>
+                        <groupId>org.asciidoctor</groupId>
+                        <artifactId>asciidoctor-maven-plugin</artifactId>
+                        <executions>
+                            <execution>
+                                <id>generate-pdf-doc</id>
+                                <phase>generate-resources</phase>
+                                <goals>
+                                    <goal>process-asciidoc</goal>
+                                </goals>
+                                <configuration>
+                                    <backend>pdf</backend>
+
+                                    <sourceDirectory>src/main/asciidoc/guides</sourceDirectory>
+                                    <outputDirectory>${project.reporting.outputDirectory}/guides</outputDirectory>
+
+                                    <sourceHighlighter>coderay</sourceHighlighter>
+                                    <preserveDirectories>true</preserveDirectories>
+                                    <relativeBaseDir>true</relativeBaseDir>
+                                    <doctype>book</doctype>
+
+                                    <attributes>
+                                        <sourcedir>${project.build.sourceDirectory}</sourcedir>
+                                        <imagesdir/>
+
+                                        <icons>font</icons>
+                                        <pagenums/>
+                                        <toc/>
+                                        <idprefix/>
+                                        <idseparator>-</idseparator>
+                                    </attributes>
+
+                                </configuration>
+                            </execution>
+                        </executions>
+                    </plugin>
+                </plugins>
+            </build>
+        </profile>
+
+    </profiles>
+
+</project>

http://git-wip-us.apache.org/repos/asf/isis/blob/cf84ab17/adocs/documentation/pom.xml
----------------------------------------------------------------------
diff --git a/adocs/documentation/pom.xml b/adocs/documentation/pom.xml
index 6bb07d8..8cc1978 100644
--- a/adocs/documentation/pom.xml
+++ b/adocs/documentation/pom.xml
@@ -47,10 +47,13 @@
 
         <asciidoctor.maven.plugin.version>1.5.3</asciidoctor.maven.plugin.version>
         <asciidoctorj.pdf.version>1.5.0-alpha.11</asciidoctorj.pdf.version>
-        <asciidoctorj.version>1.5.4</asciidoctorj.version>
+        <asciidoctorj.version>1.5.4.1</asciidoctorj.version>
         <asciidoctorj.diagram.version>1.5.0</asciidoctorj.diagram.version>
         <incode-asciidoctor-extension-monotree.version>0.0.2</incode-asciidoctor-extension-monotree.version>
-        <jruby.version>1.7.21</jruby.version>
+        <incode-asciidoctor-extension-improvethisdoc.version>0.0.2-SNAPSHOT</incode-asciidoctor-extension-improvethisdoc.version>
+
+        <jruby.version>9.1.8.0</jruby.version>
+        <!--<jruby.version>1.7.21</jruby.version>-->
 
         <svn.scmPubCheckoutDirectory>${project.build.directory}/co-site</svn.scmPubCheckoutDirectory>
 
@@ -108,11 +111,6 @@
                     <artifactId>asciidoctor-maven-plugin</artifactId>
                     <version>${asciidoctor.maven.plugin.version}</version>
                     <dependencies>
-                        <dependency>
-                            <groupId>org.asciidoctor</groupId>
-                            <artifactId>asciidoctorj-pdf</artifactId>
-                            <version>${asciidoctorj.pdf.version}</version>
-                        </dependency>
                         <!-- Comment this section to use the default jruby artifact provided by the plugin -->
                         <dependency>
                             <groupId>org.jruby</groupId>
@@ -135,6 +133,11 @@
                             <artifactId>incode-asciidoctor-extension-monotree</artifactId>
                             <version>${incode-asciidoctor-extension-monotree.version}</version>
                         </dependency>
+                        <dependency>
+                            <groupId>org.incode.asciidoctor.improvethisdoc</groupId>
+                            <artifactId>incode-asciidoctor-extension-improvethisdoc</artifactId>
+                            <version>${incode-asciidoctor-extension-improvethisdoc.version}</version>
+                        </dependency>
                     </dependencies>
                     <configuration>
                         <!-- If you set baseDir to ${project.basedir}, top-level includes are resolved relative to the project root -->
@@ -213,55 +216,14 @@
 
                                         <toc>right</toc>
                                         <icons>font</icons>
-                                    </attributes>
-                                </configuration>
-                            </execution>
-                        </executions>
-                    </plugin>
-                </plugins>
-            </build>
-        </profile>
-        <profile>
-            <id>pdf</id>
-            <activation>
-                <property>
-                    <name>!skip.pdf</name>
-                </property>
-            </activation>
-            <build>
-                <plugins>
-                    <plugin>
-                        <groupId>org.asciidoctor</groupId>
-                        <artifactId>asciidoctor-maven-plugin</artifactId>
-                        <executions>
-                            <execution>
-                                <id>generate-pdf-doc</id>
-                                <phase>generate-resources</phase>
-                                <goals>
-                                    <goal>process-asciidoc</goal>
-                                </goals>
-                                <configuration>
-                                    <backend>pdf</backend>
-
-                                    <sourceDirectory>src/main/asciidoc/guides</sourceDirectory>
-                                    <outputDirectory>${project.reporting.outputDirectory}/guides</outputDirectory>
 
-                                    <sourceHighlighter>rouge</sourceHighlighter>
-                                    <preserveDirectories>true</preserveDirectories>
-                                    <relativeBaseDir>true</relativeBaseDir>
-                                    <doctype>book</doctype>
-
-                                    <attributes>
-                                        <sourcedir>${project.build.sourceDirectory}</sourcedir>
-                                        <imagesdir/>
-
-                                        <icons>font</icons>
-                                        <pagenums/>
-                                        <toc/>
-                                        <idprefix/>
-                                        <idseparator>-</idseparator>
+                                        <improvethisdoc.rootDir>/adocs/documentation</improvethisdoc.rootDir>
+                                        <improvethisdoc.srcDir>/src/main/asciidoc</improvethisdoc.srcDir>
+                                        <improvethisdoc.organisation>apache</improvethisdoc.organisation>
+                                        <improvethisdoc.repo>isis</improvethisdoc.repo>
+                                        <improvethisdoc.branch>master</improvethisdoc.branch>
+                                        <improvethisdoc.label>Edit</improvethisdoc.label>
                                     </attributes>
-
                                 </configuration>
                             </execution>
                         </executions>
@@ -270,6 +232,7 @@
             </build>
         </profile>
 
+
         <profile>
             <id>delete</id>
             <activation>

http://git-wip-us.apache.org/repos/asf/isis/blob/cf84ab17/adocs/documentation/pom.xml.new
----------------------------------------------------------------------
diff --git a/adocs/documentation/pom.xml.new b/adocs/documentation/pom.xml.new
new file mode 100644
index 0000000..44924f0
--- /dev/null
+++ b/adocs/documentation/pom.xml.new
@@ -0,0 +1,572 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+<!--
+    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 agreed to in writing,
+    software distributed under the License is distributed on an
+    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, either express or implied.  See the License for the
+    specific language governing permissions and limitations
+    under the License.
+-->
+    <modelVersion>4.0.0</modelVersion>
+
+    <!--
+    Heavily adapted from deltaspike's Asciidoctor website; many thanks!
+    -->
+
+    <parent>
+        <groupId>org.apache</groupId>
+        <artifactId>apache</artifactId>
+        <version>14</version>
+        <relativePath/>
+    </parent>
+
+    <groupId>org.apache.isis.docs</groupId>
+    <artifactId>isis-documentation</artifactId>
+    <version>1.14.0-SNAPSHOT</version>
+    <packaging>pom</packaging>
+
+    <name>Apache Isis Docs</name>
+    <description>
+        Apache Isis Website and Documentation, written using Asciidoctor
+    </description>
+    <url>http://isis.apache.org</url>
+
+    <properties>
+        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+
+        <asciidoctor.maven.plugin.version>1.5.3</asciidoctor.maven.plugin.version>
+        <asciidoctorj.pdf.version>1.5.0-alpha.11</asciidoctorj.pdf.version>
+        <asciidoctorj.version>1.5.4.1</asciidoctorj.version>
+        <asciidoctorj.diagram.version>1.5.0</asciidoctorj.diagram.version>
+        <incode-asciidoctor-extension-monotree.version>0.0.2</incode-asciidoctor-extension-monotree.version>
+        <incode-asciidoctor-extension-improvethisdoc.version>0.0.2-SNAPSHOT</incode-asciidoctor-extension-improvethisdoc.version>
+
+        <jruby.version>9.1.8.0</jruby.version>
+        <!--<jruby.version>1.7.21</jruby.version>-->
+
+        <svn.scmPubCheckoutDirectory>${project.build.directory}/co-site</svn.scmPubCheckoutDirectory>
+
+        <build.dir>${project.basedir}/target/site</build.dir>
+
+        <isis-site.dir>../../../isis-site/content</isis-site.dir>
+        <redirects.dir>../redirects/content</redirects.dir>
+        <message>updating content (built from adocs/documentation in isis.git repo)</message>
+    </properties>
+
+    <scm>
+        <connection>scm:git:https://git-wip-us.apache.org/repos/asf/isis.git</connection>
+        <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/isis.git</developerConnection>
+        <url>https://git-wip-us.apache.org/repos/asf/isis.git</url>
+        <tag>HEAD</tag>
+    </scm>
+
+    <repositories>
+        <repository>
+            <id>rubygems-proxy-releases</id>
+            <name>RubyGems.org Proxy (Releases)</name>
+            <url>http://rubygems-proxy.torquebox.org/releases</url>
+            <releases>
+                <enabled>true</enabled>
+            </releases>
+            <snapshots>
+                <enabled>false</enabled>
+            </snapshots>
+        </repository>
+    </repositories>
+
+    <build>
+        <pluginManagement>
+            <plugins>
+                <plugin>
+                    <groupId>de.saumya.mojo</groupId>
+                    <artifactId>gem-maven-plugin</artifactId>
+                    <version>1.0.5</version>
+                    <configuration>
+                        <!-- align JRuby version with AsciidoctorJ to avoid redundant downloading -->
+                        <jrubyVersion>${jruby.version}</jrubyVersion>
+                        <gemHome>${project.build.directory}/gems</gemHome>
+                        <gemPath>${project.build.directory}/gems</gemPath>
+                    </configuration>
+                    <executions>
+                        <execution>
+                            <goals>
+                                <goal>initialize</goal>
+                            </goals>
+                        </execution>
+                    </executions>
+                </plugin>
+                <plugin>
+                    <groupId>org.asciidoctor</groupId>
+                    <artifactId>asciidoctor-maven-plugin</artifactId>
+                    <version>${asciidoctor.maven.plugin.version}</version>
+                    <configuration>
+                        <!-- If you set baseDir to ${project.basedir}, top-level includes are resolved relative to the project root -->
+                        <!--
+                        <baseDir>${project.basedir}</baseDir>
+                        -->
+                        <!-- Attributes common to all output formats -->
+                        <attributes>
+                            <endpoint-url>http://isis.apache.org</endpoint-url>
+                            <sourcedir>${project.build.sourceDirectory}</sourcedir>
+                            <project-version>${project.version}</project-version>
+                        </attributes>
+                        <requires>
+                            <require>asciidoctor-diagram</require>
+                        </requires>
+                    </configuration>
+                </plugin>
+            </plugins>
+        </pluginManagement>
+    </build>
+
+    <dependencies>
+        <dependency>
+            <groupId>rubygems</groupId>
+            <artifactId>asciidoctor-diagram</artifactId>
+            <version>1.2.1</version>
+            <type>gem</type>
+            <scope>provided</scope>
+            <exclusions>
+                <exclusion>
+                    <groupId>rubygems</groupId>
+                    <artifactId>asciidoctor</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+    </dependencies>
+
+    <profiles>
+        <profile>
+            <id>html</id>
+            <activation>
+                <property>
+                    <name>!skip.html</name>
+                </property>
+            </activation>
+            <build>
+                <plugins>
+                    <plugin>
+                        <groupId>org.asciidoctor</groupId>
+                        <artifactId>asciidoctor-maven-plugin</artifactId>
+                        <dependencies>
+                            <!-- Comment this section to use the default jruby artifact provided by the plugin -->
+                            <dependency>
+                                <groupId>org.jruby</groupId>
+                                <artifactId>jruby-complete</artifactId>
+                                <version>${jruby.version}</version>
+                            </dependency>
+                            <!-- Comment this section to use the default AsciidoctorJ artifact provided by the plugin -->
+                            <dependency>
+                                <groupId>org.asciidoctor</groupId>
+                                <artifactId>asciidoctorj</artifactId>
+                                <version>${asciidoctorj.version}</version>
+                            </dependency>
+                            <dependency>
+                                <groupId>org.asciidoctor</groupId>
+                                <artifactId>asciidoctorj-diagram</artifactId>
+                                <version>${asciidoctorj.diagram.version}</version>
+                            </dependency>
+                            <dependency>
+                                <groupId>org.incode.asciidoctor.monotree</groupId>
+                                <artifactId>incode-asciidoctor-extension-monotree</artifactId>
+                                <version>${incode-asciidoctor-extension-monotree.version}</version>
+                            </dependency>
+                            <dependency>
+                                <groupId>org.incode.asciidoctor.improvethisdoc</groupId>
+                                <artifactId>incode-asciidoctor-extension-improvethisdoc</artifactId>
+                                <version>${incode-asciidoctor-extension-improvethisdoc.version}</version>
+                            </dependency>
+                        </dependencies>
+                        <executions>
+                            <execution>
+                                <id>output-html</id>
+                                <phase>compile</phase>
+                                <goals>
+                                    <goal>process-asciidoc</goal>
+                                </goals>
+                                <configuration>
+                                    <backend>html5</backend>
+
+                                    <sourceDirectory>src/main/asciidoc</sourceDirectory>
+                                    <outputDirectory>${project.reporting.outputDirectory}</outputDirectory>
+
+                                    <!-- The gem-maven-plugin appends the scope (e.g., provided) to the gemPath defined in the plugin configuration -->
+                                    <gemPath>${project.build.directory}/gems-provided</gemPath>
+
+                                    <sourceHighlighter>coderay</sourceHighlighter>
+                                    <templateDir>../template</templateDir>
+                                    <eruby>erb</eruby>
+                                    <preserveDirectories>true</preserveDirectories>
+                                    <relativeBaseDir>true</relativeBaseDir>
+
+                                    <attributes>
+                                        <sourcedir>${project.build.sourceDirectory}</sourcedir>
+                                        <imagesdir/>
+
+                                        <toc>right</toc>
+                                        <icons>font</icons>
+
+                                        <improvethisdoc.rootDir>/adocs/documentation</improvethisdoc.rootDir>
+                                        <improvethisdoc.srcDir>/src/main/asciidoc</improvethisdoc.srcDir>
+                                        <improvethisdoc.organisation>apache</improvethisdoc.organisation>
+                                        <improvethisdoc.repo>isis</improvethisdoc.repo>
+                                        <improvethisdoc.branch>master</improvethisdoc.branch>
+                                        <improvethisdoc.label>Edit</improvethisdoc.label>
+
+                                    </attributes>
+                                </configuration>
+                            </execution>
+                        </executions>
+                    </plugin>
+                </plugins>
+            </build>
+        </profile>
+        <profile>
+            <id>pdf</id>
+            <activation>
+                <property>
+                    <name>!skip.pdf</name>
+                </property>
+            </activation>
+            <build>
+                <plugins>
+                    <plugin>
+                        <groupId>org.asciidoctor</groupId>
+                        <artifactId>asciidoctor-maven-plugin</artifactId>
+                        <dependencies>
+                            <dependency>
+                                <groupId>org.asciidoctor</groupId>
+                                <artifactId>asciidoctorj-pdf</artifactId>
+                                <version>${asciidoctorj.pdf.version}</version>
+                            </dependency>
+                            <!-- Comment this section to use the default jruby artifact provided by the plugin -->
+                            <dependency>
+                                <groupId>org.jruby</groupId>
+                                <artifactId>jruby-complete</artifactId>
+                                <version>${jruby.version}</version>
+                            </dependency>
+                            <!-- Comment this section to use the default AsciidoctorJ artifact provided by the plugin -->
+                            <dependency>
+                                <groupId>org.asciidoctor</groupId>
+                                <artifactId>asciidoctorj</artifactId>
+                                <version>${asciidoctorj.version}</version>
+                            </dependency>
+                            <dependency>
+                                <groupId>org.asciidoctor</groupId>
+                                <artifactId>asciidoctorj-diagram</artifactId>
+                                <version>${asciidoctorj.diagram.version}</version>
+                            </dependency>
+                            <dependency>
+                                <groupId>org.incode.asciidoctor.monotree</groupId>
+                                <artifactId>incode-asciidoctor-extension-monotree</artifactId>
+                                <version>${incode-asciidoctor-extension-monotree.version}</version>
+                            </dependency>
+                        </dependencies>
+                        <executions>
+                            <execution>
+                                <id>generate-pdf-doc</id>
+                                <phase>generate-resources</phase>
+                                <goals>
+                                    <goal>process-asciidoc</goal>
+                                </goals>
+                                <configuration>
+                                    <backend>pdf</backend>
+
+                                    <sourceDirectory>src/main/asciidoc/guides</sourceDirectory>
+                                    <outputDirectory>${project.reporting.outputDirectory}/guides</outputDirectory>
+
+                                    <sourceHighlighter>coderay</sourceHighlighter>
+                                    <preserveDirectories>true</preserveDirectories>
+                                    <relativeBaseDir>true</relativeBaseDir>
+                                    <doctype>book</doctype>
+
+                                    <attributes>
+                                        <sourcedir>${project.build.sourceDirectory}</sourcedir>
+                                        <imagesdir/>
+
+                                        <icons>font</icons>
+                                        <pagenums/>
+                                        <toc/>
+                                        <idprefix/>
+                                        <idseparator>-</idseparator>
+                                    </attributes>
+
+                                </configuration>
+                            </execution>
+                        </executions>
+                    </plugin>
+                </plugins>
+            </build>
+        </profile>
+
+        <profile>
+            <id>delete</id>
+            <activation>
+                <property>
+                    <name>!skip.delete</name>
+                </property>
+            </activation>
+            <build>
+                <plugins>
+                    <plugin>
+                        <artifactId>maven-antrun-plugin</artifactId>
+                        <version>1.8</version>
+                        <executions>
+                            <execution>
+                                <id>clean</id>
+                                <phase>clean</phase>
+                                <configuration>
+                                    <target>
+                                        <echo message=""/>
+                                        <echo message=""/>
+                                        <echo message="deleting everything in ${isis-site.dir}"/>
+                                        <echo message=""/>
+                                        <delete includeemptydirs="true">
+                                            <fileset dir="${isis-site.dir}" includes="**/*"/>
+                                        </delete>
+                                    </target>
+                                </configuration>
+                                <goals>
+                                    <goal>run</goal>
+                                </goals>
+                            </execution>
+                        </executions>
+                    </plugin>
+                </plugins>
+            </build>
+        </profile>
+
+        <profile>
+            <id>copy</id>
+            <activation>
+                <property>
+                    <name>!skip.copy</name>
+                </property>
+            </activation>
+            <build>
+                <plugins>
+                    <plugin>
+                        <artifactId>maven-antrun-plugin</artifactId>
+                        <version>1.8</version>
+                        <executions>
+                            <execution>
+                                <id>package</id>
+                                <phase>package</phase>
+                                <configuration>
+                                    <target>
+                                        <echo message=""/>
+                                        <echo message=""/>
+                                        <echo message="copying from ${redirects.dir} to ${isis-site.dir}"/>
+                                        <echo message=""/>
+                                        <copy todir="${isis-site.dir}">
+                                            <fileset dir="${redirects.dir}"/>
+                                        </copy>
+
+                                        <echo message=""/>
+                                        <echo message=""/>
+                                        <echo message="copying from ${build.dir} to ${isis-site.dir}"/>
+                                        <echo message=""/>
+                                        <copy todir="${isis-site.dir}" overwrite="true" force="true">
+                                            <fileset dir="${build.dir}"/>
+                                        </copy>
+
+                                        <echo message=""/>
+                                        <echo message=""/>
+                                        <echo message="converting CRLF to LF for all text files under ${isis-site.dir}"/>
+
+                                        <echo message="... .html files"/>
+                                        <fixcrlf srcdir="${isis-site.dir}"
+                                                 includes="**/*.html"
+                                                 eol="lf"
+                                                 eof="remove"
+                                                 fixlast="true"/>
+
+                                        <echo message="... .xml files"/>
+                                        <fixcrlf srcdir="${isis-site.dir}"
+                                                 includes="**/*.xml"
+                                                 eol="lf"
+                                                 eof="remove"
+                                                 fixlast="false"/>
+
+
+                                        <echo message="... .xsd files"/>
+                                        <fixcrlf srcdir="${isis-site.dir}"
+                                                 includes="**/*.xsd"
+                                                 eol="lf"
+                                                 eof="remove"
+                                                 fixlast="false"/>
+
+                                        <echo message="... .css files"/>
+                                        <fixcrlf srcdir="${isis-site.dir}"
+                                                 includes="**/*.css"
+                                                 eol="lf"
+                                                 eof="remove"
+                                                 fixlast="false"/>
+
+                                        <echo message="... .svg files"/>
+                                        <fixcrlf srcdir="${isis-site.dir}"
+                                                 includes="**/*.svg"
+                                                 eol="lf"
+                                                 eof="remove"
+                                                 fixlast="false"/>
+
+                                        <echo message="... .less files"/>
+                                        <fixcrlf srcdir="${isis-site.dir}"
+                                                 includes="**/*.less"
+                                                 eol="lf"
+                                                 eof="remove"
+                                                 fixlast="false"/>
+
+                                        <echo message="... .scss files"/>
+                                        <fixcrlf srcdir="${isis-site.dir}"
+                                                 includes="**/*.scss"
+                                                 eol="lf"
+                                                 eof="remove"
+                                                 fixlast="false"/>
+
+                                        <echo message="... .js files"/>
+                                        <fixcrlf srcdir="${isis-site.dir}"
+                                                 includes="**/*.js"
+                                                 eol="lf"
+                                                 eof="remove"
+                                                 fixlast="false"/>
+
+                                        <echo message="... .sh files"/>
+                                        <fixcrlf srcdir="${isis-site.dir}"
+                                                 includes="**/*.sh"
+                                                 eol="lf"
+                                                 eof="remove"
+                                                 fixlast="false"/>
+
+                                        <echo message="... .rdf files"/>
+                                        <fixcrlf srcdir="${isis-site.dir}"
+                                                 includes="**/*.rdf"
+                                                 eol="lf"
+                                                 eof="remove"
+                                                 fixlast="false"/>
+
+                                        <!-- for these files, encoding seems to go from UTF8 to ASCII when
+                                             apply fixcrlf, so just copy over again... -->
+                                        <echo message=""/>
+                                        <echo message=""/>
+                                        <echo message="copying over slick CSS and SCSS from ${build.dir} to ${isis-site.dir}"/>
+                                        <echo message=""/>
+                                        <copy todir="${isis-site.dir}" overwrite="true" force="true">
+                                            <fileset dir="${build.dir}"  includes="**/css/slick/**/*"/>
+                                        </copy>
+
+                                    </target>
+                                </configuration>
+                                <goals>
+                                    <goal>run</goal>
+                                </goals>
+                            </execution>
+                        </executions>
+                    </plugin>
+                </plugins>
+            </build>
+        </profile>
+
+        <profile>
+            <id>commit</id>
+            <activation>
+                <property>
+                    <name>!skip.commit</name>
+                </property>
+            </activation>
+            <build>
+                <plugins>
+                    <plugin>
+                        <groupId>org.codehaus.gmaven</groupId>
+                        <artifactId>groovy-maven-plugin</artifactId>
+                        <version>2.0</version>
+                        <executions>
+                            <execution>
+                                <id>install</id>
+                                <phase>install</phase>
+                                <goals>
+                                    <goal>execute</goal>
+                                </goals>
+                                <configuration>
+                                    <source>
+                                        def siteDir = new File("${isis-site.dir}", "..")
+
+                                        "git add content --all".execute(null, siteDir).in.text
+                                        "git reset content/guides".execute(null, siteDir).in.text
+
+                                        def gitStatusOutput = "git status --porcelain".execute(null, siteDir).in.text
+
+                                        def lines = gitStatusOutput.readLines()
+                                        lines.each{ line ->
+                                            def file=line.drop(3)
+                                            if(file.endsWith(".html")) {
+                                                def pdfFile = file.replaceAll(".html",".pdf")
+                                                "git add $file".execute(null, siteDir).in.text
+                                                "git add $pdfFile".execute(null, siteDir).in.text
+                                            }
+                                        }
+
+                                        // the commit doesn't seem to do anything; so instead using antrun plugin below to complete.
+                                        // "git commit --message '${message}'".execute(null, siteDir).text
+                                        // "git reset --hard".execute(null, siteDir).in.text
+
+                                        return null
+                                    </source>
+                                </configuration>
+                            </execution>
+                        </executions>
+                    </plugin>
+                    <plugin>
+                        <artifactId>maven-antrun-plugin</artifactId>
+                        <version>1.8</version>
+                        <executions>
+                            <execution>
+                                <id>install</id>
+                                <phase>install</phase>
+                                <configuration>
+                                    <target>
+                                        <echo message=""/>
+                                        <echo message=""/>
+                                        <echo message="git commit -m '${message}' "/>
+                                        <echo message=""/>
+                                        <exec executable="git" dir="${isis-site.dir}">
+                                            <arg value="commit"/>
+                                            <arg value="-m"/>
+                                            <arg value="${message}"/>
+                                        </exec>
+
+                                        <echo message=""/>
+                                        <echo message=""/>
+                                        <echo message="git reset --hard"/>
+                                        <echo message=""/>
+                                        <exec executable="git" dir="${isis-site.dir}">
+                                            <arg value="reset"/>
+                                            <arg value="--hard"/>
+                                        </exec>
+                                        <echo message=""/>
+                                    </target>
+                                </configuration>
+                                <goals>
+                                    <goal>run</goal>
+                                </goals>
+                            </execution>
+                        </executions>
+                    </plugin>
+                </plugins>
+            </build>
+        </profile>
+
+    </profiles>
+
+</project>

http://git-wip-us.apache.org/repos/asf/isis/blob/cf84ab17/adocs/documentation/publish.sh
----------------------------------------------------------------------
diff --git a/adocs/documentation/publish.sh b/adocs/documentation/publish.sh
index 1cfb9b3..62970ed 100644
--- a/adocs/documentation/publish.sh
+++ b/adocs/documentation/publish.sh
@@ -5,4 +5,6 @@ else
 	MSG=$1
 fi
 echo $MSG
-mvn clean install -D message="$MSG"
+mvn clean 
+mvn install -f pom-pdf.xml -D message="$MSG"
+mvn install                -D message="$MSG"

http://git-wip-us.apache.org/repos/asf/isis/blob/cf84ab17/adocs/documentation/src/main/asciidoc/articles-and-presentations.adoc
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/articles-and-presentations.adoc b/adocs/documentation/src/main/asciidoc/articles-and-presentations.adoc
index e0a906f..d243f22 100644
--- a/adocs/documentation/src/main/asciidoc/articles-and-presentations.adoc
+++ b/adocs/documentation/src/main/asciidoc/articles-and-presentations.adoc
@@ -6,8 +6,6 @@
 :toc: right
 
 
-pass:[<br/><br/>]
-
 Some articles and recorded material relating to either Apache Isis (or its predecessor, the Naked Objects framework), or its 'sister' open source project on the .NET platform, Naked Objects .NET. We've *highlighted* some of the better ones\u2026
 
 

http://git-wip-us.apache.org/repos/asf/isis/blob/cf84ab17/adocs/documentation/src/main/asciidoc/asf.adoc
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/asf.adoc b/adocs/documentation/src/main/asciidoc/asf.adoc
index dea9f17..4666c8b 100644
--- a/adocs/documentation/src/main/asciidoc/asf.adoc
+++ b/adocs/documentation/src/main/asciidoc/asf.adoc
@@ -6,8 +6,6 @@
 :toc: right
 
 
-pass:[<br/><br/><br/>]
-
 
 Apache Software Foundation:
 

http://git-wip-us.apache.org/repos/asf/isis/blob/cf84ab17/adocs/documentation/src/main/asciidoc/books.adoc
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/books.adoc b/adocs/documentation/src/main/asciidoc/books.adoc
index 143b120..1e61678 100644
--- a/adocs/documentation/src/main/asciidoc/books.adoc
+++ b/adocs/documentation/src/main/asciidoc/books.adoc
@@ -6,9 +6,8 @@
 :toc: right
 
 
-pass:[<br/><br/>]
-
-Although it has evolved since, the _Apache Isis_ framework started out as an open source implementation of the naked objects pattern. Indeed, the generic user interfaces provided by Apache Isis link:../../components/viewers/wicket/about.html[Wicket] viewer and the link:../../components/viewers/restfulobjects/about.html[Restful Objects] viewer are both "just" naked objects implementations; the first serves up a default generic representation of domain objects for human interaction, the latter serving up representation intended for machine consumption rather than human beings.
+Although it has evolved since, the _Apache Isis_ framework started out as an open source implementation of the naked objects pattern.
+Indeed, the generic user interfaces provided by Apache Isis link:../../components/viewers/wicket/about.html[Wicket] viewer and the link:../../components/viewers/restfulobjects/about.html[Restful Objects] viewer are both "just" naked objects implementations; the first serves up a default generic representation of domain objects for human interaction, the latter serving up representation intended for machine consumption rather than human beings.
 
 If the idea of naked objects is of interest, then there are a couple of books on the topic that you might want to read.
 
@@ -21,7 +20,8 @@ Richard Pawson and Robert Matthews, Wiley 2002
 image::{_imagesdir}/books/nakedobjects-book.jpg[width="159px",link="{_imagesdir}/books/nakedobjects-book.jpg"]
 
 
-This book describes the original ideas of Naked Objects. Although based on a very early version of the framework, it's still definitely worth a read (and beautifully produced).
+This book describes the original ideas of Naked Objects.
+Although based on a very early version of the framework, it's still definitely worth a read (and beautifully produced).
 
 Amazon quotes: (avg 5 stars)
 
@@ -40,7 +40,8 @@ Dan Haywood, Pragmatic Bookshelf 2009
 
 image::{_imagesdir}/books/dhnako.jpg[width="167px",link="{_imagesdir}/books/dhnako.jpg"]
 
-This more recent book draws the parallel between domain-driven design and Naked Objects (4.0). In the spirit of the Pragmatic Bookshelf, it's a practical, hands-on sort of book, building up a case study as it goes and encouraging you to build your own app as you go.
+This more recent book draws the parallel between domain-driven design and Naked Objects (4.0).
+In the spirit of the Pragmatic Bookshelf, it's a practical, hands-on sort of book, building up a case study as it goes and encouraging you to build your own app as you go.
 
 
 Amazon quotes: (avg 4.5 stars)
@@ -61,4 +62,5 @@ Dan Haywood
 
 The http://restfulobjects.org[Restful Objects specification] defines a set of RESTful resources, and corresponding JSON representations, for accessing and manipulating a domain object model.
 
-This is a comprehensive specification, running to over 200 pages in length. It is implemented by Apache Isis' link:../../components/viewers/restfulobjects/about.html[Restful Objects] viewer, and is also implemented by another (non-Apache) open source project, http://nakedobjects.codeplex.com[Naked Objects MVC].
+This is a comprehensive specification, running to over 200 pages in length.
+It is implemented by Apache Isis' link:../../components/viewers/restfulobjects/about.html[Restful Objects] viewer, and is also implemented by another (non-Apache) open source project, http://nakedobjects.codeplex.com[Naked Objects MVC].

http://git-wip-us.apache.org/repos/asf/isis/blob/cf84ab17/adocs/documentation/src/main/asciidoc/cheat-sheet.adoc
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/cheat-sheet.adoc b/adocs/documentation/src/main/asciidoc/cheat-sheet.adoc
index 5f7f192..2b92080 100644
--- a/adocs/documentation/src/main/asciidoc/cheat-sheet.adoc
+++ b/adocs/documentation/src/main/asciidoc/cheat-sheet.adoc
@@ -6,8 +6,6 @@
 :toc: right
 
 
-pass:[<br/><br/>]
-
 
 This "one-pager" cheat sheet summarises the main programming conventions to follow when writing an Apache Isis application.
 

http://git-wip-us.apache.org/repos/asf/isis/blob/cf84ab17/adocs/documentation/src/main/asciidoc/common-use-cases.adoc
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/common-use-cases.adoc b/adocs/documentation/src/main/asciidoc/common-use-cases.adoc
index 6e32b6d..7332107 100644
--- a/adocs/documentation/src/main/asciidoc/common-use-cases.adoc
+++ b/adocs/documentation/src/main/asciidoc/common-use-cases.adoc
@@ -6,9 +6,6 @@
 :toc: right
 
 
-pass:[<br/><br/>]
-
-
 
 == Prototyping
 

http://git-wip-us.apache.org/repos/asf/isis/blob/cf84ab17/adocs/documentation/src/main/asciidoc/documentation.adoc
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/documentation.adoc b/adocs/documentation/src/main/asciidoc/documentation.adoc
index f42b35a..c93c7f0 100644
--- a/adocs/documentation/src/main/asciidoc/documentation.adoc
+++ b/adocs/documentation/src/main/asciidoc/documentation.adoc
@@ -5,7 +5,6 @@
 :_imagesdir: images/
 :toc: right
 
-pass:[<br/><br/><br/>]
 
 pass:[<div class="extended-quote-first"><p>]Perfection is finally attained not when there is no longer anything to add but when there is no longer anything to take away.
 pass:[</p></div>]

http://git-wip-us.apache.org/repos/asf/isis/blob/cf84ab17/adocs/documentation/src/main/asciidoc/downloadable-presentations.adoc
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/downloadable-presentations.adoc b/adocs/documentation/src/main/asciidoc/downloadable-presentations.adoc
index 207f3f6..ac9a00e 100644
--- a/adocs/documentation/src/main/asciidoc/downloadable-presentations.adoc
+++ b/adocs/documentation/src/main/asciidoc/downloadable-presentations.adoc
@@ -7,8 +7,6 @@
 
 
 
-pass:[<br/><br/>]
-
 
 The following presentation, available in multiple formats, provides some background on Apache Isis:
 
@@ -17,7 +15,7 @@ The following presentation, available in multiple formats, provides some backgro
 
 [WARNING]
 ====
-Our apologies, this presentation is somewhat out-of-date...
+This presentation is somewhat out-of-date...
 ====
 
 

http://git-wip-us.apache.org/repos/asf/isis/blob/cf84ab17/adocs/documentation/src/main/asciidoc/downloads.adoc
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/downloads.adoc b/adocs/documentation/src/main/asciidoc/downloads.adoc
index 2e4988f..40a9feb 100644
--- a/adocs/documentation/src/main/asciidoc/downloads.adoc
+++ b/adocs/documentation/src/main/asciidoc/downloads.adoc
@@ -6,16 +6,16 @@
 :toc: right
 
 
-pass:[<br/><br/><br/>]
-
-Apache Isis&trade; software is a framework for rapidly developing domain-driven apps in Java. Write your business logic in entities, domain services and repositories, and the framework dynamically generates a representation of that domain model as a webapp or RESTful API. Use for prototyping or production.
+Apache Isis&trade; software is a framework for rapidly developing domain-driven apps in Java.
+Write your business logic in entities, domain services and repositories, and the framework dynamically generates a representation of that domain model as a webapp or RESTful API. Use for prototyping or production.
 
 
 
 
 == Getting Started
 
-If you just want to get going quickly, we suggest using our Maven archetype.  For more information, see xref:guides/ugfun.adoc#_ugfun_getting-started_simpleapp-archetype[SimpleApp archetype][here].
+If you just want to get going quickly, we suggest using our Maven archetype.
+For more information, see xref:guides/ugfun.adoc#_ugfun_getting-started_simpleapp-archetype[SimpleApp archetype][here].
 
 
 
@@ -36,9 +36,11 @@ Archetypes:
 
 == Verifying Releases
 
-It is essential that you verify the integrity of any downloaded files using the PGP or MD5 signatures. For more information on signing artifacts and why we do it, check out the http://www.apache.org/dev/release-signing.html[Release Signing FAQ].
+It is essential that you verify the integrity of any downloaded files using the PGP or MD5 signatures.
+For more information on signing artifacts and why we do it, check out the http://www.apache.org/dev/release-signing.html[Release Signing FAQ].
 
-The PGP signatures can be verified using PGP or GPG. First download the http://www.apache.org/dist/isis/KEYS[KEYS] as well as the asc signature file for the artifact. Make sure you get these files from the http://www.apache.org/dist/isis/[main distribution directory], rather than from a mirror.
+The PGP signatures can be verified using PGP or GPG. First download the http://www.apache.org/dist/isis/KEYS[KEYS] as well as the asc signature file for the artifact.
+Make sure you get these files from the http://www.apache.org/dist/isis/[main distribution directory], rather than from a mirror.
 
 Then verify the signatures using a command such as:
 
@@ -67,7 +69,10 @@ gpg \u2013verify isis-1.13.2-source-release.zip.asc
 
 
 
-Alternatively, you can verify the MD5 signature on the files. A Unix/Linux program called `md5` or `md5sum` is included in most distributions. It is also available as part of http://www.gnu.org/software/textutils/textutils.html[GNU Textutils].   Windows users can get binary md5 programs from these (and likely other) places:
+Alternatively, you can verify the MD5 signature on the files.
+A Unix/Linux program called `md5` or `md5sum` is included in most distributions.
+It is also available as part of http://www.gnu.org/software/textutils/textutils.html[GNU Textutils].
+Windows users can get binary md5 programs from these (and likely other) places:
 
 * http://www.md5summer.org/[http://www.md5summer.org/]
 * http://www.fourmilab.ch/md5/[http://www.fourmilab.ch/md5/]
@@ -93,7 +98,8 @@ git clone http://git.apache.org/isis.git
 ----
 
 
-The code is also mirrored on http://github.com/apache/isis[github], where you can browse it or fork it. And if you're interested in contributing back to Apache Isis, see link:contributors/contributing.html[here].
+The code is also mirrored on http://github.com/apache/isis[github], where you can browse it or fork it.
+And if you're interested in contributing back to Apache Isis, see link:contributors/contributing.html[here].
 
 
 
@@ -112,6 +118,12 @@ You can browse the repo https://git-wip-us.apache.org/repos/asf/isis/repo?p=isis
 
 
 
-== Isis add-ons
+== Isis add-ons & Incode Catalog
+
+There are also a number of (open source, but not ASF) supporting modules and extensions for you to use:
+
+* the link:http://www.isisaddons.org/[Isis Add-ons] provide technical extensions, such as security, commands, auditing and feature toggles
+
+* the link:http://catalog.incode.org[Incode Catalog] provides business modules, such as documents, notes and communications.
 
-There are also a number of (open source, but not ASF) supporting modules and extensions for you to use; see link:http://www.isisaddons.org/[Isis Add-ons].
+Each module is in a separate github repo, with a demo app to illustrate the module's functionality.

http://git-wip-us.apache.org/repos/asf/isis/blob/cf84ab17/adocs/documentation/src/main/asciidoc/help.adoc
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/help.adoc b/adocs/documentation/src/main/asciidoc/help.adoc
index 4dbb434..44f2e07 100644
--- a/adocs/documentation/src/main/asciidoc/help.adoc
+++ b/adocs/documentation/src/main/asciidoc/help.adoc
@@ -6,7 +6,6 @@
 :toc: right
 
 
-pass:[<br/><br/><br/>]
 
 
 == Help:

http://git-wip-us.apache.org/repos/asf/isis/blob/cf84ab17/adocs/documentation/src/main/asciidoc/how-isis-works.adoc
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/how-isis-works.adoc b/adocs/documentation/src/main/asciidoc/how-isis-works.adoc
index 3b64575..2ea16e5 100644
--- a/adocs/documentation/src/main/asciidoc/how-isis-works.adoc
+++ b/adocs/documentation/src/main/asciidoc/how-isis-works.adoc
@@ -6,8 +6,6 @@
 :toc: right
 
 
-pass:[<br/><br/>]
-
 
 This screencast explains how Apache Isis builds a webapp from the underlying domain object model...
 

http://git-wip-us.apache.org/repos/asf/isis/blob/cf84ab17/adocs/documentation/src/main/asciidoc/icons.adoc
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/icons.adoc b/adocs/documentation/src/main/asciidoc/icons.adoc
index 27ce10d..9697a0b 100644
--- a/adocs/documentation/src/main/asciidoc/icons.adoc
+++ b/adocs/documentation/src/main/asciidoc/icons.adoc
@@ -7,10 +7,10 @@
 
 
 
-pass:[<br/><br/>]
 
-
-Most Apache Isis viewers use icons to help identify domain objects in the user interface. It's a good idea to ensure that these are styled consistently. Here are some open source icon sets for both personal and commercial use (though some require a link back to the authors website):
+Most Apache Isis viewers use icons to help identify domain objects in the user interface.
+It's a good idea to ensure that these are styled consistently.
+Here are some open source icon sets for both personal and commercial use (though some require a link back to the authors website):
 
 * http://icons8.com/[icons8] (as used in the link:../powered-by/powered-by.html[Estatio] app) - styled for Win8, Android and MacOS
 * http://tango.freedesktop.org/Tango_Icon_Library[tango desktop] icon set - as used in Linux GNOME and KDE desktops