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 2018/01/24 10:38:48 UTC

[isis] branch ISIS-1569-replay-commands updated (652f9fa -> 0491a76)

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

danhaywood pushed a change to branch ISIS-1569-replay-commands
in repository https://gitbox.apache.org/repos/asf/isis.git.


    from 652f9fa  ISIS-1569: adds timings to CommandsDto, so less verbose and easier to read XML
     new b12a01d  ISIS-1569: updates to XSDs, make sure the version defaultsb are correct.
     new 3ea05a1  ISIS-1569: removes unused and accidentally committed element in cmd-1.4.xsd
     new 49dd518  ISIS-1569: updates XSDs for docs, and adds in the historical previous versions also.
     new 0491a76  ISIS-1569: updates docs for CommandService and cmd schema

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


Summary of changes:
 .../asciidoc/guides/rgcms/_rgcms_schema-cmd.adoc   | 53 ++++++++++++++--------
 ...rgsvc_application-layer-spi_CommandService.adoc | 39 ++++++++--------
 .../src/main/asciidoc}/schema/chg/chg-1.1.xsd      |  2 +-
 .../src/main/asciidoc/schema/chg/chg.xsd           |  6 +--
 .../asciidoc/schema/cmd/{cmd.xsd => cmd-1.2.xsd}   | 10 ++--
 .../asciidoc/schema/cmd/{cmd.xsd => cmd-1.3.xsd}   | 18 +++++---
 .../src/main/asciidoc}/schema/cmd/cmd-1.4.xsd      | 17 +------
 .../src/main/asciidoc/schema/cmd/cmd.xsd           | 51 +++++++++++++++++++--
 .../main/asciidoc}/schema/common/common-1.1.xsd    |  2 +-
 .../src/main/asciidoc/schema/common/common.xsd     | 19 ++++++--
 .../schema/ixn/{ixn-1.0.xsd => ixn-1.1.xsd}        | 10 ++--
 .../src/main/asciidoc/schema/ixn/ixn-1.2.xsd       |  6 +--
 .../src/main/asciidoc}/schema/ixn/ixn-1.3.xsd      |  4 +-
 .../src/main/asciidoc/schema/ixn/ixn.xsd           | 14 ++++--
 .../org/apache/isis/schema/chg/chg-1.1.xsd         |  2 +-
 .../org/apache/isis/schema/cmd/cmd-1.4.xsd         | 17 +------
 .../org/apache/isis/schema/common/common-1.1.xsd   |  2 +-
 .../org/apache/isis/schema/ixn/ixn-1.3.xsd         |  4 +-
 18 files changed, 166 insertions(+), 110 deletions(-)
 copy {core/schema/src/main/resources/org/apache/isis => adocs/documentation/src/main/asciidoc}/schema/chg/chg-1.1.xsd (95%)
 copy adocs/documentation/src/main/asciidoc/schema/cmd/{cmd.xsd => cmd-1.2.xsd} (95%)
 copy adocs/documentation/src/main/asciidoc/schema/cmd/{cmd.xsd => cmd-1.3.xsd} (88%)
 copy {core/schema/src/main/resources/org/apache/isis => adocs/documentation/src/main/asciidoc}/schema/cmd/cmd-1.4.xsd (92%)
 copy {core/schema/src/main/resources/org/apache/isis => adocs/documentation/src/main/asciidoc}/schema/common/common-1.1.xsd (99%)
 copy adocs/documentation/src/main/asciidoc/schema/ixn/{ixn-1.0.xsd => ixn-1.1.xsd} (97%)
 copy core/schema/src/main/resources/org/apache/isis/schema/ixn/ixn-1.3.xsd => adocs/documentation/src/main/asciidoc/schema/ixn/ixn-1.2.xsd (98%)
 copy {core/schema/src/main/resources/org/apache/isis => adocs/documentation/src/main/asciidoc}/schema/ixn/ixn-1.3.xsd (98%)

-- 
To stop receiving notification emails like this one, please contact
danhaywood@apache.org.

[isis] 02/04: ISIS-1569: removes unused and accidentally committed element in cmd-1.4.xsd

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

danhaywood pushed a commit to branch ISIS-1569-replay-commands
in repository https://gitbox.apache.org/repos/asf/isis.git

commit 3ea05a10b57df56725b6b6d10be5124e2e9dd7c1
Author: Dan Haywood <da...@haywood-associates.co.uk>
AuthorDate: Fri Jan 19 16:49:48 2018 +0000

    ISIS-1569: removes unused and accidentally committed element in cmd-1.4.xsd
---
 .../main/resources/org/apache/isis/schema/cmd/cmd-1.4.xsd   | 13 -------------
 .../resources/org/apache/isis/schema/common/common-1.1.xsd  |  2 +-
 2 files changed, 1 insertion(+), 14 deletions(-)

diff --git a/core/schema/src/main/resources/org/apache/isis/schema/cmd/cmd-1.4.xsd b/core/schema/src/main/resources/org/apache/isis/schema/cmd/cmd-1.4.xsd
index f9125cd..3ff2e90 100644
--- a/core/schema/src/main/resources/org/apache/isis/schema/cmd/cmd-1.4.xsd
+++ b/core/schema/src/main/resources/org/apache/isis/schema/cmd/cmd-1.4.xsd
@@ -176,19 +176,6 @@
         </xs:complexContent>
     </xs:complexType>
 
-    <xs:complexType name="timingsDto">
-        <xs:sequence>
-            <xs:element name="entry" minOccurs="0" maxOccurs="unbounded">
-                <xs:complexType>
-                    <xs:sequence>
-                        <xs:element name="key" type="xs:string"/>
-                        <xs:element name="value" type="xs:string"/>
-                    </xs:sequence>
-                </xs:complexType>
-            </xs:element>
-        </xs:sequence>
-    </xs:complexType>
-
     <xs:complexType name="mapDto">
         <xs:sequence>
             <xs:element name="entry" minOccurs="0" maxOccurs="unbounded">
diff --git a/core/schema/src/main/resources/org/apache/isis/schema/common/common-1.1.xsd b/core/schema/src/main/resources/org/apache/isis/schema/common/common-1.1.xsd
index 1121962..ab26815 100644
--- a/core/schema/src/main/resources/org/apache/isis/schema/common/common-1.1.xsd
+++ b/core/schema/src/main/resources/org/apache/isis/schema/common/common-1.1.xsd
@@ -201,4 +201,4 @@
         </xs:restriction>
     </xs:simpleType>
 
-</xs:schema>
+</xs:schema>
\ No newline at end of file

-- 
To stop receiving notification emails like this one, please contact
danhaywood@apache.org.

[isis] 04/04: ISIS-1569: updates docs for CommandService and cmd schema

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

danhaywood pushed a commit to branch ISIS-1569-replay-commands
in repository https://gitbox.apache.org/repos/asf/isis.git

commit 0491a7609f928a8572a27e6ce8de5e03efcc0924
Author: Dan Haywood <da...@haywood-associates.co.uk>
AuthorDate: Wed Jan 24 10:35:24 2018 +0000

    ISIS-1569: updates docs for CommandService and cmd schema
---
 .../asciidoc/guides/rgcms/_rgcms_schema-cmd.adoc   | 53 ++++++++++++++--------
 ...rgsvc_application-layer-spi_CommandService.adoc | 39 ++++++++--------
 2 files changed, 54 insertions(+), 38 deletions(-)

diff --git a/adocs/documentation/src/main/asciidoc/guides/rgcms/_rgcms_schema-cmd.adoc b/adocs/documentation/src/main/asciidoc/guides/rgcms/_rgcms_schema-cmd.adoc
index 33ec4e8..a0597b3 100644
--- a/adocs/documentation/src/main/asciidoc/guides/rgcms/_rgcms_schema-cmd.adoc
+++ b/adocs/documentation/src/main/asciidoc/guides/rgcms/_rgcms_schema-cmd.adoc
@@ -5,14 +5,15 @@
 :_imagesdir: images/
 
 
