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/10/09 09:27:10 UTC

[isis] branch ISIS-2003 updated (e0b92af -> 3bcd905)

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

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


    from e0b92af  ISIS-2003: adds more control in serialization of metamodel
     new 68d36bf  ISIS-2003: adds further config options
     new 164ccc1  ISIS-2003: breaks out approvals into separate files
     new 3bcd905  ISIS-2003: uses folders instead of filenames for received vs approved

The 3 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:
 .../services/metamodel/MetaModelService6.java      |   30 +-
 .../services/metamodel/MetaModelExporter.java      |  156 +-
 .../apache/isis/schema/metamodel/metamodel-1.0.xsd |  135 +-
 .../integtests/mml/MetaModelService_IntegTest.java |  149 ++
 ...omainAppFixtureScriptsSpecificationProvider.xml |   50 +
 ...plication.services.homepage.HomePageService.xml |   49 +
 ...ication.services.homepage.HomePageViewModel.xml |  412 +++
 ...ainapp.modules.simple.dom.impl.SimpleObject.xml | 1075 ++++++++
 ...inapp.modules.simple.dom.impl.SimpleObjects.xml |  330 +++
 .../integtests/mml/approved/java.lang.Long.xml     |    2 +
 .../integtests/mml/approved/java.lang.Object.xml   |    2 +
 .../integtests/mml/approved/java.lang.String.xml   |    2 +
 .../integtests/mml/approved/java.net.URL.xml       |    2 +
 .../integtests/mml/approved/java.sql.Timestamp.xml |    2 +
 .../integtests/mml/approved/java.util.List.xml     |    2 +
 ....applib.services.layout.LayoutService$Style.xml |    2 +
 .../approved/org.apache.isis.applib.value.Clob.xml |    2 +
 .../application/integtests/mml/approved/void.xml   |    2 +
 .../application/integtests/mml/received/.gitignore |    1 +
 .../{tests => }/smoke/Smoke_IntegTest.java         |    2 +-
 .../application/integtests/tests/mml/.gitignore    |    1 -
 ...MetaModelService_IntegTest.exports.approved.xml | 2745 --------------------
 .../tests/mml/MetaModelService_IntegTest.java      |   71 -
 23 files changed, 2259 insertions(+), 2965 deletions(-)
 create mode 100644 example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/MetaModelService_IntegTest.java
 create mode 100644 example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/domainapp.application.fixture.DomainAppFixtureScriptsSpecificationProvider.xml
 create mode 100644 example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/domainapp.application.services.homepage.HomePageService.xml
 create mode 100644 example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/domainapp.application.services.homepage.HomePageViewModel.xml
 create mode 100644 example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/domainapp.modules.simple.dom.impl.SimpleObject.xml
 create mode 100644 example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/domainapp.modules.simple.dom.impl.SimpleObjects.xml
 create mode 100644 example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/java.lang.Long.xml
 create mode 100644 example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/java.lang.Object.xml
 create mode 100644 example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/java.lang.String.xml
 create mode 100644 example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/java.net.URL.xml
 create mode 100644 example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/java.sql.Timestamp.xml
 create mode 100644 example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/java.util.List.xml
 create mode 100644 example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/org.apache.isis.applib.services.layout.LayoutService$Style.xml
 create mode 100644 example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/org.apache.isis.applib.value.Clob.xml
 create mode 100644 example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/void.xml
 create mode 100644 example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/received/.gitignore
 rename example/application/simpleapp/application/src/test/java/domainapp/application/integtests/{tests => }/smoke/Smoke_IntegTest.java (97%)
 delete mode 100644 example/application/simpleapp/application/src/test/java/domainapp/application/integtests/tests/mml/.gitignore
 delete mode 100644 example/application/simpleapp/application/src/test/java/domainapp/application/integtests/tests/mml/MetaModelService_IntegTest.exports.approved.xml
 delete mode 100644 example/application/simpleapp/application/src/test/java/domainapp/application/integtests/tests/mml/MetaModelService_IntegTest.java


[isis] 02/03: ISIS-2003: breaks out approvals into separate files

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

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

commit 164ccc1bd194446d2606c878340efafaa556c48b
Author: danhaywood <da...@haywood-associates.co.uk>
AuthorDate: Tue Oct 9 08:59:27 2018 +0100

    ISIS-2003: breaks out approvals into separate files
---
 .../services/metamodel/MetaModelExporter.java      |   72 +-
 .../apache/isis/schema/metamodel/metamodel-1.0.xsd |  135 +-
 .../integtests/{tests => }/mml/.gitignore          |    0
 .../mml/MetaModelService_IntegTest.java            |   69 +-
 ...ixtureScriptsSpecificationProvider.approved.xml |   50 +
 ....services.homepage.HomePageService.approved.xml |   49 +
 ...ervices.homepage.HomePageViewModel.approved.xml |  412 +++
 ...dules.simple.dom.impl.SimpleObject.approved.xml | 1075 ++++++++
 ...ules.simple.dom.impl.SimpleObjects.approved.xml |  330 +++
 .../integtests/mml/_java.lang.Long.approved.xml    |    2 +
 .../integtests/mml/_java.lang.Object.approved.xml  |    2 +
 .../integtests/mml/_java.lang.String.approved.xml  |    2 +
 .../integtests/mml/_java.net.URL.approved.xml      |    2 +
 .../mml/_java.sql.Timestamp.approved.xml           |    2 +
 .../integtests/mml/_java.util.List.approved.xml    |    2 +
 ...ervices.layout.LayoutService$Style.approved.xml |    2 +
 ..._org.apache.isis.applib.value.Clob.approved.xml |    2 +
 .../application/integtests/mml/_void.approved.xml  |    2 +
 .../{tests => }/smoke/Smoke_IntegTest.java         |    2 +-
 ...MetaModelService_IntegTest.exports.approved.xml | 2745 --------------------
 20 files changed, 2100 insertions(+), 2857 deletions(-)

diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/metamodel/MetaModelExporter.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/metamodel/MetaModelExporter.java
index 06c51f2..9139a3f 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/metamodel/MetaModelExporter.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/metamodel/MetaModelExporter.java
@@ -56,7 +56,7 @@ import org.apache.isis.core.metamodel.specloader.SpecificationLoader;
 import org.apache.isis.objectstore.jdo.metamodel.facets.object.query.JdoNamedQuery;
 import org.apache.isis.schema.metamodel.v1.Action;
 import org.apache.isis.schema.metamodel.v1.Collection;
-import org.apache.isis.schema.metamodel.v1.DomainClass;
+import org.apache.isis.schema.metamodel.v1.DomainClassDto;
 import org.apache.isis.schema.metamodel.v1.FacetAttr;
 import org.apache.isis.schema.metamodel.v1.Member;
 import org.apache.isis.schema.metamodel.v1.MetamodelDto;
@@ -78,11 +78,11 @@ class MetaModelExporter {
     }
 
     /**
-     * The metamodel is populated in two phases, first to create a {@link DomainClass} for each ObjectSpecification,
+     * The metamodel is populated in two phases, first to create a {@link DomainClassDto} for each ObjectSpecification,
      * and then to populate the members of those domain class types.
      *
      * <p>
-     *     This is because the members (and action parameters) all reference the {@link DomainClass}s, so these need
+     *     This is because the members (and action parameters) all reference the {@link DomainClassDto}s, so these need
      *     to exist first.
      * </p>
      */