-
 The command ("cmd") schema defines the serialized form of the __intention__ to invoke an action or to
 edit a property.
+It can be supplemented with optional timings capturing the actual invocation of a command (introduced to support the replication of commands in a master/slave arrangement).
+
 
 [NOTE]
 ====
-Mixin actions are represented as regular actions on the mixed-in object.  In other words, the fact that the actual
-implementation of the action is defined by a mixin is an implementation detail only.
+Mixin actions are represented as regular actions on the mixed-in object.
+In other words, the fact that the actual implementation of the action is defined by a mixin is an implementation detail only.
 ====
 
 [[__rgcms_schema-cmd_commandDto]]
@@ -43,35 +44,51 @@ The `commandDto` root element is defined as:
                 <xs:element name="user" type="xs:string"/>                  <!--6-->
                 <xs:element name="targets" type="com:oidsDto"/>             <!--7-->
                 <xs:element name="member" type="memberDto"/>                <!--8-->
+                <xs:element name="timings" type="memberDto" minOccurs="0"/> <!--9-->
+            </xs:sequence>
+        </xs:complexType>
+    </xs:element>
+
+    <xs:element name="commandsDto">                                         <!--10-->
+        <xs:annotation>
+            <xs:documentation>Collection of commandDto's</xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+            <xs:sequence minOccurs="1" maxOccurs="unbounded">
+                <xs:element ref="commandDto"/>
             </xs:sequence>
         </xs:complexType>
     </xs:element>
+
     ...
 </xs:schema>
 ----
-<1> the command schema has a namespace URI of "http://isis.apache.org/schema/cmd".  Although URIs are not the same as
-URLs, you will find that the schemas are also downloadable from this location.
+<1> the command schema has a namespace URI of "http://isis.apache.org/schema/cmd".  Although URIs are not the same as URLs, you will find that the schemas are also downloadable from this location.
 <2> uses complex types defined in the xref:../rgcms/rgcms.adoc#_rgcms_schema_common["common" schema].
-<3> definition of the `commandDto` root element.  The corresponding XML will use this as its top-level element.
+<3> definition of the `commandDto` root element.
+The corresponding XML will use this as its top-level element.
 <4> each instance of this schema indicates the version of the schema it is compatible with (following semantic versioning)
-<5> unique identifier for the transaction in which this command is created.  The transaction Id is used to correlate
-to the xref:../rgcms/rgcms.adoc#_rgcms_schema_interaction[interaction] that executes the command, and to any
+<5> unique identifier for the transaction in which this command is created.
+The transaction Id is used to correlate to the xref:../rgcms/rgcms.adoc#_rgcms_schema_interaction[interaction] that executes the command, and to any
 xref:../rgcms/rgcms.adoc#_rgcms_schema_changes[changes] to domain objects occurring as a side-effect of that interaction.
 <6> the name of the user who created the command (whose intention it is to invoke the action/edit the property).
 <7> the target object (or objects) to be invoked.
 A bulk action will create multiple commands, each with only a single target.
 (A future version of the framework may also support a single bulk command against this multiple targets, ie all-or-nothing).
 <8> the `memberDto`, defined below, the captures the action/property and arguments/new value.
+<9> optional timings for the invocation of a command.
+<10> groups multiple commands together.
 
-The `CommandDto` DTO corresponding to the `commandDto` root element can be marshalled to/from XML using the
-`CommandDtoUtils` class.
+The `CommandDto` DTO corresponding to the `commandDto` root element can be marshalled to/from XML using the `CommandDtoUtils` class.
+The `CommandsDto` DTO allows multiple commands to be marshalled together.
+This was introduced to support replication of commands in a master/slave arrangement (eg for regression testing).
 
 
 [[__rgcms_schema-cmd_memberDto]]
 == `memberDto` and subtypes
 
-The `memberDto` complex type is an abstract type representing the intention to either invoke an action or to edit a
-property.  The `actionDto` and `propertyDto` are the concrete subtypes:
+The `memberDto` complex type is an abstract type representing the intention to either invoke an action or to edit a property.
+The `actionDto` and `propertyDto` are the concrete subtypes:
 
 
 [source,xml]
@@ -108,13 +125,13 @@ property.  The `actionDto` and `propertyDto` are the concrete subtypes:
     </xs:complexType>
 </xs:schema>
 ----
-<1> the `memberDto` is an abstract type.   Its primary responsibility is simply to identify the member (action or
-property).
+<1> the `memberDto` is an abstract type.
+Its primary responsibility is simply to identify the member (action or property).
 <2> the formal identifier (fully qualified class name + member name) of the member being interacted with (action or property).
 <3> the "logical" formal identifier (object type, as per `@DomainObject(objectType=)`, + member name) of the member being interacted with (action or property).
 <4> the `interactionType` attribute indicates whether the member is an action or a property.
-<5> the `actionDto` complex type captures the set of parameters (also including the argument values) with which to
-invoke the action.  The `paramsDto` type is defined xref:../rgcms/rgcms.adoc#__rgcms_schema-cmd_ancillary[below].
+<5> the `actionDto` complex type captures the set of parameters (also including the argument values) with which to invoke the action.
+The `paramsDto` type is defined xref:../rgcms/rgcms.adoc#__rgcms_schema-cmd_ancillary[below].
 <6> the `propertyDto` complex type captures the new value (possibly `null`) to set the property to.
 
 In general the `logicalMemberIdentifier` should be used in preference to the `memberIdentifier` because will not (necessarily) have to change if the class is moved during a refactoring.
@@ -149,6 +166,6 @@ The schema also defines a small number of supporting types:
 </xs:schema>
 ----
 <1> the `paramsDto` is simply the list of parameter/arguments.
-<2> the `paramDto` complex type essentially combines a parameter with its corresponding argument: a named value that
-has a type.  It extends the `valueWithTypeDto` complex type taken from the
+<2> the `paramDto` complex type essentially combines a parameter with its corresponding argument: a named value that has a type.
+It extends the `valueWithTypeDto` complex type taken from the
 xref:../rgcms/rgcms.adoc#_rgcms_schema-common["common"] schema.
diff --git a/adocs/documentation/src/main/asciidoc/guides/rgsvc/_rgsvc_application-layer-spi_CommandService.adoc b/adocs/documentation/src/main/asciidoc/guides/rgsvc/_rgsvc_application-layer-spi_CommandService.adoc
index 9b541bf..ce1e550 100644
--- a/adocs/documentation/src/main/asciidoc/guides/rgsvc/_rgsvc_application-layer-spi_CommandService.adoc
+++ b/adocs/documentation/src/main/asciidoc/guides/rgsvc/_rgsvc_application-layer-spi_CommandService.adoc
@@ -6,32 +6,29 @@
 
 
 
-The `CommandService` service supports the xref:../rgsvc/rgsvc.adoc#_rgsvc_application-layer-api_CommandContext[`CommandContext`] service such
-that `Command` objects (that reify the invocation of an action/edit of a property on a domain object) can be persisted.
+The `CommandService` service supports the xref:../rgsvc/rgsvc.adoc#_rgsvc_application-layer-api_CommandContext[`CommandContext`] service such that `Command` objects (that reify the invocation of an action/edit of a property on a domain object) can be persisted.
 
 The primary use case for persistent ``Command``s is in support of background commands; they act as a parent to any background commands that can be persisted either explicitly using the xref:../rgsvc/rgsvc.adoc#_rgsvc_application-layer-api_BackgroundService[`BackgroundService`], or implicitly by way of the xref:../rgant/rgant.adoc#_rgant-Action_command[`@Action#command()`] annotation.
 
+Persistent ``Command``s also support the ability to replicate from a master to a slave instance of an application.
+One use case for this is for regression testing, allowing a production usages to be replayed against a new release candidate, eg after upgrading that application to a new version of Apache Isis itself (or some other dependency).
+
 There are a number of related use cases:
 
 * they enable profiling of the running application (which actions are invoked then most often, what is their response time)
 * if xref:../rgsvc/rgsvc.adoc#_rgsvc_persistence-layer-spi_PublisherService[`PublisherService`] or
-xref:../rgsvc/rgsvc.adoc#_rgsvc_persistence-layer-spi_PublishingService[`PublishingService`] (latter deprecated) is configured, they provide
-better traceability as the `Command` is also correlated with any published events, again through the unique
-`transactionId` GUID
+xref:../rgsvc/rgsvc.adoc#_rgsvc_persistence-layer-spi_PublishingService[`PublishingService`] (latter deprecated) is configured, they provide better traceability as the `Command` is also correlated with any published events, again through the unique `transactionId` GUID
 * if xref:../rgsvc/rgsvc.adoc#_rgsvc_spi_AuderService[`AuditerService`] or
-xref:../rgsvc/rgsvc.adoc#_rgsvc_spi_AuditService[`AuditingService`] (latter deprecated) is configured, they provide better audit
-information, since the `Command` (the 'cause' of an action) can be correlated to the audit records (the "effect" of
-the action) through the `transactionId` GUID
+xref:../rgsvc/rgsvc.adoc#_rgsvc_spi_AuditService[`AuditingService`] (latter deprecated) is configured, they provide better audit information, since the `Command` (the 'cause' of an action) can be correlated to the audit records (the "effect" of the action) through the `transactionId` GUID
 
-However, while persistent ``Command``s _can_ be used for these use cases, it is recommended instead to use the
-xref:../rgsvc/rgsvc.adoc#_rgsvc_application-layer-api_InteractionContext[`InteractionContext`] service and persistent implementations of the
-``Interaction`` object, eg as provided by the (non-ASF) link:http://platform.incode.org[Incode Platform^]'s publishmq module.
+However, while persistent ``Command``s _can_ be used for these use cases, it is recommended instead to use the xref:../rgsvc/rgsvc.adoc#_rgsvc_application-layer-api_InteractionContext[`InteractionContext`] service and persistent implementations of the ``Interaction`` object, eg as provided by the (non-ASF) link:http://platform.incode.org[Incode Platform^]'s publishmq module.
 
 
 
 == Screencast
 
-The link:https://www.youtube.com/watch?v=tqXUZkPB3EI[screencast] below provides a run-through of the command (profiling) service, auditing service, publishing service. It also shows how commands can be run in the background either explicitly by scheduling through the background service or implicitly by way of a framework annotation.
+The link:https://www.youtube.com/watch?v=tqXUZkPB3EI[screencast] below provides a run-through of the command (profiling) service, auditing service, publishing service.
+It also shows how commands can be run in the background either explicitly by scheduling through the background service or implicitly by way of a framework annotation.
 
 
 [NOTE]