@@ -91,7 +91,7 @@ class MetaModelExporter {
 
         // phase 1: create a domainClassType for each ObjectSpecification
         // these are added into a map for lookups in phase 2
-        Map<ObjectSpecification, DomainClass> domainClassByObjectSpec = Maps.newHashMap();
+        Map<ObjectSpecification, DomainClassDto> domainClassByObjectSpec = Maps.newHashMap();
         for (final ObjectSpecification specification : specificationLookup.allSpecifications()) {
             if(notInPackagePrefixes(specification, config)) {
                 continue;
@@ -109,7 +109,7 @@ class MetaModelExporter {
                 continue;
             }
 
-            DomainClass domainClassType = asXsdType(specification, config);
+            DomainClassDto domainClassType = asXsdType(specification, config);
             domainClassByObjectSpec.put(specification, domainClassType);
         }
 
@@ -120,11 +120,11 @@ class MetaModelExporter {
         }
 
         // phase 3: now copy all domain classes into the metamodel
-        for (final DomainClass domainClass : Lists.newArrayList(domainClassByObjectSpec.values())) {
-            metamodelDto.getDomainClass().add(domainClass);
+        for (final DomainClassDto domainClass : Lists.newArrayList(domainClassByObjectSpec.values())) {
+            metamodelDto.getDomainClassDto().add(domainClass);
         }
 
-        sortDomainClasses(metamodelDto.getDomainClass());
+        sortDomainClasses(metamodelDto.getDomainClassDto());
 
         return metamodelDto;
     }
@@ -146,11 +146,11 @@ class MetaModelExporter {
         return false;
     }
 
-    private DomainClass asXsdType(
+    private DomainClassDto asXsdType(
             final ObjectSpecification specification,
             final MetaModelService6.Config config) {
 
-        final DomainClass domainClass = new DomainClass();
+        final DomainClassDto domainClass = new DomainClassDto();
 
         domainClass.setId(specification.getFullIdentifier());
 
@@ -163,10 +163,10 @@ class MetaModelExporter {
 
     private void addFacetsAndMembersTo(
             final ObjectSpecification specification,
-            final Map<ObjectSpecification, DomainClass> domainClassByObjectSpec,
+            final Map<ObjectSpecification, DomainClassDto> domainClassByObjectSpec,
             final MetaModelService6.Config config) {
 
-        final DomainClass domainClass = lookupDomainClass(specification, domainClassByObjectSpec, config);
+        final DomainClassDto domainClass = lookupDomainClass(specification, domainClassByObjectSpec, config);
         if(domainClass.getFacets() == null) {
             domainClass.setFacets(new org.apache.isis.schema.metamodel.v1.FacetHolder.Facets());
         }
@@ -198,14 +198,14 @@ class MetaModelExporter {
 
     private void addProperties(
             final ObjectSpecification specification,
-            final Map<ObjectSpecification, DomainClass> domainClassByObjectSpec,
+            final Map<ObjectSpecification, DomainClassDto> domainClassByObjectSpec,
             final MetaModelService6.Config config) {
-        final DomainClass domainClass = lookupDomainClass(specification, domainClassByObjectSpec, config);
+        final DomainClassDto domainClass = lookupDomainClass(specification, domainClassByObjectSpec, config);
 
         final List<ObjectAssociation> oneToOneAssociations =
                 specification.getAssociations(Contributed.INCLUDED, ObjectAssociation.Filters.PROPERTIES);
         if(domainClass.getProperties() == null) {
-            domainClass.setProperties(new DomainClass.Properties());
+            domainClass.setProperties(new DomainClassDto.Properties());
         }
         final List<Property> properties = domainClass.getProperties().getProp();
         for (final ObjectAssociation association : oneToOneAssociations) {
@@ -217,13 +217,13 @@ class MetaModelExporter {
 
     private void addCollections(
             final ObjectSpecification specification,
-            final Map<ObjectSpecification, DomainClass> domainClassByObjectSpec,
+            final Map<ObjectSpecification, DomainClassDto> domainClassByObjectSpec,
             final MetaModelService6.Config config) {
-        final DomainClass domainClass = lookupDomainClass(specification, domainClassByObjectSpec, config);
+        final DomainClassDto domainClass = lookupDomainClass(specification, domainClassByObjectSpec, config);
         final List<ObjectAssociation> oneToManyAssociations =
                 specification.getAssociations(Contributed.INCLUDED, ObjectAssociation.Filters.COLLECTIONS);
         if(domainClass.getCollections() == null) {
-            domainClass.setCollections(new DomainClass.Collections());
+            domainClass.setCollections(new DomainClassDto.Collections());
         }
         final List<Collection> collections = domainClass.getCollections().getColl();
         for (final ObjectAssociation association : oneToManyAssociations) {
@@ -235,13 +235,13 @@ class MetaModelExporter {
 
     private void addActions(
             final ObjectSpecification specification,
-            final Map<ObjectSpecification, DomainClass> domainClassByObjectSpec,
+            final Map<ObjectSpecification, DomainClassDto> domainClassByObjectSpec,
             final MetaModelService6.Config config) {
-        final DomainClass domainClass = lookupDomainClass(specification, domainClassByObjectSpec, config);
+        final DomainClassDto domainClass = lookupDomainClass(specification, domainClassByObjectSpec, config);
         final List<ObjectAction> objectActions =
                 specification.getObjectActions(Contributed.INCLUDED);
         if(domainClass.getActions() == null) {
-            domainClass.setActions(new DomainClass.Actions());
+            domainClass.setActions(new DomainClassDto.Actions());
         }
         final List<Action> actions = domainClass.getActions().getAct();
         for (final ObjectAction action : objectActions) {
@@ -252,14 +252,14 @@ class MetaModelExporter {
 
     private Property asXsdType(
             final OneToOneAssociation otoa,
-            final Map<ObjectSpecification, DomainClass> domainClassByObjectSpec,
+            final Map<ObjectSpecification, DomainClassDto> domainClassByObjectSpec,
             final MetaModelService6.Config config) {
 
         Property propertyType = new Property();
         propertyType.setId(otoa.getId());
         propertyType.setFacets(new org.apache.isis.schema.metamodel.v1.FacetHolder.Facets());
         final ObjectSpecification specification = otoa.getSpecification();
-        final DomainClass value = lookupDomainClass(specification, domainClassByObjectSpec, config);
+        final DomainClassDto value = lookupDomainClass(specification, domainClassByObjectSpec, config);
         propertyType.setType(value);
 
         addFacets(otoa, propertyType.getFacets(), config);
@@ -268,13 +268,13 @@ class MetaModelExporter {
 
     private Collection asXsdType(
             final OneToManyAssociation otoa,
-            final Map<ObjectSpecification, DomainClass> domainClassByObjectSpec,
+            final Map<ObjectSpecification, DomainClassDto> domainClassByObjectSpec,
             final MetaModelService6.Config config) {
         Collection collectionType = new Collection();
         collectionType.setId(otoa.getId());
         collectionType.setFacets(new org.apache.isis.schema.metamodel.v1.FacetHolder.Facets());
         final ObjectSpecification specification = otoa.getSpecification();
-        final DomainClass value = lookupDomainClass(specification, domainClassByObjectSpec, config);
+        final DomainClassDto value = lookupDomainClass(specification, domainClassByObjectSpec, config);
         collectionType.setType(value);
 
         addFacets(otoa, collectionType.getFacets(), config);
@@ -283,7 +283,7 @@ class MetaModelExporter {
 
     private Action asXsdType(
             final ObjectAction oa,
-            final Map<ObjectSpecification, DomainClass> domainClassByObjectSpec,
+            final Map<ObjectSpecification, DomainClassDto> domainClassByObjectSpec,
             final MetaModelService6.Config config) {
         Action actionType = new Action();
         actionType.setId(oa.getId());
@@ -291,7 +291,7 @@ class MetaModelExporter {
         actionType.setParams(new Action.Params());
 
         final ObjectSpecification specification = oa.getReturnType();
-        final DomainClass value = lookupDomainClass(specification, domainClassByObjectSpec, config);
+        final DomainClassDto value = lookupDomainClass(specification, domainClassByObjectSpec, config);
         actionType.setReturnType(value);
 
         addFacets(oa, actionType.getFacets(), config);
@@ -304,13 +304,13 @@ class MetaModelExporter {
         return actionType;
     }
 
-    private DomainClass lookupDomainClass(
+    private DomainClassDto lookupDomainClass(
             final ObjectSpecification specification,
-            final Map<ObjectSpecification, DomainClass> domainClassByObjectSpec,
+            final Map<ObjectSpecification, DomainClassDto> domainClassByObjectSpec,
             final MetaModelService6.Config config) {
-        DomainClass value = domainClassByObjectSpec.get(specification);
+        DomainClassDto value = domainClassByObjectSpec.get(specification);
         if(value == null) {
-            final DomainClass domainClass = asXsdType(specification, config);
+            final DomainClassDto domainClass = asXsdType(specification, config);
             domainClassByObjectSpec.put(specification, domainClass);
             value = domainClass;
         }
@@ -319,7 +319,7 @@ class MetaModelExporter {
 
     private Param asXsdType(
             final ObjectActionParameter parameter,
-            final Map<ObjectSpecification, DomainClass> domainClassByObjectSpec,
+            final Map<ObjectSpecification, DomainClassDto> domainClassByObjectSpec,
             final MetaModelService6.Config config) {
 
         Param parameterType = parameter instanceof OneToOneActionParameter
@@ -329,7 +329,7 @@ class MetaModelExporter {
         parameterType.setFacets(new org.apache.isis.schema.metamodel.v1.FacetHolder.Facets());
 
         final ObjectSpecification specification = parameter.getSpecification();
-        final DomainClass value = lookupDomainClass(specification, domainClassByObjectSpec, config);
+        final DomainClassDto value = lookupDomainClass(specification, domainClassByObjectSpec, config);
         parameterType.setType(value);
 
         addFacets(parameter, parameterType.getFacets(), config);
@@ -405,10 +405,10 @@ class MetaModelExporter {
         });
     }
 
-    private static void sortDomainClasses(final List<DomainClass> specifications) {
-        Collections.sort(specifications, new Comparator<DomainClass>() {
+    private static void sortDomainClasses(final List<DomainClassDto> specifications) {
+        Collections.sort(specifications, new Comparator<DomainClassDto>() {
             @Override
-            public int compare(final DomainClass o1, final DomainClass o2) {
+            public int compare(final DomainClassDto o1, final DomainClassDto o2) {
                 return o1.getId().compareTo(o2.getId());
             }
         });
diff --git a/core/schema/src/main/resources/org/apache/isis/schema/metamodel/metamodel-1.0.xsd b/core/schema/src/main/resources/org/apache/isis/schema/metamodel/metamodel-1.0.xsd
index bd06e56..64dce4f 100644
--- a/core/schema/src/main/resources/org/apache/isis/schema/metamodel/metamodel-1.0.xsd
+++ b/core/schema/src/main/resources/org/apache/isis/schema/metamodel/metamodel-1.0.xsd
@@ -23,85 +23,84 @@
            xmlns:xs="http://www.w3.org/2001/XMLSchema">
 
     <xs:element name="metamodelDto">
-        <xs:annotation>
-            <xs:documentation>Represents v1.0 of this schema (as per majorVersion.minorVersion @default attribute, below)
-            </xs:documentation>
-        </xs:annotation>
         <xs:complexType>
-            <xs:sequence>
-                <xs:element name="majorVersion" type="xs:string" minOccurs="0" maxOccurs="1" default="1">
-                    <xs:annotation>
-                        <xs:documentation>The major version of the schema that an XML instance was created using.
-                        </xs:documentation>
-                    </xs:annotation>
-                </xs:element>
-                <xs:element name="minorVersion" type="xs:string" minOccurs="0" maxOccurs="1" default="0">
-                    <xs:annotation>
-                        <xs:documentation>The minor version of the schema that an XML instance was created using.
-                        </xs:documentation>
-                    </xs:annotation>
-                </xs:element>
-                <xs:element name="domainClass" type="domainClass" minOccurs="0" maxOccurs="unbounded"/>
+            <xs:sequence minOccurs="1" maxOccurs="unbounded">
+                <xs:element ref="domainClassDto"/>
             </xs:sequence>
         </xs:complexType>
     </xs:element>
 
-    <xs:complexType name="domainClass">
-        <xs:annotation>
-            <xs:documentation>Represents a domain class.
-                Corresponds to ObjectSpecification in the internal metamodel.
-            </xs:documentation>
-        </xs:annotation>
-        <xs:complexContent>
-            <xs:extension base="facetHolder">
-                <xs:sequence>
-                    <xs:element name="properties" minOccurs="0">
+    <xs:element name="domainClassDto">
+        <xs:complexType>
+            <xs:annotation>
+                <xs:documentation>Represents a domain class.
+                    Corresponds to ObjectSpecification in the internal metamodel.
+                </xs:documentation>
+            </xs:annotation>
+            <xs:complexContent>
+                <xs:extension base="facetHolder">
+                    <xs:sequence>
+                        <xs:element name="majorVersion" type="xs:string" minOccurs="0" maxOccurs="1" default="1">
+                            <xs:annotation>
+                                <xs:documentation>The major version of the schema that an XML instance was created using.
+                                </xs:documentation>
+                            </xs:annotation>
+                        </xs:element>
+                        <xs:element name="minorVersion" type="xs:string" minOccurs="0" maxOccurs="1" default="0">
+                            <xs:annotation>
+                                <xs:documentation>The minor version of the schema that an XML instance was created using.
+                                </xs:documentation>
+                            </xs:annotation>
+                        </xs:element>
+                        <xs:element name="properties" minOccurs="0">
+                            <xs:annotation>
+                                <xs:documentation>Optional because domain services have properties.
+                                </xs:documentation>
+                            </xs:annotation>
+                            <xs:complexType>
+                                <xs:sequence>
+                                    <xs:element name="prop" type="property" minOccurs="0" maxOccurs="unbounded"/>
+                                </xs:sequence>
+                            </xs:complexType>
+                        </xs:element>
+                        <xs:element name="collections" minOccurs="0">
+                            <xs:annotation>
+                                <xs:documentation>Optional because domain services have collections.
+                                </xs:documentation>
+                            </xs:annotation>
+                            <xs:complexType>
+                                <xs:sequence>
+                                    <xs:element name="coll" type="collection" minOccurs="0" maxOccurs="unbounded"/>
+                                </xs:sequence>
+                            </xs:complexType>
+                        </xs:element>
+                        <xs:element name="actions" minOccurs="0">
+                            <xs:complexType>
+                                <xs:sequence>
+                                    <xs:element name="act" type="action" minOccurs="0" maxOccurs="unbounded"/>
+                                </xs:sequence>
+                            </xs:complexType>
+                        </xs:element>
+                    </xs:sequence>
+                    <xs:attribute name="id" type="xs:ID">
                         <xs:annotation>
-                            <xs:documentation>Optional because domain services have properties.
+                            <xs:documentation>The fully qualified class name of the underlying Java class.
+                                This is declared as 'xs:ID' so can be referenced elsewhere (using 'xs:IDREF')
+
+                                In the internal metamodel, corresponds to ObjectSpecification#getFullIdentifier()
                             </xs:documentation>
                         </xs:annotation>
-                        <xs:complexType>
-                            <xs:sequence>
-                                <xs:element name="prop" type="property" minOccurs="0" maxOccurs="unbounded"/>
-                            </xs:sequence>
-                        </xs:complexType>
-                    </xs:element>
-                    <xs:element name="collections" minOccurs="0">
+                    </xs:attribute>
+                    <xs:attribute name="service" type="xs:boolean">
                         <xs:annotation>
-                            <xs:documentation>Optional because domain services have collections.
-                            </xs:documentation>
+                            <xs:documentation>Whether this is a domain service</xs:documentation>
                         </xs:annotation>
-                        <xs:complexType>
-                            <xs:sequence>
-                                <xs:element name="coll" type="collection" minOccurs="0" maxOccurs="unbounded"/>
-                            </xs:sequence>
-                        </xs:complexType>
-                    </xs:element>
-                    <xs:element name="actions" minOccurs="0">
-                        <xs:complexType>
-                            <xs:sequence>
-                                <xs:element name="act" type="action" minOccurs="0" maxOccurs="unbounded"/>
-                            </xs:sequence>
-                        </xs:complexType>
-                    </xs:element>
-                </xs:sequence>
-                <xs:attribute name="id" type="xs:ID">
-                    <xs:annotation>
-                        <xs:documentation>The fully qualified class name of the underlying Java class.
-                            This is declared as 'xs:ID' so can be referenced elsewhere (using 'xs:IDREF')
+                    </xs:attribute>
+                </xs:extension>
+            </xs:complexContent>
+        </xs:complexType>
+    </xs:element>
 
-                            In the internal metamodel, corresponds to ObjectSpecification#getFullIdentifier()
-                        </xs:documentation>
-                    </xs:annotation>
-                </xs:attribute>
-                <xs:attribute name="service" type="xs:boolean">
-                    <xs:annotation>
-                        <xs:documentation>Whether this is a domain service</xs:documentation>
-                    </xs:annotation>
-                </xs:attribute>
-            </xs:extension>
-        </xs:complexContent>
-    </xs:complexType>
 
     <xs:complexType name="member">
         <xs:annotation>
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/tests/mml/.gitignore b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/.gitignore
similarity index 100%
rename from example/application/simpleapp/application/src/test/java/domainapp/application/integtests/tests/mml/.gitignore
rename to example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/.gitignore
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/tests/mml/MetaModelService_IntegTest.java b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/MetaModelService_IntegTest.java
similarity index 50%
rename from example/application/simpleapp/application/src/test/java/domainapp/application/integtests/tests/mml/MetaModelService_IntegTest.java
rename to example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/MetaModelService_IntegTest.java
index 66c0678..0ff283a 100644
--- a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/tests/mml/MetaModelService_IntegTest.java
+++ b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/MetaModelService_IntegTest.java
@@ -16,12 +16,15 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package domainapp.application.integtests.tests.mml;
+package domainapp.application.integtests.mml;
+
+import java.util.List;
 
 import javax.inject.Inject;
 
-import org.approvaltests.Approvals;
+import org.approvaltests.namer.StackTraceNamer;
 import org.approvaltests.reporters.DiffReporter;
+import org.approvaltests.reporters.QuietReporter;
 import org.approvaltests.reporters.UseReporter;
 import org.approvaltests.writers.ApprovalTextWriter;
 import org.junit.Before;
@@ -29,11 +32,14 @@ import org.junit.Test;
 
 import org.apache.isis.applib.services.jaxb.JaxbService;
 import org.apache.isis.applib.services.metamodel.MetaModelService6;
+import org.apache.isis.schema.metamodel.v1.DomainClassDto;
 import org.apache.isis.schema.metamodel.v1.MetamodelDto;
 
 import domainapp.application.integtests.DomainAppIntegTestAbstract;
+import static org.approvaltests.Approvals.getReporter;
+import static org.approvaltests.Approvals.verify;
 import static org.hamcrest.CoreMatchers.is;
-import static org.hamcrest.CoreMatchers.nullValue;
+import static org.hamcrest.CoreMatchers.notNullValue;
 import static org.junit.Assume.assumeThat;
 
 public class MetaModelService_IntegTest extends DomainAppIntegTestAbstract {
@@ -45,12 +51,50 @@ public class MetaModelService_IntegTest extends DomainAppIntegTestAbstract {
 
     @Before
     public void setUp() throws Exception {
-        assumeThat(System.getProperty("skip.lockdown"), is(nullValue()));
+
+    }
+
+
+    //
+    // learn...
+    //
+    @UseReporter(QuietReporter.class)
+    @Test
+    public void _1_learn() throws Exception {
+
+        assumeThat(System.getProperty("lockdown.learn"), is(notNullValue()));
+
+        // when
+        MetamodelDto metamodelDto =
+                metaModelService6.exportMetaModel(
+                        new MetaModelService6.Config()
+                                .withIgnoreNoop()
+                                .withIgnoreAbstractClasses()
+                                .withIgnoreBuiltInValueTypes()
+                                .withIgnoreInterfaces()
+                                .withPackagePrefix("domainapp")
+                );
+
+        // then
+        final List<DomainClassDto> domainClassDto = metamodelDto.getDomainClassDto();
+        for (final DomainClassDto domainClass : domainClassDto) {
+            try {
+                verifyClass(domainClass);
+            } catch (Error e) {
+                //ignore ... learning.
+            }
+        }
     }
 
+
+    //
+    // verify ...
+    //
     @UseReporter(DiffReporter.class)
     @Test
-    public void exports() throws Exception {
+    public void _2_verify() throws Exception {
+
+        assumeThat(System.getProperty("lockdown.verify"), is(notNullValue()));
 
         // when
         MetamodelDto metamodelDto =
@@ -64,8 +108,19 @@ public class MetaModelService_IntegTest extends DomainAppIntegTestAbstract {
                 );
 
         // then
-        String asXml = jaxbService.toXml(metamodelDto);
-        Approvals.verify(new ApprovalTextWriter(asXml, "xml"));
+        final List<DomainClassDto> domainClassDto = metamodelDto.getDomainClassDto();
+        for (final DomainClassDto domainClass : domainClassDto) {
+            verifyClass(domainClass);
+        }
+    }
+
+    private void verifyClass(final DomainClassDto domainClass) {
+        String asXml = jaxbService.toXml(domainClass);
+        verify(new ApprovalTextWriter(asXml, "xml"), new StackTraceNamer() {
+            @Override public String getApprovalName() {
+                return "_" + domainClass.getId();
+            }
+        }, getReporter());
     }
 
 }
\ No newline at end of file
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_domainapp.application.fixture.DomainAppFixtureScriptsSpecificationProvider.approved.xml b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_domainapp.application.fixture.DomainAppFixtureScriptsSpecificationProvider.approved.xml
new file mode 100644
index 0000000..4da4d8c
--- /dev/null
+++ b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_domainapp.application.fixture.DomainAppFixtureScriptsSpecificationProvider.approved.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<mml:domainClassDto id="domainapp.application.fixture.DomainAppFixtureScriptsSpecificationProvider" service="true" xmlns:mml="http://isis.apache.org/schema/metamodel">
+    <mml:facets>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.named.NamedFacetInferred">
+            <mml:attr name="escaped">true</mml:attr>
+            <mml:attr name="value">Domain App Fixture Scripts Specification Provider</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
+            <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.domainservice.DomainServiceFacet" fqcn="org.apache.isis.core.metamodel.facets.object.domainservice.annotation.DomainServiceFacetAnnotation">
+            <mml:attr name="natureOfService">DOMAIN</mml:attr>
+            <mml:attr name="repositoryFor">java.lang.Object</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.domainservicelayout.DomainServiceLayoutFacet" fqcn="org.apache.isis.core.metamodel.facets.object.domainservicelayout.annotation.DomainServiceLayoutFacetAnnotation">
+            <mml:attr name="menuBar">PRIMARY</mml:attr>
+            <mml:attr name="menuOrder">2147483547</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.grid.GridFacet" fqcn="org.apache.isis.core.metamodel.facets.object.grid.GridFacetDefault"/>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.icon.IconFacet" fqcn="org.apache.isis.core.metamodel.facets.object.domainservice.annotation.IconFacetDerivedFromDomainServiceAnnotation">
+            <mml:attr name="repositoryFor">java.lang.Object</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.membergroups.MemberGroupLayoutFacet" fqcn="org.apache.isis.core.metamodel.facets.object.membergroups.annotprop.MemberGroupLayoutFacetFallback">
+            <mml:attr name="columns">[4,0,0,8]</mml:attr>
+            <mml:attr name="left">General</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.notpersistable.NotPersistableFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.NotPersistableFacetNull">
+            <mml:attr name="disabling">true</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.objectspecid.ObjectSpecIdFacet" fqcn="org.apache.isis.core.metamodel.facets.object.objectspecid.classname.ObjectSpecIdFacetDerivedFromClassName">
+            <mml:attr name="derived">true</mml:attr>
+            <mml:attr name="value">domainapp.application.fixture.DomainAppFixtureScriptsSpecificationProvider</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.objectvalidprops.ObjectValidPropertiesFacet" fqcn="org.apache.isis.core.metamodel.facets.object.objectvalidprops.impl.ObjectValidPropertiesFacetImpl">
+            <mml:attr name="validating">true</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.paged.PagedFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.PagedFacetFromConfiguration">
+            <mml:attr name="derived">true</mml:attr>
+            <mml:attr name="value">25</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.plural.PluralFacet" fqcn="org.apache.isis.core.metamodel.facets.object.plural.inferred.PluralFacetInferred">
+            <mml:attr name="derived">true</mml:attr>
+            <mml:attr name="value">Domain App Fixture Scripts Specification Providers</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
+            <mml:attr name="disabling">true</mml:attr>
+            <mml:attr name="hiding">true</mml:attr>
+        </mml:facet>
+    </mml:facets>
+</mml:domainClassDto>
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_domainapp.application.services.homepage.HomePageService.approved.xml b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_domainapp.application.services.homepage.HomePageService.approved.xml
new file mode 100644
index 0000000..7317b44
--- /dev/null
+++ b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_domainapp.application.services.homepage.HomePageService.approved.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<mml:domainClassDto id="domainapp.application.services.homepage.HomePageService" service="true" xmlns:mml="http://isis.apache.org/schema/metamodel">
+    <mml:facets>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.named.NamedFacetInferred">
+            <mml:attr name="escaped">true</mml:attr>
+            <mml:attr name="value">Home Page Service</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
+            <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.domainservice.DomainServiceFacet" fqcn="org.apache.isis.core.metamodel.facets.object.domainservice.annotation.DomainServiceFacetAnnotation">
+            <mml:attr name="natureOfService">DOMAIN</mml:attr>
+            <mml:attr name="repositoryFor">java.lang.Object</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.domainservicelayout.DomainServiceLayoutFacet" fqcn="org.apache.isis.core.metamodel.facets.object.domainservicelayout.annotation.DomainServiceLayoutFacetAnnotation">
+            <mml:attr name="menuBar">PRIMARY</mml:attr>
+            <mml:attr name="menuOrder">2147483547</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.grid.GridFacet" fqcn="org.apache.isis.core.metamodel.facets.object.grid.GridFacetDefault"/>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.icon.IconFacet" fqcn="org.apache.isis.core.metamodel.facets.object.domainservice.annotation.IconFacetDerivedFromDomainServiceAnnotation">
+            <mml:attr name="repositoryFor">java.lang.Object</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.membergroups.MemberGroupLayoutFacet" fqcn="org.apache.isis.core.metamodel.facets.object.membergroups.annotprop.MemberGroupLayoutFacetFallback">
+            <mml:attr name="columns">[4,0,0,8]</mml:attr>
+            <mml:attr name="left">General</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.notpersistable.NotPersistableFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.NotPersistableFacetNull">
+            <mml:attr name="disabling">true</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.objectspecid.ObjectSpecIdFacet" fqcn="org.apache.isis.core.metamodel.facets.object.objectspecid.classname.ObjectSpecIdFacetDerivedFromDomainServiceAnnotationElseGetId">
+            <mml:attr name="value">homepage.HomePageService</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.objectvalidprops.ObjectValidPropertiesFacet" fqcn="org.apache.isis.core.metamodel.facets.object.objectvalidprops.impl.ObjectValidPropertiesFacetImpl">
+            <mml:attr name="validating">true</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.paged.PagedFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.PagedFacetFromConfiguration">
+            <mml:attr name="derived">true</mml:attr>
+            <mml:attr name="value">25</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.plural.PluralFacet" fqcn="org.apache.isis.core.metamodel.facets.object.plural.inferred.PluralFacetInferred">
+            <mml:attr name="derived">true</mml:attr>
+            <mml:attr name="value">Home Page Services</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
+            <mml:attr name="disabling">true</mml:attr>
+            <mml:attr name="hiding">true</mml:attr>
+        </mml:facet>
+    </mml:facets>
+</mml:domainClassDto>
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_domainapp.application.services.homepage.HomePageViewModel.approved.xml b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_domainapp.application.services.homepage.HomePageViewModel.approved.xml
new file mode 100644
index 0000000..4f883c0
--- /dev/null
+++ b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_domainapp.application.services.homepage.HomePageViewModel.approved.xml
@@ -0,0 +1,412 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<mml:domainClassDto id="domainapp.application.services.homepage.HomePageViewModel" xmlns:mml="http://isis.apache.org/schema/metamodel">
+    <mml:facets>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.named.NamedFacetInferred">
+            <mml:attr name="escaped">true</mml:attr>
+            <mml:attr name="value">Home Page View Model</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
+            <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.callbacks.CreatedLifecycleEventFacet" fqcn="org.apache.isis.core.metamodel.facets.object.callbacks.CreatedLifecycleEventFacetForDomainObjectAnnotation">
+            <mml:attr name="value">org.apache.isis.applib.services.eventbus.ObjectCreatedEvent.Default</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.callbacks.LoadedLifecycleEventFacet" fqcn="org.apache.isis.core.metamodel.facets.object.callbacks.LoadedLifecycleEventFacetForDomainObjectAnnotation">
+            <mml:attr name="value">org.apache.isis.applib.services.eventbus.ObjectLoadedEvent.Default</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.callbacks.PersistedLifecycleEventFacet" fqcn="org.apache.isis.core.metamodel.facets.object.callbacks.PersistedLifecycleEventFacetForDomainObjectAnnotation">
+            <mml:attr name="value">org.apache.isis.applib.services.eventbus.ObjectPersistedEvent.Default</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.callbacks.PersistingLifecycleEventFacet" fqcn="org.apache.isis.core.metamodel.facets.object.callbacks.PersistingLifecycleEventFacetForDomainObjectAnnotation">
+            <mml:attr name="value">org.apache.isis.applib.services.eventbus.ObjectPersistingEvent.Default</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.callbacks.RemovingLifecycleEventFacet" fqcn="org.apache.isis.core.metamodel.facets.object.callbacks.RemovingLifecycleEventFacetForDomainObjectAnnotation">
+            <mml:attr name="value">org.apache.isis.applib.services.eventbus.ObjectRemovingEvent.Default</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.callbacks.UpdatedLifecycleEventFacet" fqcn="org.apache.isis.core.metamodel.facets.object.callbacks.UpdatedLifecycleEventFacetForDomainObjectAnnotation">
+            <mml:attr name="value">org.apache.isis.applib.services.eventbus.ObjectUpdatedEvent.Default</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.callbacks.UpdatingLifecycleEventFacet" fqcn="org.apache.isis.core.metamodel.facets.object.callbacks.UpdatingLifecycleEventFacetForDomainObjectAnnotation">
+            <mml:attr name="value">org.apache.isis.applib.services.eventbus.ObjectUpdatingEvent.Default</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.grid.GridFacet" fqcn="org.apache.isis.core.metamodel.facets.object.grid.GridFacetDefault"/>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.membergroups.MemberGroupLayoutFacet" fqcn="org.apache.isis.core.metamodel.facets.object.membergroups.annotprop.MemberGroupLayoutFacetFallback">
+            <mml:attr name="columns">[4,0,0,8]</mml:attr>
+            <mml:attr name="left">General</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.notpersistable.NotPersistableFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.NotPersistableFacetNull">
+            <mml:attr name="disabling">true</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.objectspecid.ObjectSpecIdFacet" fqcn="org.apache.isis.core.metamodel.facets.object.domainobject.objectspecid.ObjectSpecIdFacetForDomainObjectAnnotation">
+            <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.object.objectspecid.classname.ObjectSpecIdFacetDerivedFromClassName</mml:attr>
+            <mml:attr name="value">domainapp.application.services.homepage.HomePageViewModel</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.objectvalidprops.ObjectValidPropertiesFacet" fqcn="org.apache.isis.core.metamodel.facets.object.objectvalidprops.impl.ObjectValidPropertiesFacetImpl">
+            <mml:attr name="validating">true</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.paged.PagedFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.PagedFacetFromConfiguration">
+            <mml:attr name="derived">true</mml:attr>
+            <mml:attr name="value">25</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.plural.PluralFacet" fqcn="org.apache.isis.core.metamodel.facets.object.plural.inferred.PluralFacetInferred">
+            <mml:attr name="derived">true</mml:attr>
+            <mml:attr name="value">Home Page View Models</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.title.TitleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.title.methods.TitleFacetViaTitleMethod">
+            <mml:attr name="intent.title">UI_HINT</mml:attr>
+            <mml:attr name="methods">public org.apache.isis.applib.services.i18n.TranslatableString domainapp.application.services.homepage.HomePageViewModel.title()</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.viewmodel.ViewModelFacet" fqcn="org.apache.isis.core.metamodel.facets.object.domainobject.recreatable.RecreatableObjectFacetForDomainObjectAnnotation">
+            <mml:attr name="recreationMechanism">INITIALIZES</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
+            <mml:attr name="disabling">true</mml:attr>
+            <mml:attr name="hiding">true</mml:attr>
+        </mml:facet>
+    </mml:facets>
+    <mml:properties/>
+    <mml:collections>
+        <mml:coll id="objects">
+            <mml:facets>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actcoll.typeof.TypeOfFacet" fqcn="org.apache.isis.core.metamodel.facets.actcoll.typeof.TypeOfFacetInferredFromGenerics">
+                    <mml:attr name="value">domainapp.modules.simple.dom.impl.SimpleObject</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
+                    <mml:attr name="context">domainapp.application.services.homepage.HomePageViewModel#objects</mml:attr>
+                    <mml:attr name="originalText">Objects</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.fallback.NamedFacetDefault</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.collections.collection.defaultview.DefaultViewFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.layout.DefaultViewFacetForCollectionLayoutAnnotation">
+                    <mml:attr name="value">hidden</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.collections.collection.modify.CollectionDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.collection.modify.CollectionDomainEventFacetDefault">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.collections.collection.modify.CollectionDomainEventFacetDefault</mml:attr>
+                    <mml:attr name="validating">true</mml:attr>
+                    <mml:attr name="value">org.apache.isis.applib.services.eventbus.CollectionDomainEvent.Default</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.collections.modify.CollectionAddToFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.collection.modify.CollectionAddToFacetForDomainEventFromDefault">
+                    <mml:attr name="collectionAddToFacet">org.apache.isis.core.metamodel.facets.collections.modify.CollectionAddToFacetViaAccessor</mml:attr>
+                    <mml:attr name="getterFacet">org.apache.isis.core.metamodel.facets.collections.accessor.CollectionAccessorFacetViaAccessor</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.collections.modify.CollectionAddToFacetViaAccessor</mml:attr>
+                    <mml:attr name="value">org.apache.isis.applib.services.eventbus.CollectionDomainEvent.Default</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.collections.modify.CollectionClearFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.clear.CollectionClearFacetViaAccessor">
+                    <mml:attr name="intent.getObjects">ACCESSOR</mml:attr>
+                    <mml:attr name="methods">public java.util.List&lt;domainapp.modules.simple.dom.impl.SimpleObject&gt; domainapp.application.services.homepage.HomePageViewModel.getObjects()</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.collections.modify.CollectionRemoveFromFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.collection.modify.CollectionRemoveFromFacetForDomainEventFromDefault">
+                    <mml:attr name="collectionRemoveFromFacet">org.apache.isis.core.metamodel.facets.collections.modify.CollectionRemoveFromFacetViaAccessor</mml:attr>
+                    <mml:attr name="getterFacet">org.apache.isis.core.metamodel.facets.collections.accessor.CollectionAccessorFacetViaAccessor</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.collections.modify.CollectionRemoveFromFacetViaAccessor</mml:attr>
+                    <mml:attr name="value">org.apache.isis.applib.services.eventbus.CollectionDomainEvent.Default</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.collparam.semantics.CollectionSemanticsFacet" fqcn="org.apache.isis.core.metamodel.facets.collparam.semantics.CollectionSemanticsFacetDefault">
+                    <mml:attr name="value">LIST</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.object.paged.PagedFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.PagedFacetFromConfiguration">
+                    <mml:attr name="derived">true</mml:attr>
+                    <mml:attr name="value">12</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.object.recreatable.DisabledFacetOnCollectionDerivedFromRecreatableObject" fqcn="org.apache.isis.core.metamodel.facets.object.recreatable.DisabledFacetOnCollectionDerivedFromRecreatableObject">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="inverted">false</mml:attr>
+                    <mml:attr name="semantics">DISABLED</mml:attr>
+                    <mml:attr name="when">ALWAYS</mml:attr>
+                    <mml:attr name="where">ANYWHERE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.propcoll.accessor.PropertyOrCollectionAccessorFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.accessor.CollectionAccessorFacetViaAccessor">
+                    <mml:attr name="intent.getObjects">ACCESSOR</mml:attr>
+                    <mml:attr name="methods">public java.util.List&lt;domainapp.modules.simple.dom.impl.SimpleObject&gt; domainapp.application.services.homepage.HomePageViewModel.getObjects()</mml:attr>
+                    <mml:attr name="onType">domainapp.application.services.homepage.HomePageViewModel</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                </mml:facet>
+            </mml:facets>
+            <mml:type>domainapp.modules.simple.dom.impl.SimpleObject</mml:type>
+        </mml:coll>
+    </mml:collections>
+    <mml:actions>
+        <mml:act id="downloadLayoutXml">
+            <mml:facets>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="when">ALWAYS</mml:attr>
+                    <mml:attr name="where">NOWHERE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacetForActionAnnotation">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="validating">true</mml:attr>
+                    <mml:attr name="value">org.apache.isis.applib.services.layout.Object_downloadLayoutXml.ActionDomainEvent</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventFromActionAnnotation">
+                    <mml:attr name="eventType">org.apache.isis.applib.services.layout.Object_downloadLayoutXml.ActionDomainEvent</mml:attr>
+                    <mml:attr name="intent.act">EXECUTE</mml:attr>
+                    <mml:attr name="methods">public java.lang.Object org.apache.isis.applib.services.layout.Object_downloadLayoutXml.act(java.lang.String,org.apache.isis.applib.services.layout.LayoutService$Style)</mml:attr>
+                    <mml:attr name="onType">org.apache.isis.applib.services.layout.Object_downloadLayoutXml</mml:attr>
+                    <mml:attr name="returnType">java.lang.Object</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.bulk.BulkFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.bulk.BulkFacetForActionAnnotation">
+                    <mml:attr name="value">REGULAR_ONLY</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.notcontributed.NotContributedFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.NotContributedFacetForActionLayoutAnnotation">
+                    <mml:attr name="as">ASSOCIATION</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.actions.notcontributed.derived.NotContributedFacetDerivedFromMixinFacet</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.ActionPositionFacetForActionLayoutAnnotation">
+                    <mml:attr name="position">PANEL_DROPDOWN</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.prototype.PrototypeFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.prototype.PrototypeFacetForActionAnnotation">
+                    <mml:attr name="deploymentCategory">PRODUCTION</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.semantics.ActionSemanticsFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.semantics.ActionSemanticsFacetForActionAnnotation">
+                    <mml:attr name="value">SAFE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
+                    <mml:attr name="context">domainapp.application.services.homepage.HomePageViewModel#downloadLayoutXml()</mml:attr>
+                    <mml:attr name="originalText">Download Layout Xml</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.all.named.NamedFacetInferred</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.collections.collection.defaultview.DefaultViewFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.layout.DefaultViewFacetForCollectionLayoutAnnotation">
+                    <mml:attr name="value">hidden</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.members.cssclassfa.CssClassFaFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.CssClassFaFacetForActionLayoutAnnotation">
+                    <mml:attr name="position">LEFT</mml:attr>
+                    <mml:attr name="value">fa fa-fw fa-download</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.members.order.MemberOrderFacet" fqcn="org.apache.isis.core.metamodel.facets.members.order.annotprop.MemberOrderFacetAnnotation">
+                    <mml:attr name="name">datanucleusIdLong</mml:attr>
+                    <mml:attr name="originalName">datanucleusIdLong</mml:attr>
+                    <mml:attr name="sequence">700.1</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
+                    <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline">
+                    <mml:attr name="derived">true</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.properties.renderunchanged.UnchangingFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.UnchangingFacetOnPropertyFromLayoutProperties">
+                    <mml:attr name="value">false</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                </mml:facet>
+            </mml:facets>
+            <mml:returnType>java.lang.Object</mml:returnType>
+            <mml:params>
+                <mml:param xsi:type="mml:scalarParam" id="fileName" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+                    <mml:facets>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.actions.defaults.ActionDefaultsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.defaults.fromtype.ActionParameterDefaultFacetDerivedFromTypeFacets">
+                            <mml:attr name="defaultFacets">org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacetUsingDefaultsProvider;org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacetUsingDefaultsProvider</mml:attr>
+                            <mml:attr name="derived">true</mml:attr>
+                        </mml:facet>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.describedas.annotderived.DescribedAsFacetOnParameterDerivedFromType"/>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
+                            <mml:attr name="context">org.apache.isis.applib.services.layout.Object_downloadLayoutXml#act(java.lang.String,org.apache.isis.applib.services.layout.LayoutService$Style)</mml:attr>
+                            <mml:attr name="originalText">File name</mml:attr>
+                            <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.layout.NamedFacetForParameterLayoutAnnotation</mml:attr>
+                        </mml:facet>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.labelat.LabelAtFacet" fqcn="org.apache.isis.core.metamodel.facets.param.layout.LabelAtFacetForParameterLayoutAnnotation">
+                            <mml:attr name="label">DEFAULT</mml:attr>
+                            <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.layout.LabelAtFacetForParameterLayoutAnnotation</mml:attr>
+                        </mml:facet>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacet" fqcn="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacetDefault">
+                            <mml:attr name="inverted">false</mml:attr>
+                            <mml:attr name="semantics">REQUIRED</mml:attr>
+                            <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacetDefault</mml:attr>
+                            <mml:attr name="validating">true</mml:attr>
+                        </mml:facet>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.typicallen.TypicalLengthFacet" fqcn="org.apache.isis.core.metamodel.facets.param.typicallen.fromtype.TypicalLengthFacetOnParameterDerivedFromType">
+                            <mml:attr name="derived">true</mml:attr>
+                            <mml:attr name="typicalLengthFacet">org.apache.isis.core.metamodel.facets.object.value.TypicalLengthFacetUsingParser</mml:attr>
+                            <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.typicallen.fromtype.TypicalLengthFacetOnParameterDerivedFromType</mml:attr>
+                        </mml:facet>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.param.defaults.ActionParameterDefaultsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.defaults.methodnum.ActionParameterDefaultsFacetViaMethod">
+                            <mml:attr name="intent.default0Act">DEFAULTS</mml:attr>
+                            <mml:attr name="methods">public java.lang.String org.apache.isis.applib.services.layout.Object_downloadLayoutXml.default0Act()</mml:attr>
+                        </mml:facet>
+                    </mml:facets>
+                    <mml:type>java.lang.String</mml:type>
+                </mml:param>
+                <mml:param xsi:type="mml:scalarParam" id="style" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+                    <mml:facets>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.actions.defaults.ActionDefaultsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.defaults.fromtype.ActionParameterDefaultFacetDerivedFromTypeFacets">
+                            <mml:attr name="defaultFacets">org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacetUsingDefaultsProvider;org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacetUsingDefaultsProvider</mml:attr>
+                            <mml:attr name="derived">true</mml:attr>
+                        </mml:facet>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.describedas.annotderived.DescribedAsFacetOnParameterDerivedFromType"/>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacet" fqcn="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacetDefault">
+                            <mml:attr name="inverted">false</mml:attr>
+                            <mml:attr name="semantics">REQUIRED</mml:attr>
+                            <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacetDefault</mml:attr>
+                            <mml:attr name="validating">true</mml:attr>
+                        </mml:facet>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.typicallen.TypicalLengthFacet" fqcn="org.apache.isis.core.metamodel.facets.param.typicallen.fromtype.TypicalLengthFacetOnParameterDerivedFromType">
+                            <mml:attr name="derived">true</mml:attr>
+                            <mml:attr name="typicalLengthFacet">org.apache.isis.core.metamodel.facets.object.value.TypicalLengthFacetUsingParser</mml:attr>
+                            <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.typicallen.fromtype.TypicalLengthFacetOnParameterDerivedFromType</mml:attr>
+                        </mml:facet>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.param.choices.ActionParameterChoicesFacet" fqcn="org.apache.isis.core.metamodel.facets.param.choices.enums.ActionParameterChoicesFacetDerivedFromChoicesFacet"/>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.param.defaults.ActionParameterDefaultsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.defaults.methodnum.ActionParameterDefaultsFacetViaMethod">
+                            <mml:attr name="intent.default1Act">DEFAULTS</mml:attr>
+                            <mml:attr name="methods">public org.apache.isis.applib.services.layout.LayoutService$Style org.apache.isis.applib.services.layout.Object_downloadLayoutXml.default1Act()</mml:attr>
+                        </mml:facet>
+                    </mml:facets>
+                    <mml:type>org.apache.isis.applib.services.layout.LayoutService$Style</mml:type>
+                </mml:param>
+            </mml:params>
+        </mml:act>
+        <mml:act id="openRestApi">
+            <mml:facets>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="when">ALWAYS</mml:attr>
+                    <mml:attr name="where">NOWHERE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacetForActionAnnotation">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="validating">true</mml:attr>
+                    <mml:attr name="value">org.apache.isis.applib.services.layout.Object_openRestApi.ActionDomainEvent</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventFromActionAnnotation">
+                    <mml:attr name="eventType">org.apache.isis.applib.services.layout.Object_openRestApi.ActionDomainEvent</mml:attr>
+                    <mml:attr name="intent.act">EXECUTE</mml:attr>
+                    <mml:attr name="methods">public java.net.URL org.apache.isis.applib.services.layout.Object_openRestApi.act() throws java.net.MalformedURLException</mml:attr>
+                    <mml:attr name="onType">org.apache.isis.applib.services.layout.Object_openRestApi</mml:attr>
+                    <mml:attr name="returnType">java.net.URL</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.bulk.BulkFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.bulk.BulkFacetForActionAnnotation">
+                    <mml:attr name="value">REGULAR_ONLY</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.notcontributed.NotContributedFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.NotContributedFacetForActionLayoutAnnotation">
+                    <mml:attr name="as">ASSOCIATION</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.actions.notcontributed.derived.NotContributedFacetDerivedFromMixinFacet</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.ActionPositionFacetForActionLayoutAnnotation">
+                    <mml:attr name="position">PANEL_DROPDOWN</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.prototype.PrototypeFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.prototype.PrototypeFacetForActionAnnotation">
+                    <mml:attr name="deploymentCategory">PRODUCTION</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.semantics.ActionSemanticsFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.semantics.ActionSemanticsFacetForActionAnnotation">
+                    <mml:attr name="value">SAFE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
+                    <mml:attr name="context">domainapp.application.services.homepage.HomePageViewModel#openRestApi()</mml:attr>
+                    <mml:attr name="originalText">Open Rest Api</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.all.named.NamedFacetInferred</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.collections.collection.defaultview.DefaultViewFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.layout.DefaultViewFacetForCollectionLayoutAnnotation">
+                    <mml:attr name="value">hidden</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.members.cssclassfa.CssClassFaFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.CssClassFaFacetForActionLayoutAnnotation">
+                    <mml:attr name="position">LEFT</mml:attr>
+                    <mml:attr name="value">fa fa-fw fa-external-link</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.members.order.MemberOrderFacet" fqcn="org.apache.isis.core.metamodel.facets.members.order.annotprop.MemberOrderFacetAnnotation">
+                    <mml:attr name="name">datanucleusIdLong</mml:attr>
+                    <mml:attr name="originalName">datanucleusIdLong</mml:attr>
+                    <mml:attr name="sequence">750.1</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
+                    <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline">
+                    <mml:attr name="derived">true</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.properties.renderunchanged.UnchangingFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.UnchangingFacetOnPropertyFromLayoutProperties">
+                    <mml:attr name="value">false</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                </mml:facet>
+            </mml:facets>
+            <mml:returnType>java.net.URL</mml:returnType>
+            <mml:params/>
+        </mml:act>
+        <mml:act id="rebuildMetamodel">
+            <mml:facets>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="when">ALWAYS</mml:attr>
+                    <mml:attr name="where">NOWHERE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacetForActionAnnotation">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="validating">true</mml:attr>
+                    <mml:attr name="value">org.apache.isis.applib.services.layout.Object_rebuildMetamodel.ActionDomainEvent</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventFromActionAnnotation">
+                    <mml:attr name="eventType">org.apache.isis.applib.services.layout.Object_rebuildMetamodel.ActionDomainEvent</mml:attr>
+                    <mml:attr name="intent.act">EXECUTE</mml:attr>
+                    <mml:attr name="methods">public void org.apache.isis.applib.services.layout.Object_rebuildMetamodel.act()</mml:attr>
+                    <mml:attr name="onType">org.apache.isis.applib.services.layout.Object_rebuildMetamodel</mml:attr>
+                    <mml:attr name="returnType">void</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.bulk.BulkFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.bulk.BulkFacetForActionAnnotation">
+                    <mml:attr name="value">REGULAR_ONLY</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.notcontributed.NotContributedFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.NotContributedFacetForActionLayoutAnnotation">
+                    <mml:attr name="as">ASSOCIATION</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.actions.notcontributed.derived.NotContributedFacetDerivedFromMixinFacet</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.ActionPositionFacetForActionLayoutAnnotation">
+                    <mml:attr name="position">PANEL_DROPDOWN</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.prototype.PrototypeFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.prototype.PrototypeFacetForActionAnnotation">
+                    <mml:attr name="deploymentCategory">PRODUCTION</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.semantics.ActionSemanticsFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.semantics.ActionSemanticsFacetForActionAnnotation">
+                    <mml:attr name="value">IDEMPOTENT</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
+                    <mml:attr name="context">domainapp.application.services.homepage.HomePageViewModel#rebuildMetamodel()</mml:attr>
+                    <mml:attr name="originalText">Rebuild Metamodel</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.all.named.NamedFacetInferred</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.collections.collection.defaultview.DefaultViewFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.layout.DefaultViewFacetForCollectionLayoutAnnotation">
+                    <mml:attr name="value">hidden</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.members.cssclassfa.CssClassFaFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.CssClassFaFacetForActionLayoutAnnotation">
+                    <mml:attr name="position">LEFT</mml:attr>
+                    <mml:attr name="value">fa fa-fw fa-refresh</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.members.order.MemberOrderFacet" fqcn="org.apache.isis.core.metamodel.facets.members.order.annotprop.MemberOrderFacetAnnotation">
+                    <mml:attr name="name">datanucleusIdLong</mml:attr>
+                    <mml:attr name="originalName">datanucleusIdLong</mml:attr>
+                    <mml:attr name="sequence">800.1</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
+                    <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline">
+                    <mml:attr name="derived">true</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.properties.renderunchanged.UnchangingFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.UnchangingFacetOnPropertyFromLayoutProperties">
+                    <mml:attr name="value">false</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                </mml:facet>
+            </mml:facets>
+            <mml:returnType>void</mml:returnType>
+            <mml:params/>
+        </mml:act>
+    </mml:actions>
+</mml:domainClassDto>
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_domainapp.modules.simple.dom.impl.SimpleObject.approved.xml b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_domainapp.modules.simple.dom.impl.SimpleObject.approved.xml
new file mode 100644
index 0000000..4de3f42
--- /dev/null
+++ b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_domainapp.modules.simple.dom.impl.SimpleObject.approved.xml
@@ -0,0 +1,1075 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<mml:domainClassDto id="domainapp.modules.simple.dom.impl.SimpleObject" xmlns:mml="http://isis.apache.org/schema/metamodel">
+    <mml:facets>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.named.NamedFacetInferred">
+            <mml:attr name="escaped">true</mml:attr>
+            <mml:attr name="value">Simple Object</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.members.cssclass.CssClassFacet" fqcn="org.apache.isis.core.metamodel.facets.object.domainobjectlayout.CssClassFacetViaDomainObjectLayoutAnnotationUsingCssClassUiEvent">
+            <mml:attr name="cssClassUiEventClass">org.apache.isis.applib.services.eventbus.CssClassUiEvent.Default</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.audit.AuditableFacet" fqcn="org.apache.isis.core.metamodel.facets.object.domainobject.auditing.AuditableFacetForDomainObjectAnnotation">
+            <mml:attr name="enablement">ENABLED</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
+            <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.callbacks.CreatedLifecycleEventFacet" fqcn="org.apache.isis.core.metamodel.facets.object.callbacks.CreatedLifecycleEventFacetForDomainObjectAnnotation">
+            <mml:attr name="value">org.apache.isis.applib.services.eventbus.ObjectCreatedEvent.Default</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.callbacks.LoadedLifecycleEventFacet" fqcn="org.apache.isis.core.metamodel.facets.object.callbacks.LoadedLifecycleEventFacetForDomainObjectAnnotation">
+            <mml:attr name="value">org.apache.isis.applib.services.eventbus.ObjectLoadedEvent.Default</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.callbacks.PersistedLifecycleEventFacet" fqcn="org.apache.isis.core.metamodel.facets.object.callbacks.PersistedLifecycleEventFacetForDomainObjectAnnotation">
+            <mml:attr name="value">org.apache.isis.applib.services.eventbus.ObjectPersistedEvent.Default</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.callbacks.PersistingLifecycleEventFacet" fqcn="org.apache.isis.core.metamodel.facets.object.callbacks.PersistingLifecycleEventFacetForDomainObjectAnnotation">
+            <mml:attr name="value">org.apache.isis.applib.services.eventbus.ObjectPersistingEvent.Default</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.callbacks.RemovingLifecycleEventFacet" fqcn="org.apache.isis.core.metamodel.facets.object.callbacks.RemovingLifecycleEventFacetForDomainObjectAnnotation">
+            <mml:attr name="value">org.apache.isis.applib.services.eventbus.ObjectRemovingEvent.Default</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.callbacks.UpdatedLifecycleEventFacet" fqcn="org.apache.isis.core.metamodel.facets.object.callbacks.UpdatedLifecycleEventFacetForDomainObjectAnnotation">
+            <mml:attr name="value">org.apache.isis.applib.services.eventbus.ObjectUpdatedEvent.Default</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.callbacks.UpdatingLifecycleEventFacet" fqcn="org.apache.isis.core.metamodel.facets.object.callbacks.UpdatingLifecycleEventFacetForDomainObjectAnnotation">
+            <mml:attr name="value">org.apache.isis.applib.services.eventbus.ObjectUpdatingEvent.Default</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.grid.GridFacet" fqcn="org.apache.isis.core.metamodel.facets.object.grid.GridFacetDefault"/>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.icon.IconFacet" fqcn="org.apache.isis.core.metamodel.facets.object.domainobjectlayout.IconFacetViaDomainObjectLayoutAnnotationUsingIconUiEvent">
+            <mml:attr name="iconUiEventClass">org.apache.isis.applib.services.eventbus.IconUiEvent.Default</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.membergroups.MemberGroupLayoutFacet" fqcn="org.apache.isis.core.metamodel.facets.object.membergroups.annotprop.MemberGroupLayoutFacetFallback">
+            <mml:attr name="columns">[4,0,0,8]</mml:attr>
+            <mml:attr name="left">General</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.notpersistable.NotPersistableFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.NotPersistableFacetNull">
+            <mml:attr name="disabling">true</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.objectspecid.ObjectSpecIdFacet" fqcn="org.apache.isis.core.metamodel.facets.object.domainobject.objectspecid.ObjectSpecIdFacetForJdoPersistenceCapableAnnotation">
+            <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.object.objectspecid.classname.ObjectSpecIdFacetDerivedFromClassName</mml:attr>
+            <mml:attr name="value">simple.SimpleObject</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.objectvalidprops.ObjectValidPropertiesFacet" fqcn="org.apache.isis.core.metamodel.facets.object.objectvalidprops.impl.ObjectValidPropertiesFacetImpl">
+            <mml:attr name="validating">true</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.paged.PagedFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.PagedFacetFromConfiguration">
+            <mml:attr name="derived">true</mml:attr>
+            <mml:attr name="value">25</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.plural.PluralFacet" fqcn="org.apache.isis.core.metamodel.facets.object.plural.inferred.PluralFacetInferred">
+            <mml:attr name="derived">true</mml:attr>
+            <mml:attr name="value">Simple Objects</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.title.TitleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.domainobjectlayout.TitleFacetViaDomainObjectLayoutAnnotationUsingTitleUiEvent">
+            <mml:attr name="titleUiEventClass">org.apache.isis.applib.services.eventbus.TitleUiEvent.Default</mml:attr>
+            <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.object.title.annotation.TitleFacetViaTitleAnnotation</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
+            <mml:attr name="disabling">true</mml:attr>
+            <mml:attr name="hiding">true</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.objectstore.jdo.metamodel.facets.object.datastoreidentity.JdoDatastoreIdentityFacet" fqcn="org.apache.isis.objectstore.jdo.metamodel.facets.object.datastoreidentity.JdoDatastoreIdentityFacetAnnotation">
+            <mml:attr name="strategy">IDENTITY</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.objectstore.jdo.metamodel.facets.object.persistencecapable.JdoPersistenceCapableFacet" fqcn="org.apache.isis.objectstore.jdo.metamodel.facets.object.persistencecapable.JdoPersistenceCapableFacetAnnotation">
+            <mml:attr name="identityType">DATASTORE</mml:attr>
+            <mml:attr name="schema">simple</mml:attr>
+            <mml:attr name="table">SimpleObject</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.objectstore.jdo.metamodel.facets.object.version.JdoVersionFacet" fqcn="org.apache.isis.objectstore.jdo.metamodel.facets.object.version.JdoVersionFacetFromAnnotation"/>
+    </mml:facets>
+    <mml:properties>
+        <mml:prop id="datanucleusIdLong">
+            <mml:facets>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="when">ALWAYS</mml:attr>
+                    <mml:attr name="where">NOWHERE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacetForActionAnnotation">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="validating">true</mml:attr>
+                    <mml:attr name="value">org.apache.isis.core.metamodel.services.jdosupport.Persistable_datanucleusIdLong.ActionDomainEvent</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventFromActionAnnotation">
+                    <mml:attr name="eventType">org.apache.isis.core.metamodel.services.jdosupport.Persistable_datanucleusIdLong.ActionDomainEvent</mml:attr>
+                    <mml:attr name="intent.prop">EXECUTE</mml:attr>
+                    <mml:attr name="methods">public java.lang.Long org.apache.isis.core.metamodel.services.jdosupport.Persistable_datanucleusIdLong.prop()</mml:attr>
+                    <mml:attr name="onType">org.apache.isis.core.metamodel.services.jdosupport.Persistable_datanucleusIdLong</mml:attr>
+                    <mml:attr name="returnType">java.lang.Long</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.bulk.BulkFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.bulk.BulkFacetForActionAnnotation">
+                    <mml:attr name="value">REGULAR_ONLY</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.notcontributed.NotContributedFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.NotContributedFacetForActionLayoutAnnotation">
+                    <mml:attr name="as">ACTION</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.actions.notcontributed.derived.NotContributedFacetDerivedFromMixinFacet</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.ActionPositionFacetForActionLayoutAnnotation">
+                    <mml:attr name="position">BELOW</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.semantics.ActionSemanticsFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.semantics.ActionSemanticsFacetForActionAnnotation">
+                    <mml:attr name="value">SAFE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
+                    <mml:attr name="context">domainapp.modules.simple.dom.impl.SimpleObject#datanucleusIdLong()</mml:attr>
+                    <mml:attr name="originalText">Id</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.collections.collection.defaultview.DefaultViewFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.layout.DefaultViewFacetForCollectionLayoutAnnotation">
+                    <mml:attr name="value">hidden</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.members.disabled.DisabledFacet" fqcn="org.apache.isis.core.metamodel.facets.members.disabled.DisabledFacetForContributee">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="inverted">false</mml:attr>
+                    <mml:attr name="reason">Contributed property</mml:attr>
+                    <mml:attr name="semantics">DISABLED</mml:attr>
+                    <mml:attr name="when">ALWAYS</mml:attr>
+                    <mml:attr name="where">ANYWHERE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.members.hidden.method.HideForContextFacet" fqcn="org.apache.isis.core.metamodel.facets.members.hidden.method.HideForContextFacetViaMethod">
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="intent.hideProp">CHECK_IF_HIDDEN</mml:attr>
+                    <mml:attr name="methods">public boolean org.apache.isis.core.metamodel.services.jdosupport.Persistable_datanucleusIdLong.hideProp()</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.members.order.MemberOrderFacet" fqcn="org.apache.isis.core.metamodel.facets.members.order.annotprop.MemberOrderFacetAnnotation">
+                    <mml:attr name="name">Metadata</mml:attr>
+                    <mml:attr name="originalName">Metadata</mml:attr>
+                    <mml:attr name="sequence">800.1</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
+                    <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetAsConfigured">
+                    <mml:attr name="promptStyle">INLINE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.labelat.LabelAtFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.LabelAtFacetForPropertyLayoutAnnotation">
+                    <mml:attr name="label">LEFT</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.propcoll.notpersisted.NotPersistedFacet"/>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.properties.propertylayout.HiddenFacetForPropertyLayoutAnnotation" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.HiddenFacetForPropertyLayoutAnnotation">
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation</mml:attr>
+                    <mml:attr name="when">ALWAYS</mml:attr>
+                    <mml:attr name="where">ALL_TABLES</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.properties.renderunchanged.UnchangingFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.UnchangingFacetOnPropertyFromLayoutProperties">
+                    <mml:attr name="value">false</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                </mml:facet>
+            </mml:facets>
+            <mml:type>java.lang.Long</mml:type>
+        </mml:prop>
+        <mml:prop id="datanucleusVersionLong">
+            <mml:facets>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="when">ALWAYS</mml:attr>
+                    <mml:attr name="where">NOWHERE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacetForActionAnnotation">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="validating">true</mml:attr>
+                    <mml:attr name="value">org.apache.isis.core.metamodel.services.jdosupport.Persistable_datanucleusVersionLong.ActionDomainEvent</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventFromActionAnnotation">
+                    <mml:attr name="eventType">org.apache.isis.core.metamodel.services.jdosupport.Persistable_datanucleusVersionLong.ActionDomainEvent</mml:attr>
+                    <mml:attr name="intent.prop">EXECUTE</mml:attr>
+                    <mml:attr name="methods">public java.lang.Long org.apache.isis.core.metamodel.services.jdosupport.Persistable_datanucleusVersionLong.prop()</mml:attr>
+                    <mml:attr name="onType">org.apache.isis.core.metamodel.services.jdosupport.Persistable_datanucleusVersionLong</mml:attr>
+                    <mml:attr name="returnType">java.lang.Long</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.bulk.BulkFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.bulk.BulkFacetForActionAnnotation">
+                    <mml:attr name="value">REGULAR_ONLY</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.notcontributed.NotContributedFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.NotContributedFacetForActionLayoutAnnotation">
+                    <mml:attr name="as">ACTION</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.actions.notcontributed.derived.NotContributedFacetDerivedFromMixinFacet</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.ActionPositionFacetForActionLayoutAnnotation">
+                    <mml:attr name="position">BELOW</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.semantics.ActionSemanticsFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.semantics.ActionSemanticsFacetForActionAnnotation">
+                    <mml:attr name="value">SAFE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
+                    <mml:attr name="context">domainapp.modules.simple.dom.impl.SimpleObject#datanucleusVersionLong()</mml:attr>
+                    <mml:attr name="originalText">Version</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.collections.collection.defaultview.DefaultViewFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.layout.DefaultViewFacetForCollectionLayoutAnnotation">
+                    <mml:attr name="value">hidden</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.members.disabled.DisabledFacet" fqcn="org.apache.isis.core.metamodel.facets.members.disabled.DisabledFacetForContributee">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="inverted">false</mml:attr>
+                    <mml:attr name="reason">Contributed property</mml:attr>
+                    <mml:attr name="semantics">DISABLED</mml:attr>
+                    <mml:attr name="when">ALWAYS</mml:attr>
+                    <mml:attr name="where">ANYWHERE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.members.hidden.method.HideForContextFacet" fqcn="org.apache.isis.core.metamodel.facets.members.hidden.method.HideForContextFacetViaMethod">
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="intent.hideProp">CHECK_IF_HIDDEN</mml:attr>
+                    <mml:attr name="methods">public boolean org.apache.isis.core.metamodel.services.jdosupport.Persistable_datanucleusVersionLong.hideProp()</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.members.order.MemberOrderFacet" fqcn="org.apache.isis.core.metamodel.facets.members.order.annotprop.MemberOrderFacetAnnotation">
+                    <mml:attr name="name">Metadata</mml:attr>
+                    <mml:attr name="originalName">Metadata</mml:attr>
+                    <mml:attr name="sequence">800.2</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
+                    <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetAsConfigured">
+                    <mml:attr name="promptStyle">INLINE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.labelat.LabelAtFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.LabelAtFacetForPropertyLayoutAnnotation">
+                    <mml:attr name="label">LEFT</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.propcoll.notpersisted.NotPersistedFacet"/>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.properties.propertylayout.HiddenFacetForPropertyLayoutAnnotation" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.HiddenFacetForPropertyLayoutAnnotation">
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation</mml:attr>
+                    <mml:attr name="when">ALWAYS</mml:attr>
+                    <mml:attr name="where">ALL_TABLES</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.properties.renderunchanged.UnchangingFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.UnchangingFacetOnPropertyFromLayoutProperties">
+                    <mml:attr name="value">false</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                </mml:facet>
+            </mml:facets>
+            <mml:type>java.lang.Long</mml:type>
+        </mml:prop>
+        <mml:prop id="datanucleusVersionTimestamp">
+            <mml:facets>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="when">ALWAYS</mml:attr>
+                    <mml:attr name="where">NOWHERE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacetForActionAnnotation">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="validating">true</mml:attr>
+                    <mml:attr name="value">org.apache.isis.core.metamodel.services.jdosupport.Persistable_datanucleusVersionTimestamp.ActionDomainEvent</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventFromActionAnnotation">
+                    <mml:attr name="eventType">org.apache.isis.core.metamodel.services.jdosupport.Persistable_datanucleusVersionTimestamp.ActionDomainEvent</mml:attr>
+                    <mml:attr name="intent.prop">EXECUTE</mml:attr>
+                    <mml:attr name="methods">public java.sql.Timestamp org.apache.isis.core.metamodel.services.jdosupport.Persistable_datanucleusVersionTimestamp.prop()</mml:attr>
+                    <mml:attr name="onType">org.apache.isis.core.metamodel.services.jdosupport.Persistable_datanucleusVersionTimestamp</mml:attr>
+                    <mml:attr name="returnType">java.sql.Timestamp</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.bulk.BulkFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.bulk.BulkFacetForActionAnnotation">
+                    <mml:attr name="value">REGULAR_ONLY</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.notcontributed.NotContributedFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.NotContributedFacetForActionLayoutAnnotation">
+                    <mml:attr name="as">ACTION</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.actions.notcontributed.derived.NotContributedFacetDerivedFromMixinFacet</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.ActionPositionFacetForActionLayoutAnnotation">
+                    <mml:attr name="position">BELOW</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.semantics.ActionSemanticsFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.semantics.ActionSemanticsFacetForActionAnnotation">
+                    <mml:attr name="value">SAFE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
+                    <mml:attr name="context">domainapp.modules.simple.dom.impl.SimpleObject#datanucleusVersionTimestamp()</mml:attr>
+                    <mml:attr name="originalText">Version</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.collections.collection.defaultview.DefaultViewFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.layout.DefaultViewFacetForCollectionLayoutAnnotation">
+                    <mml:attr name="value">hidden</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.members.disabled.DisabledFacet" fqcn="org.apache.isis.core.metamodel.facets.members.disabled.DisabledFacetForContributee">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="inverted">false</mml:attr>
+                    <mml:attr name="reason">Contributed property</mml:attr>
+                    <mml:attr name="semantics">DISABLED</mml:attr>
+                    <mml:attr name="when">ALWAYS</mml:attr>
+                    <mml:attr name="where">ANYWHERE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.members.hidden.method.HideForContextFacet" fqcn="org.apache.isis.core.metamodel.facets.members.hidden.method.HideForContextFacetViaMethod">
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="intent.hideProp">CHECK_IF_HIDDEN</mml:attr>
+                    <mml:attr name="methods">public boolean org.apache.isis.core.metamodel.services.jdosupport.Persistable_datanucleusVersionTimestamp.hideProp()</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.members.order.MemberOrderFacet" fqcn="org.apache.isis.core.metamodel.facets.members.order.annotprop.MemberOrderFacetAnnotation">
+                    <mml:attr name="name">Metadata</mml:attr>
+                    <mml:attr name="originalName">Metadata</mml:attr>
+                    <mml:attr name="sequence">800.2</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
+                    <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetAsConfigured">
+                    <mml:attr name="promptStyle">INLINE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.labelat.LabelAtFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.LabelAtFacetForPropertyLayoutAnnotation">
+                    <mml:attr name="label">LEFT</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.propcoll.notpersisted.NotPersistedFacet"/>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.properties.propertylayout.HiddenFacetForPropertyLayoutAnnotation" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.HiddenFacetForPropertyLayoutAnnotation">
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation</mml:attr>
+                    <mml:attr name="when">ALWAYS</mml:attr>
+                    <mml:attr name="where">ALL_TABLES</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.properties.renderunchanged.UnchangingFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.UnchangingFacetOnPropertyFromLayoutProperties">
+                    <mml:attr name="value">false</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                </mml:facet>
+            </mml:facets>
+            <mml:type>java.sql.Timestamp</mml:type>
+        </mml:prop>
+        <mml:prop id="name">
+            <mml:facets>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
+                    <mml:attr name="context">domainapp.modules.simple.dom.impl.SimpleObject#name</mml:attr>
+                    <mml:attr name="originalText">Name</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.fallback.NamedFacetDefault</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline">
+                    <mml:attr name="derived">true</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacet" fqcn="org.apache.isis.objectstore.jdo.metamodel.facets.prop.column.MandatoryFacetDerivedFromJdoColumn">
+                    <mml:attr name="inverted">false</mml:attr>
+                    <mml:attr name="semantics">REQUIRED</mml:attr>
+                    <mml:attr name="validating">true</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.maxlen.MaxLengthFacet" fqcn="org.apache.isis.objectstore.jdo.metamodel.facets.prop.column.MaxLengthFacetDerivedFromJdoColumn">
+                    <mml:attr name="validating">true</mml:attr>
+                    <mml:attr name="value">40</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.typicallen.TypicalLengthFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.typicallen.fromtype.TypicalLengthFacetOnPropertyDerivedFromType">
+                    <mml:attr name="derived">true</mml:attr>
+                    <mml:attr name="typicalLengthFacet">org.apache.isis.core.metamodel.facets.object.value.TypicalLengthFacetUsingParser</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.propcoll.accessor.PropertyOrCollectionAccessorFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.accessor.PropertyAccessorFacetViaAccessor">
+                    <mml:attr name="intent.getName">ACCESSOR</mml:attr>
+                    <mml:attr name="methods">public java.lang.String domainapp.modules.simple.dom.impl.SimpleObject.getName()</mml:attr>
+                    <mml:attr name="onType">domainapp.modules.simple.dom.impl.SimpleObject</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.properties.defaults.PropertyDefaultFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.defaults.fromtype.PropertyDefaultFacetDerivedFromDefaultedFacet">
+                    <mml:attr name="typeFacet">org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacetUsingDefaultsProvider</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.properties.property.hidden.HiddenFacetForPropertyAnnotation" fqcn="org.apache.isis.core.metamodel.facets.properties.property.hidden.HiddenFacetForPropertyAnnotation">
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="when">ALWAYS</mml:attr>
+                    <mml:attr name="where">NOWHERE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.properties.property.hidden.HiddenFacetForPropertyAnnotation" fqcn="org.apache.isis.core.metamodel.facets.properties.property.hidden.HiddenFacetForPropertyAnnotation">
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="when">ALWAYS</mml:attr>
+                    <mml:attr name="where">NOWHERE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.properties.property.modify.PropertyDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.property.modify.PropertyDomainEventFacetForPropertyAnnotation">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="getterFacet">org.apache.isis.core.metamodel.facets.properties.accessor.PropertyAccessorFacetViaAccessor</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="validating">true</mml:attr>
+                    <mml:attr name="value">org.apache.isis.applib.services.eventbus.PropertyDomainEvent.Default</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.properties.renderunchanged.UnchangingFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.UnchangingFacetOnPropertyFromLayoutProperties">
+                    <mml:attr name="value">false</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.properties.update.clear.PropertyClearFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.property.modify.PropertyClearFacetForDomainEventFromPropertyAnnotation">
+                    <mml:attr name="clearFacet">org.apache.isis.core.metamodel.facets.properties.update.clear.PropertyClearFacetViaSetterMethod</mml:attr>
+                    <mml:attr name="getterFacet">org.apache.isis.core.metamodel.facets.properties.accessor.PropertyAccessorFacetViaAccessor</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.properties.update.clear.PropertyClearFacetViaSetterMethod</mml:attr>
+                    <mml:attr name="value">org.apache.isis.applib.services.eventbus.PropertyDomainEvent.Default</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.properties.update.init.PropertyInitializationFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.update.init.PropertyInitializationFacetViaSetterMethod">
+                    <mml:attr name="intent.setName">MODIFY_PROPERTY</mml:attr>
+                    <mml:attr name="methods">public void domainapp.modules.simple.dom.impl.SimpleObject.setName(java.lang.String)</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.properties.update.modify.PropertySetterFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.property.modify.PropertySetterFacetForDomainEventFromPropertyAnnotation">
+                    <mml:attr name="getterFacet">org.apache.isis.core.metamodel.facets.properties.accessor.PropertyAccessorFacetViaAccessor</mml:attr>
+                    <mml:attr name="setterFacet">org.apache.isis.core.metamodel.facets.properties.update.modify.PropertySetterFacetViaSetterMethod</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.properties.update.modify.PropertySetterFacetViaSetterMethod</mml:attr>
+                    <mml:attr name="value">org.apache.isis.applib.services.eventbus.PropertyDomainEvent.Default</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.properties.validating.PropertyValidateFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.validating.dflt.PropertyValidateFacetDefault">
+                    <mml:attr name="validating">true</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                </mml:facet>
+            </mml:facets>
+            <mml:type>java.lang.String</mml:type>
+        </mml:prop>
+        <mml:prop id="notes">
+            <mml:facets>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
+                    <mml:attr name="context">domainapp.modules.simple.dom.impl.SimpleObject#notes</mml:attr>
+                    <mml:attr name="originalText">Notes</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.fallback.NamedFacetDefault</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.members.disabled.DisabledFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.property.disabled.DisabledFacetForPropertyAnnotationInvertedSemantics">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="inverted">true</mml:attr>
+                    <mml:attr name="semantics">ENABLED</mml:attr>
+                    <mml:attr name="when">ALWAYS</mml:attr>
+                    <mml:attr name="where">EVERYWHERE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline">
+                    <mml:attr name="derived">true</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacet" fqcn="org.apache.isis.objectstore.jdo.metamodel.facets.prop.column.MandatoryFacetDerivedFromJdoColumn">
+                    <mml:attr name="inverted">true</mml:attr>
+                    <mml:attr name="semantics">OPTIONAL</mml:attr>
+                    <mml:attr name="validating">true</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.maxlen.MaxLengthFacet" fqcn="org.apache.isis.objectstore.jdo.metamodel.facets.prop.column.MaxLengthFacetDerivedFromJdoColumn">
+                    <mml:attr name="validating">true</mml:attr>
+                    <mml:attr name="value">4000</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.typicallen.TypicalLengthFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.typicallen.fromtype.TypicalLengthFacetOnPropertyDerivedFromType">
+                    <mml:attr name="derived">true</mml:attr>
+                    <mml:attr name="typicalLengthFacet">org.apache.isis.core.metamodel.facets.object.value.TypicalLengthFacetUsingParser</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.propcoll.accessor.PropertyOrCollectionAccessorFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.accessor.PropertyAccessorFacetViaAccessor">
+                    <mml:attr name="intent.getNotes">ACCESSOR</mml:attr>
+                    <mml:attr name="methods">public java.lang.String domainapp.modules.simple.dom.impl.SimpleObject.getNotes()</mml:attr>
+                    <mml:attr name="onType">domainapp.modules.simple.dom.impl.SimpleObject</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.properties.defaults.PropertyDefaultFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.defaults.fromtype.PropertyDefaultFacetDerivedFromDefaultedFacet">
+                    <mml:attr name="typeFacet">org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacetUsingDefaultsProvider</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.properties.property.hidden.HiddenFacetForPropertyAnnotation" fqcn="org.apache.isis.core.metamodel.facets.properties.property.hidden.HiddenFacetForPropertyAnnotation">
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="when">ALWAYS</mml:attr>
+                    <mml:attr name="where">NOWHERE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.properties.property.hidden.HiddenFacetForPropertyAnnotation" fqcn="org.apache.isis.core.metamodel.facets.properties.property.hidden.HiddenFacetForPropertyAnnotation">
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="when">ALWAYS</mml:attr>
+                    <mml:attr name="where">NOWHERE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.properties.property.modify.PropertyDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.property.modify.PropertyDomainEventFacetForPropertyAnnotation">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="getterFacet">org.apache.isis.core.metamodel.facets.properties.accessor.PropertyAccessorFacetViaAccessor</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="validating">true</mml:attr>
+                    <mml:attr name="value">org.apache.isis.applib.services.eventbus.PropertyDomainEvent.Default</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.properties.renderunchanged.UnchangingFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.UnchangingFacetOnPropertyFromLayoutProperties">
+                    <mml:attr name="value">false</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.properties.update.clear.PropertyClearFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.property.modify.PropertyClearFacetForDomainEventFromPropertyAnnotation">
+                    <mml:attr name="clearFacet">org.apache.isis.core.metamodel.facets.properties.update.clear.PropertyClearFacetViaSetterMethod</mml:attr>
+                    <mml:attr name="getterFacet">org.apache.isis.core.metamodel.facets.properties.accessor.PropertyAccessorFacetViaAccessor</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.properties.update.clear.PropertyClearFacetViaSetterMethod</mml:attr>
+                    <mml:attr name="value">org.apache.isis.applib.services.eventbus.PropertyDomainEvent.Default</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.properties.update.init.PropertyInitializationFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.update.init.PropertyInitializationFacetViaSetterMethod">
+                    <mml:attr name="intent.setNotes">MODIFY_PROPERTY</mml:attr>
+                    <mml:attr name="methods">public void domainapp.modules.simple.dom.impl.SimpleObject.setNotes(java.lang.String)</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.properties.update.modify.PropertySetterFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.property.modify.PropertySetterFacetForDomainEventFromPropertyAnnotation">
+                    <mml:attr name="getterFacet">org.apache.isis.core.metamodel.facets.properties.accessor.PropertyAccessorFacetViaAccessor</mml:attr>
+                    <mml:attr name="setterFacet">org.apache.isis.core.metamodel.facets.properties.update.modify.PropertySetterFacetViaSetterMethod</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.properties.update.modify.PropertySetterFacetViaSetterMethod</mml:attr>
+                    <mml:attr name="value">org.apache.isis.applib.services.eventbus.PropertyDomainEvent.Default</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.properties.validating.PropertyValidateFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.validating.dflt.PropertyValidateFacetDefault">
+                    <mml:attr name="validating">true</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                </mml:facet>
+            </mml:facets>
+            <mml:type>java.lang.String</mml:type>
+        </mml:prop>
+    </mml:properties>
+    <mml:collections/>
+    <mml:actions>
+        <mml:act id="delete">
+            <mml:facets>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="when">ALWAYS</mml:attr>
+                    <mml:attr name="where">NOWHERE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="when">ALWAYS</mml:attr>
+                    <mml:attr name="where">NOWHERE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacetForActionAnnotation">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="validating">true</mml:attr>
+                    <mml:attr name="value">org.apache.isis.applib.services.eventbus.ActionDomainEvent.Default</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventFromActionAnnotation">
+                    <mml:attr name="eventType">org.apache.isis.applib.services.eventbus.ActionDomainEvent.Default</mml:attr>
+                    <mml:attr name="intent.delete">EXECUTE</mml:attr>
+                    <mml:attr name="methods">public void domainapp.modules.simple.dom.impl.SimpleObject.delete()</mml:attr>
+                    <mml:attr name="onType">domainapp.modules.simple.dom.impl.SimpleObject</mml:attr>
+                    <mml:attr name="returnType">void</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.bulk.BulkFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.bulk.BulkFacetForActionAnnotation">
+                    <mml:attr name="value">REGULAR_ONLY</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacetFallback">
+                    <mml:attr name="position">BELOW</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.semantics.ActionSemanticsFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.semantics.ActionSemanticsFacetForActionAnnotation">
+                    <mml:attr name="value">NON_IDEMPOTENT_ARE_YOU_SURE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
+                    <mml:attr name="context">domainapp.modules.simple.dom.impl.SimpleObject#delete()</mml:attr>
+                    <mml:attr name="originalText">Delete</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.fallback.NamedFacetDefault</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.collections.collection.defaultview.DefaultViewFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.layout.DefaultViewFacetForCollectionLayoutAnnotation">
+                    <mml:attr name="value">hidden</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
+                    <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline">
+                    <mml:attr name="derived">true</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.properties.renderunchanged.UnchangingFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.UnchangingFacetOnPropertyFromLayoutProperties">
+                    <mml:attr name="value">false</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                </mml:facet>
+            </mml:facets>
+            <mml:returnType>void</mml:returnType>
+            <mml:params/>
+        </mml:act>
+        <mml:act id="downloadJdoMetadata">
+            <mml:facets>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="when">ALWAYS</mml:attr>
+                    <mml:attr name="where">NOWHERE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacetForActionAnnotation">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="validating">true</mml:attr>
+                    <mml:attr name="value">org.apache.isis.core.metamodel.services.jdosupport.Persistable_downloadJdoMetadata.ActionDomainEvent</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventFromActionAnnotation">
+                    <mml:attr name="eventType">org.apache.isis.core.metamodel.services.jdosupport.Persistable_downloadJdoMetadata.ActionDomainEvent</mml:attr>
+                    <mml:attr name="intent.act">EXECUTE</mml:attr>
+                    <mml:attr name="methods">public org.apache.isis.applib.value.Clob org.apache.isis.core.metamodel.services.jdosupport.Persistable_downloadJdoMetadata.act(java.lang.String) throws javax.xml.bind.JAXBException,java.io.IOException</mml:attr>
+                    <mml:attr name="onType">org.apache.isis.core.metamodel.services.jdosupport.Persistable_downloadJdoMetadata</mml:attr>
+                    <mml:attr name="returnType">org.apache.isis.applib.value.Clob</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.bulk.BulkFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.bulk.BulkFacetForActionAnnotation">
+                    <mml:attr name="value">REGULAR_ONLY</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.notcontributed.NotContributedFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.NotContributedFacetForActionLayoutAnnotation">
+                    <mml:attr name="as">ASSOCIATION</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.actions.notcontributed.derived.NotContributedFacetDerivedFromMixinFacet</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.ActionPositionFacetForActionLayoutAnnotation">
+                    <mml:attr name="position">PANEL_DROPDOWN</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.prototype.PrototypeFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.prototype.PrototypeFacetForActionAnnotation">
+                    <mml:attr name="deploymentCategory">PRODUCTION</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.semantics.ActionSemanticsFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.semantics.ActionSemanticsFacetForActionAnnotation">
+                    <mml:attr name="value">SAFE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
+                    <mml:attr name="context">domainapp.modules.simple.dom.impl.SimpleObject#downloadJdoMetadata()</mml:attr>
+                    <mml:attr name="originalText">Download Jdo Metadata</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.all.named.NamedFacetInferred</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.collections.collection.defaultview.DefaultViewFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.layout.DefaultViewFacetForCollectionLayoutAnnotation">
+                    <mml:attr name="value">hidden</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.members.cssclassfa.CssClassFaFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.CssClassFaFacetForActionLayoutAnnotation">
+                    <mml:attr name="position">LEFT</mml:attr>
+                    <mml:attr name="value">fa fa-fw fa-download</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.members.order.MemberOrderFacet" fqcn="org.apache.isis.core.metamodel.facets.members.order.annotprop.MemberOrderFacetAnnotation">
+                    <mml:attr name="name">datanucleusIdLong</mml:attr>
+                    <mml:attr name="originalName">datanucleusIdLong</mml:attr>
+                    <mml:attr name="sequence">710.1</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
+                    <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline">
+                    <mml:attr name="derived">true</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.properties.renderunchanged.UnchangingFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.UnchangingFacetOnPropertyFromLayoutProperties">
+                    <mml:attr name="value">false</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                </mml:facet>
+            </mml:facets>
+            <mml:returnType>org.apache.isis.applib.value.Clob</mml:returnType>
+            <mml:params>
+                <mml:param xsi:type="mml:scalarParam" id="fileName" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+                    <mml:facets>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.actions.defaults.ActionDefaultsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.defaults.fromtype.ActionParameterDefaultFacetDerivedFromTypeFacets">
+                            <mml:attr name="defaultFacets">org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacetUsingDefaultsProvider</mml:attr>
+                            <mml:attr name="derived">true</mml:attr>
+                        </mml:facet>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.describedas.annotderived.DescribedAsFacetOnParameterDerivedFromType"/>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
+                            <mml:attr name="context">org.apache.isis.core.metamodel.services.jdosupport.Persistable_downloadJdoMetadata#act(java.lang.String)</mml:attr>
+                            <mml:attr name="originalText">File name</mml:attr>
+                            <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.layout.NamedFacetForParameterLayoutAnnotation</mml:attr>
+                        </mml:facet>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.labelat.LabelAtFacet" fqcn="org.apache.isis.core.metamodel.facets.param.layout.LabelAtFacetForParameterLayoutAnnotation">
+                            <mml:attr name="label">DEFAULT</mml:attr>
+                            <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.layout.LabelAtFacetForParameterLayoutAnnotation</mml:attr>
+                        </mml:facet>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacet" fqcn="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacetDefault">
+                            <mml:attr name="inverted">false</mml:attr>
+                            <mml:attr name="semantics">REQUIRED</mml:attr>
+                            <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacetDefault</mml:attr>
+                            <mml:attr name="validating">true</mml:attr>
+                        </mml:facet>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.typicallen.TypicalLengthFacet" fqcn="org.apache.isis.core.metamodel.facets.param.typicallen.fromtype.TypicalLengthFacetOnParameterDerivedFromType">
+                            <mml:attr name="derived">true</mml:attr>
+                            <mml:attr name="typicalLengthFacet">org.apache.isis.core.metamodel.facets.object.value.TypicalLengthFacetUsingParser</mml:attr>
+                            <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.typicallen.fromtype.TypicalLengthFacetOnParameterDerivedFromType</mml:attr>
+                        </mml:facet>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.param.defaults.ActionParameterDefaultsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.defaults.methodnum.ActionParameterDefaultsFacetViaMethod">
+                            <mml:attr name="intent.default0Act">DEFAULTS</mml:attr>
+                            <mml:attr name="methods">public java.lang.String org.apache.isis.core.metamodel.services.jdosupport.Persistable_downloadJdoMetadata.default0Act()</mml:attr>
+                        </mml:facet>
+                    </mml:facets>
+                    <mml:type>java.lang.String</mml:type>
+                </mml:param>
+            </mml:params>
+        </mml:act>
+        <mml:act id="downloadLayoutXml">
+            <mml:facets>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="when">ALWAYS</mml:attr>
+                    <mml:attr name="where">NOWHERE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacetForActionAnnotation">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="validating">true</mml:attr>
+                    <mml:attr name="value">org.apache.isis.applib.services.layout.Object_downloadLayoutXml.ActionDomainEvent</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventFromActionAnnotation">
+                    <mml:attr name="eventType">org.apache.isis.applib.services.layout.Object_downloadLayoutXml.ActionDomainEvent</mml:attr>
+                    <mml:attr name="intent.act">EXECUTE</mml:attr>
+                    <mml:attr name="methods">public java.lang.Object org.apache.isis.applib.services.layout.Object_downloadLayoutXml.act(java.lang.String,org.apache.isis.applib.services.layout.LayoutService$Style)</mml:attr>
+                    <mml:attr name="onType">org.apache.isis.applib.services.layout.Object_downloadLayoutXml</mml:attr>
+                    <mml:attr name="returnType">java.lang.Object</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.bulk.BulkFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.bulk.BulkFacetForActionAnnotation">
+                    <mml:attr name="value">REGULAR_ONLY</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.notcontributed.NotContributedFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.NotContributedFacetForActionLayoutAnnotation">
+                    <mml:attr name="as">ASSOCIATION</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.actions.notcontributed.derived.NotContributedFacetDerivedFromMixinFacet</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.ActionPositionFacetForActionLayoutAnnotation">
+                    <mml:attr name="position">PANEL_DROPDOWN</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.prototype.PrototypeFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.prototype.PrototypeFacetForActionAnnotation">
+                    <mml:attr name="deploymentCategory">PRODUCTION</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.semantics.ActionSemanticsFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.semantics.ActionSemanticsFacetForActionAnnotation">
+                    <mml:attr name="value">SAFE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
+                    <mml:attr name="context">domainapp.modules.simple.dom.impl.SimpleObject#downloadLayoutXml()</mml:attr>
+                    <mml:attr name="originalText">Download Layout Xml</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.all.named.NamedFacetInferred</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.collections.collection.defaultview.DefaultViewFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.layout.DefaultViewFacetForCollectionLayoutAnnotation">
+                    <mml:attr name="value">hidden</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.members.cssclassfa.CssClassFaFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.CssClassFaFacetForActionLayoutAnnotation">
+                    <mml:attr name="position">LEFT</mml:attr>
+                    <mml:attr name="value">fa fa-fw fa-download</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.members.order.MemberOrderFacet" fqcn="org.apache.isis.core.metamodel.facets.members.order.annotprop.MemberOrderFacetAnnotation">
+                    <mml:attr name="name">datanucleusIdLong</mml:attr>
+                    <mml:attr name="originalName">datanucleusIdLong</mml:attr>
+                    <mml:attr name="sequence">700.1</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
+                    <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline">
+                    <mml:attr name="derived">true</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.properties.renderunchanged.UnchangingFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.UnchangingFacetOnPropertyFromLayoutProperties">
+                    <mml:attr name="value">false</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                </mml:facet>
+            </mml:facets>
+            <mml:returnType>java.lang.Object</mml:returnType>
+            <mml:params>
+                <mml:param xsi:type="mml:scalarParam" id="fileName" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+                    <mml:facets>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.actions.defaults.ActionDefaultsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.defaults.fromtype.ActionParameterDefaultFacetDerivedFromTypeFacets">
+                            <mml:attr name="defaultFacets">org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacetUsingDefaultsProvider;org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacetUsingDefaultsProvider</mml:attr>
+                            <mml:attr name="derived">true</mml:attr>
+                        </mml:facet>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.describedas.annotderived.DescribedAsFacetOnParameterDerivedFromType"/>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
+                            <mml:attr name="context">org.apache.isis.applib.services.layout.Object_downloadLayoutXml#act(java.lang.String,org.apache.isis.applib.services.layout.LayoutService$Style)</mml:attr>
+                            <mml:attr name="originalText">File name</mml:attr>
+                            <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.layout.NamedFacetForParameterLayoutAnnotation</mml:attr>
+                        </mml:facet>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.labelat.LabelAtFacet" fqcn="org.apache.isis.core.metamodel.facets.param.layout.LabelAtFacetForParameterLayoutAnnotation">
+                            <mml:attr name="label">DEFAULT</mml:attr>
+                            <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.layout.LabelAtFacetForParameterLayoutAnnotation</mml:attr>
+                        </mml:facet>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacet" fqcn="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacetDefault">
+                            <mml:attr name="inverted">false</mml:attr>
+                            <mml:attr name="semantics">REQUIRED</mml:attr>
+                            <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacetDefault</mml:attr>
+                            <mml:attr name="validating">true</mml:attr>
+                        </mml:facet>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.typicallen.TypicalLengthFacet" fqcn="org.apache.isis.core.metamodel.facets.param.typicallen.fromtype.TypicalLengthFacetOnParameterDerivedFromType">
+                            <mml:attr name="derived">true</mml:attr>
+                            <mml:attr name="typicalLengthFacet">org.apache.isis.core.metamodel.facets.object.value.TypicalLengthFacetUsingParser</mml:attr>
+                            <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.typicallen.fromtype.TypicalLengthFacetOnParameterDerivedFromType</mml:attr>
+                        </mml:facet>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.param.defaults.ActionParameterDefaultsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.defaults.methodnum.ActionParameterDefaultsFacetViaMethod">
+                            <mml:attr name="intent.default0Act">DEFAULTS</mml:attr>
+                            <mml:attr name="methods">public java.lang.String org.apache.isis.applib.services.layout.Object_downloadLayoutXml.default0Act()</mml:attr>
+                        </mml:facet>
+                    </mml:facets>
+                    <mml:type>java.lang.String</mml:type>
+                </mml:param>
+                <mml:param xsi:type="mml:scalarParam" id="style" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+                    <mml:facets>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.actions.defaults.ActionDefaultsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.defaults.fromtype.ActionParameterDefaultFacetDerivedFromTypeFacets">
+                            <mml:attr name="defaultFacets">org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacetUsingDefaultsProvider;org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacetUsingDefaultsProvider</mml:attr>
+                            <mml:attr name="derived">true</mml:attr>
+                        </mml:facet>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.describedas.annotderived.DescribedAsFacetOnParameterDerivedFromType"/>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacet" fqcn="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacetDefault">
+                            <mml:attr name="inverted">false</mml:attr>
+                            <mml:attr name="semantics">REQUIRED</mml:attr>
+                            <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacetDefault</mml:attr>
+                            <mml:attr name="validating">true</mml:attr>
+                        </mml:facet>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.typicallen.TypicalLengthFacet" fqcn="org.apache.isis.core.metamodel.facets.param.typicallen.fromtype.TypicalLengthFacetOnParameterDerivedFromType">
+                            <mml:attr name="derived">true</mml:attr>
+                            <mml:attr name="typicalLengthFacet">org.apache.isis.core.metamodel.facets.object.value.TypicalLengthFacetUsingParser</mml:attr>
+                            <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.typicallen.fromtype.TypicalLengthFacetOnParameterDerivedFromType</mml:attr>
+                        </mml:facet>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.param.choices.ActionParameterChoicesFacet" fqcn="org.apache.isis.core.metamodel.facets.param.choices.enums.ActionParameterChoicesFacetDerivedFromChoicesFacet"/>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.param.defaults.ActionParameterDefaultsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.defaults.methodnum.ActionParameterDefaultsFacetViaMethod">
+                            <mml:attr name="intent.default1Act">DEFAULTS</mml:attr>
+                            <mml:attr name="methods">public org.apache.isis.applib.services.layout.LayoutService$Style org.apache.isis.applib.services.layout.Object_downloadLayoutXml.default1Act()</mml:attr>
+                        </mml:facet>
+                    </mml:facets>
+                    <mml:type>org.apache.isis.applib.services.layout.LayoutService$Style</mml:type>
+                </mml:param>
+            </mml:params>
+        </mml:act>
+        <mml:act id="openRestApi">
+            <mml:facets>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="when">ALWAYS</mml:attr>
+                    <mml:attr name="where">NOWHERE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacetForActionAnnotation">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="validating">true</mml:attr>
+                    <mml:attr name="value">org.apache.isis.applib.services.layout.Object_openRestApi.ActionDomainEvent</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventFromActionAnnotation">
+                    <mml:attr name="eventType">org.apache.isis.applib.services.layout.Object_openRestApi.ActionDomainEvent</mml:attr>
+                    <mml:attr name="intent.act">EXECUTE</mml:attr>
+                    <mml:attr name="methods">public java.net.URL org.apache.isis.applib.services.layout.Object_openRestApi.act() throws java.net.MalformedURLException</mml:attr>
+                    <mml:attr name="onType">org.apache.isis.applib.services.layout.Object_openRestApi</mml:attr>
+                    <mml:attr name="returnType">java.net.URL</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.bulk.BulkFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.bulk.BulkFacetForActionAnnotation">
+                    <mml:attr name="value">REGULAR_ONLY</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.notcontributed.NotContributedFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.NotContributedFacetForActionLayoutAnnotation">
+                    <mml:attr name="as">ASSOCIATION</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.actions.notcontributed.derived.NotContributedFacetDerivedFromMixinFacet</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.ActionPositionFacetForActionLayoutAnnotation">
+                    <mml:attr name="position">PANEL_DROPDOWN</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.prototype.PrototypeFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.prototype.PrototypeFacetForActionAnnotation">
+                    <mml:attr name="deploymentCategory">PRODUCTION</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.semantics.ActionSemanticsFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.semantics.ActionSemanticsFacetForActionAnnotation">
+                    <mml:attr name="value">SAFE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
+                    <mml:attr name="context">domainapp.modules.simple.dom.impl.SimpleObject#openRestApi()</mml:attr>
+                    <mml:attr name="originalText">Open Rest Api</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.all.named.NamedFacetInferred</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.collections.collection.defaultview.DefaultViewFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.layout.DefaultViewFacetForCollectionLayoutAnnotation">
+                    <mml:attr name="value">hidden</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.members.cssclassfa.CssClassFaFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.CssClassFaFacetForActionLayoutAnnotation">
+                    <mml:attr name="position">LEFT</mml:attr>
+                    <mml:attr name="value">fa fa-fw fa-external-link</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.members.order.MemberOrderFacet" fqcn="org.apache.isis.core.metamodel.facets.members.order.annotprop.MemberOrderFacetAnnotation">
+                    <mml:attr name="name">datanucleusIdLong</mml:attr>
+                    <mml:attr name="originalName">datanucleusIdLong</mml:attr>
+                    <mml:attr name="sequence">750.1</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
+                    <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline">
+                    <mml:attr name="derived">true</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.properties.renderunchanged.UnchangingFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.UnchangingFacetOnPropertyFromLayoutProperties">
+                    <mml:attr name="value">false</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                </mml:facet>
+            </mml:facets>
+            <mml:returnType>java.net.URL</mml:returnType>
+            <mml:params/>
+        </mml:act>
+        <mml:act id="rebuildMetamodel">
+            <mml:facets>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="when">ALWAYS</mml:attr>
+                    <mml:attr name="where">NOWHERE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacetForActionAnnotation">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="validating">true</mml:attr>
+                    <mml:attr name="value">org.apache.isis.applib.services.layout.Object_rebuildMetamodel.ActionDomainEvent</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventFromActionAnnotation">
+                    <mml:attr name="eventType">org.apache.isis.applib.services.layout.Object_rebuildMetamodel.ActionDomainEvent</mml:attr>
+                    <mml:attr name="intent.act">EXECUTE</mml:attr>
+                    <mml:attr name="methods">public void org.apache.isis.applib.services.layout.Object_rebuildMetamodel.act()</mml:attr>
+                    <mml:attr name="onType">org.apache.isis.applib.services.layout.Object_rebuildMetamodel</mml:attr>
+                    <mml:attr name="returnType">void</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.bulk.BulkFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.bulk.BulkFacetForActionAnnotation">
+                    <mml:attr name="value">REGULAR_ONLY</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.notcontributed.NotContributedFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.NotContributedFacetForActionLayoutAnnotation">
+                    <mml:attr name="as">ASSOCIATION</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.actions.notcontributed.derived.NotContributedFacetDerivedFromMixinFacet</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.ActionPositionFacetForActionLayoutAnnotation">
+                    <mml:attr name="position">PANEL_DROPDOWN</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.prototype.PrototypeFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.prototype.PrototypeFacetForActionAnnotation">
+                    <mml:attr name="deploymentCategory">PRODUCTION</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.semantics.ActionSemanticsFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.semantics.ActionSemanticsFacetForActionAnnotation">
+                    <mml:attr name="value">IDEMPOTENT</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
+                    <mml:attr name="context">domainapp.modules.simple.dom.impl.SimpleObject#rebuildMetamodel()</mml:attr>
+                    <mml:attr name="originalText">Rebuild Metamodel</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.all.named.NamedFacetInferred</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.collections.collection.defaultview.DefaultViewFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.layout.DefaultViewFacetForCollectionLayoutAnnotation">
+                    <mml:attr name="value">hidden</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.members.cssclassfa.CssClassFaFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.CssClassFaFacetForActionLayoutAnnotation">
+                    <mml:attr name="position">LEFT</mml:attr>
+                    <mml:attr name="value">fa fa-fw fa-refresh</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.members.order.MemberOrderFacet" fqcn="org.apache.isis.core.metamodel.facets.members.order.annotprop.MemberOrderFacetAnnotation">
+                    <mml:attr name="name">datanucleusIdLong</mml:attr>
+                    <mml:attr name="originalName">datanucleusIdLong</mml:attr>
+                    <mml:attr name="sequence">800.1</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
+                    <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline">
+                    <mml:attr name="derived">true</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.properties.renderunchanged.UnchangingFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.UnchangingFacetOnPropertyFromLayoutProperties">
+                    <mml:attr name="value">false</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                </mml:facet>
+            </mml:facets>
+            <mml:returnType>void</mml:returnType>
+            <mml:params/>
+        </mml:act>
+        <mml:act id="updateName">
+            <mml:facets>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.associateWith.AssociatedWithFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.associateWith.AssociatedWithFacetForActionAnnotation">
+                    <mml:attr name="value">name</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="when">ALWAYS</mml:attr>
+                    <mml:attr name="where">NOWHERE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="when">ALWAYS</mml:attr>
+                    <mml:attr name="where">NOWHERE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacetForActionAnnotation">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="validating">true</mml:attr>
+                    <mml:attr name="value">org.apache.isis.applib.services.eventbus.ActionDomainEvent.Default</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventFromActionAnnotation">
+                    <mml:attr name="eventType">org.apache.isis.applib.services.eventbus.ActionDomainEvent.Default</mml:attr>
+                    <mml:attr name="intent.updateName">EXECUTE</mml:attr>
+                    <mml:attr name="methods">public domainapp.modules.simple.dom.impl.SimpleObject domainapp.modules.simple.dom.impl.SimpleObject.updateName(java.lang.String)</mml:attr>
+                    <mml:attr name="onType">domainapp.modules.simple.dom.impl.SimpleObject</mml:attr>
+                    <mml:attr name="returnType">domainapp.modules.simple.dom.impl.SimpleObject</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.bulk.BulkFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.bulk.BulkFacetForActionAnnotation">
+                    <mml:attr name="value">REGULAR_ONLY</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.command.CommandFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.command.CommandFacetForActionAnnotation">
+                    <mml:attr name="disabled">false</mml:attr>
+                    <mml:attr name="executeIn">FOREGROUND</mml:attr>
+                    <mml:attr name="persistence">PERSISTED</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacetFallback">
+                    <mml:attr name="position">BELOW</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.publish.PublishedActionFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.publishing.PublishedActionFacetForActionAnnotation">
+                    <mml:attr name="value">org.apache.isis.core.metamodel.facets.actions.publish.PublishedActionPayloadFactoryDefault</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.semantics.ActionSemanticsFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.semantics.ActionSemanticsFacetForActionAnnotation">
+                    <mml:attr name="value">IDEMPOTENT</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
+                    <mml:attr name="context">domainapp.modules.simple.dom.impl.SimpleObject#updateName()</mml:attr>
+                    <mml:attr name="originalText">Update Name</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.fallback.NamedFacetDefault</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.collections.collection.defaultview.DefaultViewFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.layout.DefaultViewFacetForCollectionLayoutAnnotation">
+                    <mml:attr name="value">hidden</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.members.order.MemberOrderFacet" fqcn="org.apache.isis.core.metamodel.facets.members.order.annotprop.MemberOrderFacetForActionAnnotation">
+                    <mml:attr name="name">name</mml:attr>
+                    <mml:attr name="originalName">name</mml:attr>
+                    <mml:attr name="sequence">1</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
+                    <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline">
+                    <mml:attr name="derived">true</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.properties.renderunchanged.UnchangingFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.UnchangingFacetOnPropertyFromLayoutProperties">
+                    <mml:attr name="value">false</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                </mml:facet>
+            </mml:facets>
+            <mml:returnType>domainapp.modules.simple.dom.impl.SimpleObject</mml:returnType>
+            <mml:params>
+                <mml:param xsi:type="mml:scalarParam" id="name" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+                    <mml:facets>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.actions.defaults.ActionDefaultsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.defaults.fromtype.ActionParameterDefaultFacetDerivedFromTypeFacets">
+                            <mml:attr name="defaultFacets">org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacetUsingDefaultsProvider</mml:attr>
+                            <mml:attr name="derived">true</mml:attr>
+                        </mml:facet>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.actions.validate.ActionParameterValidationFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.validate.method.ActionParameterValidationFacetViaMethod">
+                            <mml:attr name="intent.validate0UpdateName">CHECK_IF_VALID</mml:attr>
+                            <mml:attr name="methods">public org.apache.isis.applib.services.i18n.TranslatableString domainapp.modules.simple.dom.impl.SimpleObject.validate0UpdateName(java.lang.String)</mml:attr>
+                            <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.actions.validate.method.ActionParameterValidationFacetViaMethod</mml:attr>
+                            <mml:attr name="validating">true</mml:attr>
+                        </mml:facet>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.describedas.annotderived.DescribedAsFacetOnParameterDerivedFromType"/>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
+                            <mml:attr name="context">domainapp.modules.simple.dom.impl.SimpleObject#updateName(java.lang.String)</mml:attr>
+                            <mml:attr name="originalText">Name</mml:attr>
+                            <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.layout.NamedFacetForParameterLayoutAnnotation</mml:attr>
+                        </mml:facet>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.labelat.LabelAtFacet" fqcn="org.apache.isis.core.metamodel.facets.param.layout.LabelAtFacetForParameterLayoutAnnotation">
+                            <mml:attr name="label">DEFAULT</mml:attr>
+                            <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.layout.LabelAtFacetForParameterLayoutAnnotation</mml:attr>
+                        </mml:facet>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacet" fqcn="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacetDefault">
+                            <mml:attr name="inverted">false</mml:attr>
+                            <mml:attr name="semantics">REQUIRED</mml:attr>
+                            <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacetDefault</mml:attr>
+                            <mml:attr name="validating">true</mml:attr>
+                        </mml:facet>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.maxlen.MaxLengthFacet" fqcn="org.apache.isis.core.metamodel.facets.param.parameter.maxlen.MaxLengthFacetForParameterAnnotation">
+                            <mml:attr name="validating">true</mml:attr>
+                            <mml:attr name="value">40</mml:attr>
+                        </mml:facet>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.typicallen.TypicalLengthFacet" fqcn="org.apache.isis.core.metamodel.facets.param.typicallen.fromtype.TypicalLengthFacetOnParameterDerivedFromType">
+                            <mml:attr name="derived">true</mml:attr>
+                            <mml:attr name="typicalLengthFacet">org.apache.isis.core.metamodel.facets.object.value.TypicalLengthFacetUsingParser</mml:attr>
+                            <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.typicallen.fromtype.TypicalLengthFacetOnParameterDerivedFromType</mml:attr>
+                        </mml:facet>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.param.defaults.ActionParameterDefaultsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.defaults.methodnum.ActionParameterDefaultsFacetViaMethod">
+                            <mml:attr name="intent.default0UpdateName">DEFAULTS</mml:attr>
+                            <mml:attr name="methods">public java.lang.String domainapp.modules.simple.dom.impl.SimpleObject.default0UpdateName()</mml:attr>
+                        </mml:facet>
+                    </mml:facets>
+                    <mml:type>java.lang.String</mml:type>
+                </mml:param>
+            </mml:params>
+        </mml:act>
+    </mml:actions>
+</mml:domainClassDto>
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_domainapp.modules.simple.dom.impl.SimpleObjects.approved.xml b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_domainapp.modules.simple.dom.impl.SimpleObjects.approved.xml
new file mode 100644
index 0000000..605f7f2
--- /dev/null
+++ b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_domainapp.modules.simple.dom.impl.SimpleObjects.approved.xml
@@ -0,0 +1,330 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<mml:domainClassDto id="domainapp.modules.simple.dom.impl.SimpleObjects" service="true" xmlns:mml="http://isis.apache.org/schema/metamodel">
+    <mml:facets>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
+            <mml:attr name="context">domainapp.modules.simple.dom.impl.SimpleObjects</mml:attr>
+            <mml:attr name="originalText">Simple Objects</mml:attr>
+            <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.object.domainservicelayout.NamedFacetForDomainServiceLayoutAnnotation</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
+            <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.domainservice.DomainServiceFacet" fqcn="org.apache.isis.core.metamodel.facets.object.domainservice.annotation.DomainServiceFacetAnnotation">
+            <mml:attr name="natureOfService">VIEW_MENU_ONLY</mml:attr>
+            <mml:attr name="repositoryFor">domainapp.modules.simple.dom.impl.SimpleObject</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.domainservicelayout.DomainServiceLayoutFacet" fqcn="org.apache.isis.core.metamodel.facets.object.domainservicelayout.annotation.DomainServiceLayoutFacetAnnotation">
+            <mml:attr name="menuBar">PRIMARY</mml:attr>
+            <mml:attr name="menuOrder">10</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.grid.GridFacet" fqcn="org.apache.isis.core.metamodel.facets.object.grid.GridFacetDefault"/>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.icon.IconFacet" fqcn="org.apache.isis.core.metamodel.facets.object.domainservice.annotation.IconFacetDerivedFromDomainServiceAnnotation">
+            <mml:attr name="repositoryFor">domainapp.modules.simple.dom.impl.SimpleObject</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.membergroups.MemberGroupLayoutFacet" fqcn="org.apache.isis.core.metamodel.facets.object.membergroups.annotprop.MemberGroupLayoutFacetFallback">
+            <mml:attr name="columns">[4,0,0,8]</mml:attr>
+            <mml:attr name="left">General</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.notpersistable.NotPersistableFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.NotPersistableFacetNull">
+            <mml:attr name="disabling">true</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.objectspecid.ObjectSpecIdFacet" fqcn="org.apache.isis.core.metamodel.facets.object.objectspecid.classname.ObjectSpecIdFacetDerivedFromDomainServiceAnnotationElseGetId">
+            <mml:attr name="value">simple.SimpleObjectMenu</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.objectvalidprops.ObjectValidPropertiesFacet" fqcn="org.apache.isis.core.metamodel.facets.object.objectvalidprops.impl.ObjectValidPropertiesFacetImpl">
+            <mml:attr name="validating">true</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.paged.PagedFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.PagedFacetFromConfiguration">
+            <mml:attr name="derived">true</mml:attr>
+            <mml:attr name="value">25</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.metamodel.facets.object.plural.PluralFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.PluralFacetTranslated">
+            <mml:attr name="context">domainapp.modules.simple.dom.impl.SimpleObjects</mml:attr>
+            <mml:attr name="derived">true</mml:attr>
+            <mml:attr name="originalText">Simple Objects</mml:attr>
+        </mml:facet>
+        <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
+            <mml:attr name="disabling">true</mml:attr>
+            <mml:attr name="hiding">true</mml:attr>
+        </mml:facet>
+    </mml:facets>
+    <mml:actions>
+        <mml:act id="create">
+            <mml:facets>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="when">ALWAYS</mml:attr>
+                    <mml:attr name="where">NOWHERE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="when">ALWAYS</mml:attr>
+                    <mml:attr name="where">NOWHERE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacetForActionAnnotation">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="validating">true</mml:attr>
+                    <mml:attr name="value">domainapp.modules.simple.dom.impl.SimpleObjects.CreateDomainEvent</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventFromActionAnnotation">
+                    <mml:attr name="eventType">domainapp.modules.simple.dom.impl.SimpleObjects.CreateDomainEvent</mml:attr>
+                    <mml:attr name="intent.create">EXECUTE</mml:attr>
+                    <mml:attr name="methods">public domainapp.modules.simple.dom.impl.SimpleObject domainapp.modules.simple.dom.impl.SimpleObjects.create(java.lang.String)</mml:attr>
+                    <mml:attr name="onType">domainapp.modules.simple.dom.impl.SimpleObjects</mml:attr>
+                    <mml:attr name="returnType">domainapp.modules.simple.dom.impl.SimpleObject</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.bulk.BulkFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.bulk.BulkFacetForActionAnnotation">
+                    <mml:attr name="value">REGULAR_ONLY</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.notcontributed.NotContributedFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.notcontributed.derived.NotContributedFacetDerivedFromDomainServiceFacet">
+                    <mml:attr name="as">EITHER</mml:attr>
+                    <mml:attr name="derived">true</mml:attr>
+                    <mml:attr name="natureOfService">VIEW_MENU_ONLY</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacetFallback">
+                    <mml:attr name="position">BELOW</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.semantics.ActionSemanticsFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.semantics.ActionSemanticsFacetForActionAnnotation">
+                    <mml:attr name="value">NON_IDEMPOTENT</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
+                    <mml:attr name="context">domainapp.modules.simple.dom.impl.SimpleObjects#create()</mml:attr>
+                    <mml:attr name="originalText">Create</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.fallback.NamedFacetDefault</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.collections.collection.defaultview.DefaultViewFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.layout.DefaultViewFacetForCollectionLayoutAnnotation">
+                    <mml:attr name="value">hidden</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.members.order.MemberOrderFacet" fqcn="org.apache.isis.core.metamodel.facets.members.order.annotprop.MemberOrderFacetAnnotation">
+                    <mml:attr name="sequence">3</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
+                    <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline">
+                    <mml:attr name="derived">true</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.properties.renderunchanged.UnchangingFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.UnchangingFacetOnPropertyFromLayoutProperties">
+                    <mml:attr name="value">false</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                </mml:facet>
+            </mml:facets>
+            <mml:returnType>domainapp.modules.simple.dom.impl.SimpleObject</mml:returnType>
+            <mml:params>
+                <mml:param xsi:type="mml:scalarParam" id="name" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+                    <mml:facets>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.actions.defaults.ActionDefaultsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.defaults.fromtype.ActionParameterDefaultFacetDerivedFromTypeFacets">
+                            <mml:attr name="defaultFacets">org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacetUsingDefaultsProvider</mml:attr>
+                            <mml:attr name="derived">true</mml:attr>
+                        </mml:facet>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.describedas.annotderived.DescribedAsFacetOnParameterDerivedFromType"/>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
+                            <mml:attr name="context">domainapp.modules.simple.dom.impl.SimpleObjects#create(java.lang.String)</mml:attr>
+                            <mml:attr name="originalText">Name</mml:attr>
+                            <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.layout.NamedFacetForParameterLayoutAnnotation</mml:attr>
+                        </mml:facet>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.labelat.LabelAtFacet" fqcn="org.apache.isis.core.metamodel.facets.param.layout.LabelAtFacetForParameterLayoutAnnotation">
+                            <mml:attr name="label">DEFAULT</mml:attr>
+                            <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.layout.LabelAtFacetForParameterLayoutAnnotation</mml:attr>
+                        </mml:facet>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacet" fqcn="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacetDefault">
+                            <mml:attr name="inverted">false</mml:attr>
+                            <mml:attr name="semantics">REQUIRED</mml:attr>
+                            <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacetDefault</mml:attr>
+                            <mml:attr name="validating">true</mml:attr>
+                        </mml:facet>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.typicallen.TypicalLengthFacet" fqcn="org.apache.isis.core.metamodel.facets.param.typicallen.fromtype.TypicalLengthFacetOnParameterDerivedFromType">
+                            <mml:attr name="derived">true</mml:attr>
+                            <mml:attr name="typicalLengthFacet">org.apache.isis.core.metamodel.facets.object.value.TypicalLengthFacetUsingParser</mml:attr>
+                            <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.typicallen.fromtype.TypicalLengthFacetOnParameterDerivedFromType</mml:attr>
+                        </mml:facet>
+                    </mml:facets>
+                    <mml:type>java.lang.String</mml:type>
+                </mml:param>
+            </mml:params>
+        </mml:act>
+        <mml:act id="findByName">
+            <mml:facets>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actcoll.typeof.TypeOfFacet" fqcn="org.apache.isis.core.metamodel.facets.actcoll.typeof.TypeOfFacetInferredFromGenerics">
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.actcoll.typeof.TypeOfFacetInferredFromGenerics</mml:attr>
+                    <mml:attr name="value">domainapp.modules.simple.dom.impl.SimpleObject</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="when">ALWAYS</mml:attr>
+                    <mml:attr name="where">NOWHERE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="when">ALWAYS</mml:attr>
+                    <mml:attr name="where">NOWHERE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacetForActionAnnotation">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="validating">true</mml:attr>
+                    <mml:attr name="value">org.apache.isis.applib.services.eventbus.ActionDomainEvent.Default</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventFromActionAnnotation">
+                    <mml:attr name="eventType">org.apache.isis.applib.services.eventbus.ActionDomainEvent.Default</mml:attr>
+                    <mml:attr name="intent.findByName">EXECUTE</mml:attr>
+                    <mml:attr name="methods">public java.util.List&lt;domainapp.modules.simple.dom.impl.SimpleObject&gt; domainapp.modules.simple.dom.impl.SimpleObjects.findByName(java.lang.String)</mml:attr>
+                    <mml:attr name="onType">domainapp.modules.simple.dom.impl.SimpleObjects</mml:attr>
+                    <mml:attr name="returnType">java.util.List</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.bulk.BulkFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.bulk.BulkFacetForActionAnnotation">
+                    <mml:attr name="value">REGULAR_ONLY</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.notcontributed.NotContributedFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.notcontributed.derived.NotContributedFacetDerivedFromDomainServiceFacet">
+                    <mml:attr name="as">EITHER</mml:attr>
+                    <mml:attr name="derived">true</mml:attr>
+                    <mml:attr name="natureOfService">VIEW_MENU_ONLY</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.ActionPositionFacetForActionLayoutAnnotation">
+                    <mml:attr name="position">BELOW</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.semantics.ActionSemanticsFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.semantics.ActionSemanticsFacetForActionAnnotation">
+                    <mml:attr name="value">SAFE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
+                    <mml:attr name="context">domainapp.modules.simple.dom.impl.SimpleObjects#findByName()</mml:attr>
+                    <mml:attr name="originalText">Find By Name</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.fallback.NamedFacetDefault</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.collections.collection.defaultview.DefaultViewFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.layout.DefaultViewFacetForCollectionLayoutAnnotation">
+                    <mml:attr name="value">hidden</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.members.order.MemberOrderFacet" fqcn="org.apache.isis.core.metamodel.facets.members.order.annotprop.MemberOrderFacetAnnotation">
+                    <mml:attr name="sequence">2</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.BookmarkPolicyFacetForActionLayoutAnnotation">
+                    <mml:attr name="bookmarkPolicy">AS_ROOT</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline">
+                    <mml:attr name="derived">true</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.properties.renderunchanged.UnchangingFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.UnchangingFacetOnPropertyFromLayoutProperties">
+                    <mml:attr name="value">false</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                </mml:facet>
+            </mml:facets>
+            <mml:returnType>java.util.List</mml:returnType>
+            <mml:params>
+                <mml:param xsi:type="mml:scalarParam" id="name" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+                    <mml:facets>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.actions.defaults.ActionDefaultsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.defaults.fromtype.ActionParameterDefaultFacetDerivedFromTypeFacets">
+                            <mml:attr name="defaultFacets">org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacetUsingDefaultsProvider</mml:attr>
+                            <mml:attr name="derived">true</mml:attr>
+                        </mml:facet>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.describedas.annotderived.DescribedAsFacetOnParameterDerivedFromType"/>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
+                            <mml:attr name="context">domainapp.modules.simple.dom.impl.SimpleObjects#findByName(java.lang.String)</mml:attr>
+                            <mml:attr name="originalText">Name</mml:attr>
+                            <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.layout.NamedFacetForParameterLayoutAnnotation</mml:attr>
+                        </mml:facet>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.labelat.LabelAtFacet" fqcn="org.apache.isis.core.metamodel.facets.param.layout.LabelAtFacetForParameterLayoutAnnotation">
+                            <mml:attr name="label">DEFAULT</mml:attr>
+                            <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.layout.LabelAtFacetForParameterLayoutAnnotation</mml:attr>
+                        </mml:facet>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacet" fqcn="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacetDefault">
+                            <mml:attr name="inverted">false</mml:attr>
+                            <mml:attr name="semantics">REQUIRED</mml:attr>
+                            <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacetDefault</mml:attr>
+                            <mml:attr name="validating">true</mml:attr>
+                        </mml:facet>
+                        <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.typicallen.TypicalLengthFacet" fqcn="org.apache.isis.core.metamodel.facets.param.typicallen.fromtype.TypicalLengthFacetOnParameterDerivedFromType">
+                            <mml:attr name="derived">true</mml:attr>
+                            <mml:attr name="typicalLengthFacet">org.apache.isis.core.metamodel.facets.object.value.TypicalLengthFacetUsingParser</mml:attr>
+                            <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.typicallen.fromtype.TypicalLengthFacetOnParameterDerivedFromType</mml:attr>
+                        </mml:facet>
+                    </mml:facets>
+                    <mml:type>java.lang.String</mml:type>
+                </mml:param>
+            </mml:params>
+        </mml:act>
+        <mml:act id="listAll">
+            <mml:facets>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actcoll.typeof.TypeOfFacet" fqcn="org.apache.isis.core.metamodel.facets.actcoll.typeof.TypeOfFacetInferredFromGenerics">
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.actcoll.typeof.TypeOfFacetInferredFromGenerics</mml:attr>
+                    <mml:attr name="value">domainapp.modules.simple.dom.impl.SimpleObject</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="when">ALWAYS</mml:attr>
+                    <mml:attr name="where">NOWHERE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="when">ALWAYS</mml:attr>
+                    <mml:attr name="where">NOWHERE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacetForActionAnnotation">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                    <mml:attr name="validating">true</mml:attr>
+                    <mml:attr name="value">org.apache.isis.applib.services.eventbus.ActionDomainEvent.Default</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventFromActionAnnotation">
+                    <mml:attr name="eventType">org.apache.isis.applib.services.eventbus.ActionDomainEvent.Default</mml:attr>
+                    <mml:attr name="intent.listAll">EXECUTE</mml:attr>
+                    <mml:attr name="methods">public java.util.List&lt;domainapp.modules.simple.dom.impl.SimpleObject&gt; domainapp.modules.simple.dom.impl.SimpleObjects.listAll()</mml:attr>
+                    <mml:attr name="onType">domainapp.modules.simple.dom.impl.SimpleObjects</mml:attr>
+                    <mml:attr name="returnType">java.util.List</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.bulk.BulkFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.bulk.BulkFacetForActionAnnotation">
+                    <mml:attr name="value">REGULAR_ONLY</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.notcontributed.NotContributedFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.notcontributed.derived.NotContributedFacetDerivedFromDomainServiceFacet">
+                    <mml:attr name="as">EITHER</mml:attr>
+                    <mml:attr name="derived">true</mml:attr>
+                    <mml:attr name="natureOfService">VIEW_MENU_ONLY</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.ActionPositionFacetForActionLayoutAnnotation">
+                    <mml:attr name="position">BELOW</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.actions.semantics.ActionSemanticsFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.semantics.ActionSemanticsFacetForActionAnnotation">
+                    <mml:attr name="value">SAFE</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
+                    <mml:attr name="context">domainapp.modules.simple.dom.impl.SimpleObjects#listAll()</mml:attr>
+                    <mml:attr name="originalText">List All</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.fallback.NamedFacetDefault</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.collections.collection.defaultview.DefaultViewFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.layout.DefaultViewFacetForCollectionLayoutAnnotation">
+                    <mml:attr name="value">hidden</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.members.order.MemberOrderFacet" fqcn="org.apache.isis.core.metamodel.facets.members.order.annotprop.MemberOrderFacetAnnotation">
+                    <mml:attr name="sequence">1</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.BookmarkPolicyFacetForActionLayoutAnnotation">
+                    <mml:attr name="bookmarkPolicy">AS_ROOT</mml:attr>
+                    <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline">
+                    <mml:attr name="derived">true</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.metamodel.facets.properties.renderunchanged.UnchangingFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.UnchangingFacetOnPropertyFromLayoutProperties">
+                    <mml:attr name="value">false</mml:attr>
+                </mml:facet>
+                <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
+                    <mml:attr name="disabling">true</mml:attr>
+                    <mml:attr name="hiding">true</mml:attr>
+                </mml:facet>
+            </mml:facets>
+            <mml:returnType>java.util.List</mml:returnType>
+            <mml:params/>
+        </mml:act>
+    </mml:actions>
+</mml:domainClassDto>
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_java.lang.Long.approved.xml b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_java.lang.Long.approved.xml
new file mode 100644
index 0000000..7cc9e79
--- /dev/null
+++ b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_java.lang.Long.approved.xml
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<mml:domainClassDto id="java.lang.Long" xmlns:mml="http://isis.apache.org/schema/metamodel"/>
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_java.lang.Object.approved.xml b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_java.lang.Object.approved.xml
new file mode 100644
index 0000000..f3bbfa8
--- /dev/null
+++ b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_java.lang.Object.approved.xml
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<mml:domainClassDto id="java.lang.Object" xmlns:mml="http://isis.apache.org/schema/metamodel"/>
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_java.lang.String.approved.xml b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_java.lang.String.approved.xml
new file mode 100644
index 0000000..3941367
--- /dev/null
+++ b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_java.lang.String.approved.xml
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<mml:domainClassDto id="java.lang.String" xmlns:mml="http://isis.apache.org/schema/metamodel"/>
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_java.net.URL.approved.xml b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_java.net.URL.approved.xml
new file mode 100644
index 0000000..ff3c71d
--- /dev/null
+++ b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_java.net.URL.approved.xml
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<mml:domainClassDto id="java.net.URL" xmlns:mml="http://isis.apache.org/schema/metamodel"/>
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_java.sql.Timestamp.approved.xml b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_java.sql.Timestamp.approved.xml
new file mode 100644
index 0000000..a8df411
--- /dev/null
+++ b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_java.sql.Timestamp.approved.xml
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<mml:domainClassDto id="java.sql.Timestamp" xmlns:mml="http://isis.apache.org/schema/metamodel"/>
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_java.util.List.approved.xml b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_java.util.List.approved.xml
new file mode 100644
index 0000000..3db6634
--- /dev/null
+++ b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_java.util.List.approved.xml
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<mml:domainClassDto id="java.util.List" xmlns:mml="http://isis.apache.org/schema/metamodel"/>
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_org.apache.isis.applib.services.layout.LayoutService$Style.approved.xml b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_org.apache.isis.applib.services.layout.LayoutService$Style.approved.xml
new file mode 100644
index 0000000..af2c231
--- /dev/null
+++ b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_org.apache.isis.applib.services.layout.LayoutService$Style.approved.xml
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<mml:domainClassDto id="org.apache.isis.applib.services.layout.LayoutService$Style" xmlns:mml="http://isis.apache.org/schema/metamodel"/>
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_org.apache.isis.applib.value.Clob.approved.xml b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_org.apache.isis.applib.value.Clob.approved.xml
new file mode 100644
index 0000000..9a6da45
--- /dev/null
+++ b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_org.apache.isis.applib.value.Clob.approved.xml
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<mml:domainClassDto id="org.apache.isis.applib.value.Clob" xmlns:mml="http://isis.apache.org/schema/metamodel"/>
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_void.approved.xml b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_void.approved.xml
new file mode 100644
index 0000000..8e369fe
--- /dev/null
+++ b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_void.approved.xml
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<mml:domainClassDto id="void" xmlns:mml="http://isis.apache.org/schema/metamodel"/>
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/tests/smoke/Smoke_IntegTest.java b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/smoke/Smoke_IntegTest.java
similarity index 97%
rename from example/application/simpleapp/application/src/test/java/domainapp/application/integtests/tests/smoke/Smoke_IntegTest.java
rename to example/application/simpleapp/application/src/test/java/domainapp/application/integtests/smoke/Smoke_IntegTest.java
index 50e4373..326ea11 100644
--- a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/tests/smoke/Smoke_IntegTest.java
+++ b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/smoke/Smoke_IntegTest.java
@@ -16,7 +16,7 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package domainapp.application.integtests.tests.smoke;
+package domainapp.application.integtests.smoke;
 
 import java.util.List;
 
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/tests/mml/MetaModelService_IntegTest.exports.approved.xml b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/tests/mml/MetaModelService_IntegTest.exports.approved.xml
deleted file mode 100644
index df6d138..0000000
--- a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/tests/mml/MetaModelService_IntegTest.exports.approved.xml
+++ /dev/null
@@ -1,2745 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
-<mml:metamodelDto xmlns:mml="http://isis.apache.org/schema/metamodel">
-    <mml:domainClass id="domainapp.application.fixture.DomainAppFixtureScriptsSpecificationProvider" service="true">
-        <mml:facets>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.named.NamedFacetInferred">
-                <mml:attr name="escaped">true</mml:attr>
-                <mml:attr name="value">Domain App Fixture Scripts Specification Provider</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
-                <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.domainservice.DomainServiceFacet" fqcn="org.apache.isis.core.metamodel.facets.object.domainservice.annotation.DomainServiceFacetAnnotation">
-                <mml:attr name="natureOfService">DOMAIN</mml:attr>
-                <mml:attr name="repositoryFor">java.lang.Object</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.domainservicelayout.DomainServiceLayoutFacet" fqcn="org.apache.isis.core.metamodel.facets.object.domainservicelayout.annotation.DomainServiceLayoutFacetAnnotation">
-                <mml:attr name="menuBar">PRIMARY</mml:attr>
-                <mml:attr name="menuOrder">2147483547</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.grid.GridFacet" fqcn="org.apache.isis.core.metamodel.facets.object.grid.GridFacetDefault"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.icon.IconFacet" fqcn="org.apache.isis.core.metamodel.facets.object.domainservice.annotation.IconFacetDerivedFromDomainServiceAnnotation">
-                <mml:attr name="repositoryFor">java.lang.Object</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.membergroups.MemberGroupLayoutFacet" fqcn="org.apache.isis.core.metamodel.facets.object.membergroups.annotprop.MemberGroupLayoutFacetFallback">
-                <mml:attr name="columns">[4,0,0,8]</mml:attr>
-                <mml:attr name="left">General</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.notpersistable.NotPersistableFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.NotPersistableFacetNull">
-                <mml:attr name="disabling">true</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.objectspecid.ObjectSpecIdFacet" fqcn="org.apache.isis.core.metamodel.facets.object.objectspecid.classname.ObjectSpecIdFacetDerivedFromClassName">
-                <mml:attr name="derived">true</mml:attr>
-                <mml:attr name="value">domainapp.application.fixture.DomainAppFixtureScriptsSpecificationProvider</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.objectvalidprops.ObjectValidPropertiesFacet" fqcn="org.apache.isis.core.metamodel.facets.object.objectvalidprops.impl.ObjectValidPropertiesFacetImpl">
-                <mml:attr name="validating">true</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.paged.PagedFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.PagedFacetFromConfiguration">
-                <mml:attr name="derived">true</mml:attr>
-                <mml:attr name="value">25</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.plural.PluralFacet" fqcn="org.apache.isis.core.metamodel.facets.object.plural.inferred.PluralFacetInferred">
-                <mml:attr name="derived">true</mml:attr>
-                <mml:attr name="value">Domain App Fixture Scripts Specification Providers</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
-                <mml:attr name="disabling">true</mml:attr>
-                <mml:attr name="hiding">true</mml:attr>
-            </mml:facet>
-        </mml:facets>
-        <mml:actions/>
-    </mml:domainClass>
-    <mml:domainClass id="domainapp.application.services.homepage.HomePageService" service="true">
-        <mml:facets>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.named.NamedFacetInferred">
-                <mml:attr name="escaped">true</mml:attr>
-                <mml:attr name="value">Home Page Service</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
-                <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.domainservice.DomainServiceFacet" fqcn="org.apache.isis.core.metamodel.facets.object.domainservice.annotation.DomainServiceFacetAnnotation">
-                <mml:attr name="natureOfService">DOMAIN</mml:attr>
-                <mml:attr name="repositoryFor">java.lang.Object</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.domainservicelayout.DomainServiceLayoutFacet" fqcn="org.apache.isis.core.metamodel.facets.object.domainservicelayout.annotation.DomainServiceLayoutFacetAnnotation">
-                <mml:attr name="menuBar">PRIMARY</mml:attr>
-                <mml:attr name="menuOrder">2147483547</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.grid.GridFacet" fqcn="org.apache.isis.core.metamodel.facets.object.grid.GridFacetDefault"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.icon.IconFacet" fqcn="org.apache.isis.core.metamodel.facets.object.domainservice.annotation.IconFacetDerivedFromDomainServiceAnnotation">
-                <mml:attr name="repositoryFor">java.lang.Object</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.membergroups.MemberGroupLayoutFacet" fqcn="org.apache.isis.core.metamodel.facets.object.membergroups.annotprop.MemberGroupLayoutFacetFallback">
-                <mml:attr name="columns">[4,0,0,8]</mml:attr>
-                <mml:attr name="left">General</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.notpersistable.NotPersistableFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.NotPersistableFacetNull">
-                <mml:attr name="disabling">true</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.objectspecid.ObjectSpecIdFacet" fqcn="org.apache.isis.core.metamodel.facets.object.objectspecid.classname.ObjectSpecIdFacetDerivedFromDomainServiceAnnotationElseGetId">
-                <mml:attr name="value">homepage.HomePageService</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.objectvalidprops.ObjectValidPropertiesFacet" fqcn="org.apache.isis.core.metamodel.facets.object.objectvalidprops.impl.ObjectValidPropertiesFacetImpl">
-                <mml:attr name="validating">true</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.paged.PagedFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.PagedFacetFromConfiguration">
-                <mml:attr name="derived">true</mml:attr>
-                <mml:attr name="value">25</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.plural.PluralFacet" fqcn="org.apache.isis.core.metamodel.facets.object.plural.inferred.PluralFacetInferred">
-                <mml:attr name="derived">true</mml:attr>
-                <mml:attr name="value">Home Page Services</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
-                <mml:attr name="disabling">true</mml:attr>
-                <mml:attr name="hiding">true</mml:attr>
-            </mml:facet>
-        </mml:facets>
-        <mml:actions>
-            <mml:act id="homePage">
-                <mml:facets>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="when">ALWAYS</mml:attr>
-                        <mml:attr name="where">NOWHERE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="when">ALWAYS</mml:attr>
-                        <mml:attr name="where">NOWHERE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacetForActionAnnotation">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="validating">true</mml:attr>
-                        <mml:attr name="value">org.apache.isis.applib.services.eventbus.ActionDomainEvent.Default</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventFromActionAnnotation">
-                        <mml:attr name="eventType">org.apache.isis.applib.services.eventbus.ActionDomainEvent.Default</mml:attr>
-                        <mml:attr name="intent.homePage">EXECUTE</mml:attr>
-                        <mml:attr name="methods">public domainapp.application.services.homepage.HomePageViewModel domainapp.application.services.homepage.HomePageService.homePage()</mml:attr>
-                        <mml:attr name="onType">domainapp.application.services.homepage.HomePageService</mml:attr>
-                        <mml:attr name="returnType">domainapp.application.services.homepage.HomePageViewModel</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.bulk.BulkFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.bulk.BulkFacetForActionAnnotation">
-                        <mml:attr name="value">REGULAR_ONLY</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.homepage.HomePageFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.homepage.annotation.HomePageFacetAnnotation"/>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.notcontributed.NotContributedFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.notcontributed.derived.NotContributedFacetDerivedFromDomainServiceFacet">
-                        <mml:attr name="as">EITHER</mml:attr>
-                        <mml:attr name="derived">true</mml:attr>
-                        <mml:attr name="natureOfService">DOMAIN</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.notinservicemenu.NotInServiceMenuFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.notinservicemenu.derived.NotInServiceMenuFacetDerivedFromDomainServiceFacet">
-                        <mml:attr name="derived">true</mml:attr>
-                        <mml:attr name="natureOfService">DOMAIN</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacetFallback">
-                        <mml:attr name="position">BELOW</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.semantics.ActionSemanticsFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.semantics.ActionSemanticsFacetForActionAnnotation">
-                        <mml:attr name="value">SAFE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
-                        <mml:attr name="context">domainapp.application.services.homepage.HomePageService#homePage()</mml:attr>
-                        <mml:attr name="originalText">Home Page</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.fallback.NamedFacetDefault</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.collections.collection.defaultview.DefaultViewFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.layout.DefaultViewFacetForCollectionLayoutAnnotation">
-                        <mml:attr name="value">hidden</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
-                        <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline">
-                        <mml:attr name="derived">true</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.renderunchanged.UnchangingFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.UnchangingFacetOnPropertyFromLayoutProperties">
-                        <mml:attr name="value">false</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                    </mml:facet>
-                </mml:facets>
-                <mml:returnType>domainapp.application.services.homepage.HomePageViewModel</mml:returnType>
-                <mml:params/>
-            </mml:act>
-        </mml:actions>
-    </mml:domainClass>
-    <mml:domainClass id="domainapp.application.services.homepage.HomePageViewModel">
-        <mml:facets>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.named.NamedFacetInferred">
-                <mml:attr name="escaped">true</mml:attr>
-                <mml:attr name="value">Home Page View Model</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
-                <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.callbacks.CreatedLifecycleEventFacet" fqcn="org.apache.isis.core.metamodel.facets.object.callbacks.CreatedLifecycleEventFacetForDomainObjectAnnotation">
-                <mml:attr name="value">org.apache.isis.applib.services.eventbus.ObjectCreatedEvent.Default</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.callbacks.LoadedLifecycleEventFacet" fqcn="org.apache.isis.core.metamodel.facets.object.callbacks.LoadedLifecycleEventFacetForDomainObjectAnnotation">
-                <mml:attr name="value">org.apache.isis.applib.services.eventbus.ObjectLoadedEvent.Default</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.callbacks.PersistedLifecycleEventFacet" fqcn="org.apache.isis.core.metamodel.facets.object.callbacks.PersistedLifecycleEventFacetForDomainObjectAnnotation">
-                <mml:attr name="value">org.apache.isis.applib.services.eventbus.ObjectPersistedEvent.Default</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.callbacks.PersistingLifecycleEventFacet" fqcn="org.apache.isis.core.metamodel.facets.object.callbacks.PersistingLifecycleEventFacetForDomainObjectAnnotation">
-                <mml:attr name="value">org.apache.isis.applib.services.eventbus.ObjectPersistingEvent.Default</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.callbacks.RemovingLifecycleEventFacet" fqcn="org.apache.isis.core.metamodel.facets.object.callbacks.RemovingLifecycleEventFacetForDomainObjectAnnotation">
-                <mml:attr name="value">org.apache.isis.applib.services.eventbus.ObjectRemovingEvent.Default</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.callbacks.UpdatedLifecycleEventFacet" fqcn="org.apache.isis.core.metamodel.facets.object.callbacks.UpdatedLifecycleEventFacetForDomainObjectAnnotation">
-                <mml:attr name="value">org.apache.isis.applib.services.eventbus.ObjectUpdatedEvent.Default</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.callbacks.UpdatingLifecycleEventFacet" fqcn="org.apache.isis.core.metamodel.facets.object.callbacks.UpdatingLifecycleEventFacetForDomainObjectAnnotation">
-                <mml:attr name="value">org.apache.isis.applib.services.eventbus.ObjectUpdatingEvent.Default</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.grid.GridFacet" fqcn="org.apache.isis.core.metamodel.facets.object.grid.GridFacetDefault"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.membergroups.MemberGroupLayoutFacet" fqcn="org.apache.isis.core.metamodel.facets.object.membergroups.annotprop.MemberGroupLayoutFacetFallback">
-                <mml:attr name="columns">[4,0,0,8]</mml:attr>
-                <mml:attr name="left">General</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.notpersistable.NotPersistableFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.NotPersistableFacetNull">
-                <mml:attr name="disabling">true</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.objectspecid.ObjectSpecIdFacet" fqcn="org.apache.isis.core.metamodel.facets.object.domainobject.objectspecid.ObjectSpecIdFacetForDomainObjectAnnotation">
-                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.object.objectspecid.classname.ObjectSpecIdFacetDerivedFromClassName</mml:attr>
-                <mml:attr name="value">domainapp.application.services.homepage.HomePageViewModel</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.objectvalidprops.ObjectValidPropertiesFacet" fqcn="org.apache.isis.core.metamodel.facets.object.objectvalidprops.impl.ObjectValidPropertiesFacetImpl">
-                <mml:attr name="validating">true</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.paged.PagedFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.PagedFacetFromConfiguration">
-                <mml:attr name="derived">true</mml:attr>
-                <mml:attr name="value">25</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.plural.PluralFacet" fqcn="org.apache.isis.core.metamodel.facets.object.plural.inferred.PluralFacetInferred">
-                <mml:attr name="derived">true</mml:attr>
-                <mml:attr name="value">Home Page View Models</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.title.TitleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.title.methods.TitleFacetViaTitleMethod">
-                <mml:attr name="intent.title">UI_HINT</mml:attr>
-                <mml:attr name="methods">public org.apache.isis.applib.services.i18n.TranslatableString domainapp.application.services.homepage.HomePageViewModel.title()</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.viewmodel.ViewModelFacet" fqcn="org.apache.isis.core.metamodel.facets.object.domainobject.recreatable.RecreatableObjectFacetForDomainObjectAnnotation">
-                <mml:attr name="recreationMechanism">INITIALIZES</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
-                <mml:attr name="disabling">true</mml:attr>
-                <mml:attr name="hiding">true</mml:attr>
-            </mml:facet>
-        </mml:facets>
-        <mml:properties/>
-        <mml:collections>
-            <mml:coll id="objects">
-                <mml:facets>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actcoll.typeof.TypeOfFacet" fqcn="org.apache.isis.core.metamodel.facets.actcoll.typeof.TypeOfFacetInferredFromGenerics">
-                        <mml:attr name="value">domainapp.modules.simple.dom.impl.SimpleObject</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
-                        <mml:attr name="context">domainapp.application.services.homepage.HomePageViewModel#objects</mml:attr>
-                        <mml:attr name="originalText">Objects</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.fallback.NamedFacetDefault</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.collections.collection.defaultview.DefaultViewFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.layout.DefaultViewFacetForCollectionLayoutAnnotation">
-                        <mml:attr name="value">hidden</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.collections.collection.modify.CollectionDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.collection.modify.CollectionDomainEventFacetDefault">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.collections.collection.modify.CollectionDomainEventFacetDefault</mml:attr>
-                        <mml:attr name="validating">true</mml:attr>
-                        <mml:attr name="value">org.apache.isis.applib.services.eventbus.CollectionDomainEvent.Default</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.collections.modify.CollectionAddToFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.collection.modify.CollectionAddToFacetForDomainEventFromDefault">
-                        <mml:attr name="collectionAddToFacet">org.apache.isis.core.metamodel.facets.collections.modify.CollectionAddToFacetViaAccessor</mml:attr>
-                        <mml:attr name="getterFacet">org.apache.isis.core.metamodel.facets.collections.accessor.CollectionAccessorFacetViaAccessor</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.collections.modify.CollectionAddToFacetViaAccessor</mml:attr>
-                        <mml:attr name="value">org.apache.isis.applib.services.eventbus.CollectionDomainEvent.Default</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.collections.modify.CollectionClearFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.clear.CollectionClearFacetViaAccessor">
-                        <mml:attr name="intent.getObjects">ACCESSOR</mml:attr>
-                        <mml:attr name="methods">public java.util.List&lt;domainapp.modules.simple.dom.impl.SimpleObject&gt; domainapp.application.services.homepage.HomePageViewModel.getObjects()</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.collections.modify.CollectionRemoveFromFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.collection.modify.CollectionRemoveFromFacetForDomainEventFromDefault">
-                        <mml:attr name="collectionRemoveFromFacet">org.apache.isis.core.metamodel.facets.collections.modify.CollectionRemoveFromFacetViaAccessor</mml:attr>
-                        <mml:attr name="getterFacet">org.apache.isis.core.metamodel.facets.collections.accessor.CollectionAccessorFacetViaAccessor</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.collections.modify.CollectionRemoveFromFacetViaAccessor</mml:attr>
-                        <mml:attr name="value">org.apache.isis.applib.services.eventbus.CollectionDomainEvent.Default</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.collparam.semantics.CollectionSemanticsFacet" fqcn="org.apache.isis.core.metamodel.facets.collparam.semantics.CollectionSemanticsFacetDefault">
-                        <mml:attr name="value">LIST</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.paged.PagedFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.PagedFacetFromConfiguration">
-                        <mml:attr name="derived">true</mml:attr>
-                        <mml:attr name="value">12</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.recreatable.DisabledFacetOnCollectionDerivedFromRecreatableObject" fqcn="org.apache.isis.core.metamodel.facets.object.recreatable.DisabledFacetOnCollectionDerivedFromRecreatableObject">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="inverted">false</mml:attr>
-                        <mml:attr name="semantics">DISABLED</mml:attr>
-                        <mml:attr name="when">ALWAYS</mml:attr>
-                        <mml:attr name="where">ANYWHERE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.propcoll.accessor.PropertyOrCollectionAccessorFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.accessor.CollectionAccessorFacetViaAccessor">
-                        <mml:attr name="intent.getObjects">ACCESSOR</mml:attr>
-                        <mml:attr name="methods">public java.util.List&lt;domainapp.modules.simple.dom.impl.SimpleObject&gt; domainapp.application.services.homepage.HomePageViewModel.getObjects()</mml:attr>
-                        <mml:attr name="onType">domainapp.application.services.homepage.HomePageViewModel</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                    </mml:facet>
-                </mml:facets>
-                <mml:type>domainapp.modules.simple.dom.impl.SimpleObject</mml:type>
-            </mml:coll>
-        </mml:collections>
-        <mml:actions>
-            <mml:act id="downloadLayoutXml">
-                <mml:facets>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="when">ALWAYS</mml:attr>
-                        <mml:attr name="where">NOWHERE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacetForActionAnnotation">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="validating">true</mml:attr>
-                        <mml:attr name="value">org.apache.isis.applib.services.layout.Object_downloadLayoutXml.ActionDomainEvent</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventFromActionAnnotation">
-                        <mml:attr name="eventType">org.apache.isis.applib.services.layout.Object_downloadLayoutXml.ActionDomainEvent</mml:attr>
-                        <mml:attr name="intent.act">EXECUTE</mml:attr>
-                        <mml:attr name="methods">public java.lang.Object org.apache.isis.applib.services.layout.Object_downloadLayoutXml.act(java.lang.String,org.apache.isis.applib.services.layout.LayoutService$Style)</mml:attr>
-                        <mml:attr name="onType">org.apache.isis.applib.services.layout.Object_downloadLayoutXml</mml:attr>
-                        <mml:attr name="returnType">java.lang.Object</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.bulk.BulkFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.bulk.BulkFacetForActionAnnotation">
-                        <mml:attr name="value">REGULAR_ONLY</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.notcontributed.NotContributedFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.NotContributedFacetForActionLayoutAnnotation">
-                        <mml:attr name="as">ASSOCIATION</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.actions.notcontributed.derived.NotContributedFacetDerivedFromMixinFacet</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.ActionPositionFacetForActionLayoutAnnotation">
-                        <mml:attr name="position">PANEL_DROPDOWN</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.prototype.PrototypeFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.prototype.PrototypeFacetForActionAnnotation">
-                        <mml:attr name="deploymentCategory">PRODUCTION</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.semantics.ActionSemanticsFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.semantics.ActionSemanticsFacetForActionAnnotation">
-                        <mml:attr name="value">SAFE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
-                        <mml:attr name="context">domainapp.application.services.homepage.HomePageViewModel#downloadLayoutXml()</mml:attr>
-                        <mml:attr name="originalText">Download Layout Xml</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.all.named.NamedFacetInferred</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.collections.collection.defaultview.DefaultViewFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.layout.DefaultViewFacetForCollectionLayoutAnnotation">
-                        <mml:attr name="value">hidden</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.members.cssclassfa.CssClassFaFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.CssClassFaFacetForActionLayoutAnnotation">
-                        <mml:attr name="position">LEFT</mml:attr>
-                        <mml:attr name="value">fa fa-fw fa-download</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.members.order.MemberOrderFacet" fqcn="org.apache.isis.core.metamodel.facets.members.order.annotprop.MemberOrderFacetAnnotation">
-                        <mml:attr name="name">datanucleusIdLong</mml:attr>
-                        <mml:attr name="originalName">datanucleusIdLong</mml:attr>
-                        <mml:attr name="sequence">700.1</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
-                        <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline">
-                        <mml:attr name="derived">true</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.renderunchanged.UnchangingFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.UnchangingFacetOnPropertyFromLayoutProperties">
-                        <mml:attr name="value">false</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                    </mml:facet>
-                </mml:facets>
-                <mml:returnType>java.lang.Object</mml:returnType>
-                <mml:params>
-                    <mml:param xsi:type="mml:scalarParam" id="fileName" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-                        <mml:facets>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.actions.defaults.ActionDefaultsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.defaults.fromtype.ActionParameterDefaultFacetDerivedFromTypeFacets">
-                                <mml:attr name="defaultFacets">org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacetUsingDefaultsProvider;org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacetUsingDefaultsProvider</mml:attr>
-                                <mml:attr name="derived">true</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.describedas.annotderived.DescribedAsFacetOnParameterDerivedFromType"/>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
-                                <mml:attr name="context">org.apache.isis.applib.services.layout.Object_downloadLayoutXml#act(java.lang.String,org.apache.isis.applib.services.layout.LayoutService$Style)</mml:attr>
-                                <mml:attr name="originalText">File name</mml:attr>
-                                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.layout.NamedFacetForParameterLayoutAnnotation</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.labelat.LabelAtFacet" fqcn="org.apache.isis.core.metamodel.facets.param.layout.LabelAtFacetForParameterLayoutAnnotation">
-                                <mml:attr name="label">DEFAULT</mml:attr>
-                                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.layout.LabelAtFacetForParameterLayoutAnnotation</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacet" fqcn="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacetDefault">
-                                <mml:attr name="inverted">false</mml:attr>
-                                <mml:attr name="semantics">REQUIRED</mml:attr>
-                                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacetDefault</mml:attr>
-                                <mml:attr name="validating">true</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.typicallen.TypicalLengthFacet" fqcn="org.apache.isis.core.metamodel.facets.param.typicallen.fromtype.TypicalLengthFacetOnParameterDerivedFromType">
-                                <mml:attr name="derived">true</mml:attr>
-                                <mml:attr name="typicalLengthFacet">org.apache.isis.core.metamodel.facets.object.value.TypicalLengthFacetUsingParser</mml:attr>
-                                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.typicallen.fromtype.TypicalLengthFacetOnParameterDerivedFromType</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.param.defaults.ActionParameterDefaultsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.defaults.methodnum.ActionParameterDefaultsFacetViaMethod">
-                                <mml:attr name="intent.default0Act">DEFAULTS</mml:attr>
-                                <mml:attr name="methods">public java.lang.String org.apache.isis.applib.services.layout.Object_downloadLayoutXml.default0Act()</mml:attr>
-                            </mml:facet>
-                        </mml:facets>
-                        <mml:type>java.lang.String</mml:type>
-                    </mml:param>
-                    <mml:param xsi:type="mml:scalarParam" id="style" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-                        <mml:facets>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.actions.defaults.ActionDefaultsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.defaults.fromtype.ActionParameterDefaultFacetDerivedFromTypeFacets">
-                                <mml:attr name="defaultFacets">org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacetUsingDefaultsProvider;org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacetUsingDefaultsProvider</mml:attr>
-                                <mml:attr name="derived">true</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.describedas.annotderived.DescribedAsFacetOnParameterDerivedFromType"/>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacet" fqcn="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacetDefault">
-                                <mml:attr name="inverted">false</mml:attr>
-                                <mml:attr name="semantics">REQUIRED</mml:attr>
-                                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacetDefault</mml:attr>
-                                <mml:attr name="validating">true</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.typicallen.TypicalLengthFacet" fqcn="org.apache.isis.core.metamodel.facets.param.typicallen.fromtype.TypicalLengthFacetOnParameterDerivedFromType">
-                                <mml:attr name="derived">true</mml:attr>
-                                <mml:attr name="typicalLengthFacet">org.apache.isis.core.metamodel.facets.object.value.TypicalLengthFacetUsingParser</mml:attr>
-                                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.typicallen.fromtype.TypicalLengthFacetOnParameterDerivedFromType</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.param.choices.ActionParameterChoicesFacet" fqcn="org.apache.isis.core.metamodel.facets.param.choices.enums.ActionParameterChoicesFacetDerivedFromChoicesFacet"/>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.param.defaults.ActionParameterDefaultsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.defaults.methodnum.ActionParameterDefaultsFacetViaMethod">
-                                <mml:attr name="intent.default1Act">DEFAULTS</mml:attr>
-                                <mml:attr name="methods">public org.apache.isis.applib.services.layout.LayoutService$Style org.apache.isis.applib.services.layout.Object_downloadLayoutXml.default1Act()</mml:attr>
-                            </mml:facet>
-                        </mml:facets>
-                        <mml:type>org.apache.isis.applib.services.layout.LayoutService$Style</mml:type>
-                    </mml:param>
-                </mml:params>
-            </mml:act>
-            <mml:act id="openRestApi">
-                <mml:facets>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="when">ALWAYS</mml:attr>
-                        <mml:attr name="where">NOWHERE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacetForActionAnnotation">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="validating">true</mml:attr>
-                        <mml:attr name="value">org.apache.isis.applib.services.layout.Object_openRestApi.ActionDomainEvent</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventFromActionAnnotation">
-                        <mml:attr name="eventType">org.apache.isis.applib.services.layout.Object_openRestApi.ActionDomainEvent</mml:attr>
-                        <mml:attr name="intent.act">EXECUTE</mml:attr>
-                        <mml:attr name="methods">public java.net.URL org.apache.isis.applib.services.layout.Object_openRestApi.act() throws java.net.MalformedURLException</mml:attr>
-                        <mml:attr name="onType">org.apache.isis.applib.services.layout.Object_openRestApi</mml:attr>
-                        <mml:attr name="returnType">java.net.URL</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.bulk.BulkFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.bulk.BulkFacetForActionAnnotation">
-                        <mml:attr name="value">REGULAR_ONLY</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.notcontributed.NotContributedFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.NotContributedFacetForActionLayoutAnnotation">
-                        <mml:attr name="as">ASSOCIATION</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.actions.notcontributed.derived.NotContributedFacetDerivedFromMixinFacet</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.ActionPositionFacetForActionLayoutAnnotation">
-                        <mml:attr name="position">PANEL_DROPDOWN</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.prototype.PrototypeFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.prototype.PrototypeFacetForActionAnnotation">
-                        <mml:attr name="deploymentCategory">PRODUCTION</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.semantics.ActionSemanticsFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.semantics.ActionSemanticsFacetForActionAnnotation">
-                        <mml:attr name="value">SAFE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
-                        <mml:attr name="context">domainapp.application.services.homepage.HomePageViewModel#openRestApi()</mml:attr>
-                        <mml:attr name="originalText">Open Rest Api</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.all.named.NamedFacetInferred</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.collections.collection.defaultview.DefaultViewFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.layout.DefaultViewFacetForCollectionLayoutAnnotation">
-                        <mml:attr name="value">hidden</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.members.cssclassfa.CssClassFaFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.CssClassFaFacetForActionLayoutAnnotation">
-                        <mml:attr name="position">LEFT</mml:attr>
-                        <mml:attr name="value">fa fa-fw fa-external-link</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.members.order.MemberOrderFacet" fqcn="org.apache.isis.core.metamodel.facets.members.order.annotprop.MemberOrderFacetAnnotation">
-                        <mml:attr name="name">datanucleusIdLong</mml:attr>
-                        <mml:attr name="originalName">datanucleusIdLong</mml:attr>
-                        <mml:attr name="sequence">750.1</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
-                        <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline">
-                        <mml:attr name="derived">true</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.renderunchanged.UnchangingFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.UnchangingFacetOnPropertyFromLayoutProperties">
-                        <mml:attr name="value">false</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                    </mml:facet>
-                </mml:facets>
-                <mml:returnType>java.net.URL</mml:returnType>
-                <mml:params/>
-            </mml:act>
-            <mml:act id="rebuildMetamodel">
-                <mml:facets>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="when">ALWAYS</mml:attr>
-                        <mml:attr name="where">NOWHERE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacetForActionAnnotation">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="validating">true</mml:attr>
-                        <mml:attr name="value">org.apache.isis.applib.services.layout.Object_rebuildMetamodel.ActionDomainEvent</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventFromActionAnnotation">
-                        <mml:attr name="eventType">org.apache.isis.applib.services.layout.Object_rebuildMetamodel.ActionDomainEvent</mml:attr>
-                        <mml:attr name="intent.act">EXECUTE</mml:attr>
-                        <mml:attr name="methods">public void org.apache.isis.applib.services.layout.Object_rebuildMetamodel.act()</mml:attr>
-                        <mml:attr name="onType">org.apache.isis.applib.services.layout.Object_rebuildMetamodel</mml:attr>
-                        <mml:attr name="returnType">void</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.bulk.BulkFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.bulk.BulkFacetForActionAnnotation">
-                        <mml:attr name="value">REGULAR_ONLY</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.notcontributed.NotContributedFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.NotContributedFacetForActionLayoutAnnotation">
-                        <mml:attr name="as">ASSOCIATION</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.actions.notcontributed.derived.NotContributedFacetDerivedFromMixinFacet</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.ActionPositionFacetForActionLayoutAnnotation">
-                        <mml:attr name="position">PANEL_DROPDOWN</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.prototype.PrototypeFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.prototype.PrototypeFacetForActionAnnotation">
-                        <mml:attr name="deploymentCategory">PRODUCTION</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.semantics.ActionSemanticsFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.semantics.ActionSemanticsFacetForActionAnnotation">
-                        <mml:attr name="value">IDEMPOTENT</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
-                        <mml:attr name="context">domainapp.application.services.homepage.HomePageViewModel#rebuildMetamodel()</mml:attr>
-                        <mml:attr name="originalText">Rebuild Metamodel</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.all.named.NamedFacetInferred</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.collections.collection.defaultview.DefaultViewFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.layout.DefaultViewFacetForCollectionLayoutAnnotation">
-                        <mml:attr name="value">hidden</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.members.cssclassfa.CssClassFaFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.CssClassFaFacetForActionLayoutAnnotation">
-                        <mml:attr name="position">LEFT</mml:attr>
-                        <mml:attr name="value">fa fa-fw fa-refresh</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.members.order.MemberOrderFacet" fqcn="org.apache.isis.core.metamodel.facets.members.order.annotprop.MemberOrderFacetAnnotation">
-                        <mml:attr name="name">datanucleusIdLong</mml:attr>
-                        <mml:attr name="originalName">datanucleusIdLong</mml:attr>
-                        <mml:attr name="sequence">800.1</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
-                        <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline">
-                        <mml:attr name="derived">true</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.renderunchanged.UnchangingFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.UnchangingFacetOnPropertyFromLayoutProperties">
-                        <mml:attr name="value">false</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                    </mml:facet>
-                </mml:facets>
-                <mml:returnType>void</mml:returnType>
-                <mml:params/>
-            </mml:act>
-        </mml:actions>
-    </mml:domainClass>
-    <mml:domainClass id="domainapp.modules.simple.dom.impl.SimpleObject">
-        <mml:facets>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.named.NamedFacetInferred">
-                <mml:attr name="escaped">true</mml:attr>
-                <mml:attr name="value">Simple Object</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.members.cssclass.CssClassFacet" fqcn="org.apache.isis.core.metamodel.facets.object.domainobjectlayout.CssClassFacetViaDomainObjectLayoutAnnotationUsingCssClassUiEvent">
-                <mml:attr name="cssClassUiEventClass">org.apache.isis.applib.services.eventbus.CssClassUiEvent.Default</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.audit.AuditableFacet" fqcn="org.apache.isis.core.metamodel.facets.object.domainobject.auditing.AuditableFacetForDomainObjectAnnotation">
-                <mml:attr name="enablement">ENABLED</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
-                <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.callbacks.CreatedLifecycleEventFacet" fqcn="org.apache.isis.core.metamodel.facets.object.callbacks.CreatedLifecycleEventFacetForDomainObjectAnnotation">
-                <mml:attr name="value">org.apache.isis.applib.services.eventbus.ObjectCreatedEvent.Default</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.callbacks.LoadedLifecycleEventFacet" fqcn="org.apache.isis.core.metamodel.facets.object.callbacks.LoadedLifecycleEventFacetForDomainObjectAnnotation">
-                <mml:attr name="value">org.apache.isis.applib.services.eventbus.ObjectLoadedEvent.Default</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.callbacks.PersistedLifecycleEventFacet" fqcn="org.apache.isis.core.metamodel.facets.object.callbacks.PersistedLifecycleEventFacetForDomainObjectAnnotation">
-                <mml:attr name="value">org.apache.isis.applib.services.eventbus.ObjectPersistedEvent.Default</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.callbacks.PersistingLifecycleEventFacet" fqcn="org.apache.isis.core.metamodel.facets.object.callbacks.PersistingLifecycleEventFacetForDomainObjectAnnotation">
-                <mml:attr name="value">org.apache.isis.applib.services.eventbus.ObjectPersistingEvent.Default</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.callbacks.RemovingLifecycleEventFacet" fqcn="org.apache.isis.core.metamodel.facets.object.callbacks.RemovingLifecycleEventFacetForDomainObjectAnnotation">
-                <mml:attr name="value">org.apache.isis.applib.services.eventbus.ObjectRemovingEvent.Default</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.callbacks.UpdatedLifecycleEventFacet" fqcn="org.apache.isis.core.metamodel.facets.object.callbacks.UpdatedLifecycleEventFacetForDomainObjectAnnotation">
-                <mml:attr name="value">org.apache.isis.applib.services.eventbus.ObjectUpdatedEvent.Default</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.callbacks.UpdatingLifecycleEventFacet" fqcn="org.apache.isis.core.metamodel.facets.object.callbacks.UpdatingLifecycleEventFacetForDomainObjectAnnotation">
-                <mml:attr name="value">org.apache.isis.applib.services.eventbus.ObjectUpdatingEvent.Default</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.grid.GridFacet" fqcn="org.apache.isis.core.metamodel.facets.object.grid.GridFacetDefault"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.icon.IconFacet" fqcn="org.apache.isis.core.metamodel.facets.object.domainobjectlayout.IconFacetViaDomainObjectLayoutAnnotationUsingIconUiEvent">
-                <mml:attr name="iconUiEventClass">org.apache.isis.applib.services.eventbus.IconUiEvent.Default</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.membergroups.MemberGroupLayoutFacet" fqcn="org.apache.isis.core.metamodel.facets.object.membergroups.annotprop.MemberGroupLayoutFacetFallback">
-                <mml:attr name="columns">[4,0,0,8]</mml:attr>
-                <mml:attr name="left">General</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.notpersistable.NotPersistableFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.NotPersistableFacetNull">
-                <mml:attr name="disabling">true</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.objectspecid.ObjectSpecIdFacet" fqcn="org.apache.isis.core.metamodel.facets.object.domainobject.objectspecid.ObjectSpecIdFacetForJdoPersistenceCapableAnnotation">
-                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.object.objectspecid.classname.ObjectSpecIdFacetDerivedFromClassName</mml:attr>
-                <mml:attr name="value">simple.SimpleObject</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.objectvalidprops.ObjectValidPropertiesFacet" fqcn="org.apache.isis.core.metamodel.facets.object.objectvalidprops.impl.ObjectValidPropertiesFacetImpl">
-                <mml:attr name="validating">true</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.paged.PagedFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.PagedFacetFromConfiguration">
-                <mml:attr name="derived">true</mml:attr>
-                <mml:attr name="value">25</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.plural.PluralFacet" fqcn="org.apache.isis.core.metamodel.facets.object.plural.inferred.PluralFacetInferred">
-                <mml:attr name="derived">true</mml:attr>
-                <mml:attr name="value">Simple Objects</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.title.TitleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.domainobjectlayout.TitleFacetViaDomainObjectLayoutAnnotationUsingTitleUiEvent">
-                <mml:attr name="titleUiEventClass">org.apache.isis.applib.services.eventbus.TitleUiEvent.Default</mml:attr>
-                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.object.title.annotation.TitleFacetViaTitleAnnotation</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
-                <mml:attr name="disabling">true</mml:attr>
-                <mml:attr name="hiding">true</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.objectstore.jdo.metamodel.facets.object.datastoreidentity.JdoDatastoreIdentityFacet" fqcn="org.apache.isis.objectstore.jdo.metamodel.facets.object.datastoreidentity.JdoDatastoreIdentityFacetAnnotation">
-                <mml:attr name="strategy">IDENTITY</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.objectstore.jdo.metamodel.facets.object.persistencecapable.JdoPersistenceCapableFacet" fqcn="org.apache.isis.objectstore.jdo.metamodel.facets.object.persistencecapable.JdoPersistenceCapableFacetAnnotation">
-                <mml:attr name="identityType">DATASTORE</mml:attr>
-                <mml:attr name="schema">simple</mml:attr>
-                <mml:attr name="table">SimpleObject</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.objectstore.jdo.metamodel.facets.object.version.JdoVersionFacet" fqcn="org.apache.isis.objectstore.jdo.metamodel.facets.object.version.JdoVersionFacetFromAnnotation"/>
-        </mml:facets>
-        <mml:properties>
-            <mml:prop id="datanucleusIdLong">
-                <mml:facets>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="when">ALWAYS</mml:attr>
-                        <mml:attr name="where">NOWHERE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacetForActionAnnotation">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="validating">true</mml:attr>
-                        <mml:attr name="value">org.apache.isis.core.metamodel.services.jdosupport.Persistable_datanucleusIdLong.ActionDomainEvent</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventFromActionAnnotation">
-                        <mml:attr name="eventType">org.apache.isis.core.metamodel.services.jdosupport.Persistable_datanucleusIdLong.ActionDomainEvent</mml:attr>
-                        <mml:attr name="intent.prop">EXECUTE</mml:attr>
-                        <mml:attr name="methods">public java.lang.Long org.apache.isis.core.metamodel.services.jdosupport.Persistable_datanucleusIdLong.prop()</mml:attr>
-                        <mml:attr name="onType">org.apache.isis.core.metamodel.services.jdosupport.Persistable_datanucleusIdLong</mml:attr>
-                        <mml:attr name="returnType">java.lang.Long</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.bulk.BulkFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.bulk.BulkFacetForActionAnnotation">
-                        <mml:attr name="value">REGULAR_ONLY</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.notcontributed.NotContributedFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.NotContributedFacetForActionLayoutAnnotation">
-                        <mml:attr name="as">ACTION</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.actions.notcontributed.derived.NotContributedFacetDerivedFromMixinFacet</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.ActionPositionFacetForActionLayoutAnnotation">
-                        <mml:attr name="position">BELOW</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.semantics.ActionSemanticsFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.semantics.ActionSemanticsFacetForActionAnnotation">
-                        <mml:attr name="value">SAFE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
-                        <mml:attr name="context">domainapp.modules.simple.dom.impl.SimpleObject#datanucleusIdLong()</mml:attr>
-                        <mml:attr name="originalText">Id</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.collections.collection.defaultview.DefaultViewFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.layout.DefaultViewFacetForCollectionLayoutAnnotation">
-                        <mml:attr name="value">hidden</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.members.disabled.DisabledFacet" fqcn="org.apache.isis.core.metamodel.facets.members.disabled.DisabledFacetForContributee">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="inverted">false</mml:attr>
-                        <mml:attr name="reason">Contributed property</mml:attr>
-                        <mml:attr name="semantics">DISABLED</mml:attr>
-                        <mml:attr name="when">ALWAYS</mml:attr>
-                        <mml:attr name="where">ANYWHERE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.members.hidden.method.HideForContextFacet" fqcn="org.apache.isis.core.metamodel.facets.members.hidden.method.HideForContextFacetViaMethod">
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="intent.hideProp">CHECK_IF_HIDDEN</mml:attr>
-                        <mml:attr name="methods">public boolean org.apache.isis.core.metamodel.services.jdosupport.Persistable_datanucleusIdLong.hideProp()</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.members.order.MemberOrderFacet" fqcn="org.apache.isis.core.metamodel.facets.members.order.annotprop.MemberOrderFacetAnnotation">
-                        <mml:attr name="name">Metadata</mml:attr>
-                        <mml:attr name="originalName">Metadata</mml:attr>
-                        <mml:attr name="sequence">800.1</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
-                        <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetAsConfigured">
-                        <mml:attr name="promptStyle">INLINE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.labelat.LabelAtFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.LabelAtFacetForPropertyLayoutAnnotation">
-                        <mml:attr name="label">LEFT</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.propcoll.notpersisted.NotPersistedFacet"/>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.propertylayout.HiddenFacetForPropertyLayoutAnnotation" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.HiddenFacetForPropertyLayoutAnnotation">
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation</mml:attr>
-                        <mml:attr name="when">ALWAYS</mml:attr>
-                        <mml:attr name="where">ALL_TABLES</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.renderunchanged.UnchangingFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.UnchangingFacetOnPropertyFromLayoutProperties">
-                        <mml:attr name="value">false</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                    </mml:facet>
-                </mml:facets>
-                <mml:type>java.lang.Long</mml:type>
-            </mml:prop>
-            <mml:prop id="datanucleusVersionLong">
-                <mml:facets>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="when">ALWAYS</mml:attr>
-                        <mml:attr name="where">NOWHERE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacetForActionAnnotation">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="validating">true</mml:attr>
-                        <mml:attr name="value">org.apache.isis.core.metamodel.services.jdosupport.Persistable_datanucleusVersionLong.ActionDomainEvent</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventFromActionAnnotation">
-                        <mml:attr name="eventType">org.apache.isis.core.metamodel.services.jdosupport.Persistable_datanucleusVersionLong.ActionDomainEvent</mml:attr>
-                        <mml:attr name="intent.prop">EXECUTE</mml:attr>
-                        <mml:attr name="methods">public java.lang.Long org.apache.isis.core.metamodel.services.jdosupport.Persistable_datanucleusVersionLong.prop()</mml:attr>
-                        <mml:attr name="onType">org.apache.isis.core.metamodel.services.jdosupport.Persistable_datanucleusVersionLong</mml:attr>
-                        <mml:attr name="returnType">java.lang.Long</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.bulk.BulkFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.bulk.BulkFacetForActionAnnotation">
-                        <mml:attr name="value">REGULAR_ONLY</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.notcontributed.NotContributedFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.NotContributedFacetForActionLayoutAnnotation">
-                        <mml:attr name="as">ACTION</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.actions.notcontributed.derived.NotContributedFacetDerivedFromMixinFacet</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.ActionPositionFacetForActionLayoutAnnotation">
-                        <mml:attr name="position">BELOW</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.semantics.ActionSemanticsFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.semantics.ActionSemanticsFacetForActionAnnotation">
-                        <mml:attr name="value">SAFE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
-                        <mml:attr name="context">domainapp.modules.simple.dom.impl.SimpleObject#datanucleusVersionLong()</mml:attr>
-                        <mml:attr name="originalText">Version</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.collections.collection.defaultview.DefaultViewFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.layout.DefaultViewFacetForCollectionLayoutAnnotation">
-                        <mml:attr name="value">hidden</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.members.disabled.DisabledFacet" fqcn="org.apache.isis.core.metamodel.facets.members.disabled.DisabledFacetForContributee">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="inverted">false</mml:attr>
-                        <mml:attr name="reason">Contributed property</mml:attr>
-                        <mml:attr name="semantics">DISABLED</mml:attr>
-                        <mml:attr name="when">ALWAYS</mml:attr>
-                        <mml:attr name="where">ANYWHERE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.members.hidden.method.HideForContextFacet" fqcn="org.apache.isis.core.metamodel.facets.members.hidden.method.HideForContextFacetViaMethod">
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="intent.hideProp">CHECK_IF_HIDDEN</mml:attr>
-                        <mml:attr name="methods">public boolean org.apache.isis.core.metamodel.services.jdosupport.Persistable_datanucleusVersionLong.hideProp()</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.members.order.MemberOrderFacet" fqcn="org.apache.isis.core.metamodel.facets.members.order.annotprop.MemberOrderFacetAnnotation">
-                        <mml:attr name="name">Metadata</mml:attr>
-                        <mml:attr name="originalName">Metadata</mml:attr>
-                        <mml:attr name="sequence">800.2</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
-                        <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetAsConfigured">
-                        <mml:attr name="promptStyle">INLINE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.labelat.LabelAtFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.LabelAtFacetForPropertyLayoutAnnotation">
-                        <mml:attr name="label">LEFT</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.propcoll.notpersisted.NotPersistedFacet"/>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.propertylayout.HiddenFacetForPropertyLayoutAnnotation" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.HiddenFacetForPropertyLayoutAnnotation">
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation</mml:attr>
-                        <mml:attr name="when">ALWAYS</mml:attr>
-                        <mml:attr name="where">ALL_TABLES</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.renderunchanged.UnchangingFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.UnchangingFacetOnPropertyFromLayoutProperties">
-                        <mml:attr name="value">false</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                    </mml:facet>
-                </mml:facets>
-                <mml:type>java.lang.Long</mml:type>
-            </mml:prop>
-            <mml:prop id="datanucleusVersionTimestamp">
-                <mml:facets>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="when">ALWAYS</mml:attr>
-                        <mml:attr name="where">NOWHERE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacetForActionAnnotation">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="validating">true</mml:attr>
-                        <mml:attr name="value">org.apache.isis.core.metamodel.services.jdosupport.Persistable_datanucleusVersionTimestamp.ActionDomainEvent</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventFromActionAnnotation">
-                        <mml:attr name="eventType">org.apache.isis.core.metamodel.services.jdosupport.Persistable_datanucleusVersionTimestamp.ActionDomainEvent</mml:attr>
-                        <mml:attr name="intent.prop">EXECUTE</mml:attr>
-                        <mml:attr name="methods">public java.sql.Timestamp org.apache.isis.core.metamodel.services.jdosupport.Persistable_datanucleusVersionTimestamp.prop()</mml:attr>
-                        <mml:attr name="onType">org.apache.isis.core.metamodel.services.jdosupport.Persistable_datanucleusVersionTimestamp</mml:attr>
-                        <mml:attr name="returnType">java.sql.Timestamp</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.bulk.BulkFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.bulk.BulkFacetForActionAnnotation">
-                        <mml:attr name="value">REGULAR_ONLY</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.notcontributed.NotContributedFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.NotContributedFacetForActionLayoutAnnotation">
-                        <mml:attr name="as">ACTION</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.actions.notcontributed.derived.NotContributedFacetDerivedFromMixinFacet</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.ActionPositionFacetForActionLayoutAnnotation">
-                        <mml:attr name="position">BELOW</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.semantics.ActionSemanticsFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.semantics.ActionSemanticsFacetForActionAnnotation">
-                        <mml:attr name="value">SAFE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
-                        <mml:attr name="context">domainapp.modules.simple.dom.impl.SimpleObject#datanucleusVersionTimestamp()</mml:attr>
-                        <mml:attr name="originalText">Version</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.collections.collection.defaultview.DefaultViewFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.layout.DefaultViewFacetForCollectionLayoutAnnotation">
-                        <mml:attr name="value">hidden</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.members.disabled.DisabledFacet" fqcn="org.apache.isis.core.metamodel.facets.members.disabled.DisabledFacetForContributee">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="inverted">false</mml:attr>
-                        <mml:attr name="reason">Contributed property</mml:attr>
-                        <mml:attr name="semantics">DISABLED</mml:attr>
-                        <mml:attr name="when">ALWAYS</mml:attr>
-                        <mml:attr name="where">ANYWHERE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.members.hidden.method.HideForContextFacet" fqcn="org.apache.isis.core.metamodel.facets.members.hidden.method.HideForContextFacetViaMethod">
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="intent.hideProp">CHECK_IF_HIDDEN</mml:attr>
-                        <mml:attr name="methods">public boolean org.apache.isis.core.metamodel.services.jdosupport.Persistable_datanucleusVersionTimestamp.hideProp()</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.members.order.MemberOrderFacet" fqcn="org.apache.isis.core.metamodel.facets.members.order.annotprop.MemberOrderFacetAnnotation">
-                        <mml:attr name="name">Metadata</mml:attr>
-                        <mml:attr name="originalName">Metadata</mml:attr>
-                        <mml:attr name="sequence">800.2</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
-                        <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetAsConfigured">
-                        <mml:attr name="promptStyle">INLINE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.labelat.LabelAtFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.LabelAtFacetForPropertyLayoutAnnotation">
-                        <mml:attr name="label">LEFT</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.propcoll.notpersisted.NotPersistedFacet"/>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.propertylayout.HiddenFacetForPropertyLayoutAnnotation" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.HiddenFacetForPropertyLayoutAnnotation">
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation</mml:attr>
-                        <mml:attr name="when">ALWAYS</mml:attr>
-                        <mml:attr name="where">ALL_TABLES</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.renderunchanged.UnchangingFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.UnchangingFacetOnPropertyFromLayoutProperties">
-                        <mml:attr name="value">false</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                    </mml:facet>
-                </mml:facets>
-                <mml:type>java.sql.Timestamp</mml:type>
-            </mml:prop>
-            <mml:prop id="name">
-                <mml:facets>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
-                        <mml:attr name="context">domainapp.modules.simple.dom.impl.SimpleObject#name</mml:attr>
-                        <mml:attr name="originalText">Name</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.fallback.NamedFacetDefault</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline">
-                        <mml:attr name="derived">true</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacet" fqcn="org.apache.isis.objectstore.jdo.metamodel.facets.prop.column.MandatoryFacetDerivedFromJdoColumn">
-                        <mml:attr name="inverted">false</mml:attr>
-                        <mml:attr name="semantics">REQUIRED</mml:attr>
-                        <mml:attr name="validating">true</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.maxlen.MaxLengthFacet" fqcn="org.apache.isis.objectstore.jdo.metamodel.facets.prop.column.MaxLengthFacetDerivedFromJdoColumn">
-                        <mml:attr name="validating">true</mml:attr>
-                        <mml:attr name="value">40</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.typicallen.TypicalLengthFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.typicallen.fromtype.TypicalLengthFacetOnPropertyDerivedFromType">
-                        <mml:attr name="derived">true</mml:attr>
-                        <mml:attr name="typicalLengthFacet">org.apache.isis.core.metamodel.facets.object.value.TypicalLengthFacetUsingParser</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.propcoll.accessor.PropertyOrCollectionAccessorFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.accessor.PropertyAccessorFacetViaAccessor">
-                        <mml:attr name="intent.getName">ACCESSOR</mml:attr>
-                        <mml:attr name="methods">public java.lang.String domainapp.modules.simple.dom.impl.SimpleObject.getName()</mml:attr>
-                        <mml:attr name="onType">domainapp.modules.simple.dom.impl.SimpleObject</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.defaults.PropertyDefaultFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.defaults.fromtype.PropertyDefaultFacetDerivedFromDefaultedFacet">
-                        <mml:attr name="typeFacet">org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacetUsingDefaultsProvider</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.property.hidden.HiddenFacetForPropertyAnnotation" fqcn="org.apache.isis.core.metamodel.facets.properties.property.hidden.HiddenFacetForPropertyAnnotation">
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="when">ALWAYS</mml:attr>
-                        <mml:attr name="where">NOWHERE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.property.hidden.HiddenFacetForPropertyAnnotation" fqcn="org.apache.isis.core.metamodel.facets.properties.property.hidden.HiddenFacetForPropertyAnnotation">
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="when">ALWAYS</mml:attr>
-                        <mml:attr name="where">NOWHERE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.property.modify.PropertyDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.property.modify.PropertyDomainEventFacetForPropertyAnnotation">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="getterFacet">org.apache.isis.core.metamodel.facets.properties.accessor.PropertyAccessorFacetViaAccessor</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="validating">true</mml:attr>
-                        <mml:attr name="value">org.apache.isis.applib.services.eventbus.PropertyDomainEvent.Default</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.renderunchanged.UnchangingFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.UnchangingFacetOnPropertyFromLayoutProperties">
-                        <mml:attr name="value">false</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.update.clear.PropertyClearFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.property.modify.PropertyClearFacetForDomainEventFromPropertyAnnotation">
-                        <mml:attr name="clearFacet">org.apache.isis.core.metamodel.facets.properties.update.clear.PropertyClearFacetViaSetterMethod</mml:attr>
-                        <mml:attr name="getterFacet">org.apache.isis.core.metamodel.facets.properties.accessor.PropertyAccessorFacetViaAccessor</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.properties.update.clear.PropertyClearFacetViaSetterMethod</mml:attr>
-                        <mml:attr name="value">org.apache.isis.applib.services.eventbus.PropertyDomainEvent.Default</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.update.init.PropertyInitializationFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.update.init.PropertyInitializationFacetViaSetterMethod">
-                        <mml:attr name="intent.setName">MODIFY_PROPERTY</mml:attr>
-                        <mml:attr name="methods">public void domainapp.modules.simple.dom.impl.SimpleObject.setName(java.lang.String)</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.update.modify.PropertySetterFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.property.modify.PropertySetterFacetForDomainEventFromPropertyAnnotation">
-                        <mml:attr name="getterFacet">org.apache.isis.core.metamodel.facets.properties.accessor.PropertyAccessorFacetViaAccessor</mml:attr>
-                        <mml:attr name="setterFacet">org.apache.isis.core.metamodel.facets.properties.update.modify.PropertySetterFacetViaSetterMethod</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.properties.update.modify.PropertySetterFacetViaSetterMethod</mml:attr>
-                        <mml:attr name="value">org.apache.isis.applib.services.eventbus.PropertyDomainEvent.Default</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.validating.PropertyValidateFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.validating.dflt.PropertyValidateFacetDefault">
-                        <mml:attr name="validating">true</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                    </mml:facet>
-                </mml:facets>
-                <mml:type>java.lang.String</mml:type>
-            </mml:prop>
-            <mml:prop id="notes">
-                <mml:facets>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
-                        <mml:attr name="context">domainapp.modules.simple.dom.impl.SimpleObject#notes</mml:attr>
-                        <mml:attr name="originalText">Notes</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.fallback.NamedFacetDefault</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.members.disabled.DisabledFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.property.disabled.DisabledFacetForPropertyAnnotationInvertedSemantics">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="inverted">true</mml:attr>
-                        <mml:attr name="semantics">ENABLED</mml:attr>
-                        <mml:attr name="when">ALWAYS</mml:attr>
-                        <mml:attr name="where">EVERYWHERE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline">
-                        <mml:attr name="derived">true</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacet" fqcn="org.apache.isis.objectstore.jdo.metamodel.facets.prop.column.MandatoryFacetDerivedFromJdoColumn">
-                        <mml:attr name="inverted">true</mml:attr>
-                        <mml:attr name="semantics">OPTIONAL</mml:attr>
-                        <mml:attr name="validating">true</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.maxlen.MaxLengthFacet" fqcn="org.apache.isis.objectstore.jdo.metamodel.facets.prop.column.MaxLengthFacetDerivedFromJdoColumn">
-                        <mml:attr name="validating">true</mml:attr>
-                        <mml:attr name="value">4000</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.typicallen.TypicalLengthFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.typicallen.fromtype.TypicalLengthFacetOnPropertyDerivedFromType">
-                        <mml:attr name="derived">true</mml:attr>
-                        <mml:attr name="typicalLengthFacet">org.apache.isis.core.metamodel.facets.object.value.TypicalLengthFacetUsingParser</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.propcoll.accessor.PropertyOrCollectionAccessorFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.accessor.PropertyAccessorFacetViaAccessor">
-                        <mml:attr name="intent.getNotes">ACCESSOR</mml:attr>
-                        <mml:attr name="methods">public java.lang.String domainapp.modules.simple.dom.impl.SimpleObject.getNotes()</mml:attr>
-                        <mml:attr name="onType">domainapp.modules.simple.dom.impl.SimpleObject</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.defaults.PropertyDefaultFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.defaults.fromtype.PropertyDefaultFacetDerivedFromDefaultedFacet">
-                        <mml:attr name="typeFacet">org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacetUsingDefaultsProvider</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.property.hidden.HiddenFacetForPropertyAnnotation" fqcn="org.apache.isis.core.metamodel.facets.properties.property.hidden.HiddenFacetForPropertyAnnotation">
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="when">ALWAYS</mml:attr>
-                        <mml:attr name="where">NOWHERE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.property.hidden.HiddenFacetForPropertyAnnotation" fqcn="org.apache.isis.core.metamodel.facets.properties.property.hidden.HiddenFacetForPropertyAnnotation">
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="when">ALWAYS</mml:attr>
-                        <mml:attr name="where">NOWHERE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.property.modify.PropertyDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.property.modify.PropertyDomainEventFacetForPropertyAnnotation">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="getterFacet">org.apache.isis.core.metamodel.facets.properties.accessor.PropertyAccessorFacetViaAccessor</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="validating">true</mml:attr>
-                        <mml:attr name="value">org.apache.isis.applib.services.eventbus.PropertyDomainEvent.Default</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.renderunchanged.UnchangingFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.UnchangingFacetOnPropertyFromLayoutProperties">
-                        <mml:attr name="value">false</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.update.clear.PropertyClearFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.property.modify.PropertyClearFacetForDomainEventFromPropertyAnnotation">
-                        <mml:attr name="clearFacet">org.apache.isis.core.metamodel.facets.properties.update.clear.PropertyClearFacetViaSetterMethod</mml:attr>
-                        <mml:attr name="getterFacet">org.apache.isis.core.metamodel.facets.properties.accessor.PropertyAccessorFacetViaAccessor</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.properties.update.clear.PropertyClearFacetViaSetterMethod</mml:attr>
-                        <mml:attr name="value">org.apache.isis.applib.services.eventbus.PropertyDomainEvent.Default</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.update.init.PropertyInitializationFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.update.init.PropertyInitializationFacetViaSetterMethod">
-                        <mml:attr name="intent.setNotes">MODIFY_PROPERTY</mml:attr>
-                        <mml:attr name="methods">public void domainapp.modules.simple.dom.impl.SimpleObject.setNotes(java.lang.String)</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.update.modify.PropertySetterFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.property.modify.PropertySetterFacetForDomainEventFromPropertyAnnotation">
-                        <mml:attr name="getterFacet">org.apache.isis.core.metamodel.facets.properties.accessor.PropertyAccessorFacetViaAccessor</mml:attr>
-                        <mml:attr name="setterFacet">org.apache.isis.core.metamodel.facets.properties.update.modify.PropertySetterFacetViaSetterMethod</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.properties.update.modify.PropertySetterFacetViaSetterMethod</mml:attr>
-                        <mml:attr name="value">org.apache.isis.applib.services.eventbus.PropertyDomainEvent.Default</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.validating.PropertyValidateFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.validating.dflt.PropertyValidateFacetDefault">
-                        <mml:attr name="validating">true</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                    </mml:facet>
-                </mml:facets>
-                <mml:type>java.lang.String</mml:type>
-            </mml:prop>
-        </mml:properties>
-        <mml:collections/>
-        <mml:actions>
-            <mml:act id="delete">
-                <mml:facets>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="when">ALWAYS</mml:attr>
-                        <mml:attr name="where">NOWHERE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="when">ALWAYS</mml:attr>
-                        <mml:attr name="where">NOWHERE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacetForActionAnnotation">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="validating">true</mml:attr>
-                        <mml:attr name="value">org.apache.isis.applib.services.eventbus.ActionDomainEvent.Default</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventFromActionAnnotation">
-                        <mml:attr name="eventType">org.apache.isis.applib.services.eventbus.ActionDomainEvent.Default</mml:attr>
-                        <mml:attr name="intent.delete">EXECUTE</mml:attr>
-                        <mml:attr name="methods">public void domainapp.modules.simple.dom.impl.SimpleObject.delete()</mml:attr>
-                        <mml:attr name="onType">domainapp.modules.simple.dom.impl.SimpleObject</mml:attr>
-                        <mml:attr name="returnType">void</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.bulk.BulkFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.bulk.BulkFacetForActionAnnotation">
-                        <mml:attr name="value">REGULAR_ONLY</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacetFallback">
-                        <mml:attr name="position">BELOW</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.semantics.ActionSemanticsFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.semantics.ActionSemanticsFacetForActionAnnotation">
-                        <mml:attr name="value">NON_IDEMPOTENT_ARE_YOU_SURE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
-                        <mml:attr name="context">domainapp.modules.simple.dom.impl.SimpleObject#delete()</mml:attr>
-                        <mml:attr name="originalText">Delete</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.fallback.NamedFacetDefault</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.collections.collection.defaultview.DefaultViewFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.layout.DefaultViewFacetForCollectionLayoutAnnotation">
-                        <mml:attr name="value">hidden</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
-                        <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline">
-                        <mml:attr name="derived">true</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.renderunchanged.UnchangingFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.UnchangingFacetOnPropertyFromLayoutProperties">
-                        <mml:attr name="value">false</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                    </mml:facet>
-                </mml:facets>
-                <mml:returnType>void</mml:returnType>
-                <mml:params/>
-            </mml:act>
-            <mml:act id="downloadJdoMetadata">
-                <mml:facets>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="when">ALWAYS</mml:attr>
-                        <mml:attr name="where">NOWHERE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacetForActionAnnotation">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="validating">true</mml:attr>
-                        <mml:attr name="value">org.apache.isis.core.metamodel.services.jdosupport.Persistable_downloadJdoMetadata.ActionDomainEvent</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventFromActionAnnotation">
-                        <mml:attr name="eventType">org.apache.isis.core.metamodel.services.jdosupport.Persistable_downloadJdoMetadata.ActionDomainEvent</mml:attr>
-                        <mml:attr name="intent.act">EXECUTE</mml:attr>
-                        <mml:attr name="methods">public org.apache.isis.applib.value.Clob org.apache.isis.core.metamodel.services.jdosupport.Persistable_downloadJdoMetadata.act(java.lang.String) throws javax.xml.bind.JAXBException,java.io.IOException</mml:attr>
-                        <mml:attr name="onType">org.apache.isis.core.metamodel.services.jdosupport.Persistable_downloadJdoMetadata</mml:attr>
-                        <mml:attr name="returnType">org.apache.isis.applib.value.Clob</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.bulk.BulkFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.bulk.BulkFacetForActionAnnotation">
-                        <mml:attr name="value">REGULAR_ONLY</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.notcontributed.NotContributedFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.NotContributedFacetForActionLayoutAnnotation">
-                        <mml:attr name="as">ASSOCIATION</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.actions.notcontributed.derived.NotContributedFacetDerivedFromMixinFacet</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.ActionPositionFacetForActionLayoutAnnotation">
-                        <mml:attr name="position">PANEL_DROPDOWN</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.prototype.PrototypeFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.prototype.PrototypeFacetForActionAnnotation">
-                        <mml:attr name="deploymentCategory">PRODUCTION</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.semantics.ActionSemanticsFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.semantics.ActionSemanticsFacetForActionAnnotation">
-                        <mml:attr name="value">SAFE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
-                        <mml:attr name="context">domainapp.modules.simple.dom.impl.SimpleObject#downloadJdoMetadata()</mml:attr>
-                        <mml:attr name="originalText">Download Jdo Metadata</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.all.named.NamedFacetInferred</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.collections.collection.defaultview.DefaultViewFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.layout.DefaultViewFacetForCollectionLayoutAnnotation">
-                        <mml:attr name="value">hidden</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.members.cssclassfa.CssClassFaFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.CssClassFaFacetForActionLayoutAnnotation">
-                        <mml:attr name="position">LEFT</mml:attr>
-                        <mml:attr name="value">fa fa-fw fa-download</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.members.order.MemberOrderFacet" fqcn="org.apache.isis.core.metamodel.facets.members.order.annotprop.MemberOrderFacetAnnotation">
-                        <mml:attr name="name">datanucleusIdLong</mml:attr>
-                        <mml:attr name="originalName">datanucleusIdLong</mml:attr>
-                        <mml:attr name="sequence">710.1</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
-                        <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline">
-                        <mml:attr name="derived">true</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.renderunchanged.UnchangingFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.UnchangingFacetOnPropertyFromLayoutProperties">
-                        <mml:attr name="value">false</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                    </mml:facet>
-                </mml:facets>
-                <mml:returnType>org.apache.isis.applib.value.Clob</mml:returnType>
-                <mml:params>
-                    <mml:param xsi:type="mml:scalarParam" id="fileName" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-                        <mml:facets>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.actions.defaults.ActionDefaultsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.defaults.fromtype.ActionParameterDefaultFacetDerivedFromTypeFacets">
-                                <mml:attr name="defaultFacets">org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacetUsingDefaultsProvider</mml:attr>
-                                <mml:attr name="derived">true</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.describedas.annotderived.DescribedAsFacetOnParameterDerivedFromType"/>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
-                                <mml:attr name="context">org.apache.isis.core.metamodel.services.jdosupport.Persistable_downloadJdoMetadata#act(java.lang.String)</mml:attr>
-                                <mml:attr name="originalText">File name</mml:attr>
-                                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.layout.NamedFacetForParameterLayoutAnnotation</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.labelat.LabelAtFacet" fqcn="org.apache.isis.core.metamodel.facets.param.layout.LabelAtFacetForParameterLayoutAnnotation">
-                                <mml:attr name="label">DEFAULT</mml:attr>
-                                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.layout.LabelAtFacetForParameterLayoutAnnotation</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacet" fqcn="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacetDefault">
-                                <mml:attr name="inverted">false</mml:attr>
-                                <mml:attr name="semantics">REQUIRED</mml:attr>
-                                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacetDefault</mml:attr>
-                                <mml:attr name="validating">true</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.typicallen.TypicalLengthFacet" fqcn="org.apache.isis.core.metamodel.facets.param.typicallen.fromtype.TypicalLengthFacetOnParameterDerivedFromType">
-                                <mml:attr name="derived">true</mml:attr>
-                                <mml:attr name="typicalLengthFacet">org.apache.isis.core.metamodel.facets.object.value.TypicalLengthFacetUsingParser</mml:attr>
-                                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.typicallen.fromtype.TypicalLengthFacetOnParameterDerivedFromType</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.param.defaults.ActionParameterDefaultsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.defaults.methodnum.ActionParameterDefaultsFacetViaMethod">
-                                <mml:attr name="intent.default0Act">DEFAULTS</mml:attr>
-                                <mml:attr name="methods">public java.lang.String org.apache.isis.core.metamodel.services.jdosupport.Persistable_downloadJdoMetadata.default0Act()</mml:attr>
-                            </mml:facet>
-                        </mml:facets>
-                        <mml:type>java.lang.String</mml:type>
-                    </mml:param>
-                </mml:params>
-            </mml:act>
-            <mml:act id="downloadLayoutXml">
-                <mml:facets>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="when">ALWAYS</mml:attr>
-                        <mml:attr name="where">NOWHERE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacetForActionAnnotation">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="validating">true</mml:attr>
-                        <mml:attr name="value">org.apache.isis.applib.services.layout.Object_downloadLayoutXml.ActionDomainEvent</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventFromActionAnnotation">
-                        <mml:attr name="eventType">org.apache.isis.applib.services.layout.Object_downloadLayoutXml.ActionDomainEvent</mml:attr>
-                        <mml:attr name="intent.act">EXECUTE</mml:attr>
-                        <mml:attr name="methods">public java.lang.Object org.apache.isis.applib.services.layout.Object_downloadLayoutXml.act(java.lang.String,org.apache.isis.applib.services.layout.LayoutService$Style)</mml:attr>
-                        <mml:attr name="onType">org.apache.isis.applib.services.layout.Object_downloadLayoutXml</mml:attr>
-                        <mml:attr name="returnType">java.lang.Object</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.bulk.BulkFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.bulk.BulkFacetForActionAnnotation">
-                        <mml:attr name="value">REGULAR_ONLY</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.notcontributed.NotContributedFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.NotContributedFacetForActionLayoutAnnotation">
-                        <mml:attr name="as">ASSOCIATION</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.actions.notcontributed.derived.NotContributedFacetDerivedFromMixinFacet</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.ActionPositionFacetForActionLayoutAnnotation">
-                        <mml:attr name="position">PANEL_DROPDOWN</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.prototype.PrototypeFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.prototype.PrototypeFacetForActionAnnotation">
-                        <mml:attr name="deploymentCategory">PRODUCTION</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.semantics.ActionSemanticsFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.semantics.ActionSemanticsFacetForActionAnnotation">
-                        <mml:attr name="value">SAFE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
-                        <mml:attr name="context">domainapp.modules.simple.dom.impl.SimpleObject#downloadLayoutXml()</mml:attr>
-                        <mml:attr name="originalText">Download Layout Xml</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.all.named.NamedFacetInferred</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.collections.collection.defaultview.DefaultViewFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.layout.DefaultViewFacetForCollectionLayoutAnnotation">
-                        <mml:attr name="value">hidden</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.members.cssclassfa.CssClassFaFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.CssClassFaFacetForActionLayoutAnnotation">
-                        <mml:attr name="position">LEFT</mml:attr>
-                        <mml:attr name="value">fa fa-fw fa-download</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.members.order.MemberOrderFacet" fqcn="org.apache.isis.core.metamodel.facets.members.order.annotprop.MemberOrderFacetAnnotation">
-                        <mml:attr name="name">datanucleusIdLong</mml:attr>
-                        <mml:attr name="originalName">datanucleusIdLong</mml:attr>
-                        <mml:attr name="sequence">700.1</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
-                        <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline">
-                        <mml:attr name="derived">true</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.renderunchanged.UnchangingFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.UnchangingFacetOnPropertyFromLayoutProperties">
-                        <mml:attr name="value">false</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                    </mml:facet>
-                </mml:facets>
-                <mml:returnType>java.lang.Object</mml:returnType>
-                <mml:params>
-                    <mml:param xsi:type="mml:scalarParam" id="fileName" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-                        <mml:facets>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.actions.defaults.ActionDefaultsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.defaults.fromtype.ActionParameterDefaultFacetDerivedFromTypeFacets">
-                                <mml:attr name="defaultFacets">org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacetUsingDefaultsProvider;org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacetUsingDefaultsProvider</mml:attr>
-                                <mml:attr name="derived">true</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.describedas.annotderived.DescribedAsFacetOnParameterDerivedFromType"/>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
-                                <mml:attr name="context">org.apache.isis.applib.services.layout.Object_downloadLayoutXml#act(java.lang.String,org.apache.isis.applib.services.layout.LayoutService$Style)</mml:attr>
-                                <mml:attr name="originalText">File name</mml:attr>
-                                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.layout.NamedFacetForParameterLayoutAnnotation</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.labelat.LabelAtFacet" fqcn="org.apache.isis.core.metamodel.facets.param.layout.LabelAtFacetForParameterLayoutAnnotation">
-                                <mml:attr name="label">DEFAULT</mml:attr>
-                                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.layout.LabelAtFacetForParameterLayoutAnnotation</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacet" fqcn="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacetDefault">
-                                <mml:attr name="inverted">false</mml:attr>
-                                <mml:attr name="semantics">REQUIRED</mml:attr>
-                                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacetDefault</mml:attr>
-                                <mml:attr name="validating">true</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.typicallen.TypicalLengthFacet" fqcn="org.apache.isis.core.metamodel.facets.param.typicallen.fromtype.TypicalLengthFacetOnParameterDerivedFromType">
-                                <mml:attr name="derived">true</mml:attr>
-                                <mml:attr name="typicalLengthFacet">org.apache.isis.core.metamodel.facets.object.value.TypicalLengthFacetUsingParser</mml:attr>
-                                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.typicallen.fromtype.TypicalLengthFacetOnParameterDerivedFromType</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.param.defaults.ActionParameterDefaultsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.defaults.methodnum.ActionParameterDefaultsFacetViaMethod">
-                                <mml:attr name="intent.default0Act">DEFAULTS</mml:attr>
-                                <mml:attr name="methods">public java.lang.String org.apache.isis.applib.services.layout.Object_downloadLayoutXml.default0Act()</mml:attr>
-                            </mml:facet>
-                        </mml:facets>
-                        <mml:type>java.lang.String</mml:type>
-                    </mml:param>
-                    <mml:param xsi:type="mml:scalarParam" id="style" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-                        <mml:facets>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.actions.defaults.ActionDefaultsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.defaults.fromtype.ActionParameterDefaultFacetDerivedFromTypeFacets">
-                                <mml:attr name="defaultFacets">org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacetUsingDefaultsProvider;org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacetUsingDefaultsProvider</mml:attr>
-                                <mml:attr name="derived">true</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.describedas.annotderived.DescribedAsFacetOnParameterDerivedFromType"/>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacet" fqcn="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacetDefault">
-                                <mml:attr name="inverted">false</mml:attr>
-                                <mml:attr name="semantics">REQUIRED</mml:attr>
-                                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacetDefault</mml:attr>
-                                <mml:attr name="validating">true</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.typicallen.TypicalLengthFacet" fqcn="org.apache.isis.core.metamodel.facets.param.typicallen.fromtype.TypicalLengthFacetOnParameterDerivedFromType">
-                                <mml:attr name="derived">true</mml:attr>
-                                <mml:attr name="typicalLengthFacet">org.apache.isis.core.metamodel.facets.object.value.TypicalLengthFacetUsingParser</mml:attr>
-                                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.typicallen.fromtype.TypicalLengthFacetOnParameterDerivedFromType</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.param.choices.ActionParameterChoicesFacet" fqcn="org.apache.isis.core.metamodel.facets.param.choices.enums.ActionParameterChoicesFacetDerivedFromChoicesFacet"/>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.param.defaults.ActionParameterDefaultsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.defaults.methodnum.ActionParameterDefaultsFacetViaMethod">
-                                <mml:attr name="intent.default1Act">DEFAULTS</mml:attr>
-                                <mml:attr name="methods">public org.apache.isis.applib.services.layout.LayoutService$Style org.apache.isis.applib.services.layout.Object_downloadLayoutXml.default1Act()</mml:attr>
-                            </mml:facet>
-                        </mml:facets>
-                        <mml:type>org.apache.isis.applib.services.layout.LayoutService$Style</mml:type>
-                    </mml:param>
-                </mml:params>
-            </mml:act>
-            <mml:act id="openRestApi">
-                <mml:facets>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="when">ALWAYS</mml:attr>
-                        <mml:attr name="where">NOWHERE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacetForActionAnnotation">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="validating">true</mml:attr>
-                        <mml:attr name="value">org.apache.isis.applib.services.layout.Object_openRestApi.ActionDomainEvent</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventFromActionAnnotation">
-                        <mml:attr name="eventType">org.apache.isis.applib.services.layout.Object_openRestApi.ActionDomainEvent</mml:attr>
-                        <mml:attr name="intent.act">EXECUTE</mml:attr>
-                        <mml:attr name="methods">public java.net.URL org.apache.isis.applib.services.layout.Object_openRestApi.act() throws java.net.MalformedURLException</mml:attr>
-                        <mml:attr name="onType">org.apache.isis.applib.services.layout.Object_openRestApi</mml:attr>
-                        <mml:attr name="returnType">java.net.URL</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.bulk.BulkFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.bulk.BulkFacetForActionAnnotation">
-                        <mml:attr name="value">REGULAR_ONLY</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.notcontributed.NotContributedFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.NotContributedFacetForActionLayoutAnnotation">
-                        <mml:attr name="as">ASSOCIATION</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.actions.notcontributed.derived.NotContributedFacetDerivedFromMixinFacet</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.ActionPositionFacetForActionLayoutAnnotation">
-                        <mml:attr name="position">PANEL_DROPDOWN</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.prototype.PrototypeFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.prototype.PrototypeFacetForActionAnnotation">
-                        <mml:attr name="deploymentCategory">PRODUCTION</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.semantics.ActionSemanticsFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.semantics.ActionSemanticsFacetForActionAnnotation">
-                        <mml:attr name="value">SAFE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
-                        <mml:attr name="context">domainapp.modules.simple.dom.impl.SimpleObject#openRestApi()</mml:attr>
-                        <mml:attr name="originalText">Open Rest Api</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.all.named.NamedFacetInferred</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.collections.collection.defaultview.DefaultViewFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.layout.DefaultViewFacetForCollectionLayoutAnnotation">
-                        <mml:attr name="value">hidden</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.members.cssclassfa.CssClassFaFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.CssClassFaFacetForActionLayoutAnnotation">
-                        <mml:attr name="position">LEFT</mml:attr>
-                        <mml:attr name="value">fa fa-fw fa-external-link</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.members.order.MemberOrderFacet" fqcn="org.apache.isis.core.metamodel.facets.members.order.annotprop.MemberOrderFacetAnnotation">
-                        <mml:attr name="name">datanucleusIdLong</mml:attr>
-                        <mml:attr name="originalName">datanucleusIdLong</mml:attr>
-                        <mml:attr name="sequence">750.1</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
-                        <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline">
-                        <mml:attr name="derived">true</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.renderunchanged.UnchangingFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.UnchangingFacetOnPropertyFromLayoutProperties">
-                        <mml:attr name="value">false</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                    </mml:facet>
-                </mml:facets>
-                <mml:returnType>java.net.URL</mml:returnType>
-                <mml:params/>
-            </mml:act>
-            <mml:act id="rebuildMetamodel">
-                <mml:facets>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="when">ALWAYS</mml:attr>
-                        <mml:attr name="where">NOWHERE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacetForActionAnnotation">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="validating">true</mml:attr>
-                        <mml:attr name="value">org.apache.isis.applib.services.layout.Object_rebuildMetamodel.ActionDomainEvent</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventFromActionAnnotation">
-                        <mml:attr name="eventType">org.apache.isis.applib.services.layout.Object_rebuildMetamodel.ActionDomainEvent</mml:attr>
-                        <mml:attr name="intent.act">EXECUTE</mml:attr>
-                        <mml:attr name="methods">public void org.apache.isis.applib.services.layout.Object_rebuildMetamodel.act()</mml:attr>
-                        <mml:attr name="onType">org.apache.isis.applib.services.layout.Object_rebuildMetamodel</mml:attr>
-                        <mml:attr name="returnType">void</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.bulk.BulkFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.bulk.BulkFacetForActionAnnotation">
-                        <mml:attr name="value">REGULAR_ONLY</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.notcontributed.NotContributedFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.NotContributedFacetForActionLayoutAnnotation">
-                        <mml:attr name="as">ASSOCIATION</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.actions.notcontributed.derived.NotContributedFacetDerivedFromMixinFacet</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.ActionPositionFacetForActionLayoutAnnotation">
-                        <mml:attr name="position">PANEL_DROPDOWN</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.prototype.PrototypeFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.prototype.PrototypeFacetForActionAnnotation">
-                        <mml:attr name="deploymentCategory">PRODUCTION</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.semantics.ActionSemanticsFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.semantics.ActionSemanticsFacetForActionAnnotation">
-                        <mml:attr name="value">IDEMPOTENT</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
-                        <mml:attr name="context">domainapp.modules.simple.dom.impl.SimpleObject#rebuildMetamodel()</mml:attr>
-                        <mml:attr name="originalText">Rebuild Metamodel</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.all.named.NamedFacetInferred</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.collections.collection.defaultview.DefaultViewFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.layout.DefaultViewFacetForCollectionLayoutAnnotation">
-                        <mml:attr name="value">hidden</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.members.cssclassfa.CssClassFaFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.CssClassFaFacetForActionLayoutAnnotation">
-                        <mml:attr name="position">LEFT</mml:attr>
-                        <mml:attr name="value">fa fa-fw fa-refresh</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.members.order.MemberOrderFacet" fqcn="org.apache.isis.core.metamodel.facets.members.order.annotprop.MemberOrderFacetAnnotation">
-                        <mml:attr name="name">datanucleusIdLong</mml:attr>
-                        <mml:attr name="originalName">datanucleusIdLong</mml:attr>
-                        <mml:attr name="sequence">800.1</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
-                        <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline">
-                        <mml:attr name="derived">true</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.renderunchanged.UnchangingFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.UnchangingFacetOnPropertyFromLayoutProperties">
-                        <mml:attr name="value">false</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                    </mml:facet>
-                </mml:facets>
-                <mml:returnType>void</mml:returnType>
-                <mml:params/>
-            </mml:act>
-            <mml:act id="updateName">
-                <mml:facets>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.associateWith.AssociatedWithFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.associateWith.AssociatedWithFacetForActionAnnotation">
-                        <mml:attr name="value">name</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="when">ALWAYS</mml:attr>
-                        <mml:attr name="where">NOWHERE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="when">ALWAYS</mml:attr>
-                        <mml:attr name="where">NOWHERE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacetForActionAnnotation">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="validating">true</mml:attr>
-                        <mml:attr name="value">org.apache.isis.applib.services.eventbus.ActionDomainEvent.Default</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventFromActionAnnotation">
-                        <mml:attr name="eventType">org.apache.isis.applib.services.eventbus.ActionDomainEvent.Default</mml:attr>
-                        <mml:attr name="intent.updateName">EXECUTE</mml:attr>
-                        <mml:attr name="methods">public domainapp.modules.simple.dom.impl.SimpleObject domainapp.modules.simple.dom.impl.SimpleObject.updateName(java.lang.String)</mml:attr>
-                        <mml:attr name="onType">domainapp.modules.simple.dom.impl.SimpleObject</mml:attr>
-                        <mml:attr name="returnType">domainapp.modules.simple.dom.impl.SimpleObject</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.bulk.BulkFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.bulk.BulkFacetForActionAnnotation">
-                        <mml:attr name="value">REGULAR_ONLY</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.command.CommandFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.command.CommandFacetForActionAnnotation">
-                        <mml:attr name="disabled">false</mml:attr>
-                        <mml:attr name="executeIn">FOREGROUND</mml:attr>
-                        <mml:attr name="persistence">PERSISTED</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacetFallback">
-                        <mml:attr name="position">BELOW</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.publish.PublishedActionFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.publishing.PublishedActionFacetForActionAnnotation">
-                        <mml:attr name="value">org.apache.isis.core.metamodel.facets.actions.publish.PublishedActionPayloadFactoryDefault</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.semantics.ActionSemanticsFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.semantics.ActionSemanticsFacetForActionAnnotation">
-                        <mml:attr name="value">IDEMPOTENT</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
-                        <mml:attr name="context">domainapp.modules.simple.dom.impl.SimpleObject#updateName()</mml:attr>
-                        <mml:attr name="originalText">Update Name</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.fallback.NamedFacetDefault</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.collections.collection.defaultview.DefaultViewFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.layout.DefaultViewFacetForCollectionLayoutAnnotation">
-                        <mml:attr name="value">hidden</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.members.order.MemberOrderFacet" fqcn="org.apache.isis.core.metamodel.facets.members.order.annotprop.MemberOrderFacetForActionAnnotation">
-                        <mml:attr name="name">name</mml:attr>
-                        <mml:attr name="originalName">name</mml:attr>
-                        <mml:attr name="sequence">1</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
-                        <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline">
-                        <mml:attr name="derived">true</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.renderunchanged.UnchangingFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.UnchangingFacetOnPropertyFromLayoutProperties">
-                        <mml:attr name="value">false</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                    </mml:facet>
-                </mml:facets>
-                <mml:returnType>domainapp.modules.simple.dom.impl.SimpleObject</mml:returnType>
-                <mml:params>
-                    <mml:param xsi:type="mml:scalarParam" id="name" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-                        <mml:facets>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.actions.defaults.ActionDefaultsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.defaults.fromtype.ActionParameterDefaultFacetDerivedFromTypeFacets">
-                                <mml:attr name="defaultFacets">org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacetUsingDefaultsProvider</mml:attr>
-                                <mml:attr name="derived">true</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.actions.validate.ActionParameterValidationFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.validate.method.ActionParameterValidationFacetViaMethod">
-                                <mml:attr name="intent.validate0UpdateName">CHECK_IF_VALID</mml:attr>
-                                <mml:attr name="methods">public org.apache.isis.applib.services.i18n.TranslatableString domainapp.modules.simple.dom.impl.SimpleObject.validate0UpdateName(java.lang.String)</mml:attr>
-                                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.actions.validate.method.ActionParameterValidationFacetViaMethod</mml:attr>
-                                <mml:attr name="validating">true</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.describedas.annotderived.DescribedAsFacetOnParameterDerivedFromType"/>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
-                                <mml:attr name="context">domainapp.modules.simple.dom.impl.SimpleObject#updateName(java.lang.String)</mml:attr>
-                                <mml:attr name="originalText">Name</mml:attr>
-                                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.layout.NamedFacetForParameterLayoutAnnotation</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.labelat.LabelAtFacet" fqcn="org.apache.isis.core.metamodel.facets.param.layout.LabelAtFacetForParameterLayoutAnnotation">
-                                <mml:attr name="label">DEFAULT</mml:attr>
-                                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.layout.LabelAtFacetForParameterLayoutAnnotation</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacet" fqcn="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacetDefault">
-                                <mml:attr name="inverted">false</mml:attr>
-                                <mml:attr name="semantics">REQUIRED</mml:attr>
-                                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacetDefault</mml:attr>
-                                <mml:attr name="validating">true</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.maxlen.MaxLengthFacet" fqcn="org.apache.isis.core.metamodel.facets.param.parameter.maxlen.MaxLengthFacetForParameterAnnotation">
-                                <mml:attr name="validating">true</mml:attr>
-                                <mml:attr name="value">40</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.typicallen.TypicalLengthFacet" fqcn="org.apache.isis.core.metamodel.facets.param.typicallen.fromtype.TypicalLengthFacetOnParameterDerivedFromType">
-                                <mml:attr name="derived">true</mml:attr>
-                                <mml:attr name="typicalLengthFacet">org.apache.isis.core.metamodel.facets.object.value.TypicalLengthFacetUsingParser</mml:attr>
-                                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.typicallen.fromtype.TypicalLengthFacetOnParameterDerivedFromType</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.param.defaults.ActionParameterDefaultsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.defaults.methodnum.ActionParameterDefaultsFacetViaMethod">
-                                <mml:attr name="intent.default0UpdateName">DEFAULTS</mml:attr>
-                                <mml:attr name="methods">public java.lang.String domainapp.modules.simple.dom.impl.SimpleObject.default0UpdateName()</mml:attr>
-                            </mml:facet>
-                        </mml:facets>
-                        <mml:type>java.lang.String</mml:type>
-                    </mml:param>
-                </mml:params>
-            </mml:act>
-        </mml:actions>
-    </mml:domainClass>
-    <mml:domainClass id="domainapp.modules.simple.dom.impl.SimpleObjects" service="true">
-        <mml:facets>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
-                <mml:attr name="context">domainapp.modules.simple.dom.impl.SimpleObjects</mml:attr>
-                <mml:attr name="originalText">Simple Objects</mml:attr>
-                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.object.domainservicelayout.NamedFacetForDomainServiceLayoutAnnotation</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
-                <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.domainservice.DomainServiceFacet" fqcn="org.apache.isis.core.metamodel.facets.object.domainservice.annotation.DomainServiceFacetAnnotation">
-                <mml:attr name="natureOfService">VIEW_MENU_ONLY</mml:attr>
-                <mml:attr name="repositoryFor">domainapp.modules.simple.dom.impl.SimpleObject</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.domainservicelayout.DomainServiceLayoutFacet" fqcn="org.apache.isis.core.metamodel.facets.object.domainservicelayout.annotation.DomainServiceLayoutFacetAnnotation">
-                <mml:attr name="menuBar">PRIMARY</mml:attr>
-                <mml:attr name="menuOrder">10</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.grid.GridFacet" fqcn="org.apache.isis.core.metamodel.facets.object.grid.GridFacetDefault"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.icon.IconFacet" fqcn="org.apache.isis.core.metamodel.facets.object.domainservice.annotation.IconFacetDerivedFromDomainServiceAnnotation">
-                <mml:attr name="repositoryFor">domainapp.modules.simple.dom.impl.SimpleObject</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.membergroups.MemberGroupLayoutFacet" fqcn="org.apache.isis.core.metamodel.facets.object.membergroups.annotprop.MemberGroupLayoutFacetFallback">
-                <mml:attr name="columns">[4,0,0,8]</mml:attr>
-                <mml:attr name="left">General</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.notpersistable.NotPersistableFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.NotPersistableFacetNull">
-                <mml:attr name="disabling">true</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.objectspecid.ObjectSpecIdFacet" fqcn="org.apache.isis.core.metamodel.facets.object.objectspecid.classname.ObjectSpecIdFacetDerivedFromDomainServiceAnnotationElseGetId">
-                <mml:attr name="value">simple.SimpleObjectMenu</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.objectvalidprops.ObjectValidPropertiesFacet" fqcn="org.apache.isis.core.metamodel.facets.object.objectvalidprops.impl.ObjectValidPropertiesFacetImpl">
-                <mml:attr name="validating">true</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.paged.PagedFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.PagedFacetFromConfiguration">
-                <mml:attr name="derived">true</mml:attr>
-                <mml:attr name="value">25</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.plural.PluralFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.PluralFacetTranslated">
-                <mml:attr name="context">domainapp.modules.simple.dom.impl.SimpleObjects</mml:attr>
-                <mml:attr name="derived">true</mml:attr>
-                <mml:attr name="originalText">Simple Objects</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
-                <mml:attr name="disabling">true</mml:attr>
-                <mml:attr name="hiding">true</mml:attr>
-            </mml:facet>
-        </mml:facets>
-        <mml:actions>
-            <mml:act id="create">
-                <mml:facets>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="when">ALWAYS</mml:attr>
-                        <mml:attr name="where">NOWHERE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="when">ALWAYS</mml:attr>
-                        <mml:attr name="where">NOWHERE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacetForActionAnnotation">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="validating">true</mml:attr>
-                        <mml:attr name="value">domainapp.modules.simple.dom.impl.SimpleObjects.CreateDomainEvent</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventFromActionAnnotation">
-                        <mml:attr name="eventType">domainapp.modules.simple.dom.impl.SimpleObjects.CreateDomainEvent</mml:attr>
-                        <mml:attr name="intent.create">EXECUTE</mml:attr>
-                        <mml:attr name="methods">public domainapp.modules.simple.dom.impl.SimpleObject domainapp.modules.simple.dom.impl.SimpleObjects.create(java.lang.String)</mml:attr>
-                        <mml:attr name="onType">domainapp.modules.simple.dom.impl.SimpleObjects</mml:attr>
-                        <mml:attr name="returnType">domainapp.modules.simple.dom.impl.SimpleObject</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.bulk.BulkFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.bulk.BulkFacetForActionAnnotation">
-                        <mml:attr name="value">REGULAR_ONLY</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.notcontributed.NotContributedFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.notcontributed.derived.NotContributedFacetDerivedFromDomainServiceFacet">
-                        <mml:attr name="as">EITHER</mml:attr>
-                        <mml:attr name="derived">true</mml:attr>
-                        <mml:attr name="natureOfService">VIEW_MENU_ONLY</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacetFallback">
-                        <mml:attr name="position">BELOW</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.semantics.ActionSemanticsFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.semantics.ActionSemanticsFacetForActionAnnotation">
-                        <mml:attr name="value">NON_IDEMPOTENT</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
-                        <mml:attr name="context">domainapp.modules.simple.dom.impl.SimpleObjects#create()</mml:attr>
-                        <mml:attr name="originalText">Create</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.fallback.NamedFacetDefault</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.collections.collection.defaultview.DefaultViewFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.layout.DefaultViewFacetForCollectionLayoutAnnotation">
-                        <mml:attr name="value">hidden</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.members.order.MemberOrderFacet" fqcn="org.apache.isis.core.metamodel.facets.members.order.annotprop.MemberOrderFacetAnnotation">
-                        <mml:attr name="sequence">3</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
-                        <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline">
-                        <mml:attr name="derived">true</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.renderunchanged.UnchangingFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.UnchangingFacetOnPropertyFromLayoutProperties">
-                        <mml:attr name="value">false</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                    </mml:facet>
-                </mml:facets>
-                <mml:returnType>domainapp.modules.simple.dom.impl.SimpleObject</mml:returnType>
-                <mml:params>
-                    <mml:param xsi:type="mml:scalarParam" id="name" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-                        <mml:facets>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.actions.defaults.ActionDefaultsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.defaults.fromtype.ActionParameterDefaultFacetDerivedFromTypeFacets">
-                                <mml:attr name="defaultFacets">org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacetUsingDefaultsProvider</mml:attr>
-                                <mml:attr name="derived">true</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.describedas.annotderived.DescribedAsFacetOnParameterDerivedFromType"/>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
-                                <mml:attr name="context">domainapp.modules.simple.dom.impl.SimpleObjects#create(java.lang.String)</mml:attr>
-                                <mml:attr name="originalText">Name</mml:attr>
-                                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.layout.NamedFacetForParameterLayoutAnnotation</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.labelat.LabelAtFacet" fqcn="org.apache.isis.core.metamodel.facets.param.layout.LabelAtFacetForParameterLayoutAnnotation">
-                                <mml:attr name="label">DEFAULT</mml:attr>
-                                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.layout.LabelAtFacetForParameterLayoutAnnotation</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacet" fqcn="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacetDefault">
-                                <mml:attr name="inverted">false</mml:attr>
-                                <mml:attr name="semantics">REQUIRED</mml:attr>
-                                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacetDefault</mml:attr>
-                                <mml:attr name="validating">true</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.typicallen.TypicalLengthFacet" fqcn="org.apache.isis.core.metamodel.facets.param.typicallen.fromtype.TypicalLengthFacetOnParameterDerivedFromType">
-                                <mml:attr name="derived">true</mml:attr>
-                                <mml:attr name="typicalLengthFacet">org.apache.isis.core.metamodel.facets.object.value.TypicalLengthFacetUsingParser</mml:attr>
-                                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.typicallen.fromtype.TypicalLengthFacetOnParameterDerivedFromType</mml:attr>
-                            </mml:facet>
-                        </mml:facets>
-                        <mml:type>java.lang.String</mml:type>
-                    </mml:param>
-                </mml:params>
-            </mml:act>
-            <mml:act id="findByName">
-                <mml:facets>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actcoll.typeof.TypeOfFacet" fqcn="org.apache.isis.core.metamodel.facets.actcoll.typeof.TypeOfFacetInferredFromGenerics">
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.actcoll.typeof.TypeOfFacetInferredFromGenerics</mml:attr>
-                        <mml:attr name="value">domainapp.modules.simple.dom.impl.SimpleObject</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="when">ALWAYS</mml:attr>
-                        <mml:attr name="where">NOWHERE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="when">ALWAYS</mml:attr>
-                        <mml:attr name="where">NOWHERE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacetForActionAnnotation">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="validating">true</mml:attr>
-                        <mml:attr name="value">org.apache.isis.applib.services.eventbus.ActionDomainEvent.Default</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventFromActionAnnotation">
-                        <mml:attr name="eventType">org.apache.isis.applib.services.eventbus.ActionDomainEvent.Default</mml:attr>
-                        <mml:attr name="intent.findByName">EXECUTE</mml:attr>
-                        <mml:attr name="methods">public java.util.List&lt;domainapp.modules.simple.dom.impl.SimpleObject&gt; domainapp.modules.simple.dom.impl.SimpleObjects.findByName(java.lang.String)</mml:attr>
-                        <mml:attr name="onType">domainapp.modules.simple.dom.impl.SimpleObjects</mml:attr>
-                        <mml:attr name="returnType">java.util.List</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.bulk.BulkFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.bulk.BulkFacetForActionAnnotation">
-                        <mml:attr name="value">REGULAR_ONLY</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.notcontributed.NotContributedFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.notcontributed.derived.NotContributedFacetDerivedFromDomainServiceFacet">
-                        <mml:attr name="as">EITHER</mml:attr>
-                        <mml:attr name="derived">true</mml:attr>
-                        <mml:attr name="natureOfService">VIEW_MENU_ONLY</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.ActionPositionFacetForActionLayoutAnnotation">
-                        <mml:attr name="position">BELOW</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.semantics.ActionSemanticsFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.semantics.ActionSemanticsFacetForActionAnnotation">
-                        <mml:attr name="value">SAFE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
-                        <mml:attr name="context">domainapp.modules.simple.dom.impl.SimpleObjects#findByName()</mml:attr>
-                        <mml:attr name="originalText">Find By Name</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.fallback.NamedFacetDefault</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.collections.collection.defaultview.DefaultViewFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.layout.DefaultViewFacetForCollectionLayoutAnnotation">
-                        <mml:attr name="value">hidden</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.members.order.MemberOrderFacet" fqcn="org.apache.isis.core.metamodel.facets.members.order.annotprop.MemberOrderFacetAnnotation">
-                        <mml:attr name="sequence">2</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.BookmarkPolicyFacetForActionLayoutAnnotation">
-                        <mml:attr name="bookmarkPolicy">AS_ROOT</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline">
-                        <mml:attr name="derived">true</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.renderunchanged.UnchangingFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.UnchangingFacetOnPropertyFromLayoutProperties">
-                        <mml:attr name="value">false</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                    </mml:facet>
-                </mml:facets>
-                <mml:returnType>java.util.List</mml:returnType>
-                <mml:params>
-                    <mml:param xsi:type="mml:scalarParam" id="name" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-                        <mml:facets>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.actions.defaults.ActionDefaultsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.defaults.fromtype.ActionParameterDefaultFacetDerivedFromTypeFacets">
-                                <mml:attr name="defaultFacets">org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacetUsingDefaultsProvider</mml:attr>
-                                <mml:attr name="derived">true</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.describedas.annotderived.DescribedAsFacetOnParameterDerivedFromType"/>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
-                                <mml:attr name="context">domainapp.modules.simple.dom.impl.SimpleObjects#findByName(java.lang.String)</mml:attr>
-                                <mml:attr name="originalText">Name</mml:attr>
-                                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.layout.NamedFacetForParameterLayoutAnnotation</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.labelat.LabelAtFacet" fqcn="org.apache.isis.core.metamodel.facets.param.layout.LabelAtFacetForParameterLayoutAnnotation">
-                                <mml:attr name="label">DEFAULT</mml:attr>
-                                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.layout.LabelAtFacetForParameterLayoutAnnotation</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacet" fqcn="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacetDefault">
-                                <mml:attr name="inverted">false</mml:attr>
-                                <mml:attr name="semantics">REQUIRED</mml:attr>
-                                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacetDefault</mml:attr>
-                                <mml:attr name="validating">true</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.typicallen.TypicalLengthFacet" fqcn="org.apache.isis.core.metamodel.facets.param.typicallen.fromtype.TypicalLengthFacetOnParameterDerivedFromType">
-                                <mml:attr name="derived">true</mml:attr>
-                                <mml:attr name="typicalLengthFacet">org.apache.isis.core.metamodel.facets.object.value.TypicalLengthFacetUsingParser</mml:attr>
-                                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.typicallen.fromtype.TypicalLengthFacetOnParameterDerivedFromType</mml:attr>
-                            </mml:facet>
-                        </mml:facets>
-                        <mml:type>java.lang.String</mml:type>
-                    </mml:param>
-                </mml:params>
-            </mml:act>
-            <mml:act id="listAll">
-                <mml:facets>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actcoll.typeof.TypeOfFacet" fqcn="org.apache.isis.core.metamodel.facets.actcoll.typeof.TypeOfFacetInferredFromGenerics">
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.actcoll.typeof.TypeOfFacetInferredFromGenerics</mml:attr>
-                        <mml:attr name="value">domainapp.modules.simple.dom.impl.SimpleObject</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="when">ALWAYS</mml:attr>
-                        <mml:attr name="where">NOWHERE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="when">ALWAYS</mml:attr>
-                        <mml:attr name="where">NOWHERE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacetForActionAnnotation">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="validating">true</mml:attr>
-                        <mml:attr name="value">org.apache.isis.applib.services.eventbus.ActionDomainEvent.Default</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventFromActionAnnotation">
-                        <mml:attr name="eventType">org.apache.isis.applib.services.eventbus.ActionDomainEvent.Default</mml:attr>
-                        <mml:attr name="intent.listAll">EXECUTE</mml:attr>
-                        <mml:attr name="methods">public java.util.List&lt;domainapp.modules.simple.dom.impl.SimpleObject&gt; domainapp.modules.simple.dom.impl.SimpleObjects.listAll()</mml:attr>
-                        <mml:attr name="onType">domainapp.modules.simple.dom.impl.SimpleObjects</mml:attr>
-                        <mml:attr name="returnType">java.util.List</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.bulk.BulkFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.bulk.BulkFacetForActionAnnotation">
-                        <mml:attr name="value">REGULAR_ONLY</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.notcontributed.NotContributedFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.notcontributed.derived.NotContributedFacetDerivedFromDomainServiceFacet">
-                        <mml:attr name="as">EITHER</mml:attr>
-                        <mml:attr name="derived">true</mml:attr>
-                        <mml:attr name="natureOfService">VIEW_MENU_ONLY</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.ActionPositionFacetForActionLayoutAnnotation">
-                        <mml:attr name="position">BELOW</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.semantics.ActionSemanticsFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.semantics.ActionSemanticsFacetForActionAnnotation">
-                        <mml:attr name="value">SAFE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
-                        <mml:attr name="context">domainapp.modules.simple.dom.impl.SimpleObjects#listAll()</mml:attr>
-                        <mml:attr name="originalText">List All</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.fallback.NamedFacetDefault</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.collections.collection.defaultview.DefaultViewFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.layout.DefaultViewFacetForCollectionLayoutAnnotation">
-                        <mml:attr name="value">hidden</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.members.order.MemberOrderFacet" fqcn="org.apache.isis.core.metamodel.facets.members.order.annotprop.MemberOrderFacetAnnotation">
-                        <mml:attr name="sequence">1</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.BookmarkPolicyFacetForActionLayoutAnnotation">
-                        <mml:attr name="bookmarkPolicy">AS_ROOT</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline">
-                        <mml:attr name="derived">true</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.renderunchanged.UnchangingFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.UnchangingFacetOnPropertyFromLayoutProperties">
-                        <mml:attr name="value">false</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                    </mml:facet>
-                </mml:facets>
-                <mml:returnType>java.util.List</mml:returnType>
-                <mml:params/>
-            </mml:act>
-        </mml:actions>
-    </mml:domainClass>
-    <mml:domainClass id="java.lang.Long">
-        <mml:facets>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.named.NamedFacetInferred">
-                <mml:attr name="escaped">true</mml:attr>
-                <mml:attr name="value">Long</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
-                <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacet" fqcn="org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacetUsingDefaultsProvider"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.encodeable.EncodableFacet" fqcn="org.apache.isis.core.metamodel.facets.object.encodeable.encoder.EncodableFacetUsingEncoderDecoder"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.grid.GridFacet" fqcn="org.apache.isis.core.metamodel.facets.object.grid.GridFacetDefault"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.immutable.ImmutableFacet" fqcn="org.apache.isis.core.metamodel.facets.object.value.ImmutableFacetViaValueSemantics">
-                <mml:attr name="disabling">true</mml:attr>
-                <mml:attr name="when">ALWAYS</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.membergroups.MemberGroupLayoutFacet" fqcn="org.apache.isis.core.metamodel.facets.object.membergroups.annotprop.MemberGroupLayoutFacetFallback">
-                <mml:attr name="columns">[4,0,0,8]</mml:attr>
-                <mml:attr name="left">General</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.notpersistable.NotPersistableFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.NotPersistableFacetNull">
-                <mml:attr name="disabling">true</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.objectspecid.ObjectSpecIdFacet" fqcn="org.apache.isis.core.metamodel.facets.object.objectspecid.classname.ObjectSpecIdFacetDerivedFromClassName">
-                <mml:attr name="derived">true</mml:attr>
-                <mml:attr name="value">java.lang.Long</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.objectvalidprops.ObjectValidPropertiesFacet" fqcn="org.apache.isis.core.metamodel.facets.object.objectvalidprops.impl.ObjectValidPropertiesFacetImpl">
-                <mml:attr name="validating">true</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.paged.PagedFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.PagedFacetFromConfiguration">
-                <mml:attr name="derived">true</mml:attr>
-                <mml:attr name="value">25</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.parseable.ParseableFacet" fqcn="org.apache.isis.core.metamodel.facets.object.parseable.parser.ParseableFacetUsingParser"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.plural.PluralFacet" fqcn="org.apache.isis.core.metamodel.facets.object.plural.inferred.PluralFacetInferred">
-                <mml:attr name="derived">true</mml:attr>
-                <mml:attr name="value">Longs</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.title.TitleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.title.parser.TitleFacetUsingParser"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.value.EqualByContentFacet" fqcn="org.apache.isis.core.metamodel.facets.object.value.EqualByContentFacetViaValueSemantics"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.value.ValueFacet" fqcn="org.apache.isis.core.metamodel.facets.object.value.vsp.ValueFacetUsingSemanticsProvider"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.maxlen.MaxLengthFacet" fqcn="org.apache.isis.core.metamodel.facets.object.value.MaxLengthFacetUsingParser2">
-                <mml:attr name="parser">org.apache.isis.core.metamodel.facets.value.longs.LongWrapperValueSemanticsProvider</mml:attr>
-                <mml:attr name="validating">true</mml:attr>
-                <mml:attr name="value">18</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.typicallen.TypicalLengthFacet" fqcn="org.apache.isis.core.metamodel.facets.object.value.TypicalLengthFacetUsingParser"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.value.longs.LongValueFacet" fqcn="org.apache.isis.core.metamodel.facets.value.longs.LongWrapperValueSemanticsProvider">
-                <mml:attr name="adaptedClass">java.lang.Long</mml:attr>
-                <mml:attr name="defaultValue">0</mml:attr>
-                <mml:attr name="equalByContent">true</mml:attr>
-                <mml:attr name="format">java.text.DecimalFormat@674dc</mml:attr>
-                <mml:attr name="immutable">true</mml:attr>
-                <mml:attr name="maxLength">18</mml:attr>
-                <mml:attr name="typicalLength">18</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
-                <mml:attr name="disabling">true</mml:attr>
-                <mml:attr name="hiding">true</mml:attr>
-            </mml:facet>
-        </mml:facets>
-    </mml:domainClass>
-    <mml:domainClass id="java.lang.Object">
-        <mml:facets>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.named.NamedFacetInferred">
-                <mml:attr name="escaped">true</mml:attr>
-                <mml:attr name="value">Object</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
-                <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.grid.GridFacet" fqcn="org.apache.isis.core.metamodel.facets.object.grid.GridFacetDefault"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.membergroups.MemberGroupLayoutFacet" fqcn="org.apache.isis.core.metamodel.facets.object.membergroups.annotprop.MemberGroupLayoutFacetFallback">
-                <mml:attr name="columns">[4,0,0,8]</mml:attr>
-                <mml:attr name="left">General</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.notpersistable.NotPersistableFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.NotPersistableFacetNull">
-                <mml:attr name="disabling">true</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.objectspecid.ObjectSpecIdFacet" fqcn="org.apache.isis.core.metamodel.facets.object.objectspecid.classname.ObjectSpecIdFacetDerivedFromClassName">
-                <mml:attr name="derived">true</mml:attr>
-                <mml:attr name="value">java.lang.Object</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.objectvalidprops.ObjectValidPropertiesFacet" fqcn="org.apache.isis.core.metamodel.facets.object.objectvalidprops.impl.ObjectValidPropertiesFacetImpl">
-                <mml:attr name="validating">true</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.paged.PagedFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.PagedFacetFromConfiguration">
-                <mml:attr name="derived">true</mml:attr>
-                <mml:attr name="value">25</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.plural.PluralFacet" fqcn="org.apache.isis.core.metamodel.facets.object.plural.inferred.PluralFacetInferred">
-                <mml:attr name="derived">true</mml:attr>
-                <mml:attr name="value">Objects</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
-                <mml:attr name="disabling">true</mml:attr>
-                <mml:attr name="hiding">true</mml:attr>
-            </mml:facet>
-        </mml:facets>
-        <mml:properties/>
-        <mml:collections/>
-        <mml:actions>
-            <mml:act id="downloadLayoutXml">
-                <mml:facets>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="when">ALWAYS</mml:attr>
-                        <mml:attr name="where">NOWHERE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacetForActionAnnotation">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="validating">true</mml:attr>
-                        <mml:attr name="value">org.apache.isis.applib.services.layout.Object_downloadLayoutXml.ActionDomainEvent</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventFromActionAnnotation">
-                        <mml:attr name="eventType">org.apache.isis.applib.services.layout.Object_downloadLayoutXml.ActionDomainEvent</mml:attr>
-                        <mml:attr name="intent.act">EXECUTE</mml:attr>
-                        <mml:attr name="methods">public java.lang.Object org.apache.isis.applib.services.layout.Object_downloadLayoutXml.act(java.lang.String,org.apache.isis.applib.services.layout.LayoutService$Style)</mml:attr>
-                        <mml:attr name="onType">org.apache.isis.applib.services.layout.Object_downloadLayoutXml</mml:attr>
-                        <mml:attr name="returnType">java.lang.Object</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.bulk.BulkFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.bulk.BulkFacetForActionAnnotation">
-                        <mml:attr name="value">REGULAR_ONLY</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.notcontributed.NotContributedFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.NotContributedFacetForActionLayoutAnnotation">
-                        <mml:attr name="as">ASSOCIATION</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.actions.notcontributed.derived.NotContributedFacetDerivedFromMixinFacet</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.ActionPositionFacetForActionLayoutAnnotation">
-                        <mml:attr name="position">PANEL_DROPDOWN</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.prototype.PrototypeFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.prototype.PrototypeFacetForActionAnnotation">
-                        <mml:attr name="deploymentCategory">PRODUCTION</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.semantics.ActionSemanticsFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.semantics.ActionSemanticsFacetForActionAnnotation">
-                        <mml:attr name="value">SAFE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
-                        <mml:attr name="context">java.lang.Object#downloadLayoutXml()</mml:attr>
-                        <mml:attr name="originalText">Download Layout Xml</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.all.named.NamedFacetInferred</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.collections.collection.defaultview.DefaultViewFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.layout.DefaultViewFacetForCollectionLayoutAnnotation">
-                        <mml:attr name="value">hidden</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.members.cssclassfa.CssClassFaFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.CssClassFaFacetForActionLayoutAnnotation">
-                        <mml:attr name="position">LEFT</mml:attr>
-                        <mml:attr name="value">fa fa-fw fa-download</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.members.order.MemberOrderFacet" fqcn="org.apache.isis.core.metamodel.facets.members.order.annotprop.MemberOrderFacetAnnotation">
-                        <mml:attr name="name">datanucleusIdLong</mml:attr>
-                        <mml:attr name="originalName">datanucleusIdLong</mml:attr>
-                        <mml:attr name="sequence">700.1</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
-                        <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline">
-                        <mml:attr name="derived">true</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.renderunchanged.UnchangingFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.UnchangingFacetOnPropertyFromLayoutProperties">
-                        <mml:attr name="value">false</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                    </mml:facet>
-                </mml:facets>
-                <mml:returnType>java.lang.Object</mml:returnType>
-                <mml:params>
-                    <mml:param xsi:type="mml:scalarParam" id="fileName" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-                        <mml:facets>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.actions.defaults.ActionDefaultsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.defaults.fromtype.ActionParameterDefaultFacetDerivedFromTypeFacets">
-                                <mml:attr name="defaultFacets">org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacetUsingDefaultsProvider;org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacetUsingDefaultsProvider</mml:attr>
-                                <mml:attr name="derived">true</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.describedas.annotderived.DescribedAsFacetOnParameterDerivedFromType"/>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
-                                <mml:attr name="context">org.apache.isis.applib.services.layout.Object_downloadLayoutXml#act(java.lang.String,org.apache.isis.applib.services.layout.LayoutService$Style)</mml:attr>
-                                <mml:attr name="originalText">File name</mml:attr>
-                                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.layout.NamedFacetForParameterLayoutAnnotation</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.labelat.LabelAtFacet" fqcn="org.apache.isis.core.metamodel.facets.param.layout.LabelAtFacetForParameterLayoutAnnotation">
-                                <mml:attr name="label">DEFAULT</mml:attr>
-                                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.layout.LabelAtFacetForParameterLayoutAnnotation</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacet" fqcn="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacetDefault">
-                                <mml:attr name="inverted">false</mml:attr>
-                                <mml:attr name="semantics">REQUIRED</mml:attr>
-                                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacetDefault</mml:attr>
-                                <mml:attr name="validating">true</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.typicallen.TypicalLengthFacet" fqcn="org.apache.isis.core.metamodel.facets.param.typicallen.fromtype.TypicalLengthFacetOnParameterDerivedFromType">
-                                <mml:attr name="derived">true</mml:attr>
-                                <mml:attr name="typicalLengthFacet">org.apache.isis.core.metamodel.facets.object.value.TypicalLengthFacetUsingParser</mml:attr>
-                                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.typicallen.fromtype.TypicalLengthFacetOnParameterDerivedFromType</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.param.defaults.ActionParameterDefaultsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.defaults.methodnum.ActionParameterDefaultsFacetViaMethod">
-                                <mml:attr name="intent.default0Act">DEFAULTS</mml:attr>
-                                <mml:attr name="methods">public java.lang.String org.apache.isis.applib.services.layout.Object_downloadLayoutXml.default0Act()</mml:attr>
-                            </mml:facet>
-                        </mml:facets>
-                        <mml:type>java.lang.String</mml:type>
-                    </mml:param>
-                    <mml:param xsi:type="mml:scalarParam" id="style" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-                        <mml:facets>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.actions.defaults.ActionDefaultsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.defaults.fromtype.ActionParameterDefaultFacetDerivedFromTypeFacets">
-                                <mml:attr name="defaultFacets">org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacetUsingDefaultsProvider;org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacetUsingDefaultsProvider</mml:attr>
-                                <mml:attr name="derived">true</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.describedas.annotderived.DescribedAsFacetOnParameterDerivedFromType"/>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacet" fqcn="org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacetDefault">
-                                <mml:attr name="inverted">false</mml:attr>
-                                <mml:attr name="semantics">REQUIRED</mml:attr>
-                                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.objectvalue.mandatory.MandatoryFacetDefault</mml:attr>
-                                <mml:attr name="validating">true</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.typicallen.TypicalLengthFacet" fqcn="org.apache.isis.core.metamodel.facets.param.typicallen.fromtype.TypicalLengthFacetOnParameterDerivedFromType">
-                                <mml:attr name="derived">true</mml:attr>
-                                <mml:attr name="typicalLengthFacet">org.apache.isis.core.metamodel.facets.object.value.TypicalLengthFacetUsingParser</mml:attr>
-                                <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.param.typicallen.fromtype.TypicalLengthFacetOnParameterDerivedFromType</mml:attr>
-                            </mml:facet>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.param.choices.ActionParameterChoicesFacet" fqcn="org.apache.isis.core.metamodel.facets.param.choices.enums.ActionParameterChoicesFacetDerivedFromChoicesFacet"/>
-                            <mml:facet id="org.apache.isis.core.metamodel.facets.param.defaults.ActionParameterDefaultsFacet" fqcn="org.apache.isis.core.metamodel.facets.param.defaults.methodnum.ActionParameterDefaultsFacetViaMethod">
-                                <mml:attr name="intent.default1Act">DEFAULTS</mml:attr>
-                                <mml:attr name="methods">public org.apache.isis.applib.services.layout.LayoutService$Style org.apache.isis.applib.services.layout.Object_downloadLayoutXml.default1Act()</mml:attr>
-                            </mml:facet>
-                        </mml:facets>
-                        <mml:type>org.apache.isis.applib.services.layout.LayoutService$Style</mml:type>
-                    </mml:param>
-                </mml:params>
-            </mml:act>
-            <mml:act id="openRestApi">
-                <mml:facets>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="when">ALWAYS</mml:attr>
-                        <mml:attr name="where">NOWHERE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacetForActionAnnotation">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="validating">true</mml:attr>
-                        <mml:attr name="value">org.apache.isis.applib.services.layout.Object_openRestApi.ActionDomainEvent</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventFromActionAnnotation">
-                        <mml:attr name="eventType">org.apache.isis.applib.services.layout.Object_openRestApi.ActionDomainEvent</mml:attr>
-                        <mml:attr name="intent.act">EXECUTE</mml:attr>
-                        <mml:attr name="methods">public java.net.URL org.apache.isis.applib.services.layout.Object_openRestApi.act() throws java.net.MalformedURLException</mml:attr>
-                        <mml:attr name="onType">org.apache.isis.applib.services.layout.Object_openRestApi</mml:attr>
-                        <mml:attr name="returnType">java.net.URL</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.bulk.BulkFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.bulk.BulkFacetForActionAnnotation">
-                        <mml:attr name="value">REGULAR_ONLY</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.notcontributed.NotContributedFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.NotContributedFacetForActionLayoutAnnotation">
-                        <mml:attr name="as">ASSOCIATION</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.actions.notcontributed.derived.NotContributedFacetDerivedFromMixinFacet</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.ActionPositionFacetForActionLayoutAnnotation">
-                        <mml:attr name="position">PANEL_DROPDOWN</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.prototype.PrototypeFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.prototype.PrototypeFacetForActionAnnotation">
-                        <mml:attr name="deploymentCategory">PRODUCTION</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.semantics.ActionSemanticsFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.semantics.ActionSemanticsFacetForActionAnnotation">
-                        <mml:attr name="value">SAFE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
-                        <mml:attr name="context">java.lang.Object#openRestApi()</mml:attr>
-                        <mml:attr name="originalText">Open Rest Api</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.all.named.NamedFacetInferred</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.collections.collection.defaultview.DefaultViewFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.layout.DefaultViewFacetForCollectionLayoutAnnotation">
-                        <mml:attr name="value">hidden</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.members.cssclassfa.CssClassFaFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.CssClassFaFacetForActionLayoutAnnotation">
-                        <mml:attr name="position">LEFT</mml:attr>
-                        <mml:attr name="value">fa fa-fw fa-external-link</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.members.order.MemberOrderFacet" fqcn="org.apache.isis.core.metamodel.facets.members.order.annotprop.MemberOrderFacetAnnotation">
-                        <mml:attr name="name">datanucleusIdLong</mml:attr>
-                        <mml:attr name="originalName">datanucleusIdLong</mml:attr>
-                        <mml:attr name="sequence">750.1</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
-                        <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline">
-                        <mml:attr name="derived">true</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.renderunchanged.UnchangingFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.UnchangingFacetOnPropertyFromLayoutProperties">
-                        <mml:attr name="value">false</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                    </mml:facet>
-                </mml:facets>
-                <mml:returnType>java.net.URL</mml:returnType>
-                <mml:params/>
-            </mml:act>
-            <mml:act id="rebuildMetamodel">
-                <mml:facets>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation" fqcn="org.apache.isis.core.metamodel.facets.actions.action.hidden.HiddenFacetForActionAnnotation">
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="when">ALWAYS</mml:attr>
-                        <mml:attr name="where">NOWHERE</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionDomainEventFacetForActionAnnotation">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                        <mml:attr name="validating">true</mml:attr>
-                        <mml:attr name="value">org.apache.isis.applib.services.layout.Object_rebuildMetamodel.ActionDomainEvent</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacetForDomainEventFromActionAnnotation">
-                        <mml:attr name="eventType">org.apache.isis.applib.services.layout.Object_rebuildMetamodel.ActionDomainEvent</mml:attr>
-                        <mml:attr name="intent.act">EXECUTE</mml:attr>
-                        <mml:attr name="methods">public void org.apache.isis.applib.services.layout.Object_rebuildMetamodel.act()</mml:attr>
-                        <mml:attr name="onType">org.apache.isis.applib.services.layout.Object_rebuildMetamodel</mml:attr>
-                        <mml:attr name="returnType">void</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.bulk.BulkFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.bulk.BulkFacetForActionAnnotation">
-                        <mml:attr name="value">REGULAR_ONLY</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.notcontributed.NotContributedFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.NotContributedFacetForActionLayoutAnnotation">
-                        <mml:attr name="as">ASSOCIATION</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.actions.notcontributed.derived.NotContributedFacetDerivedFromMixinFacet</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.ActionPositionFacetForActionLayoutAnnotation">
-                        <mml:attr name="position">PANEL_DROPDOWN</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.prototype.PrototypeFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.prototype.PrototypeFacetForActionAnnotation">
-                        <mml:attr name="deploymentCategory">PRODUCTION</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.actions.semantics.ActionSemanticsFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.action.semantics.ActionSemanticsFacetForActionAnnotation">
-                        <mml:attr name="value">IDEMPOTENT</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.describedas.DescribedAsFacet" fqcn="org.apache.isis.core.metamodel.facets.members.describedas.annotprop.DescribedAsFacetOnMemberDerivedFromType"/>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.i18n.NamedFacetTranslated">
-                        <mml:attr name="context">java.lang.Object#rebuildMetamodel()</mml:attr>
-                        <mml:attr name="originalText">Rebuild Metamodel</mml:attr>
-                        <mml:attr name="underlyingFacet">org.apache.isis.core.metamodel.facets.all.named.NamedFacetInferred</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.collections.collection.defaultview.DefaultViewFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.layout.DefaultViewFacetForCollectionLayoutAnnotation">
-                        <mml:attr name="value">hidden</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.members.cssclassfa.CssClassFaFacet" fqcn="org.apache.isis.core.metamodel.facets.actions.layout.CssClassFaFacetForActionLayoutAnnotation">
-                        <mml:attr name="position">LEFT</mml:attr>
-                        <mml:attr name="value">fa fa-fw fa-refresh</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.members.order.MemberOrderFacet" fqcn="org.apache.isis.core.metamodel.facets.members.order.annotprop.MemberOrderFacetAnnotation">
-                        <mml:attr name="name">datanucleusIdLong</mml:attr>
-                        <mml:attr name="originalName">datanucleusIdLong</mml:attr>
-                        <mml:attr name="sequence">800.1</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
-                        <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.promptStyle.PromptStyleFacetFallBackToInline">
-                        <mml:attr name="derived">true</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.metamodel.facets.properties.renderunchanged.UnchangingFacet" fqcn="org.apache.isis.core.metamodel.facets.properties.propertylayout.UnchangingFacetOnPropertyFromLayoutProperties">
-                        <mml:attr name="value">false</mml:attr>
-                    </mml:facet>
-                    <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
-                        <mml:attr name="disabling">true</mml:attr>
-                        <mml:attr name="hiding">true</mml:attr>
-                    </mml:facet>
-                </mml:facets>
-                <mml:returnType>void</mml:returnType>
-                <mml:params/>
-            </mml:act>
-        </mml:actions>
-    </mml:domainClass>
-    <mml:domainClass id="java.lang.String">
-        <mml:facets>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.named.NamedFacetInferred">
-                <mml:attr name="escaped">true</mml:attr>
-                <mml:attr name="value">String</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
-                <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacet" fqcn="org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacetUsingDefaultsProvider"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.encodeable.EncodableFacet" fqcn="org.apache.isis.core.metamodel.facets.object.encodeable.encoder.EncodableFacetUsingEncoderDecoder"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.grid.GridFacet" fqcn="org.apache.isis.core.metamodel.facets.object.grid.GridFacetDefault"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.immutable.ImmutableFacet" fqcn="org.apache.isis.core.metamodel.facets.object.value.ImmutableFacetViaValueSemantics">
-                <mml:attr name="disabling">true</mml:attr>
-                <mml:attr name="when">ALWAYS</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.membergroups.MemberGroupLayoutFacet" fqcn="org.apache.isis.core.metamodel.facets.object.membergroups.annotprop.MemberGroupLayoutFacetFallback">
-                <mml:attr name="columns">[4,0,0,8]</mml:attr>
-                <mml:attr name="left">General</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.notpersistable.NotPersistableFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.NotPersistableFacetNull">
-                <mml:attr name="disabling">true</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.objectspecid.ObjectSpecIdFacet" fqcn="org.apache.isis.core.metamodel.facets.object.objectspecid.classname.ObjectSpecIdFacetDerivedFromClassName">
-                <mml:attr name="derived">true</mml:attr>
-                <mml:attr name="value">java.lang.String</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.objectvalidprops.ObjectValidPropertiesFacet" fqcn="org.apache.isis.core.metamodel.facets.object.objectvalidprops.impl.ObjectValidPropertiesFacetImpl">
-                <mml:attr name="validating">true</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.paged.PagedFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.PagedFacetFromConfiguration">
-                <mml:attr name="derived">true</mml:attr>
-                <mml:attr name="value">25</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.parseable.ParseableFacet" fqcn="org.apache.isis.core.metamodel.facets.object.parseable.parser.ParseableFacetUsingParser"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.plural.PluralFacet" fqcn="org.apache.isis.core.metamodel.facets.object.plural.inferred.PluralFacetInferred">
-                <mml:attr name="derived">true</mml:attr>
-                <mml:attr name="value">Strings</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.title.TitleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.title.parser.TitleFacetUsingParser"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.value.EqualByContentFacet" fqcn="org.apache.isis.core.metamodel.facets.object.value.EqualByContentFacetViaValueSemantics"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.value.ValueFacet" fqcn="org.apache.isis.core.metamodel.facets.object.value.vsp.ValueFacetUsingSemanticsProvider"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.typicallen.TypicalLengthFacet" fqcn="org.apache.isis.core.metamodel.facets.object.value.TypicalLengthFacetUsingParser"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.value.string.StringValueFacet" fqcn="org.apache.isis.core.metamodel.facets.value.string.StringValueSemanticsProvider">
-                <mml:attr name="adaptedClass">java.lang.String</mml:attr>
-                <mml:attr name="equalByContent">true</mml:attr>
-                <mml:attr name="immutable">true</mml:attr>
-                <mml:attr name="typicalLength">25</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
-                <mml:attr name="disabling">true</mml:attr>
-                <mml:attr name="hiding">true</mml:attr>
-            </mml:facet>
-        </mml:facets>
-    </mml:domainClass>
-    <mml:domainClass id="java.net.URL">
-        <mml:facets>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.named.NamedFacetInferred">
-                <mml:attr name="escaped">true</mml:attr>
-                <mml:attr name="value">URL</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
-                <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacet" fqcn="org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacetUsingDefaultsProvider"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.encodeable.EncodableFacet" fqcn="org.apache.isis.core.metamodel.facets.object.encodeable.encoder.EncodableFacetUsingEncoderDecoder"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.grid.GridFacet" fqcn="org.apache.isis.core.metamodel.facets.object.grid.GridFacetDefault"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.immutable.ImmutableFacet" fqcn="org.apache.isis.core.metamodel.facets.object.value.ImmutableFacetViaValueSemantics">
-                <mml:attr name="disabling">true</mml:attr>
-                <mml:attr name="when">ALWAYS</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.membergroups.MemberGroupLayoutFacet" fqcn="org.apache.isis.core.metamodel.facets.object.membergroups.annotprop.MemberGroupLayoutFacetFallback">
-                <mml:attr name="columns">[4,0,0,8]</mml:attr>
-                <mml:attr name="left">General</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.notpersistable.NotPersistableFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.NotPersistableFacetNull">
-                <mml:attr name="disabling">true</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.objectspecid.ObjectSpecIdFacet" fqcn="org.apache.isis.core.metamodel.facets.object.objectspecid.classname.ObjectSpecIdFacetDerivedFromClassName">
-                <mml:attr name="derived">true</mml:attr>
-                <mml:attr name="value">java.net.URL</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.objectvalidprops.ObjectValidPropertiesFacet" fqcn="org.apache.isis.core.metamodel.facets.object.objectvalidprops.impl.ObjectValidPropertiesFacetImpl">
-                <mml:attr name="validating">true</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.paged.PagedFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.PagedFacetFromConfiguration">
-                <mml:attr name="derived">true</mml:attr>
-                <mml:attr name="value">25</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.parseable.ParseableFacet" fqcn="org.apache.isis.core.metamodel.facets.object.parseable.parser.ParseableFacetUsingParser"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.plural.PluralFacet" fqcn="org.apache.isis.core.metamodel.facets.object.plural.inferred.PluralFacetInferred">
-                <mml:attr name="derived">true</mml:attr>
-                <mml:attr name="value">URLs</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.title.TitleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.title.parser.TitleFacetUsingParser"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.value.EqualByContentFacet" fqcn="org.apache.isis.core.metamodel.facets.object.value.EqualByContentFacetViaValueSemantics"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.value.ValueFacet" fqcn="org.apache.isis.core.metamodel.facets.object.value.vsp.ValueFacetUsingSemanticsProvider"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.maxlen.MaxLengthFacet" fqcn="org.apache.isis.core.metamodel.facets.object.value.MaxLengthFacetUsingParser2">
-                <mml:attr name="parser">org.apache.isis.core.metamodel.facets.value.url.URLValueSemanticsProvider</mml:attr>
-                <mml:attr name="validating">true</mml:attr>
-                <mml:attr name="value">2083</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.typicallen.TypicalLengthFacet" fqcn="org.apache.isis.core.metamodel.facets.object.value.TypicalLengthFacetUsingParser"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.value.url.URLValueFacet" fqcn="org.apache.isis.core.metamodel.facets.value.url.URLValueSemanticsProvider">
-                <mml:attr name="adaptedClass">java.net.URL</mml:attr>
-                <mml:attr name="equalByContent">true</mml:attr>
-                <mml:attr name="immutable">true</mml:attr>
-                <mml:attr name="maxLength">2083</mml:attr>
-                <mml:attr name="typicalLength">100</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
-                <mml:attr name="disabling">true</mml:attr>
-                <mml:attr name="hiding">true</mml:attr>
-            </mml:facet>
-        </mml:facets>
-        <mml:properties/>
-        <mml:collections/>
-        <mml:actions/>
-    </mml:domainClass>
-    <mml:domainClass id="java.sql.Timestamp">
-        <mml:facets>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.named.NamedFacetInferred">
-                <mml:attr name="escaped">true</mml:attr>
-                <mml:attr name="value">Timestamp</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
-                <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacet" fqcn="org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacetUsingDefaultsProvider"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.encodeable.EncodableFacet" fqcn="org.apache.isis.core.metamodel.facets.object.encodeable.encoder.EncodableFacetUsingEncoderDecoder"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.grid.GridFacet" fqcn="org.apache.isis.core.metamodel.facets.object.grid.GridFacetDefault"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.membergroups.MemberGroupLayoutFacet" fqcn="org.apache.isis.core.metamodel.facets.object.membergroups.annotprop.MemberGroupLayoutFacetFallback">
-                <mml:attr name="columns">[4,0,0,8]</mml:attr>
-                <mml:attr name="left">General</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.notpersistable.NotPersistableFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.NotPersistableFacetNull">
-                <mml:attr name="disabling">true</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.objectspecid.ObjectSpecIdFacet" fqcn="org.apache.isis.core.metamodel.facets.object.objectspecid.classname.ObjectSpecIdFacetDerivedFromClassName">
-                <mml:attr name="derived">true</mml:attr>
-                <mml:attr name="value">java.sql.Timestamp</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.objectvalidprops.ObjectValidPropertiesFacet" fqcn="org.apache.isis.core.metamodel.facets.object.objectvalidprops.impl.ObjectValidPropertiesFacetImpl">
-                <mml:attr name="validating">true</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.paged.PagedFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.PagedFacetFromConfiguration">
-                <mml:attr name="derived">true</mml:attr>
-                <mml:attr name="value">25</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.parseable.ParseableFacet" fqcn="org.apache.isis.core.metamodel.facets.object.parseable.parser.ParseableFacetUsingParser"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.plural.PluralFacet" fqcn="org.apache.isis.core.metamodel.facets.object.plural.inferred.PluralFacetInferred">
-                <mml:attr name="derived">true</mml:attr>
-                <mml:attr name="value">Timestamps</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.title.TitleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.title.parser.TitleFacetUsingParser"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.value.ValueFacet" fqcn="org.apache.isis.core.metamodel.facets.object.value.vsp.ValueFacetUsingSemanticsProvider"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.typicallen.TypicalLengthFacet" fqcn="org.apache.isis.core.metamodel.facets.object.value.TypicalLengthFacetUsingParser"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.value.date.DateValueFacet" fqcn="org.apache.isis.core.metamodel.facets.value.timestampsql.JavaSqlTimeStampValueSemanticsProvider">
-                <mml:attr name="adaptedClass">java.sql.Timestamp</mml:attr>
-                <mml:attr name="configuredFormat">short</mml:attr>
-                <mml:attr name="equalByContent">false</mml:attr>
-                <mml:attr name="immutable">false</mml:attr>
-                <mml:attr name="propertyType">timestamp</mml:attr>
-                <mml:attr name="typicalLength">25</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
-                <mml:attr name="disabling">true</mml:attr>
-                <mml:attr name="hiding">true</mml:attr>
-            </mml:facet>
-        </mml:facets>
-    </mml:domainClass>
-    <mml:domainClass id="java.util.List">
-        <mml:facets>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.actcoll.typeof.TypeOfFacet" fqcn="org.apache.isis.core.metamodel.facets.actcoll.typeof.TypeOfFacetDefaultToObject">
-                <mml:attr name="value">java.lang.Object</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.named.NamedFacetInferred">
-                <mml:attr name="escaped">true</mml:attr>
-                <mml:attr name="value">List</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.collections.modify.CollectionFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.javautilcollection.JavaCollectionFacet"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
-                <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.grid.GridFacet" fqcn="org.apache.isis.core.metamodel.facets.object.grid.GridFacetDefault"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.membergroups.MemberGroupLayoutFacet" fqcn="org.apache.isis.core.metamodel.facets.object.membergroups.annotprop.MemberGroupLayoutFacetFallback">
-                <mml:attr name="columns">[4,0,0,8]</mml:attr>
-                <mml:attr name="left">General</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.notpersistable.NotPersistableFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.NotPersistableFacetNull">
-                <mml:attr name="disabling">true</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.objectspecid.ObjectSpecIdFacet" fqcn="org.apache.isis.core.metamodel.facets.object.objectspecid.classname.ObjectSpecIdFacetDerivedFromClassName">
-                <mml:attr name="derived">true</mml:attr>
-                <mml:attr name="value">java.util.List</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.objectvalidprops.ObjectValidPropertiesFacet" fqcn="org.apache.isis.core.metamodel.facets.object.objectvalidprops.impl.ObjectValidPropertiesFacetImpl">
-                <mml:attr name="validating">true</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.paged.PagedFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.PagedFacetFromConfiguration">
-                <mml:attr name="derived">true</mml:attr>
-                <mml:attr name="value">25</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.parented.ParentedCollectionFacet" fqcn="org.apache.isis.core.metamodel.facets.collections.parented.ParentedCollectionFacetDefault"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.plural.PluralFacet" fqcn="org.apache.isis.core.metamodel.facets.object.plural.inferred.PluralFacetInferred">
-                <mml:attr name="derived">true</mml:attr>
-                <mml:attr name="value">Lists</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
-                <mml:attr name="disabling">true</mml:attr>
-                <mml:attr name="hiding">true</mml:attr>
-            </mml:facet>
-        </mml:facets>
-        <mml:properties/>
-        <mml:collections/>
-        <mml:actions/>
-    </mml:domainClass>
-    <mml:domainClass id="org.apache.isis.applib.services.layout.LayoutService$Style">
-        <mml:facets>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.named.NamedFacetInferred">
-                <mml:attr name="escaped">true</mml:attr>
-                <mml:attr name="value">Style</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
-                <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.choices.enums.EnumFacet" fqcn="org.apache.isis.core.metamodel.facets.object.choices.enums.EnumValueSemanticsProvider">
-                <mml:attr name="adaptedClass">org.apache.isis.applib.services.layout.LayoutService.Style</mml:attr>
-                <mml:attr name="defaultValue">CURRENT</mml:attr>
-                <mml:attr name="equalByContent">true</mml:attr>
-                <mml:attr name="immutable">true</mml:attr>
-                <mml:attr name="maxLength">10</mml:attr>
-                <mml:attr name="typicalLength">10</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacet" fqcn="org.apache.isis.core.metamodel.facets.object.defaults.DefaultedFacetUsingDefaultsProvider"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.encodeable.EncodableFacet" fqcn="org.apache.isis.core.metamodel.facets.object.encodeable.encoder.EncodableFacetUsingEncoderDecoder"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.grid.GridFacet" fqcn="org.apache.isis.core.metamodel.facets.object.grid.GridFacetDefault"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.immutable.ImmutableFacet" fqcn="org.apache.isis.core.metamodel.facets.object.value.ImmutableFacetViaValueSemantics">
-                <mml:attr name="disabling">true</mml:attr>
-                <mml:attr name="when">ALWAYS</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.membergroups.MemberGroupLayoutFacet" fqcn="org.apache.isis.core.metamodel.facets.object.membergroups.annotprop.MemberGroupLayoutFacetFallback">
-                <mml:attr name="columns">[4,0,0,8]</mml:attr>
-                <mml:attr name="left">General</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.notpersistable.NotPersistableFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.NotPersistableFacetNull">
-                <mml:attr name="disabling">true</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.objectspecid.ObjectSpecIdFacet" fqcn="org.apache.isis.core.metamodel.facets.object.objectspecid.classname.ObjectSpecIdFacetDerivedFromClassName">
-                <mml:attr name="derived">true</mml:attr>
-                <mml:attr name="value">org.apache.isis.applib.services.layout.LayoutService.Style</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.objectvalidprops.ObjectValidPropertiesFacet" fqcn="org.apache.isis.core.metamodel.facets.object.objectvalidprops.impl.ObjectValidPropertiesFacetImpl">
-                <mml:attr name="validating">true</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.paged.PagedFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.PagedFacetFromConfiguration">
-                <mml:attr name="derived">true</mml:attr>
-                <mml:attr name="value">25</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.parseable.ParseableFacet" fqcn="org.apache.isis.core.metamodel.facets.object.parseable.parser.ParseableFacetUsingParser"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.plural.PluralFacet" fqcn="org.apache.isis.core.metamodel.facets.object.plural.inferred.PluralFacetInferred">
-                <mml:attr name="derived">true</mml:attr>
-                <mml:attr name="value">Styles</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.title.TitleFacet" fqcn="org.apache.isis.core.metamodel.facets.object.title.parser.TitleFacetUsingParser"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.value.EqualByContentFacet" fqcn="org.apache.isis.core.metamodel.facets.object.value.EqualByContentFacetViaValueSemantics"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.value.ValueFacet" fqcn="org.apache.isis.core.metamodel.facets.object.value.vsp.ValueFacetUsingSemanticsProvider"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.choices.ChoicesFacet" fqcn="org.apache.isis.core.metamodel.facets.object.choices.enums.ChoicesFacetEnum">
-                <mml:attr name="choices">CURRENT;COMPLETE;NORMALIZED;MINIMAL</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.maxlen.MaxLengthFacet" fqcn="org.apache.isis.core.metamodel.facets.object.value.MaxLengthFacetUsingParser2">
-                <mml:attr name="parser">org.apache.isis.core.metamodel.facets.object.choices.enums.EnumValueSemanticsProvider</mml:attr>
-                <mml:attr name="validating">true</mml:attr>
-                <mml:attr name="value">10</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.objectvalue.typicallen.TypicalLengthFacet" fqcn="org.apache.isis.core.metamodel.facets.object.value.TypicalLengthFacetUsingParser"/>
-            <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
-                <mml:attr name="disabling">true</mml:attr>
-                <mml:attr name="hiding">true</mml:attr>
-            </mml:facet>
-        </mml:facets>
-        <mml:properties/>
-        <mml:collections/>
-    </mml:domainClass>
-    <mml:domainClass id="org.apache.isis.applib.value.Clob">
-        <mml:facets>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.named.NamedFacetInferred">
-                <mml:attr name="escaped">true</mml:attr>
-                <mml:attr name="value">Clob</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
-                <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.encodeable.EncodableFacet" fqcn="org.apache.isis.core.metamodel.facets.object.encodeable.encoder.EncodableFacetUsingEncoderDecoder"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.grid.GridFacet" fqcn="org.apache.isis.core.metamodel.facets.object.grid.GridFacetDefault"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.immutable.ImmutableFacet" fqcn="org.apache.isis.core.metamodel.facets.object.value.ImmutableFacetViaValueSemantics">
-                <mml:attr name="disabling">true</mml:attr>
-                <mml:attr name="when">ALWAYS</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.membergroups.MemberGroupLayoutFacet" fqcn="org.apache.isis.core.metamodel.facets.object.membergroups.annotprop.MemberGroupLayoutFacetFallback">
-                <mml:attr name="columns">[4,0,0,8]</mml:attr>
-                <mml:attr name="left">General</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.notpersistable.NotPersistableFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.NotPersistableFacetNull">
-                <mml:attr name="disabling">true</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.objectspecid.ObjectSpecIdFacet" fqcn="org.apache.isis.core.metamodel.facets.object.objectspecid.classname.ObjectSpecIdFacetDerivedFromClassName">
-                <mml:attr name="derived">true</mml:attr>
-                <mml:attr name="value">org.apache.isis.applib.value.Clob</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.objectvalidprops.ObjectValidPropertiesFacet" fqcn="org.apache.isis.core.metamodel.facets.object.objectvalidprops.impl.ObjectValidPropertiesFacetImpl">
-                <mml:attr name="validating">true</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.paged.PagedFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.PagedFacetFromConfiguration">
-                <mml:attr name="derived">true</mml:attr>
-                <mml:attr name="value">25</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.plural.PluralFacet" fqcn="org.apache.isis.core.metamodel.facets.object.plural.inferred.PluralFacetInferred">
-                <mml:attr name="derived">true</mml:attr>
-                <mml:attr name="value">Clobs</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.value.ValueFacet" fqcn="org.apache.isis.core.metamodel.facets.object.value.vsp.ValueFacetUsingSemanticsProvider"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.value.clobs.ClobValueFacet" fqcn="org.apache.isis.core.metamodel.facets.value.clobs.ClobValueSemanticsProvider">
-                <mml:attr name="adaptedClass">org.apache.isis.applib.value.Clob</mml:attr>
-                <mml:attr name="equalByContent">false</mml:attr>
-                <mml:attr name="immutable">true</mml:attr>
-                <mml:attr name="typicalLength">0</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
-                <mml:attr name="disabling">true</mml:attr>
-                <mml:attr name="hiding">true</mml:attr>
-            </mml:facet>
-        </mml:facets>
-    </mml:domainClass>
-    <mml:domainClass id="void">
-        <mml:facets>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.all.named.NamedFacet" fqcn="org.apache.isis.core.metamodel.facets.all.named.NamedFacetInferred">
-                <mml:attr name="escaped">true</mml:attr>
-                <mml:attr name="value">Void</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet" fqcn="org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacetFallback">
-                <mml:attr name="bookmarkPolicy">NEVER</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.grid.GridFacet" fqcn="org.apache.isis.core.metamodel.facets.object.grid.GridFacetDefault"/>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.membergroups.MemberGroupLayoutFacet" fqcn="org.apache.isis.core.metamodel.facets.object.membergroups.annotprop.MemberGroupLayoutFacetFallback">
-                <mml:attr name="columns">[4,0,0,8]</mml:attr>
-                <mml:attr name="left">General</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.notpersistable.NotPersistableFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.NotPersistableFacetNull">
-                <mml:attr name="disabling">true</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.objectspecid.ObjectSpecIdFacet" fqcn="org.apache.isis.core.metamodel.facets.object.objectspecid.classname.ObjectSpecIdFacetDerivedFromClassName">
-                <mml:attr name="derived">true</mml:attr>
-                <mml:attr name="value">void</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.objectvalidprops.ObjectValidPropertiesFacet" fqcn="org.apache.isis.core.metamodel.facets.object.objectvalidprops.impl.ObjectValidPropertiesFacetImpl">
-                <mml:attr name="validating">true</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.paged.PagedFacet" fqcn="org.apache.isis.core.metamodel.facets.fallback.PagedFacetFromConfiguration">
-                <mml:attr name="derived">true</mml:attr>
-                <mml:attr name="value">25</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.metamodel.facets.object.plural.PluralFacet" fqcn="org.apache.isis.core.metamodel.facets.object.plural.inferred.PluralFacetInferred">
-                <mml:attr name="derived">true</mml:attr>
-                <mml:attr name="value">Voids</mml:attr>
-            </mml:facet>
-            <mml:facet id="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacet" fqcn="org.apache.isis.core.runtime.authorization.standard.AuthorizationFacetImpl">
-                <mml:attr name="disabling">true</mml:attr>
-                <mml:attr name="hiding">true</mml:attr>
-            </mml:facet>
-        </mml:facets>
-        <mml:properties/>
-        <mml:collections/>
-        <mml:actions/>
-    </mml:domainClass>
-</mml:metamodelDto>


[isis] 03/03: ISIS-2003: uses folders instead of filenames for received vs approved

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

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

commit 3bcd905eb2103c0d70861706aa773c507be37f39
Author: danhaywood <da...@haywood-associates.co.uk>
AuthorDate: Tue Oct 9 10:14:49 2018 +0100

    ISIS-2003: uses folders instead of filenames for received vs approved
---
 .../application/integtests/mml/.gitignore          |  1 -
 .../integtests/mml/MetaModelService_IntegTest.java | 29 +++++++++++++++++++---
 ...mainAppFixtureScriptsSpecificationProvider.xml} |  0
 ...lication.services.homepage.HomePageService.xml} |  0
 ...cation.services.homepage.HomePageViewModel.xml} |  0
 ...inapp.modules.simple.dom.impl.SimpleObject.xml} |  0
 ...napp.modules.simple.dom.impl.SimpleObjects.xml} |  0
 .../java.lang.Long.xml}                            |  0
 .../java.lang.Object.xml}                          |  0
 .../java.lang.String.xml}                          |  0
 .../java.net.URL.xml}                              |  0
 .../java.sql.Timestamp.xml}                        |  0
 .../java.util.List.xml}                            |  0
 ...applib.services.layout.LayoutService$Style.xml} |  0
 .../org.apache.isis.applib.value.Clob.xml}         |  0
 .../mml/{_void.approved.xml => approved/void.xml}  |  0
 .../application/integtests/mml/received/.gitignore |  1 +
 17 files changed, 27 insertions(+), 4 deletions(-)

diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/.gitignore b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/.gitignore
deleted file mode 100644
index 83387df..0000000
--- a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-*.received.xml
\ No newline at end of file
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/MetaModelService_IntegTest.java b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/MetaModelService_IntegTest.java
index 0ff283a..cd48c3f 100644
--- a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/MetaModelService_IntegTest.java
+++ b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/MetaModelService_IntegTest.java
@@ -18,6 +18,7 @@
  */
 package domainapp.application.integtests.mml;
 
+import java.io.File;
 import java.util.List;
 
 import javax.inject.Inject;
@@ -94,7 +95,7 @@ public class MetaModelService_IntegTest extends DomainAppIntegTestAbstract {
     @Test
     public void _2_verify() throws Exception {
 
-        assumeThat(System.getProperty("lockdown.verify"), is(notNullValue()));
+        //assumeThat(System.getProperty("lockdown.verify"), is(notNullValue()));
 
         // when
         MetamodelDto metamodelDto =
@@ -116,9 +117,31 @@ public class MetaModelService_IntegTest extends DomainAppIntegTestAbstract {
 
     private void verifyClass(final DomainClassDto domainClass) {
         String asXml = jaxbService.toXml(domainClass);
-        verify(new ApprovalTextWriter(asXml, "xml"), new StackTraceNamer() {
+        verify(new ApprovalTextWriter(asXml, "xml"){
+            @Override public String writeReceivedFile(final String received) throws Exception {
+                return super.writeReceivedFile(received);
+            }
+
+            @Override public String getReceivedFilename(final String base) {
+                return toFilename("received", base);
+            }
+
+            @Override public String getApprovalFilename(final String base) {
+                return toFilename("approved", base);
+            }
+
+            private String toFilename(final String prefix, final String base) {
+                final File file = new File(base);
+                final File parentFile = file.getParentFile();
+                final String localName = file.getName();
+                final File newDir = new File(parentFile, prefix);
+                final File newFile = new File(newDir, localName + ".xml");
+                return newFile.toString();
+            }
+
+        }, new StackTraceNamer() {
             @Override public String getApprovalName() {
-                return "_" + domainClass.getId();
+                return domainClass.getId();
             }
         }, getReporter());
     }
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_domainapp.application.fixture.DomainAppFixtureScriptsSpecificationProvider.approved.xml b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/domainapp.application.fixture.DomainAppFixtureScriptsSpecificationProvider.xml
similarity index 100%
rename from example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_domainapp.application.fixture.DomainAppFixtureScriptsSpecificationProvider.approved.xml
rename to example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/domainapp.application.fixture.DomainAppFixtureScriptsSpecificationProvider.xml
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_domainapp.application.services.homepage.HomePageService.approved.xml b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/domainapp.application.services.homepage.HomePageService.xml
similarity index 100%
rename from example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_domainapp.application.services.homepage.HomePageService.approved.xml
rename to example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/domainapp.application.services.homepage.HomePageService.xml
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_domainapp.application.services.homepage.HomePageViewModel.approved.xml b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/domainapp.application.services.homepage.HomePageViewModel.xml
similarity index 100%
rename from example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_domainapp.application.services.homepage.HomePageViewModel.approved.xml
rename to example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/domainapp.application.services.homepage.HomePageViewModel.xml
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_domainapp.modules.simple.dom.impl.SimpleObject.approved.xml b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/domainapp.modules.simple.dom.impl.SimpleObject.xml
similarity index 100%
rename from example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_domainapp.modules.simple.dom.impl.SimpleObject.approved.xml
rename to example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/domainapp.modules.simple.dom.impl.SimpleObject.xml
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_domainapp.modules.simple.dom.impl.SimpleObjects.approved.xml b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/domainapp.modules.simple.dom.impl.SimpleObjects.xml
similarity index 100%
rename from example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_domainapp.modules.simple.dom.impl.SimpleObjects.approved.xml
rename to example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/domainapp.modules.simple.dom.impl.SimpleObjects.xml
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_java.lang.Long.approved.xml b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/java.lang.Long.xml
similarity index 100%
rename from example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_java.lang.Long.approved.xml
rename to example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/java.lang.Long.xml
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_java.lang.Object.approved.xml b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/java.lang.Object.xml
similarity index 100%
rename from example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_java.lang.Object.approved.xml
rename to example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/java.lang.Object.xml
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_java.lang.String.approved.xml b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/java.lang.String.xml
similarity index 100%
rename from example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_java.lang.String.approved.xml
rename to example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/java.lang.String.xml
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_java.net.URL.approved.xml b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/java.net.URL.xml
similarity index 100%
rename from example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_java.net.URL.approved.xml
rename to example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/java.net.URL.xml
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_java.sql.Timestamp.approved.xml b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/java.sql.Timestamp.xml
similarity index 100%
rename from example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_java.sql.Timestamp.approved.xml
rename to example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/java.sql.Timestamp.xml
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_java.util.List.approved.xml b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/java.util.List.xml
similarity index 100%
rename from example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_java.util.List.approved.xml
rename to example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/java.util.List.xml
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_org.apache.isis.applib.services.layout.LayoutService$Style.approved.xml b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/org.apache.isis.applib.services.layout.LayoutService$Style.xml
similarity index 100%
rename from example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_org.apache.isis.applib.services.layout.LayoutService$Style.approved.xml
rename to example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/org.apache.isis.applib.services.layout.LayoutService$Style.xml
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_org.apache.isis.applib.value.Clob.approved.xml b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/org.apache.isis.applib.value.Clob.xml
similarity index 100%
rename from example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_org.apache.isis.applib.value.Clob.approved.xml
rename to example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/org.apache.isis.applib.value.Clob.xml
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_void.approved.xml b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/void.xml
similarity index 100%
rename from example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/_void.approved.xml
rename to example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/approved/void.xml
diff --git a/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/received/.gitignore b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/received/.gitignore
new file mode 100644
index 0000000..b81c795
--- /dev/null
+++ b/example/application/simpleapp/application/src/test/java/domainapp/application/integtests/mml/received/.gitignore
@@ -0,0 +1 @@
+*.xml
\ No newline at end of file


[isis] 01/03: ISIS-2003: adds further config options

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

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

commit 68d36bf9d6c4c039be330503ebc5758d07d81d76
Author: danhaywood <da...@haywood-associates.co.uk>
AuthorDate: Tue Oct 9 00:32:41 2018 +0100

    ISIS-2003: adds further config options
---
 .../services/metamodel/MetaModelService6.java      | 30 ++++++--
 .../services/metamodel/MetaModelExporter.java      | 90 +++++++++++++---------
 2 files changed, 74 insertions(+), 46 deletions(-)

diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/metamodel/MetaModelService6.java b/core/applib/src/main/java/org/apache/isis/applib/services/metamodel/MetaModelService6.java
index e5f61a7..319954e 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/metamodel/MetaModelService6.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/metamodel/MetaModelService6.java
@@ -18,6 +18,11 @@
  */
 package org.apache.isis.applib.services.metamodel;
 
+import java.util.Collections;
+import java.util.List;
+
+import com.google.common.collect.Lists;
+
 import org.apache.isis.applib.annotation.Programmatic;
 import org.apache.isis.schema.metamodel.v1.MetamodelDto;
 
@@ -29,16 +34,17 @@ public interface MetaModelService6 extends MetaModelService5 {
         private static final int IGNORE_INTERFACES = 2;
         private static final int IGNORE_ABSTRACT_CLASSES = 4;
         private static final int IGNORE_BUILT_IN_VALUE_TYPES = 8;
+        private static final int IGNORE_MIXINS = 16;
 
         private final int mask;
-        private final String packagePrefix;
+        private final List<String> packagePrefixes;
 
         public Config() {
-            this(0, null);
+            this(0, Collections.<String>emptyList());
         }
-        private Config(final int mask, final String packagePrefix) {
+        private Config(final int mask, final List<String> packagePrefixes) {
             this.mask = mask;
-            this.packagePrefix = packagePrefix;
+            this.packagePrefixes = Collections.unmodifiableList(packagePrefixes);
         }
         private Config(final int mask) {
             this(mask, null);
@@ -58,13 +64,18 @@ public interface MetaModelService6 extends MetaModelService5 {
         public Config withIgnoreBuiltInValueTypes() {
             return newConfigWith(IGNORE_BUILT_IN_VALUE_TYPES);
         }
+        public Config withIgnoreMixins() {
+            return newConfigWith(IGNORE_MIXINS);
+        }
 
         private Config newConfigWith(final int x) {
-            return new Config(mask | x, packagePrefix);
+            return new Config(mask | x, packagePrefixes);
         }
 
         public Config withPackagePrefix(final String packagePrefix) {
-            return new Config(mask, packagePrefix);
+            final List<String> prefixes = Lists.newArrayList(packagePrefix);
+            prefixes.add(packagePrefix);
+            return new Config(mask, prefixes);
         }
 
         public boolean isIgnoreNoop() {
@@ -81,9 +92,12 @@ public interface MetaModelService6 extends MetaModelService5 {
         public boolean isIgnoreBuiltInValueTypes() {
             return hasFlag(IGNORE_BUILT_IN_VALUE_TYPES);
         }
+        public boolean isIgnoreMixins() {
+            return hasFlag(IGNORE_MIXINS);
+        }
 
-        public String getPackagePrefix() {
-            return packagePrefix;
+        public List<String> getPackagePrefixes() {
+            return packagePrefixes;
         }
 
         private boolean hasFlag(final int x) {
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/metamodel/MetaModelExporter.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/metamodel/MetaModelExporter.java
index 109ef20..06c51f2 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/metamodel/MetaModelExporter.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/metamodel/MetaModelExporter.java
@@ -34,6 +34,7 @@ import com.google.common.collect.Maps;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
+import org.apache.isis.applib.annotation.NatureOfService;
 import org.apache.isis.applib.annotation.PublishedAction;
 import org.apache.isis.applib.annotation.PublishedObject;
 import org.apache.isis.applib.services.command.CommandDtoProcessor;
@@ -41,6 +42,7 @@ import org.apache.isis.applib.services.metamodel.MetaModelService6;
 import org.apache.isis.applib.spec.Specification;
 import org.apache.isis.core.metamodel.facetapi.Facet;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
+import org.apache.isis.core.metamodel.facets.object.domainservice.DomainServiceFacet;
 import org.apache.isis.core.metamodel.spec.ObjectSpecification;
 import org.apache.isis.core.metamodel.spec.feature.Contributed;
 import org.apache.isis.core.metamodel.spec.feature.ObjectAction;
@@ -91,8 +93,10 @@ class MetaModelExporter {
         // these are added into a map for lookups in phase 2
         Map<ObjectSpecification, DomainClass> domainClassByObjectSpec = Maps.newHashMap();
         for (final ObjectSpecification specification : specificationLookup.allSpecifications()) {
-            if(config.getPackagePrefix() != null &&
-               !specification.getCorrespondingClass().getCanonicalName().startsWith(config.getPackagePrefix())) {
+            if(notInPackagePrefixes(specification, config)) {
+                continue;
+            }
+            if(config.isIgnoreMixins() && specification.isMixin()) {
                 continue;
             }
             if(config.isIgnoreInterfaces() && specification.getCorrespondingClass().isInterface()) {
@@ -112,7 +116,7 @@ class MetaModelExporter {
         // phase 2: now flesh out the domain class types, passing the map for lookups of the domainClassTypes that
         // correspond to each object members types.
         for (final ObjectSpecification specification : Lists.newArrayList(domainClassByObjectSpec.keySet())) {
-            addMembersTo(specification, domainClassByObjectSpec, config);
+            addFacetsAndMembersTo(specification, domainClassByObjectSpec, config);
         }
 
         // phase 3: now copy all domain classes into the metamodel
@@ -125,6 +129,23 @@ class MetaModelExporter {
         return metamodelDto;
     }
 
+    private boolean notInPackagePrefixes(
+            final ObjectSpecification specification, final MetaModelService6.Config config) {
+        return !inPackagePrefixes(specification, config);
+    }
+
+    private boolean inPackagePrefixes(
+            final ObjectSpecification specification,
+            final MetaModelService6.Config config) {
+        final String canonicalName = specification.getCorrespondingClass().getCanonicalName();
+        for (final String s : config.getPackagePrefixes()) {
+            if(canonicalName.startsWith(s)) {
+                return true;
+            }
+        }
+        return false;
+    }
+
     private DomainClass asXsdType(
             final ObjectSpecification specification,
             final MetaModelService6.Config config) {
@@ -132,61 +153,47 @@ class MetaModelExporter {
         final DomainClass domainClass = new DomainClass();
 
         domainClass.setId(specification.getFullIdentifier());
-        domainClass.setFacets(new org.apache.isis.schema.metamodel.v1.FacetHolder.Facets());
 
-        if (!isValueType(specification)) {
-            if(!isEnum(specification)) {
-                domainClass.setActions(new DomainClass.Actions());
-            }
-            if(specification.isService()) {
-                domainClass.setService(true);
-            } else {
-                domainClass.setProperties(new DomainClass.Properties());
-                domainClass.setCollections(new DomainClass.Collections());
-            }
+        if(specification.isService()) {
+            domainClass.setService(true);
         }
 
         return domainClass;
     }
 
-    private void addMembersTo(
+    private void addFacetsAndMembersTo(
             final ObjectSpecification specification,
             final Map<ObjectSpecification, DomainClass> domainClassByObjectSpec,
             final MetaModelService6.Config config) {
 
         final DomainClass domainClass = lookupDomainClass(specification, domainClassByObjectSpec, config);
+        if(domainClass.getFacets() == null) {
+            domainClass.setFacets(new org.apache.isis.schema.metamodel.v1.FacetHolder.Facets());
+        }
         addFacets(specification, domainClass.getFacets(), config);
 
-        if(!isValueType(specification)) {
-            if(!isEnum(specification)) {
+        if(specification.isValueOrIsParented() || isEnum(specification)) {
+            return;
+        }
+
+        if (specification.isService()) {
+            if(!hasNatureOfServiceOfDomain(specification)) {
                 addActions(specification, domainClassByObjectSpec, config);
             }
-            if(! specification.isService()) {
-                addProperties(specification, domainClassByObjectSpec, config);
-                addCollections(specification, domainClassByObjectSpec, config);
-            }
+        } else {
+            addProperties(specification, domainClassByObjectSpec, config);
+            addCollections(specification, domainClassByObjectSpec, config);
+            addActions(specification, domainClassByObjectSpec, config);
         }
-
     }
 
     private boolean isEnum(final ObjectSpecification specification) {
         return specification.getCorrespondingClass().isEnum();
     }
 
-    private void addMembers(
-            final ObjectSpecification specification,
-            final Map<ObjectSpecification, DomainClass> domainClassByObjectSpec,
-            final MetaModelService6.Config config) {
-
-        if(specification.isValueOrIsParented()) {
-            return;
-        }
-
-        if(! specification.isService()) {
-            addProperties(specification, domainClassByObjectSpec, config);
-            addCollections(specification, domainClassByObjectSpec, config);
-        }
-        addActions(specification, domainClassByObjectSpec, config);
+    private boolean hasNatureOfServiceOfDomain(final ObjectSpecification specification) {
+        final DomainServiceFacet domainServiceFacet = specification.getFacet(DomainServiceFacet.class);
+        return domainServiceFacet != null && domainServiceFacet.getNatureOfService() == NatureOfService.DOMAIN;
     }
 
     private void addProperties(
@@ -197,6 +204,9 @@ class MetaModelExporter {
 
         final List<ObjectAssociation> oneToOneAssociations =
                 specification.getAssociations(Contributed.INCLUDED, ObjectAssociation.Filters.PROPERTIES);
+        if(domainClass.getProperties() == null) {
+            domainClass.setProperties(new DomainClass.Properties());
+        }
         final List<Property> properties = domainClass.getProperties().getProp();
         for (final ObjectAssociation association : oneToOneAssociations) {
             final OneToOneAssociation otoa = (OneToOneAssociation) association;
@@ -212,6 +222,9 @@ class MetaModelExporter {
         final DomainClass domainClass = lookupDomainClass(specification, domainClassByObjectSpec, config);
         final List<ObjectAssociation> oneToManyAssociations =
                 specification.getAssociations(Contributed.INCLUDED, ObjectAssociation.Filters.COLLECTIONS);
+        if(domainClass.getCollections() == null) {
+            domainClass.setCollections(new DomainClass.Collections());
+        }
         final List<Collection> collections = domainClass.getCollections().getColl();
         for (final ObjectAssociation association : oneToManyAssociations) {
             final OneToManyAssociation otma = (OneToManyAssociation) association;
@@ -227,6 +240,9 @@ class MetaModelExporter {
         final DomainClass domainClass = lookupDomainClass(specification, domainClassByObjectSpec, config);
         final List<ObjectAction> objectActions =
                 specification.getObjectActions(Contributed.INCLUDED);
+        if(domainClass.getActions() == null) {
+            domainClass.setActions(new DomainClass.Actions());
+        }
         final List<Action> actions = domainClass.getActions().getAct();
         for (final ObjectAction action : objectActions) {
             actions.add(asXsdType(action, domainClassByObjectSpec, config));
@@ -296,8 +312,6 @@ class MetaModelExporter {
         if(value == null) {
             final DomainClass domainClass = asXsdType(specification, config);
             domainClassByObjectSpec.put(specification, domainClass);
-            addFacets(specification, domainClass.getFacets(), config);
-            addMembers(specification, domainClassByObjectSpec, config);
             value = domainClass;
         }
         return value;