@@ -56,21 +53,22 @@ public interface CommandService {
 }
 ----
 <1> Instantiate the appropriate instance of the `Command` (as defined by the
-xref:../rgsvc/rgsvc.adoc#_rgsvc_application-layer-api_CommandContext[`CommandContext`] service).  Its members will be populated automatically by
-the framework.
+xref:../rgsvc/rgsvc.adoc#_rgsvc_application-layer-api_CommandContext[`CommandContext`] service).
+Its members will be populated automatically by the framework.
 <2> Deprecated and *IS NOT CALLED* by the framework.
 The framework automatically populates the ``Command``'s `timestamp`, `user` and `transactionId` fields, so there is no need for the service implementation to initialize any of these.
 In particular, the ``Command`` will already have been initialized with the provided `transactionId` argument.
 <3> Set the hint that the `Command` should be persisted if possible (when completed, see below).
-<4> "Complete" the command, typically meaning that the command should be persisted it if its `Command#getPersistence()`
-flag and persistence hint (`Command#isPersistHint()`) indicate that it should be.  +
+<4> "Complete" the command, typically meaning that the command should be persisted it if its `Command#getPersistence()` flag and persistence hint (`Command#isPersistHint()`) indicate that it should be.  +
 +
 The framework will automatically have set the `completedAt` property of the `Command`.
 
 
+
 == Implementation
 
-The (non-ASF) link:http://platform.incode.org[Incode Platform^]'s command module provides an implementation (`org.isisaddons.module.command.dom.CommandServiceJdo`) that persists ``Command``s using the JDO/DataNucleus object store.  It further provides a number of supporting services:
+The (non-ASF) link:http://platform.incode.org[Incode Platform^]'s command module provides an implementation (`org.isisaddons.module.command.dom.CommandServiceJdo`) that persists ``Command``s using the JDO/DataNucleus object store.
+It further provides a number of supporting services:
 
 * `org.isisaddons.module.command.dom.CommandServiceJdoRepository` is a repository to search for persisted ``Command``s
 
@@ -97,12 +95,13 @@ If contributions are not required in the UI, these can be suppressed either usin
 
 == Related Services
 
-As discussed above, this service supports the xref:../rgsvc/rgsvc.adoc#_rgsvc_application-layer-api_CommandContext[`CommandContext`], providing the ability for `Command` objects to be
-persisted. This is closely related to the xref:../rgsvc/rgsvc.adoc#_rgsvc_application-layer-spi_BackgroundCommandService[`BackgroundCommandService`]that allows the xref:../rgsvc/rgsvc.adoc#_rgsvc_application-layer-api_BackgroundService[`BackgroundService`] to schedule commands for background/asynchronous execution.
+As discussed above, this service supports the xref:../rgsvc/rgsvc.adoc#_rgsvc_application-layer-api_CommandContext[`CommandContext`], providing the ability for `Command` objects to be persisted.
+This is closely related to the xref:../rgsvc/rgsvc.adoc#_rgsvc_application-layer-spi_BackgroundCommandService[`BackgroundCommandService`]that allows the xref:../rgsvc/rgsvc.adoc#_rgsvc_application-layer-api_BackgroundService[`BackgroundService`] to schedule commands for background/asynchronous execution.
 
 The implementations of `CommandService` and `BackgroundCommandService` are intended to go together, so that persistent parent `Command`s can be associated with their child background `Command`s.
 
-The services provided by this module combines very well with the xref:../rgsvc/rgsvc.adoc#_rgsvc_persistence-layer-spi_AuditingService[`AuditingService`].  The `CommandService` captures the _cause_ of an interaction (an action was invoked, a property was edited), while the `AuditingService3` captures the _effect_ of that interaction in terms of changed state.
+The services provided by this module combines very well with the xref:../rgsvc/rgsvc.adoc#_rgsvc_persistence-layer-spi_AuditingService[`AuditingService`].
+The `CommandService` captures the _cause_ of an interaction (an action was invoked, a property was edited), while the `AuditingService3` captures the _effect_ of that interaction in terms of changed state.
 
 You may also want to configure the xref:../rgsvc/rgsvc.adoc#_rgsvc_persistence-layer-spi_PublishingService[`PublishingService`].
 

-- 
To stop receiving notification emails like this one, please contact
danhaywood@apache.org.

[isis] 03/04: ISIS-1569: updates XSDs for docs, and adds in the historical previous versions also.

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

danhaywood pushed a commit to branch ISIS-1569-replay-commands
in repository https://gitbox.apache.org/repos/asf/isis.git

commit 49dd518bbe06dd17d417a1c0d42bd9ef6879f423
Author: Dan Haywood <da...@haywood-associates.co.uk>
AuthorDate: Fri Jan 19 16:50:19 2018 +0000

    ISIS-1569: updates XSDs for docs, and adds in the historical previous versions also.
---
 .../asciidoc/schema/chg/{chg.xsd => chg-1.1.xsd}   |  6 +--
 .../src/main/asciidoc/schema/chg/chg.xsd           |  6 +--
 .../asciidoc/schema/cmd/{cmd.xsd => cmd-1.2.xsd}   | 10 ++---
 .../asciidoc/schema/cmd/{cmd.xsd => cmd-1.3.xsd}   | 18 +++++---
 .../asciidoc/schema/cmd/{cmd.xsd => cmd-1.4.xsd}   | 51 +++++++++++++++++++---
 .../src/main/asciidoc/schema/cmd/cmd.xsd           | 51 +++++++++++++++++++---
 .../schema/common/{common.xsd => common-1.1.xsd}   | 19 ++++++--
 .../src/main/asciidoc/schema/common/common.xsd     | 19 ++++++--
 .../asciidoc/schema/ixn/{ixn.xsd => ixn-1.1.xsd}   | 10 ++---
 .../asciidoc/schema/ixn/{ixn.xsd => ixn-1.2.xsd}   | 16 ++++---
 .../asciidoc/schema/ixn/{ixn.xsd => ixn-1.3.xsd}   | 14 ++++--
 .../src/main/asciidoc/schema/ixn/ixn.xsd           | 14 ++++--
 12 files changed, 183 insertions(+), 51 deletions(-)

diff --git a/adocs/documentation/src/main/asciidoc/schema/chg/chg.xsd b/adocs/documentation/src/main/asciidoc/schema/chg/chg-1.1.xsd
similarity index 93%
copy from adocs/documentation/src/main/asciidoc/schema/chg/chg.xsd
copy to adocs/documentation/src/main/asciidoc/schema/chg/chg-1.1.xsd
index 41501de..cb55449 100644
--- a/adocs/documentation/src/main/asciidoc/schema/chg/chg.xsd
+++ b/adocs/documentation/src/main/asciidoc/schema/chg/chg-1.1.xsd
@@ -24,11 +24,11 @@
            xmlns:com="http://isis.apache.org/schema/common"
 >
 
-    <xs:import namespace="http://isis.apache.org/schema/common" schemaLocation="../common/common-1.0.xsd"/>
+    <xs:import namespace="http://isis.apache.org/schema/common" schemaLocation="../common/common-1.1.xsd"/>
 
     <xs:element name="changesDto">
         <xs:annotation>
-            <xs:documentation>The changes (create/update/delete) to one or more domain objects within a transaction.  (nb: only published objects are included in these lists).
+            <xs:documentation>Represents v1.1 of this schema (as per majorVersion.minorVersion @default attribute, below).  The changes (create/update/delete) to one or more domain objects within a transaction.  (nb: only published objects are included in these lists).
             </xs:documentation>
         </xs:annotation>
         <xs:complexType>
@@ -39,7 +39,7 @@
                         </xs:documentation>
                     </xs:annotation>
                 </xs:element>
-                <xs:element name="minorVersion" type="xs:string" minOccurs="0" maxOccurs="1" default="0">
+                <xs:element name="minorVersion" type="xs:string" minOccurs="0" maxOccurs="1" default="1">
                     <xs:annotation>
                         <xs:documentation>The minor version of the schema that an XML instance was created using.
                         </xs:documentation>
diff --git a/adocs/documentation/src/main/asciidoc/schema/chg/chg.xsd b/adocs/documentation/src/main/asciidoc/schema/chg/chg.xsd
index 41501de..cb55449 100644
--- a/adocs/documentation/src/main/asciidoc/schema/chg/chg.xsd
+++ b/adocs/documentation/src/main/asciidoc/schema/chg/chg.xsd
@@ -24,11 +24,11 @@
            xmlns:com="http://isis.apache.org/schema/common"
 >
 
-    <xs:import namespace="http://isis.apache.org/schema/common" schemaLocation="../common/common-1.0.xsd"/>
+    <xs:import namespace="http://isis.apache.org/schema/common" schemaLocation="../common/common-1.1.xsd"/>
 
     <xs:element name="changesDto">
         <xs:annotation>
-            <xs:documentation>The changes (create/update/delete) to one or more domain objects within a transaction.  (nb: only published objects are included in these lists).
+            <xs:documentation>Represents v1.1 of this schema (as per majorVersion.minorVersion @default attribute, below).  The changes (create/update/delete) to one or more domain objects within a transaction.  (nb: only published objects are included in these lists).
             </xs:documentation>
         </xs:annotation>
         <xs:complexType>
@@ -39,7 +39,7 @@
                         </xs:documentation>
                     </xs:annotation>
                 </xs:element>
-                <xs:element name="minorVersion" type="xs:string" minOccurs="0" maxOccurs="1" default="0">
+                <xs:element name="minorVersion" type="xs:string" minOccurs="0" maxOccurs="1" default="1">
                     <xs:annotation>
                         <xs:documentation>The minor version of the schema that an XML instance was created using.
                         </xs:documentation>
diff --git a/adocs/documentation/src/main/asciidoc/schema/cmd/cmd.xsd b/adocs/documentation/src/main/asciidoc/schema/cmd/cmd-1.2.xsd
similarity index 95%
copy from adocs/documentation/src/main/asciidoc/schema/cmd/cmd.xsd
copy to adocs/documentation/src/main/asciidoc/schema/cmd/cmd-1.2.xsd
index e3aa0b9..8073266 100644
--- a/adocs/documentation/src/main/asciidoc/schema/cmd/cmd.xsd
+++ b/adocs/documentation/src/main/asciidoc/schema/cmd/cmd-1.2.xsd
@@ -23,11 +23,11 @@
            xmlns="http://isis.apache.org/schema/cmd"
            xmlns:com="http://isis.apache.org/schema/common">
 
-    <xs:import namespace="http://isis.apache.org/schema/common" schemaLocation="../common/common-1.0.xsd"/>
+    <xs:import namespace="http://isis.apache.org/schema/common" schemaLocation="../common/common-1.1.xsd"/>
 
     <xs:element name="commandDto">
         <xs:annotation>
-            <xs:documentation>Represents v1.0 of this schema.
+            <xs:documentation>Represents v1.2 of this schema.
             </xs:documentation>
         </xs:annotation>
         <xs:complexType>
@@ -38,9 +38,9 @@
                         </xs:documentation>
                     </xs:annotation>
                 </xs:element>
-                <xs:element name="minorVersion" type="xs:string" minOccurs="1" maxOccurs="1" default="1">
+                <xs:element name="minorVersion" type="xs:string" minOccurs="1" maxOccurs="1" default="2">
                     <xs:annotation>
-                        <xs:documentation>Introduced in v1.1. The minor version of the schema that an XML instance was created using.
+                        <xs:documentation>The minor version of the schema that an XML instance was created using.
                         </xs:documentation>
                     </xs:annotation>
                 </xs:element>
@@ -148,4 +148,4 @@
     </xs:complexType>
 
 
-</xs:schema>
+</xs:schema>
\ No newline at end of file
diff --git a/adocs/documentation/src/main/asciidoc/schema/cmd/cmd.xsd b/adocs/documentation/src/main/asciidoc/schema/cmd/cmd-1.3.xsd
similarity index 88%
copy from adocs/documentation/src/main/asciidoc/schema/cmd/cmd.xsd
copy to adocs/documentation/src/main/asciidoc/schema/cmd/cmd-1.3.xsd
index e3aa0b9..6f14ad1 100644
--- a/adocs/documentation/src/main/asciidoc/schema/cmd/cmd.xsd
+++ b/adocs/documentation/src/main/asciidoc/schema/cmd/cmd-1.3.xsd
@@ -23,11 +23,11 @@
            xmlns="http://isis.apache.org/schema/cmd"
            xmlns:com="http://isis.apache.org/schema/common">
 
-    <xs:import namespace="http://isis.apache.org/schema/common" schemaLocation="../common/common-1.0.xsd"/>
+    <xs:import namespace="http://isis.apache.org/schema/common" schemaLocation="../common/common-1.1.xsd"/>
 
     <xs:element name="commandDto">
         <xs:annotation>
-            <xs:documentation>Represents v1.0 of this schema.
+            <xs:documentation>Represents v1.3 of this schema, adding in 'logicalMemberIdentifier'
             </xs:documentation>
         </xs:annotation>
         <xs:complexType>
@@ -38,9 +38,9 @@
                         </xs:documentation>
                     </xs:annotation>
                 </xs:element>
-                <xs:element name="minorVersion" type="xs:string" minOccurs="1" maxOccurs="1" default="1">
+                <xs:element name="minorVersion" type="xs:string" minOccurs="1" maxOccurs="1" default="3">
                     <xs:annotation>
-                        <xs:documentation>Introduced in v1.1. The minor version of the schema that an XML instance was created using.
+                        <xs:documentation>The minor version of the schema that an XML instance was created using.
                         </xs:documentation>
                     </xs:annotation>
                 </xs:element>
@@ -77,9 +77,15 @@
             </xs:documentation>
         </xs:annotation>
         <xs:sequence>
+            <xs:element name="logicalMemberIdentifier" type="xs:string">
+                <xs:annotation>
+                    <xs:documentation>Logical formal identifier (object type, as per @DomainObject(objectType=), and member name) of the member being interacted with (action or property).
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
             <xs:element name="memberIdentifier" type="xs:string">
                 <xs:annotation>
-                    <xs:documentation>Formal identifier of the member being interacted with (action or property).
+                    <xs:documentation>Formal identifier (class name and member name) of the member being interacted with (action or property).
                     </xs:documentation>
                 </xs:annotation>
             </xs:element>
@@ -148,4 +154,4 @@
     </xs:complexType>
 
 
-</xs:schema>
+</xs:schema>
\ No newline at end of file
diff --git a/adocs/documentation/src/main/asciidoc/schema/cmd/cmd.xsd b/adocs/documentation/src/main/asciidoc/schema/cmd/cmd-1.4.xsd
similarity index 73%
copy from adocs/documentation/src/main/asciidoc/schema/cmd/cmd.xsd
copy to adocs/documentation/src/main/asciidoc/schema/cmd/cmd-1.4.xsd
index e3aa0b9..3ff2e90 100644
--- a/adocs/documentation/src/main/asciidoc/schema/cmd/cmd.xsd
+++ b/adocs/documentation/src/main/asciidoc/schema/cmd/cmd-1.4.xsd
@@ -23,11 +23,22 @@
            xmlns="http://isis.apache.org/schema/cmd"
            xmlns:com="http://isis.apache.org/schema/common">
 
-    <xs:import namespace="http://isis.apache.org/schema/common" schemaLocation="../common/common-1.0.xsd"/>
+    <xs:import namespace="http://isis.apache.org/schema/common" schemaLocation="../common/common-1.1.xsd"/>
+
+    <xs:element name="commandsDto">
+        <xs:annotation>
+            <xs:documentation>Collection of commandDto's</xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+            <xs:sequence minOccurs="1" maxOccurs="unbounded">
+                <xs:element ref="commandDto"/>
+            </xs:sequence>
+        </xs:complexType>
+    </xs:element>
 
     <xs:element name="commandDto">
         <xs:annotation>
-            <xs:documentation>Represents v1.0 of this schema.
+            <xs:documentation>Represents v1.4 of this schema (as per majorVersion.minorVersion @default attribute, below).  Adds in 'commandsDto' and extending 'commandDto' to allow additional implementation-specific fields to be attached in 'userData' (a map).
             </xs:documentation>
         </xs:annotation>
         <xs:complexType>
@@ -38,9 +49,9 @@
                         </xs:documentation>
                     </xs:annotation>
                 </xs:element>
-                <xs:element name="minorVersion" type="xs:string" minOccurs="1" maxOccurs="1" default="1">
+                <xs:element name="minorVersion" type="xs:string" minOccurs="1" maxOccurs="1" default="4">
                     <xs:annotation>
-                        <xs:documentation>Introduced in v1.1. The minor version of the schema that an XML instance was created using.
+                        <xs:documentation>The minor version of the schema that an XML instance was created using.
                         </xs:documentation>
                     </xs:annotation>
                 </xs:element>
@@ -67,6 +78,18 @@
                         <xs:documentation>The action or property (identifier and parameter arguments) to be invoked on the target object(s).</xs:documentation>
                     </xs:annotation>
                 </xs:element>
+                <xs:element name="timings" type="com:periodDto" minOccurs="0">
+                    <xs:annotation>
+                        <xs:documentation>The time taken to perform the command.  Used for replaying the command on a replica slave.
+                        </xs:documentation>
+                    </xs:annotation>
+                </xs:element>
+                <xs:element name="userData" type="mapDto" minOccurs="0">
+                    <xs:annotation>
+                        <xs:documentation>Custom user data.
+                        </xs:documentation>
+                    </xs:annotation>
+                </xs:element>
             </xs:sequence>
         </xs:complexType>
     </xs:element>
@@ -77,9 +100,15 @@
             </xs:documentation>
         </xs:annotation>
         <xs:sequence>
+            <xs:element name="logicalMemberIdentifier" type="xs:string">
+                <xs:annotation>
+                    <xs:documentation>Logical formal identifier (object type, as per @DomainObject(objectType=), and member name) of the member being interacted with (action or property).
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
             <xs:element name="memberIdentifier" type="xs:string">
                 <xs:annotation>
-                    <xs:documentation>Formal identifier of the member being interacted with (action or property).
+                    <xs:documentation>Formal identifier (class name and member name) of the member being interacted with (action or property).
                     </xs:documentation>
                 </xs:annotation>
             </xs:element>
@@ -147,5 +176,17 @@
         </xs:complexContent>
     </xs:complexType>
 
+    <xs:complexType name="mapDto">
+        <xs:sequence>
+            <xs:element name="entry" minOccurs="0" maxOccurs="unbounded">
+                <xs:complexType>
+                    <xs:sequence>
+                        <xs:element name="key" type="xs:string"/>
+                        <xs:element name="value" type="xs:string"/>
+                    </xs:sequence>
+                </xs:complexType>
+            </xs:element>
+        </xs:sequence>
+    </xs:complexType>
 
 </xs:schema>
diff --git a/adocs/documentation/src/main/asciidoc/schema/cmd/cmd.xsd b/adocs/documentation/src/main/asciidoc/schema/cmd/cmd.xsd
index e3aa0b9..3ff2e90 100644
--- a/adocs/documentation/src/main/asciidoc/schema/cmd/cmd.xsd
+++ b/adocs/documentation/src/main/asciidoc/schema/cmd/cmd.xsd
@@ -23,11 +23,22 @@
            xmlns="http://isis.apache.org/schema/cmd"
            xmlns:com="http://isis.apache.org/schema/common">
 
-    <xs:import namespace="http://isis.apache.org/schema/common" schemaLocation="../common/common-1.0.xsd"/>
+    <xs:import namespace="http://isis.apache.org/schema/common" schemaLocation="../common/common-1.1.xsd"/>
+
+    <xs:element name="commandsDto">
+        <xs:annotation>
+            <xs:documentation>Collection of commandDto's</xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+            <xs:sequence minOccurs="1" maxOccurs="unbounded">
+                <xs:element ref="commandDto"/>
+            </xs:sequence>
+        </xs:complexType>
+    </xs:element>
 
     <xs:element name="commandDto">
         <xs:annotation>
-            <xs:documentation>Represents v1.0 of this schema.
+            <xs:documentation>Represents v1.4 of this schema (as per majorVersion.minorVersion @default attribute, below).  Adds in 'commandsDto' and extending 'commandDto' to allow additional implementation-specific fields to be attached in 'userData' (a map).
             </xs:documentation>
         </xs:annotation>
         <xs:complexType>
@@ -38,9 +49,9 @@
                         </xs:documentation>
                     </xs:annotation>
                 </xs:element>
-                <xs:element name="minorVersion" type="xs:string" minOccurs="1" maxOccurs="1" default="1">
+                <xs:element name="minorVersion" type="xs:string" minOccurs="1" maxOccurs="1" default="4">
                     <xs:annotation>
-                        <xs:documentation>Introduced in v1.1. The minor version of the schema that an XML instance was created using.
+                        <xs:documentation>The minor version of the schema that an XML instance was created using.
                         </xs:documentation>
                     </xs:annotation>
                 </xs:element>
@@ -67,6 +78,18 @@
                         <xs:documentation>The action or property (identifier and parameter arguments) to be invoked on the target object(s).</xs:documentation>
                     </xs:annotation>
                 </xs:element>
+                <xs:element name="timings" type="com:periodDto" minOccurs="0">
+                    <xs:annotation>
+                        <xs:documentation>The time taken to perform the command.  Used for replaying the command on a replica slave.
+                        </xs:documentation>
+                    </xs:annotation>
+                </xs:element>
+                <xs:element name="userData" type="mapDto" minOccurs="0">
+                    <xs:annotation>
+                        <xs:documentation>Custom user data.
+                        </xs:documentation>
+                    </xs:annotation>
+                </xs:element>
             </xs:sequence>
         </xs:complexType>
     </xs:element>
@@ -77,9 +100,15 @@
             </xs:documentation>
         </xs:annotation>
         <xs:sequence>
+            <xs:element name="logicalMemberIdentifier" type="xs:string">
+                <xs:annotation>
+                    <xs:documentation>Logical formal identifier (object type, as per @DomainObject(objectType=), and member name) of the member being interacted with (action or property).
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
             <xs:element name="memberIdentifier" type="xs:string">
                 <xs:annotation>
-                    <xs:documentation>Formal identifier of the member being interacted with (action or property).
+                    <xs:documentation>Formal identifier (class name and member name) of the member being interacted with (action or property).
                     </xs:documentation>
                 </xs:annotation>
             </xs:element>
@@ -147,5 +176,17 @@
         </xs:complexContent>
     </xs:complexType>
 
+    <xs:complexType name="mapDto">
+        <xs:sequence>
+            <xs:element name="entry" minOccurs="0" maxOccurs="unbounded">
+                <xs:complexType>
+                    <xs:sequence>
+                        <xs:element name="key" type="xs:string"/>
+                        <xs:element name="value" type="xs:string"/>
+                    </xs:sequence>
+                </xs:complexType>
+            </xs:element>
+        </xs:sequence>
+    </xs:complexType>
 
 </xs:schema>
diff --git a/adocs/documentation/src/main/asciidoc/schema/common/common.xsd b/adocs/documentation/src/main/asciidoc/schema/common/common-1.1.xsd
similarity index 91%
copy from adocs/documentation/src/main/asciidoc/schema/common/common.xsd
copy to adocs/documentation/src/main/asciidoc/schema/common/common-1.1.xsd
index 041208c..ab26815 100644
--- a/adocs/documentation/src/main/asciidoc/schema/common/common.xsd
+++ b/adocs/documentation/src/main/asciidoc/schema/common/common-1.1.xsd
@@ -42,6 +42,7 @@
             <xs:element name="timestamp" type="xs:dateTime"/>
             <xs:element name="enum" type="enumDto"/>
             <xs:element name="reference" type="oidDto"/>
+            <xs:element name="collection" type="collectionDto"/>
         </xs:choice>
     </xs:complexType>
 
@@ -67,6 +68,18 @@
         <xs:attribute name="id" type="xs:string"/>
     </xs:complexType>
 
+    <xs:complexType name="collectionDto">
+        <xs:annotation>
+            <xs:documentation>A collection of (argument) values
+            </xs:documentation>
+        </xs:annotation>
+        <xs:sequence>
+            <xs:element name="value" type="valueDto" minOccurs="1" maxOccurs="unbounded"/>
+        </xs:sequence>
+        <xs:attribute name="type" use="required" type="valueType"/>
+        <xs:attribute name="null" use="optional" type="xs:boolean"/>
+    </xs:complexType>
+
     <xs:complexType name="oidsDto">
         <xs:annotation>
             <xs:documentation>A list of OIDs
@@ -112,10 +125,10 @@
             <xs:enumeration value="jodaLocalDateTime"/>
             <xs:enumeration value="enum"/>
             <xs:enumeration value="reference"/>
+            <xs:enumeration value="collection"/>
             <xs:enumeration value="void">
                 <xs:annotation>
-                    <xs:documentation>
-                        Not valid to be used as the parameter type of an action; can be used as its return type.
+                    <xs:documentation>Not valid to be used as the parameter type of an action; can be used as its return type.
                     </xs:documentation>
                 </xs:annotation>
             </xs:enumeration>
@@ -188,4 +201,4 @@
         </xs:restriction>
     </xs:simpleType>
 
-</xs:schema>
+</xs:schema>
\ No newline at end of file
diff --git a/adocs/documentation/src/main/asciidoc/schema/common/common.xsd b/adocs/documentation/src/main/asciidoc/schema/common/common.xsd
index 041208c..ab26815 100644
--- a/adocs/documentation/src/main/asciidoc/schema/common/common.xsd
+++ b/adocs/documentation/src/main/asciidoc/schema/common/common.xsd
@@ -42,6 +42,7 @@
             <xs:element name="timestamp" type="xs:dateTime"/>
             <xs:element name="enum" type="enumDto"/>
             <xs:element name="reference" type="oidDto"/>
+            <xs:element name="collection" type="collectionDto"/>
         </xs:choice>
     </xs:complexType>
 
@@ -67,6 +68,18 @@
         <xs:attribute name="id" type="xs:string"/>
     </xs:complexType>
 
+    <xs:complexType name="collectionDto">
+        <xs:annotation>
+            <xs:documentation>A collection of (argument) values
+            </xs:documentation>
+        </xs:annotation>
+        <xs:sequence>
+            <xs:element name="value" type="valueDto" minOccurs="1" maxOccurs="unbounded"/>
+        </xs:sequence>
+        <xs:attribute name="type" use="required" type="valueType"/>
+        <xs:attribute name="null" use="optional" type="xs:boolean"/>
+    </xs:complexType>
+
     <xs:complexType name="oidsDto">
         <xs:annotation>
             <xs:documentation>A list of OIDs
@@ -112,10 +125,10 @@
             <xs:enumeration value="jodaLocalDateTime"/>
             <xs:enumeration value="enum"/>
             <xs:enumeration value="reference"/>
+            <xs:enumeration value="collection"/>
             <xs:enumeration value="void">
                 <xs:annotation>
-                    <xs:documentation>
-                        Not valid to be used as the parameter type of an action; can be used as its return type.
+                    <xs:documentation>Not valid to be used as the parameter type of an action; can be used as its return type.
                     </xs:documentation>
                 </xs:annotation>
             </xs:enumeration>
@@ -188,4 +201,4 @@
         </xs:restriction>
     </xs:simpleType>
 
-</xs:schema>
+</xs:schema>
\ No newline at end of file
diff --git a/adocs/documentation/src/main/asciidoc/schema/ixn/ixn.xsd b/adocs/documentation/src/main/asciidoc/schema/ixn/ixn-1.1.xsd
similarity index 97%
copy from adocs/documentation/src/main/asciidoc/schema/ixn/ixn.xsd
copy to adocs/documentation/src/main/asciidoc/schema/ixn/ixn-1.1.xsd
index dc7908f..e8ccfe5 100644
--- a/adocs/documentation/src/main/asciidoc/schema/ixn/ixn.xsd
+++ b/adocs/documentation/src/main/asciidoc/schema/ixn/ixn-1.1.xsd
@@ -25,12 +25,12 @@
            xmlns:com="http://isis.apache.org/schema/common"
 >
 
-    <xs:import namespace="http://isis.apache.org/schema/common" schemaLocation="../common/common-1.0.xsd"/>
-    <xs:import namespace="http://isis.apache.org/schema/cmd" schemaLocation="../cmd/cmd-1.0.xsd"/>
+    <xs:import namespace="http://isis.apache.org/schema/common" schemaLocation="../common/common-1.1.xsd"/>
+    <xs:import namespace="http://isis.apache.org/schema/cmd" schemaLocation="../cmd/cmd-1.2.xsd"/>
 
     <xs:element name="interactionDto">
         <xs:annotation>
-            <xs:documentation>Represents v1.0 of this schema, replacing and generalizing the earlier 'actionInvocationMemento'.
+            <xs:documentation>Represents v1.1 of this schema.  This schema replaces and generalizes the earlier 'actionInvocationMemento'.
             </xs:documentation>
         </xs:annotation>
         <xs:complexType>
@@ -41,7 +41,7 @@
                         </xs:documentation>
                     </xs:annotation>
                 </xs:element>
-                <xs:element name="minorVersion" type="xs:string" minOccurs="0" maxOccurs="1" default="0">
+                <xs:element name="minorVersion" type="xs:string" minOccurs="0" maxOccurs="1" default="1">
                     <xs:annotation>
                         <xs:documentation>The minor version of the schema that an XML instance was created using.
                         </xs:documentation>
@@ -212,4 +212,4 @@
         </xs:sequence>
     </xs:complexType>
 
-</xs:schema>
+</xs:schema>
\ No newline at end of file
diff --git a/adocs/documentation/src/main/asciidoc/schema/ixn/ixn.xsd b/adocs/documentation/src/main/asciidoc/schema/ixn/ixn-1.2.xsd
similarity index 94%
copy from adocs/documentation/src/main/asciidoc/schema/ixn/ixn.xsd
copy to adocs/documentation/src/main/asciidoc/schema/ixn/ixn-1.2.xsd
index dc7908f..21d375b 100644
--- a/adocs/documentation/src/main/asciidoc/schema/ixn/ixn.xsd
+++ b/adocs/documentation/src/main/asciidoc/schema/ixn/ixn-1.2.xsd
@@ -25,12 +25,12 @@
            xmlns:com="http://isis.apache.org/schema/common"
 >
 
-    <xs:import namespace="http://isis.apache.org/schema/common" schemaLocation="../common/common-1.0.xsd"/>
-    <xs:import namespace="http://isis.apache.org/schema/cmd" schemaLocation="../cmd/cmd-1.0.xsd"/>
+    <xs:import namespace="http://isis.apache.org/schema/common" schemaLocation="../common/common-1.1.xsd"/>
+    <xs:import namespace="http://isis.apache.org/schema/cmd" schemaLocation="../cmd/cmd-1.3.xsd"/>
 
     <xs:element name="interactionDto">
         <xs:annotation>
-            <xs:documentation>Represents v1.0 of this schema, replacing and generalizing the earlier 'actionInvocationMemento'.
+            <xs:documentation>Represents v1.2 of this schema, adding in 'logicalMemberIdentifier'.
             </xs:documentation>
         </xs:annotation>
         <xs:complexType>
@@ -41,7 +41,7 @@
                         </xs:documentation>
                     </xs:annotation>
                 </xs:element>
-                <xs:element name="minorVersion" type="xs:string" minOccurs="0" maxOccurs="1" default="0">
+                <xs:element name="minorVersion" type="xs:string" minOccurs="0" maxOccurs="1" default="2">
                     <xs:annotation>
                         <xs:documentation>The minor version of the schema that an XML instance was created using.
                         </xs:documentation>
@@ -77,6 +77,12 @@
                     </xs:documentation>
                 </xs:annotation>
             </xs:element>
+            <xs:element name="logicalMemberIdentifier" type="xs:string">
+                <xs:annotation>
+                    <xs:documentation>Logical formal identifier (object type, as per @DomainObject(objectType=), and member name) of the member being interacted with (action or property).
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
             <xs:element name="memberIdentifier" type="xs:string">
                 <xs:annotation>
                     <xs:documentation>Formal identifier (class name and member name) of the member being interacted with (action or property).
@@ -212,4 +218,4 @@
         </xs:sequence>
     </xs:complexType>
 
-</xs:schema>
+</xs:schema>
\ No newline at end of file
diff --git a/adocs/documentation/src/main/asciidoc/schema/ixn/ixn.xsd b/adocs/documentation/src/main/asciidoc/schema/ixn/ixn-1.3.xsd
similarity index 94%
copy from adocs/documentation/src/main/asciidoc/schema/ixn/ixn.xsd
copy to adocs/documentation/src/main/asciidoc/schema/ixn/ixn-1.3.xsd
index dc7908f..63380a8 100644
--- a/adocs/documentation/src/main/asciidoc/schema/ixn/ixn.xsd
+++ b/adocs/documentation/src/main/asciidoc/schema/ixn/ixn-1.3.xsd
@@ -25,12 +25,12 @@
            xmlns:com="http://isis.apache.org/schema/common"
 >
 
-    <xs:import namespace="http://isis.apache.org/schema/common" schemaLocation="../common/common-1.0.xsd"/>
-    <xs:import namespace="http://isis.apache.org/schema/cmd" schemaLocation="../cmd/cmd-1.0.xsd"/>
+    <xs:import namespace="http://isis.apache.org/schema/common" schemaLocation="../common/common-1.1.xsd"/>
+    <xs:import namespace="http://isis.apache.org/schema/cmd" schemaLocation="../cmd/cmd-1.4.xsd"/>
 
     <xs:element name="interactionDto">
         <xs:annotation>
-            <xs:documentation>Represents v1.0 of this schema, replacing and generalizing the earlier 'actionInvocationMemento'.
+            <xs:documentation>Represents v1.3 of this schema (as per majorVersion.minorVersion @default attribute, below); just updates to use cmd v1.4 schema.
             </xs:documentation>
         </xs:annotation>
         <xs:complexType>
@@ -41,7 +41,7 @@
                         </xs:documentation>
                     </xs:annotation>
                 </xs:element>
-                <xs:element name="minorVersion" type="xs:string" minOccurs="0" maxOccurs="1" default="0">
+                <xs:element name="minorVersion" type="xs:string" minOccurs="0" maxOccurs="1" default="3">
                     <xs:annotation>
                         <xs:documentation>The minor version of the schema that an XML instance was created using.
                         </xs:documentation>
@@ -77,6 +77,12 @@
                     </xs:documentation>
                 </xs:annotation>
             </xs:element>
+            <xs:element name="logicalMemberIdentifier" type="xs:string">
+                <xs:annotation>
+                    <xs:documentation>Logical formal identifier (object type, as per @DomainObject(objectType=), and member name) of the member being interacted with (action or property).
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
             <xs:element name="memberIdentifier" type="xs:string">
                 <xs:annotation>
                     <xs:documentation>Formal identifier (class name and member name) of the member being interacted with (action or property).
diff --git a/adocs/documentation/src/main/asciidoc/schema/ixn/ixn.xsd b/adocs/documentation/src/main/asciidoc/schema/ixn/ixn.xsd
index dc7908f..63380a8 100644
--- a/adocs/documentation/src/main/asciidoc/schema/ixn/ixn.xsd
+++ b/adocs/documentation/src/main/asciidoc/schema/ixn/ixn.xsd
@@ -25,12 +25,12 @@
            xmlns:com="http://isis.apache.org/schema/common"
 >
 
-    <xs:import namespace="http://isis.apache.org/schema/common" schemaLocation="../common/common-1.0.xsd"/>
-    <xs:import namespace="http://isis.apache.org/schema/cmd" schemaLocation="../cmd/cmd-1.0.xsd"/>
+    <xs:import namespace="http://isis.apache.org/schema/common" schemaLocation="../common/common-1.1.xsd"/>
+    <xs:import namespace="http://isis.apache.org/schema/cmd" schemaLocation="../cmd/cmd-1.4.xsd"/>
 
     <xs:element name="interactionDto">
         <xs:annotation>
-            <xs:documentation>Represents v1.0 of this schema, replacing and generalizing the earlier 'actionInvocationMemento'.
+            <xs:documentation>Represents v1.3 of this schema (as per majorVersion.minorVersion @default attribute, below); just updates to use cmd v1.4 schema.
             </xs:documentation>
         </xs:annotation>
         <xs:complexType>
@@ -41,7 +41,7 @@
                         </xs:documentation>
                     </xs:annotation>
                 </xs:element>
-                <xs:element name="minorVersion" type="xs:string" minOccurs="0" maxOccurs="1" default="0">
+                <xs:element name="minorVersion" type="xs:string" minOccurs="0" maxOccurs="1" default="3">
                     <xs:annotation>
                         <xs:documentation>The minor version of the schema that an XML instance was created using.
                         </xs:documentation>
@@ -77,6 +77,12 @@
                     </xs:documentation>
                 </xs:annotation>
             </xs:element>
+            <xs:element name="logicalMemberIdentifier" type="xs:string">
+                <xs:annotation>
+                    <xs:documentation>Logical formal identifier (object type, as per @DomainObject(objectType=), and member name) of the member being interacted with (action or property).
+                    </xs:documentation>
+                </xs:annotation>
+            </xs:element>
             <xs:element name="memberIdentifier" type="xs:string">
                 <xs:annotation>
                     <xs:documentation>Formal identifier (class name and member name) of the member being interacted with (action or property).

-- 
To stop receiving notification emails like this one, please contact
danhaywood@apache.org.

[isis] 01/04: ISIS-1569: updates to XSDs, make sure the version defaultsb are correct.

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

danhaywood pushed a commit to branch ISIS-1569-replay-commands
in repository https://gitbox.apache.org/repos/asf/isis.git

commit b12a01dbe8b1eabe556ceba32632bf269042236a
Author: Dan Haywood <da...@haywood-associates.co.uk>
AuthorDate: Fri Jan 19 16:31:31 2018 +0000

    ISIS-1569: updates to XSDs, make sure the version defaultsb are correct.
---
 core/schema/src/main/resources/org/apache/isis/schema/chg/chg-1.1.xsd | 2 +-
 core/schema/src/main/resources/org/apache/isis/schema/cmd/cmd-1.4.xsd | 4 ++--
 core/schema/src/main/resources/org/apache/isis/schema/ixn/ixn-1.3.xsd | 4 ++--
 3 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/core/schema/src/main/resources/org/apache/isis/schema/chg/chg-1.1.xsd b/core/schema/src/main/resources/org/apache/isis/schema/chg/chg-1.1.xsd
index 4a9bceb..cb55449 100644
--- a/core/schema/src/main/resources/org/apache/isis/schema/chg/chg-1.1.xsd
+++ b/core/schema/src/main/resources/org/apache/isis/schema/chg/chg-1.1.xsd
@@ -28,7 +28,7 @@
 
     <xs:element name="changesDto">
         <xs:annotation>
-            <xs:documentation>Represents v1.1 of this schema.  The changes (create/update/delete) to one or more domain objects within a transaction.  (nb: only published objects are included in these lists).
+            <xs:documentation>Represents v1.1 of this schema (as per majorVersion.minorVersion @default attribute, below).  The changes (create/update/delete) to one or more domain objects within a transaction.  (nb: only published objects are included in these lists).
             </xs:documentation>
         </xs:annotation>
         <xs:complexType>
diff --git a/core/schema/src/main/resources/org/apache/isis/schema/cmd/cmd-1.4.xsd b/core/schema/src/main/resources/org/apache/isis/schema/cmd/cmd-1.4.xsd
index 5349931..f9125cd 100644
--- a/core/schema/src/main/resources/org/apache/isis/schema/cmd/cmd-1.4.xsd
+++ b/core/schema/src/main/resources/org/apache/isis/schema/cmd/cmd-1.4.xsd
@@ -38,7 +38,7 @@
 
     <xs:element name="commandDto">
         <xs:annotation>
-            <xs:documentation>Represents v1.4 of this schema, adding in 'commandsDto' and extending 'commandDto' to allow additional implementation-specific fields to be attached in 'userData' (a map).
+            <xs:documentation>Represents v1.4 of this schema (as per majorVersion.minorVersion @default attribute, below).  Adds in 'commandsDto' and extending 'commandDto' to allow additional implementation-specific fields to be attached in 'userData' (a map).
             </xs:documentation>
         </xs:annotation>
         <xs:complexType>
@@ -49,7 +49,7 @@
                         </xs:documentation>
                     </xs:annotation>
                 </xs:element>
-                <xs:element name="minorVersion" type="xs:string" minOccurs="1" maxOccurs="1" default="3">
+                <xs:element name="minorVersion" type="xs:string" minOccurs="1" maxOccurs="1" default="4">
                     <xs:annotation>
                         <xs:documentation>The minor version of the schema that an XML instance was created using.
                         </xs:documentation>
diff --git a/core/schema/src/main/resources/org/apache/isis/schema/ixn/ixn-1.3.xsd b/core/schema/src/main/resources/org/apache/isis/schema/ixn/ixn-1.3.xsd
index eaec7c1..63380a8 100644
--- a/core/schema/src/main/resources/org/apache/isis/schema/ixn/ixn-1.3.xsd
+++ b/core/schema/src/main/resources/org/apache/isis/schema/ixn/ixn-1.3.xsd
@@ -30,7 +30,7 @@
 
     <xs:element name="interactionDto">
         <xs:annotation>
-            <xs:documentation>Represents v1.3 of this schema, which just updates to use cmd v1.4 schema.
+            <xs:documentation>Represents v1.3 of this schema (as per majorVersion.minorVersion @default attribute, below); just updates to use cmd v1.4 schema.
             </xs:documentation>
         </xs:annotation>
         <xs:complexType>
@@ -41,7 +41,7 @@
                         </xs:documentation>
                     </xs:annotation>
                 </xs:element>
-                <xs:element name="minorVersion" type="xs:string" minOccurs="0" maxOccurs="1" default="2">
+                <xs:element name="minorVersion" type="xs:string" minOccurs="0" maxOccurs="1" default="3">
                     <xs:annotation>
                         <xs:documentation>The minor version of the schema that an XML instance was created using.
                         </xs:documentation>

-- 
To stop receiving notification emails like this one, please contact
danhaywood@apache.org.