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 2015/07/25 11:30:03 UTC

[45/48] isis git commit: ISIS-1178: mothballing the tck tests.

http://git-wip-us.apache.org/repos/asf/isis/blob/93a1d5cc/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/PolyInterfaceSubtype3Entity.java
----------------------------------------------------------------------
diff --git a/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/PolyInterfaceSubtype3Entity.java b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/PolyInterfaceSubtype3Entity.java
new file mode 100644
index 0000000..134d76a
--- /dev/null
+++ b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/PolyInterfaceSubtype3Entity.java
@@ -0,0 +1,87 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+package org.apache.isis.core.tck.dom.refs;
+
+import javax.jdo.annotations.IdentityType;
+import javax.jdo.annotations.Inheritance;
+import javax.jdo.annotations.InheritanceStrategy;
+
+import org.apache.isis.applib.annotation.MemberOrder;
+import org.apache.isis.applib.annotation.ObjectType;
+import org.apache.isis.applib.annotation.Optional;
+import org.apache.isis.applib.annotation.Title;
+
+@javax.jdo.annotations.PersistenceCapable(identityType=IdentityType.DATASTORE)
+@javax.jdo.annotations.Discriminator("PIS3")
+@javax.jdo.annotations.DatastoreIdentity(strategy=javax.jdo.annotations.IdGeneratorStrategy.IDENTITY)
+@Inheritance(strategy=InheritanceStrategy.NEW_TABLE)
+@ObjectType("PIS3")
+public class PolyInterfaceSubtype3Entity extends BaseEntity implements PolyInterface {
+
+    
+
+    // {{ Parent (title #1)
+    private PolyInterfaceParentEntity parent;
+
+    @Title(sequence="1", append="-")
+    @MemberOrder(sequence = "1")
+    @Optional
+    public PolyInterfaceParentEntity getParent() {
+        return parent;
+    }
+
+    public void setParent(final PolyInterfaceParentEntity parent) {
+        this.parent = parent;
+    }
+
+    // }}
+
+    // {{ Name  (title #2)
+    private String name;
+
+    @Title(sequence="2")
+    @MemberOrder(sequence = "1")
+    public String getName() {
+        return name;
+    }
+
+    public void setName(final String name) {
+        this.name = name;
+    }
+
+    // }}
+
+    
+    // {{ Baz (property)
+    private java.math.BigDecimal boz;
+
+    @MemberOrder(sequence = "1")
+    public java.math.BigDecimal getBoz() {
+        return boz;
+    }
+
+    public void setBoz(final java.math.BigDecimal baz) {
+        this.boz = baz;
+    }
+    // }}
+
+
+
+}

http://git-wip-us.apache.org/repos/asf/isis/blob/93a1d5cc/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/ReferencingEntity.java
----------------------------------------------------------------------
diff --git a/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/ReferencingEntity.java b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/ReferencingEntity.java
new file mode 100644
index 0000000..645e03e
--- /dev/null
+++ b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/ReferencingEntity.java
@@ -0,0 +1,95 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+package org.apache.isis.core.tck.dom.refs;
+
+import java.util.List;
+
+import javax.jdo.annotations.IdentityType;
+
+import com.google.common.collect.Lists;
+
+import org.apache.isis.applib.annotation.NotPersisted;
+import org.apache.isis.applib.annotation.ObjectType;
+
+@javax.jdo.annotations.PersistenceCapable(identityType=IdentityType.DATASTORE)
+@javax.jdo.annotations.Discriminator("RFCG")
+@javax.jdo.annotations.DatastoreIdentity(strategy=javax.jdo.annotations.IdGeneratorStrategy.IDENTITY)
+@ObjectType("RFCG")
+public class ReferencingEntity extends BaseEntity {
+    
+    
+    // {{ Reference
+    private SimpleEntity reference;
+
+    public SimpleEntity getReference() {
+        return reference;
+    }
+
+    public void setReference(final SimpleEntity reference) {
+        this.reference = reference;
+    }
+
+    // }}
+
+    // {{ AggregatedEntity
+    private AggregatedEntity aggregatedReference;
+
+    public AggregatedEntity getAggregatedReference() {
+        return aggregatedReference;
+    }
+
+    public void setAggregatedReference(final AggregatedEntity aggregatedReference) {
+        this.aggregatedReference = aggregatedReference;
+    }
+
+    public AggregatedEntity addAggregatedReference() {
+        final AggregatedEntity aggregatedEntity = newAggregatedInstance(AggregatedEntity.class);
+        setAggregatedReference(aggregatedEntity);
+        return aggregatedEntity;
+    }
+    // }}
+
+    // {{ AggregatedEntities
+    private List<AggregatedEntity> aggregatedEntities = Lists.newArrayList();
+
+    public List<AggregatedEntity> getAggregatedEntities() {
+        return aggregatedEntities;
+    }
+
+    public void setAggregatedEntities(List<AggregatedEntity> aggregatedEntities) {
+        this.aggregatedEntities = aggregatedEntities;
+    }
+    
+    public AggregatedEntity addAggregatedEntityToCollection() {
+        final AggregatedEntity aggregatedEntity = newAggregatedInstance(AggregatedEntity.class);
+        getAggregatedEntities().add(aggregatedEntity);
+        return aggregatedEntity;
+    }
+    // }}
+
+    // {{ NotPersisted
+    @NotPersisted
+    public SimpleEntity getNotPersisted() {
+        throw new org.apache.isis.applib.NonRecoverableException("unexpected call");
+    }
+    // }}
+
+
+}

http://git-wip-us.apache.org/repos/asf/isis/blob/93a1d5cc/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/SimpleEntity.java
----------------------------------------------------------------------
diff --git a/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/SimpleEntity.java b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/SimpleEntity.java
new file mode 100644
index 0000000..89c3fc4
--- /dev/null
+++ b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/SimpleEntity.java
@@ -0,0 +1,104 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+package org.apache.isis.core.tck.dom.refs;
+
+import java.util.Date;
+
+import javax.jdo.annotations.IdentityType;
+
+import org.apache.isis.applib.annotation.MemberOrder;
+import org.apache.isis.applib.annotation.NotPersisted;
+import org.apache.isis.applib.annotation.ObjectType;
+import org.apache.isis.applib.annotation.Optional;
+import org.apache.isis.applib.annotation.Title;
+
+@javax.jdo.annotations.PersistenceCapable(identityType=IdentityType.DATASTORE)
+@javax.jdo.annotations.Discriminator("SMPL")
+@javax.jdo.annotations.DatastoreIdentity(strategy=javax.jdo.annotations.IdGeneratorStrategy.IDENTITY)
+@ObjectType("SMPL")
+public class SimpleEntity extends BaseEntity {
+    
+    // {{ name: String (title)
+    private String name;
+
+    @Title
+    @MemberOrder(sequence = "1")
+    public String getName() {
+        return name;
+    }
+
+    public void setName(final String name) {
+        this.name = name;
+    }
+
+    // }}
+
+    // {{ Date: java.util.Date
+    private Date date;
+
+    @Optional
+    @MemberOrder(sequence = "1")
+    public Date getDate() {
+        return date;
+    }
+
+    public void setDate(final Date date) {
+        this.date = date;
+    }
+    // }}
+
+    // {{ Size: int
+    private int size;
+
+    @MemberOrder(sequence = "1")
+    public int getSize() {
+        return size;
+    }
+
+    public void setSize(final int size) {
+        this.size = size;
+    }
+
+    // }}
+
+    // {{ Nullable: long
+    private Long number;
+
+    @Optional
+    @MemberOrder(sequence = "1")
+    public Long getNullable() {
+        return number;
+    }
+
+    public void setNullable(final Long number) {
+        this.number = number;
+    }
+
+    // }}
+
+    // {{ NotPersisted: int  (nb: throws exception if called)
+    @NotPersisted
+    public int getNotPersisted() {
+        throw new org.apache.isis.applib.NonRecoverableException("unexpected call");
+    }
+    // }}
+
+
+}

http://git-wip-us.apache.org/repos/asf/isis/blob/93a1d5cc/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirFkChildEntity.java
----------------------------------------------------------------------
diff --git a/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirFkChildEntity.java b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirFkChildEntity.java
new file mode 100644
index 0000000..8015cbc
--- /dev/null
+++ b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirFkChildEntity.java
@@ -0,0 +1,52 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+package org.apache.isis.core.tck.dom.refs;
+
+import javax.jdo.annotations.IdentityType;
+
+import org.apache.isis.applib.AbstractDomainObject;
+import org.apache.isis.applib.annotation.MemberOrder;
+import org.apache.isis.applib.annotation.ObjectType;
+import org.apache.isis.applib.annotation.Title;
+
+@javax.jdo.annotations.PersistenceCapable(identityType=IdentityType.DATASTORE)
+@javax.jdo.annotations.Discriminator("UDFC")
+@javax.jdo.annotations.DatastoreIdentity(strategy=javax.jdo.annotations.IdGeneratorStrategy.IDENTITY)
+@ObjectType("UDFC")
+public class UnidirFkChildEntity extends AbstractDomainObject {
+    
+
+    // {{ Name  (title)
+    private String name;
+
+    @Title(sequence="1")
+    @MemberOrder(sequence = "1")
+    public String getName() {
+        return name;
+    }
+
+    public void setName(final String name) {
+        this.name = name;
+    }
+
+    // }}
+
+
+}

http://git-wip-us.apache.org/repos/asf/isis/blob/93a1d5cc/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirFkParentEntity.java
----------------------------------------------------------------------
diff --git a/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirFkParentEntity.java b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirFkParentEntity.java
new file mode 100644
index 0000000..f2be389
--- /dev/null
+++ b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirFkParentEntity.java
@@ -0,0 +1,101 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+package org.apache.isis.core.tck.dom.refs;
+
+import java.util.Arrays;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+import javax.jdo.annotations.IdentityType;
+
+import org.apache.isis.applib.annotation.MemberOrder;
+import org.apache.isis.applib.annotation.ObjectType;
+import org.apache.isis.applib.annotation.Optional;
+import org.apache.isis.applib.annotation.Title;
+
+@javax.jdo.annotations.PersistenceCapable(identityType=IdentityType.DATASTORE)
+@javax.jdo.annotations.Discriminator("UDFP")
+@javax.jdo.annotations.DatastoreIdentity(strategy=javax.jdo.annotations.IdGeneratorStrategy.IDENTITY)
+@ObjectType("UDFP")
+public class UnidirFkParentEntity extends BaseEntity {
+
+    
+    // {{ Name (also title)
+    private String name;
+    
+    @Title
+    @MemberOrder(sequence = "1")
+    @Optional
+    public String getName() {
+        return name;
+    }
+
+    public void setName(final String name) {
+        this.name = name;
+    }
+
+    // }}
+
+
+    // {{ Children
+    private Set<UnidirFkChildEntity> children = new HashSet<UnidirFkChildEntity>();
+
+    public Set<UnidirFkChildEntity> getChildren() {
+        return children;
+    }
+
+    public void setChildren(final Set<UnidirFkChildEntity> children) {
+        this.children = children;
+    }
+    // }}
+
+
+    // {{ newChild (action)
+    public UnidirFkChildEntity newChild(final String name) {
+        final UnidirFkChildEntity childEntity = newTransientInstance(UnidirFkChildEntity.class);
+        childEntity.setName(name);
+        addChild(childEntity);
+        return childEntity;
+    }
+    // }}
+
+
+    // {{ removeChild (action)
+    public void addChild(UnidirFkChildEntity childEntity) {
+        this.getChildren().add(childEntity);
+        persistIfNotAlready(childEntity);
+    }
+    // }}
+
+    // {{ removeChild (action)
+    public UnidirFkParentEntity removeChild(final UnidirFkChildEntity childEntity) {
+        if (getChildren().contains(childEntity)) {
+            getChildren().remove(childEntity);
+        }
+        return this;
+    }
+
+    public List<UnidirFkChildEntity> choices0RemoveChild() {
+        return Arrays.asList(getChildren().toArray(new UnidirFkChildEntity[0]));
+    }
+    // }}
+
+}

http://git-wip-us.apache.org/repos/asf/isis/blob/93a1d5cc/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirFkParentEntityRepository.java
----------------------------------------------------------------------
diff --git a/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirFkParentEntityRepository.java b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirFkParentEntityRepository.java
new file mode 100644
index 0000000..5277df6
--- /dev/null
+++ b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirFkParentEntityRepository.java
@@ -0,0 +1,45 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+package org.apache.isis.core.tck.dom.refs;
+
+import org.apache.isis.applib.annotation.DomainService;
+import org.apache.isis.applib.annotation.MemberOrder;
+import org.apache.isis.applib.annotation.Named;
+import org.apache.isis.applib.annotation.ObjectType;
+import org.apache.isis.core.tck.dom.AbstractEntityRepository;
+
+@Named("UnidirFkParentEntities")
+@ObjectType("UnidirFkParentEntities")
+@DomainService
+public class UnidirFkParentEntityRepository extends AbstractEntityRepository<UnidirFkParentEntity> {
+
+    public UnidirFkParentEntityRepository() {
+        super(UnidirFkParentEntity.class, "UnidirParentEntities");
+    }
+
+    @MemberOrder(sequence = "2")
+    public UnidirFkParentEntity newEntity(final String name) {
+        final UnidirFkParentEntity entity = newTransientInstance(UnidirFkParentEntity.class);
+        entity.setName(name);
+        persist(entity);
+        return entity;
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/isis/blob/93a1d5cc/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirJoinChildEntity.java
----------------------------------------------------------------------
diff --git a/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirJoinChildEntity.java b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirJoinChildEntity.java
new file mode 100644
index 0000000..6452ee6
--- /dev/null
+++ b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirJoinChildEntity.java
@@ -0,0 +1,52 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+package org.apache.isis.core.tck.dom.refs;
+
+import javax.jdo.annotations.IdentityType;
+
+import org.apache.isis.applib.AbstractDomainObject;
+import org.apache.isis.applib.annotation.MemberOrder;
+import org.apache.isis.applib.annotation.ObjectType;
+import org.apache.isis.applib.annotation.Title;
+
+@javax.jdo.annotations.PersistenceCapable(identityType=IdentityType.DATASTORE)
+@javax.jdo.annotations.Discriminator("UDJC")
+@javax.jdo.annotations.DatastoreIdentity(strategy=javax.jdo.annotations.IdGeneratorStrategy.IDENTITY)
+@ObjectType("UDJC")
+public class UnidirJoinChildEntity extends AbstractDomainObject {
+    
+
+    // {{ Name  (title)
+    private String name;
+
+    @Title(sequence="1")
+    @MemberOrder(sequence = "1")
+    public String getName() {
+        return name;
+    }
+
+    public void setName(final String name) {
+        this.name = name;
+    }
+
+    // }}
+
+
+}

http://git-wip-us.apache.org/repos/asf/isis/blob/93a1d5cc/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirJoinParentEntity.java
----------------------------------------------------------------------
diff --git a/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirJoinParentEntity.java b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirJoinParentEntity.java
new file mode 100644
index 0000000..3cf7dcc
--- /dev/null
+++ b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirJoinParentEntity.java
@@ -0,0 +1,103 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+package org.apache.isis.core.tck.dom.refs;
+
+import java.util.Arrays;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+import javax.jdo.annotations.IdentityType;
+import javax.jdo.annotations.Join;
+
+import org.apache.isis.applib.annotation.MemberOrder;
+import org.apache.isis.applib.annotation.ObjectType;
+import org.apache.isis.applib.annotation.Optional;
+import org.apache.isis.applib.annotation.Title;
+
+@javax.jdo.annotations.PersistenceCapable(identityType=IdentityType.DATASTORE)
+@javax.jdo.annotations.Discriminator("UDJP")
+@javax.jdo.annotations.DatastoreIdentity(strategy=javax.jdo.annotations.IdGeneratorStrategy.IDENTITY)
+@ObjectType("UDJP")
+public class UnidirJoinParentEntity extends BaseEntity {
+
+    
+    // {{ Name (also title)
+    private String name;
+    
+    @Title
+    @MemberOrder(sequence = "1")
+    @Optional
+    public String getName() {
+        return name;
+    }
+
+    public void setName(final String name) {
+        this.name = name;
+    }
+
+    // }}
+
+
+    // {{ Children
+    @Join
+    private Set<UnidirJoinChildEntity> children = new HashSet<UnidirJoinChildEntity>();
+
+    public Set<UnidirJoinChildEntity> getChildren() {
+        return children;
+    }
+
+    public void setChildren(final Set<UnidirJoinChildEntity> children) {
+        this.children = children;
+    }
+    // }}
+
+
+    // {{ newChild (action)
+    public UnidirJoinChildEntity newChild(final String name) {
+        final UnidirJoinChildEntity childEntity = newTransientInstance(UnidirJoinChildEntity.class);
+        childEntity.setName(name);
+        addChild(childEntity);
+        return childEntity;
+    }
+    // }}
+
+
+    // {{ removeChild (action)
+    public void addChild(UnidirJoinChildEntity childEntity) {
+        this.getChildren().add(childEntity);
+        persistIfNotAlready(childEntity);
+    }
+    // }}
+
+    // {{ removeChild (action)
+    public UnidirJoinParentEntity removeChild(final UnidirJoinChildEntity childEntity) {
+        if (getChildren().contains(childEntity)) {
+            getChildren().remove(childEntity);
+        }
+        return this;
+    }
+
+    public List<UnidirFkChildEntity> choices0RemoveChild() {
+        return Arrays.asList(getChildren().toArray(new UnidirFkChildEntity[0]));
+    }
+    // }}
+
+}

http://git-wip-us.apache.org/repos/asf/isis/blob/93a1d5cc/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirJoinParentEntityRepository.java
----------------------------------------------------------------------
diff --git a/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirJoinParentEntityRepository.java b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirJoinParentEntityRepository.java
new file mode 100644
index 0000000..47da2d4
--- /dev/null
+++ b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirJoinParentEntityRepository.java
@@ -0,0 +1,45 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+package org.apache.isis.core.tck.dom.refs;
+
+import org.apache.isis.applib.annotation.DomainService;
+import org.apache.isis.applib.annotation.MemberOrder;
+import org.apache.isis.applib.annotation.Named;
+import org.apache.isis.applib.annotation.ObjectType;
+import org.apache.isis.core.tck.dom.AbstractEntityRepository;
+
+@Named("UnidirJoinParentEntities")
+@ObjectType("UnidirJoinParentEntities")
+@DomainService
+public class UnidirJoinParentEntityRepository extends AbstractEntityRepository<UnidirJoinParentEntity> {
+
+    public UnidirJoinParentEntityRepository() {
+        super(UnidirJoinParentEntity.class, "UnidirJoinParentEntities");
+    }
+
+    @MemberOrder(sequence = "2")
+    public UnidirJoinParentEntity newEntity(final String name) {
+        final UnidirJoinParentEntity entity = newTransientInstance(UnidirJoinParentEntity.class);
+        entity.setName(name);
+        persist(entity);
+        return entity;
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/isis/blob/93a1d5cc/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirReferencedEntity.java
----------------------------------------------------------------------
diff --git a/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirReferencedEntity.java b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirReferencedEntity.java
new file mode 100644
index 0000000..9049cad
--- /dev/null
+++ b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirReferencedEntity.java
@@ -0,0 +1,52 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+package org.apache.isis.core.tck.dom.refs;
+
+import javax.jdo.annotations.IdentityType;
+
+import org.apache.isis.applib.AbstractDomainObject;
+import org.apache.isis.applib.annotation.MemberOrder;
+import org.apache.isis.applib.annotation.ObjectType;
+import org.apache.isis.applib.annotation.Title;
+
+@javax.jdo.annotations.PersistenceCapable(identityType=IdentityType.DATASTORE)
+@javax.jdo.annotations.Discriminator("UDRD")
+@javax.jdo.annotations.DatastoreIdentity(strategy=javax.jdo.annotations.IdGeneratorStrategy.IDENTITY)
+@ObjectType("UDRD")
+public class UnidirReferencedEntity extends AbstractDomainObject {
+    
+
+    // {{ Name  (title)
+    private String name;
+
+    @Title(sequence="1")
+    @MemberOrder(sequence = "1")
+    public String getName() {
+        return name;
+    }
+
+    public void setName(final String name) {
+        this.name = name;
+    }
+
+    // }}
+
+
+}

http://git-wip-us.apache.org/repos/asf/isis/blob/93a1d5cc/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirReferencedEntityRepository.java
----------------------------------------------------------------------
diff --git a/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirReferencedEntityRepository.java b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirReferencedEntityRepository.java
new file mode 100644
index 0000000..6decf98
--- /dev/null
+++ b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirReferencedEntityRepository.java
@@ -0,0 +1,45 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+package org.apache.isis.core.tck.dom.refs;
+
+import org.apache.isis.applib.annotation.DomainService;
+import org.apache.isis.applib.annotation.MemberOrder;
+import org.apache.isis.applib.annotation.Named;
+import org.apache.isis.applib.annotation.ObjectType;
+import org.apache.isis.core.tck.dom.AbstractEntityRepository;
+
+@Named("UnidirReferencedEntities")
+@ObjectType("UnidirReferencedEntities")
+@DomainService
+public class UnidirReferencedEntityRepository extends AbstractEntityRepository<UnidirReferencedEntity> {
+
+    public UnidirReferencedEntityRepository() {
+        super(UnidirReferencedEntity.class, "UnidirReferencedEntities");
+    }
+
+    @MemberOrder(sequence = "2")
+    public UnidirReferencedEntity newEntity(final String name) {
+        final UnidirReferencedEntity entity = newTransientInstance(UnidirReferencedEntity.class);
+        entity.setName(name);
+        persist(entity);
+        return entity;
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/isis/blob/93a1d5cc/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirReferencingEntity.java
----------------------------------------------------------------------
diff --git a/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirReferencingEntity.java b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirReferencingEntity.java
new file mode 100644
index 0000000..170968f
--- /dev/null
+++ b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirReferencingEntity.java
@@ -0,0 +1,66 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+package org.apache.isis.core.tck.dom.refs;
+
+import javax.jdo.annotations.IdentityType;
+
+import org.apache.isis.applib.annotation.MemberOrder;
+import org.apache.isis.applib.annotation.ObjectType;
+import org.apache.isis.applib.annotation.Optional;
+import org.apache.isis.applib.annotation.Title;
+
+@javax.jdo.annotations.PersistenceCapable(identityType=IdentityType.DATASTORE)
+@javax.jdo.annotations.Discriminator("UDRG")
+@javax.jdo.annotations.DatastoreIdentity(strategy=javax.jdo.annotations.IdGeneratorStrategy.IDENTITY)
+@ObjectType("UDRG")
+public class UnidirReferencingEntity extends BaseEntity {
+
+    
+    // {{ Name (also title)
+    private String name;
+    
+    @Title
+    @MemberOrder(sequence = "1")
+    @Optional
+    public String getName() {
+        return name;
+    }
+
+    public void setName(final String name) {
+        this.name = name;
+    }
+
+    // }}
+
+
+    // {{ Referenced (property)
+    public UnidirReferencedEntity referenced;
+
+    @MemberOrder(sequence = "1")
+    public UnidirReferencedEntity getReferenced() {
+        return referenced;
+    }
+
+    public void setReferenced(final UnidirReferencedEntity referenced) {
+        this.referenced = referenced;
+    }
+    // }}
+
+}

http://git-wip-us.apache.org/repos/asf/isis/blob/93a1d5cc/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirReferencingEntityRepository.java
----------------------------------------------------------------------
diff --git a/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirReferencingEntityRepository.java b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirReferencingEntityRepository.java
new file mode 100644
index 0000000..9100601
--- /dev/null
+++ b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/refs/UnidirReferencingEntityRepository.java
@@ -0,0 +1,45 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+package org.apache.isis.core.tck.dom.refs;
+
+import org.apache.isis.applib.annotation.DomainService;
+import org.apache.isis.applib.annotation.MemberOrder;
+import org.apache.isis.applib.annotation.Named;
+import org.apache.isis.applib.annotation.ObjectType;
+import org.apache.isis.core.tck.dom.AbstractEntityRepository;
+
+@Named("UnidirReferencingEntities")
+@ObjectType("UnidirReferencingEntities")
+@DomainService
+public class UnidirReferencingEntityRepository extends AbstractEntityRepository<UnidirReferencingEntity> {
+
+    public UnidirReferencingEntityRepository() {
+        super(UnidirReferencingEntity.class, "UnidirReferencingEntities");
+    }
+
+    @MemberOrder(sequence = "2")
+    public UnidirReferencingEntity newEntity(final String name) {
+        final UnidirReferencingEntity entity = newTransientInstance(UnidirReferencingEntity.class);
+        entity.setName(name);
+        persist(entity);
+        return entity;
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/isis/blob/93a1d5cc/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/ApplibValuedEntity.java
----------------------------------------------------------------------
diff --git a/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/ApplibValuedEntity.java b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/ApplibValuedEntity.java
new file mode 100644
index 0000000..0206039
--- /dev/null
+++ b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/ApplibValuedEntity.java
@@ -0,0 +1,267 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+package org.apache.isis.core.tck.dom.scalars;
+
+import org.apache.isis.applib.AbstractDomainObject;
+import org.apache.isis.applib.annotation.MemberOrder;
+import org.apache.isis.applib.annotation.ObjectType;
+import org.apache.isis.applib.annotation.Optional;
+import org.apache.isis.applib.annotation.Title;
+import org.apache.isis.applib.value.Color;
+import org.apache.isis.applib.value.Date;
+import org.apache.isis.applib.value.DateTime;
+import org.apache.isis.applib.value.Image;
+import org.apache.isis.applib.value.Money;
+import org.apache.isis.applib.value.Password;
+import org.apache.isis.applib.value.Percentage;
+import org.apache.isis.applib.value.Time;
+import org.apache.isis.applib.value.TimeStamp;
+
+@javax.jdo.annotations.PersistenceCapable
+@javax.jdo.annotations.Discriminator("APLV")
+@javax.jdo.annotations.Query(
+        name="jdkv_findByStringProperty", language="JDOQL",  
+        value="SELECT FROM org.apache.isis.tck.dom.scalars.ApplibValuedEntity WHERE stringProperty == :i")
+@ObjectType("APLV")
+public class ApplibValuedEntity extends AbstractDomainObject {
+
+    
+    // {{ StringProperty (also title, pk)
+    private String stringProperty;
+
+    @javax.jdo.annotations.PrimaryKey
+    @Title
+    @Optional
+    @MemberOrder(sequence = "1")
+    public String getStringProperty() {
+        return stringProperty;
+    }
+
+    public void setStringProperty(final String description) {
+        this.stringProperty = description;
+    }
+
+    public ApplibValuedEntity updateStringProperty(
+            @Optional final String description) {
+        setStringProperty(stringProperty);
+        return this;
+    }
+
+    // }}
+
+    
+    
+    // {{ DateProperty
+    @javax.jdo.annotations.Persistent
+    private Date dateProperty;
+
+    @Optional
+    @MemberOrder(sequence = "1")
+    public Date getDateProperty() {
+        return dateProperty;
+    }
+
+    public void setDateProperty(final Date dateProperty) {
+        this.dateProperty = dateProperty;
+    }
+
+    public ApplibValuedEntity updateDateProperty(
+            @Optional final Date dateProperty) {
+        setDateProperty(dateProperty);
+        return this;
+    }
+
+    // }}
+
+    // {{ ColorProperty
+    @javax.jdo.annotations.NotPersistent
+    private Color colorProperty;
+
+    @Optional
+    @MemberOrder(sequence = "1")
+    public Color getColorProperty() {
+        return colorProperty;
+    }
+
+    public void setColorProperty(final Color colorProperty) {
+        this.colorProperty = colorProperty;
+    }
+
+    public ApplibValuedEntity updateColorProperty(
+            @Optional final Color colorProperty) {
+        setColorProperty(colorProperty);
+        return this;
+    }
+
+    // }}
+
+    // {{ DateTimeProperty
+    @javax.jdo.annotations.NotPersistent
+    private DateTime dateTimeProperty;
+
+    @Optional
+    @MemberOrder(sequence = "1")
+    public DateTime getDateTimeProperty() {
+        return dateTimeProperty;
+    }
+
+    public void setDateTimeProperty(final DateTime dateTimeProperty) {
+        this.dateTimeProperty = dateTimeProperty;
+    }
+
+    public ApplibValuedEntity updateDateTimeProperty(
+            @Optional final DateTime dateTimeProperty) {
+        setDateTimeProperty(dateTimeProperty);
+        return this;
+    }
+    // }}
+
+    // {{ ImageProperty
+    @javax.jdo.annotations.NotPersistent
+    private Image imageProperty;
+
+    @Optional
+    @MemberOrder(sequence = "1")
+    public Image getImageProperty() {
+        return imageProperty;
+    }
+
+    public void setImageProperty(final Image imageProperty) {
+        this.imageProperty = imageProperty;
+    }
+
+    public ApplibValuedEntity updateImageProperty(
+            @Optional final Image imageProperty) {
+        setImageProperty(imageProperty);
+        return this;
+    }
+
+    // }}
+
+    // {{ MoneyProperty
+    @javax.jdo.annotations.NotPersistent
+    private Money moneyProperty;
+
+    @Optional
+    @MemberOrder(sequence = "1")
+    public Money getMoneyProperty() {
+        return moneyProperty;
+    }
+
+    public void setMoneyProperty(final Money moneyProperty) {
+        this.moneyProperty = moneyProperty;
+    }
+
+    public ApplibValuedEntity updateMoneyProperty(
+            @Optional final Money moneyProperty) {
+        this.moneyProperty = moneyProperty;
+        return this;
+    }
+
+    // }}
+
+    // {{ PasswordProperty
+    @javax.jdo.annotations.NotPersistent
+    private Password passwordProperty;
+
+    @Optional
+    @MemberOrder(sequence = "1")
+    public Password getPasswordProperty() {
+        return passwordProperty;
+    }
+
+    public void setPasswordProperty(final Password passwordProperty) {
+        this.passwordProperty = passwordProperty;
+    }
+
+    public ApplibValuedEntity updatePasswordProperty(
+            @Optional final Password passwordProperty) {
+        setPasswordProperty(passwordProperty);
+        return this;
+    }
+
+    // }}
+
+    // {{ PercentageProperty
+    @javax.jdo.annotations.NotPersistent
+    private Percentage percentageProperty;
+
+    @Optional
+    @MemberOrder(sequence = "1")
+    public Percentage getPercentageProperty() {
+        return percentageProperty;
+    }
+
+    public void setPercentageProperty(final Percentage percentageProperty) {
+        this.percentageProperty = percentageProperty;
+    }
+
+    public ApplibValuedEntity updatePercentageProperty(
+            @Optional final Percentage percentageProperty) {
+        setPercentageProperty(percentageProperty);
+        return this;
+    }
+
+    // }}
+
+    // {{ TimeProperty
+    @javax.jdo.annotations.NotPersistent
+    private Time timeProperty;
+
+    @Optional
+    @MemberOrder(sequence = "1")
+    public Time getTimeProperty() {
+        return timeProperty;
+    }
+
+    public void setTimeProperty(final Time timeProperty) {
+        this.timeProperty = timeProperty;
+    }
+
+    public ApplibValuedEntity updateTimeProperty(
+            @Optional final Time timeProperty) {
+        setTimeProperty(timeProperty);
+        return this;
+    }
+
+    // }}
+
+    // {{ TimeStampProperty
+    @javax.jdo.annotations.NotPersistent
+    private TimeStamp timeStampProperty;
+
+    @Optional
+    @MemberOrder(sequence = "1")
+    public TimeStamp getTimeStampProperty() {
+        return timeStampProperty;
+    }
+
+    public void setTimestampProperty(final TimeStamp timestampProperty) {
+        this.timeStampProperty = timestampProperty;
+    }
+
+    public ApplibValuedEntity updateTimestampProperty(
+            @Optional final TimeStamp timestampProperty) {
+        setTimestampProperty(timestampProperty);
+        return this;
+    }
+    // }}
+
+}

http://git-wip-us.apache.org/repos/asf/isis/blob/93a1d5cc/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/ApplibValuedEntityRepository.java
----------------------------------------------------------------------
diff --git a/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/ApplibValuedEntityRepository.java b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/ApplibValuedEntityRepository.java
new file mode 100644
index 0000000..79c982d
--- /dev/null
+++ b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/ApplibValuedEntityRepository.java
@@ -0,0 +1,45 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+package org.apache.isis.core.tck.dom.scalars;
+
+import org.apache.isis.applib.annotation.DomainService;
+import org.apache.isis.applib.annotation.MemberOrder;
+import org.apache.isis.applib.annotation.Named;
+import org.apache.isis.applib.annotation.ObjectType;
+import org.apache.isis.core.tck.dom.AbstractEntityRepository;
+
+@Named("ApplibValuedEntities")
+@ObjectType("ApplibValuedEntities")
+@DomainService
+public class ApplibValuedEntityRepository extends AbstractEntityRepository<ApplibValuedEntity> {
+
+    public ApplibValuedEntityRepository() {
+        super(ApplibValuedEntity.class, "ApplibValuedEntities");
+    }
+    
+    /**
+     * Required to discover the ApplibValuedEntity type.
+     */
+    @Override
+    @MemberOrder(sequence = "2")
+    public ApplibValuedEntity newEntity() {
+        return super.newEntity();
+    }
+}

http://git-wip-us.apache.org/repos/asf/isis/blob/93a1d5cc/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/AutoAssignedEntity.java
----------------------------------------------------------------------
diff --git a/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/AutoAssignedEntity.java b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/AutoAssignedEntity.java
new file mode 100644
index 0000000..46be149
--- /dev/null
+++ b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/AutoAssignedEntity.java
@@ -0,0 +1,53 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+package org.apache.isis.core.tck.dom.scalars;
+
+import javax.jdo.annotations.IdentityType;
+
+import org.apache.isis.applib.AbstractDomainObject;
+import org.apache.isis.applib.annotation.MemberOrder;
+import org.apache.isis.applib.annotation.ObjectType;
+import org.apache.isis.applib.annotation.Optional;
+import org.apache.isis.applib.annotation.Title;
+
+@javax.jdo.annotations.PersistenceCapable(identityType=IdentityType.DATASTORE)
+@javax.jdo.annotations.Discriminator("AUAS")
+@javax.jdo.annotations.DatastoreIdentity(strategy=javax.jdo.annotations.IdGeneratorStrategy.IDENTITY)
+@ObjectType("AUAS")
+public class AutoAssignedEntity extends AbstractDomainObject {
+
+    
+    // {{ StringProperty (used in title)
+    private String stringProperty;
+
+    @Title(sequence="2")
+    @Optional
+    @MemberOrder(sequence = "1")
+    public String getStringProperty() {
+        return stringProperty;
+    }
+
+    public void setStringProperty(final String description) {
+        this.stringProperty = description;
+    }
+
+    // }}
+
+}

http://git-wip-us.apache.org/repos/asf/isis/blob/93a1d5cc/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/AutoAssignedEntityRepository.java
----------------------------------------------------------------------
diff --git a/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/AutoAssignedEntityRepository.java b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/AutoAssignedEntityRepository.java
new file mode 100644
index 0000000..9de9e87
--- /dev/null
+++ b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/AutoAssignedEntityRepository.java
@@ -0,0 +1,43 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+package org.apache.isis.core.tck.dom.scalars;
+
+import org.apache.isis.applib.annotation.MemberOrder;
+import org.apache.isis.applib.annotation.Named;
+import org.apache.isis.applib.annotation.ObjectType;
+import org.apache.isis.core.tck.dom.AbstractEntityRepository;
+
+@Named("AutoAssignedEntities")
+@ObjectType("AutoAssignedEntities")
+public class AutoAssignedEntityRepository extends AbstractEntityRepository<AutoAssignedEntity> {
+
+    public AutoAssignedEntityRepository() {
+        super(AutoAssignedEntity.class, "AutoAssignedEntities");
+    }
+    
+    /**
+     * Required to discover the AutoAssignedEntity type.
+     */
+    @Override
+    @MemberOrder(sequence = "2")
+    public AutoAssignedEntity newEntity() {
+        return super.newEntity();
+    }
+}

http://git-wip-us.apache.org/repos/asf/isis/blob/93a1d5cc/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/DateTimeValuedEntity.java
----------------------------------------------------------------------
diff --git a/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/DateTimeValuedEntity.java b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/DateTimeValuedEntity.java
new file mode 100644
index 0000000..1985e16
--- /dev/null
+++ b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/DateTimeValuedEntity.java
@@ -0,0 +1,171 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+package org.apache.isis.core.tck.dom.scalars;
+
+import org.apache.isis.applib.AbstractDomainObject;
+import org.apache.isis.applib.annotation.MemberOrder;
+import org.apache.isis.applib.annotation.ObjectType;
+import org.apache.isis.applib.annotation.Optional;
+import org.apache.isis.applib.annotation.Title;
+
+/**
+ * TODO: delete ... OVERLAPS WITH ApplibValuedEntity, JdkValuedEntity, JodaValuedEntity
+ *
+ * @deprecated
+ */
+@javax.jdo.annotations.PersistenceCapable
+@javax.jdo.annotations.Discriminator("APLV")
+@javax.jdo.annotations.Query(
+        name="dtmv_findByStringProperty", language="JDOQL",  
+        value="SELECT FROM org.apache.isis.tck.dom.scalars.DateTimeValuedEntity WHERE stringProperty == :i")
+@ObjectType("APLV")
+@Deprecated
+public class DateTimeValuedEntity extends AbstractDomainObject {
+
+    
+    // {{ StringProperty (also title, pk)
+    private String stringProperty;
+
+    @javax.jdo.annotations.PrimaryKey
+    @Title
+    @Optional
+    @MemberOrder(sequence = "1")
+    public String getStringProperty() {
+        return stringProperty;
+    }
+
+    public void setStringProperty(final String stringProperty) {
+        this.stringProperty = stringProperty;
+    }
+    // }}
+
+    
+    // {{ JavaUtilDate (property)
+    private java.util.Date javaUtilDate;
+
+    @Optional
+    @MemberOrder(name="dates", sequence = "1")
+    public java.util.Date getJavaUtilDate() {
+        return javaUtilDate;
+    }
+
+    public void setJavaUtilDate(final java.util.Date javaUtilDate) {
+        this.javaUtilDate = javaUtilDate;
+    }
+    // }}
+
+    // {{ JavaSqlDate (property)
+    private java.sql.Date javaSqlDate;
+
+    @javax.jdo.annotations.Persistent
+    @Optional
+    @MemberOrder(name="dates", sequence = "1")
+    public java.sql.Date getJavaSqlDate() {
+        return javaSqlDate;
+    }
+
+    public void setJavaSqlDate(final java.sql.Date javaSqlDate) {
+        this.javaSqlDate = javaSqlDate;
+    }
+
+    public DateTimeValuedEntity updateJavaSqlDate(
+            @Optional final java.sql.Date javaSqlDate) {
+        setJavaSqlDate(javaSqlDate);
+        return this;
+    }
+    // }}
+
+    // {{ ApplibDate (property)
+    private org.apache.isis.applib.value.Date applibDate;
+
+    @javax.jdo.annotations.Persistent
+    @Optional
+    @MemberOrder(name="dates", sequence = "1")
+    public org.apache.isis.applib.value.Date getApplibDate() {
+        return applibDate;
+    }
+
+    public void setApplibDate(final org.apache.isis.applib.value.Date applibDate) {
+        this.applibDate = applibDate;
+    }
+    // }}
+
+    // {{ ApplibDateTime (property)
+    private org.apache.isis.applib.value.DateTime applibDateTime;
+
+    @javax.jdo.annotations.Persistent
+    @Optional
+    @MemberOrder(name="dates", sequence = "1")
+    public org.apache.isis.applib.value.DateTime getApplibDateTime() {
+        return applibDateTime;
+    }
+
+    public void setApplibDateTime(final org.apache.isis.applib.value.DateTime applibDateTime) {
+        this.applibDateTime = applibDateTime;
+    }
+    // }}
+
+    // {{ JodaLocalDateTime (property)
+    private org.joda.time.LocalDateTime jodaLocalDateTime;
+
+    @javax.jdo.annotations.Persistent
+    @Optional
+    @MemberOrder(name="dates", sequence = "1")
+    public org.joda.time.LocalDateTime getJodaLocalDateTime() {
+        return jodaLocalDateTime;
+    }
+    public void setJodaLocalDateTime(final org.joda.time.LocalDateTime jodaLocalDateTime) {
+        this.jodaLocalDateTime = jodaLocalDateTime;
+    }
+    // }}
+
+    // {{ JodaLocalDate (property)
+    private org.joda.time.LocalDate jodaLocalDate;
+
+    @javax.jdo.annotations.Persistent
+    @Optional
+    @MemberOrder(name="dates", sequence = "1")
+    public org.joda.time.LocalDate getJodaLocalDate() {
+        return jodaLocalDate;
+    }
+
+    public void setJodaLocalDate(final org.joda.time.LocalDate jodaLocalDate) {
+        this.jodaLocalDate = jodaLocalDate;
+    }
+    // }}
+
+
+    // {{ JodaDateTime (property)
+    private org.joda.time.DateTime jodaDateTime;
+
+    @javax.jdo.annotations.Persistent
+    @Optional
+    @MemberOrder(name="dates", sequence = "1")
+    public org.joda.time.DateTime getJodaDateTime() {
+        return jodaDateTime;
+    }
+
+    public void setJodaDateTime(final org.joda.time.DateTime jodaDateTime) {
+        this.jodaDateTime = jodaDateTime;
+    }
+    // }}
+    
+
+}

http://git-wip-us.apache.org/repos/asf/isis/blob/93a1d5cc/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/DateTimeValuedEntityRepository.java
----------------------------------------------------------------------
diff --git a/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/DateTimeValuedEntityRepository.java b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/DateTimeValuedEntityRepository.java
new file mode 100644
index 0000000..6f4c0b4
--- /dev/null
+++ b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/DateTimeValuedEntityRepository.java
@@ -0,0 +1,44 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+package org.apache.isis.core.tck.dom.scalars;
+
+import org.apache.isis.applib.annotation.MemberOrder;
+import org.apache.isis.applib.annotation.Named;
+import org.apache.isis.applib.annotation.ObjectType;
+import org.apache.isis.core.tck.dom.AbstractEntityRepository;
+
+@Named("DateTimeValuedEntities")
+@ObjectType("DateTimeValuedEntities")
+public class DateTimeValuedEntityRepository extends AbstractEntityRepository<DateTimeValuedEntity> {
+
+    public DateTimeValuedEntityRepository() {
+        super(DateTimeValuedEntity.class, "DateTimeValuedEntities");
+    }
+
+    /**
+     * Required to discover the DateTimeValueEntity type.
+     */
+    @Override
+    @MemberOrder(sequence = "2")
+    public DateTimeValuedEntity newEntity() {
+        return super.newEntity();
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/isis/blob/93a1d5cc/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/JdkValuedEntity.java
----------------------------------------------------------------------
diff --git a/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/JdkValuedEntity.java b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/JdkValuedEntity.java
new file mode 100644
index 0000000..43cd3fe
--- /dev/null
+++ b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/JdkValuedEntity.java
@@ -0,0 +1,201 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+package org.apache.isis.core.tck.dom.scalars;
+
+import java.math.BigDecimal;
+import java.math.BigInteger;
+import java.util.Date;
+import javax.validation.constraints.Digits;
+import org.apache.isis.applib.AbstractDomainObject;
+import org.apache.isis.applib.annotation.MemberOrder;
+import org.apache.isis.applib.annotation.ObjectType;
+import org.apache.isis.applib.annotation.Optional;
+import org.apache.isis.applib.annotation.Title;
+
+@javax.jdo.annotations.PersistenceCapable
+@javax.jdo.annotations.Discriminator("JDKV")
+@javax.jdo.annotations.Query(
+        name="jdkv_findByStringProperty", language="JDOQL",  
+        value="SELECT FROM org.apache.isis.tck.dom.scalars.JdkValuedEntity WHERE stringProperty == :i")
+@ObjectType("JDKV")
+public class JdkValuedEntity extends AbstractDomainObject {
+
+    // {{ StringProperty (also title, pk)
+    private String stringProperty;
+
+    @javax.jdo.annotations.PrimaryKey
+    @Title
+    @Optional
+    @MemberOrder(sequence = "1")
+    public String getStringProperty() {
+        return stringProperty;
+    }
+
+    public void setStringProperty(final String description) {
+        this.stringProperty = description;
+    }
+
+    // }}
+
+    // {{ JavaUtilDateProperty
+    private Date javaUtilDateProperty;
+
+    @Optional
+    @MemberOrder(sequence = "1")
+    public Date getJavaUtilDateProperty() {
+        return javaUtilDateProperty;
+    }
+
+    public void setJavaUtilDateProperty(final Date javaUtilDateProperty) {
+        this.javaUtilDateProperty = javaUtilDateProperty;
+    }
+
+    // }}
+
+    // {{ JavaSqlDateProperty
+    private java.sql.Date javaSqlDateProperty;
+
+    @javax.jdo.annotations.Persistent() // since not persistent by default
+    @Optional
+    @MemberOrder(sequence = "1")
+    public java.sql.Date getJavaSqlDateProperty() {
+        return javaSqlDateProperty;
+    }
+
+    public void setJavaSqlDateProperty(final java.sql.Date javaSqlDateProperty) {
+        this.javaSqlDateProperty = javaSqlDateProperty;
+    }
+
+    // }}
+
+    // {{ JavaSqlTimeProperty (property)
+    @javax.jdo.annotations.Persistent() // since not persistent by default
+    private java.sql.Time javaSqlTimeProperty;
+
+    @Optional
+    @MemberOrder(sequence = "1")
+    public java.sql.Time getJavaSqlTimeProperty() {
+        return javaSqlTimeProperty;
+    }
+
+    public void setJavaSqlTimeProperty(final java.sql.Time javaSqlTimeProperty) {
+        this.javaSqlTimeProperty = javaSqlTimeProperty;
+    }
+    // }}
+
+
+    
+    // {{ JavaSqlTimestampProperty
+    @javax.jdo.annotations.Persistent() // since not persistent by default
+    private java.sql.Timestamp javaSqlTimestampProperty;
+
+    @Optional
+    @MemberOrder(sequence = "1")
+    public java.sql.Timestamp getJavaSqlTimestampProperty() {
+        return javaSqlTimestampProperty;
+    }
+
+    public void setJavaSqlTimestampProperty(final java.sql.Timestamp javaSqlTimestampProperty) {
+        this.javaSqlTimestampProperty = javaSqlTimestampProperty;
+    }
+
+    // }}
+
+    // {{ BigIntegerProperty (to hold values that are larger than a long)
+    private BigInteger bigIntegerProperty;
+
+    @Optional
+    @MemberOrder(sequence = "1")
+    public BigInteger getBigIntegerProperty() {
+        return bigIntegerProperty;
+    }
+
+    public void setBigIntegerProperty(final BigInteger bigIntegerProperty) {
+        this.bigIntegerProperty = bigIntegerProperty;
+    }
+
+    // }}
+
+    // {{ BigIntegerProperty2 (to hold values that can also fit into a long)
+    private BigInteger bigIntegerProperty2;
+
+    @Optional
+    @MemberOrder(sequence = "1")
+    public BigInteger getBigIntegerProperty2() {
+        return bigIntegerProperty2;
+    }
+
+    public void setBigIntegerProperty2(final BigInteger bigIntegerProperty2) {
+        this.bigIntegerProperty2 = bigIntegerProperty2;
+    }
+
+    // }}
+
+    // {{ BigDecimalProperty (to hold values that are larger than a double)
+    private BigDecimal bigDecimalProperty;
+
+    @Digits(integer=20,fraction = 10) // corresponds to big-decimal(30,10)
+    @Optional
+    @MemberOrder(sequence = "1")
+    public BigDecimal getBigDecimalProperty() {
+        return bigDecimalProperty;
+    }
+
+    public void setBigDecimalProperty(final BigDecimal bigDecimalProperty) {
+        this.bigDecimalProperty = bigDecimalProperty;
+    }
+
+    // }}
+
+
+    // {{ BigDecimalProperty (to hold values that are larger than a double)
+    private BigDecimal bigDecimalProperty2;
+
+    @Optional
+    @MemberOrder(sequence = "1")
+    public BigDecimal getBigDecimalProperty2() {
+        return bigDecimalProperty2;
+    }
+
+    public void setBigDecimalProperty2(final BigDecimal bigDecimalProperty2) {
+        this.bigDecimalProperty2 = bigDecimalProperty2;
+    }
+
+    // }}
+
+
+    // {{ MyEnum (property)
+    private MyEnum myEnum;
+
+    @javax.jdo.annotations.Persistent
+    @Optional
+    @MemberOrder(sequence = "1")
+    public MyEnum getMyEnum() {
+        return myEnum;
+    }
+
+    public void setMyEnum(final MyEnum myEnum) {
+        this.myEnum = myEnum;
+    }
+    // }}
+
+
+
+}

http://git-wip-us.apache.org/repos/asf/isis/blob/93a1d5cc/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/JdkValuedEntityRepository.java
----------------------------------------------------------------------
diff --git a/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/JdkValuedEntityRepository.java b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/JdkValuedEntityRepository.java
new file mode 100644
index 0000000..9a0624e
--- /dev/null
+++ b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/JdkValuedEntityRepository.java
@@ -0,0 +1,46 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+package org.apache.isis.core.tck.dom.scalars;
+
+import org.apache.isis.applib.annotation.DomainService;
+import org.apache.isis.applib.annotation.MemberOrder;
+import org.apache.isis.applib.annotation.Named;
+import org.apache.isis.applib.annotation.ObjectType;
+import org.apache.isis.core.tck.dom.AbstractEntityRepository;
+
+@Named("JdkValuedEntities")
+@ObjectType("JdkValuedEntities")
+@DomainService
+public class JdkValuedEntityRepository extends AbstractEntityRepository<JdkValuedEntity> {
+
+    public JdkValuedEntityRepository() {
+        super(JdkValuedEntity.class, "JdkValuedEntities");
+    }
+
+    /**
+     * Required to discover the JdkValueEntity type.
+     */
+    @Override
+    @MemberOrder(sequence = "2")
+    public JdkValuedEntity newEntity() {
+        return super.newEntity();
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/isis/blob/93a1d5cc/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/JodaValuedEntity.java
----------------------------------------------------------------------
diff --git a/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/JodaValuedEntity.java b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/JodaValuedEntity.java
new file mode 100644
index 0000000..cc0e81c
--- /dev/null
+++ b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/JodaValuedEntity.java
@@ -0,0 +1,126 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+package org.apache.isis.core.tck.dom.scalars;
+
+import org.joda.time.DateTime;
+import org.joda.time.LocalDate;
+import org.joda.time.LocalDateTime;
+import org.apache.isis.applib.AbstractDomainObject;
+import org.apache.isis.applib.annotation.MemberOrder;
+import org.apache.isis.applib.annotation.ObjectType;
+import org.apache.isis.applib.annotation.Optional;
+import org.apache.isis.applib.annotation.Title;
+
+@javax.jdo.annotations.PersistenceCapable
+@javax.jdo.annotations.Discriminator("JODA")
+@javax.jdo.annotations.Query(
+        name="joda_findByStringProperty", language="JDOQL",  
+        value="SELECT FROM org.apache.isis.tck.dom.scalars.JdkValuedEntity WHERE stringProperty == :i")
+@ObjectType("JODA")
+public class JodaValuedEntity extends AbstractDomainObject {
+
+    // {{ StringProperty (also title, pk)
+    private String stringProperty;
+
+    @javax.jdo.annotations.PrimaryKey
+    @Title
+    @Optional
+    @MemberOrder(sequence = "1")
+    public String getStringProperty() {
+        return stringProperty;
+    }
+
+    public void setStringProperty(final String stringProperty) {
+        this.stringProperty = stringProperty;
+    }
+
+    public JodaValuedEntity updateStringProperty(
+            @Optional final String stringProperty) {
+        setStringProperty(stringProperty);
+        return this;
+    }
+
+    // }}
+
+    // {{ LocalDateProperty
+    private LocalDate localDateProperty;
+
+    @Optional
+    @MemberOrder(sequence = "1")
+    public LocalDate getLocalDateProperty() {
+        return localDateProperty;
+    }
+
+    public void setLocalDateProperty(final LocalDate localDateProperty) {
+        this.localDateProperty = localDateProperty;
+    }
+
+    public JodaValuedEntity updateLocalDateProperty(
+            @Optional final LocalDate localDateProperty) {
+        setLocalDateProperty(localDateProperty);
+        return this;
+    }
+    // }}
+
+
+    // {{ LocalDateTimeProperty
+    private LocalDateTime localDateTimeProperty;
+
+    @Optional
+    @MemberOrder(sequence = "1")
+    public LocalDateTime getLocalDateTimeProperty() {
+        return localDateTimeProperty;
+    }
+
+    public void setLocalDateTimeProperty(final LocalDateTime localDateTimeProperty) {
+        this.localDateTimeProperty = localDateTimeProperty;
+    }
+
+    public JodaValuedEntity updateLocalDateTimeProperty(
+            @Optional final LocalDateTime localDateTimeProperty) {
+        setLocalDateTimeProperty(localDateTimeProperty);
+        return this;
+    }
+    // }}
+    
+    
+    // {{ DateTimeProperty
+    private DateTime dateTimeProperty;
+    
+    @Optional
+    @MemberOrder(sequence = "1")
+    public DateTime getDateTimeProperty() {
+        return dateTimeProperty;
+    }
+    
+    public void setDateTimeProperty(final DateTime dateTimeProperty) {
+        this.dateTimeProperty = dateTimeProperty;
+    }
+
+    public JodaValuedEntity updateDateTimeProperty(
+            @Optional final DateTime dateTimeProperty) {
+        setDateTimeProperty(dateTimeProperty);
+        return this;
+    }
+    // }}
+
+
+
+}

http://git-wip-us.apache.org/repos/asf/isis/blob/93a1d5cc/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/JodaValuedEntityRepository.java
----------------------------------------------------------------------
diff --git a/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/JodaValuedEntityRepository.java b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/JodaValuedEntityRepository.java
new file mode 100644
index 0000000..8f46899
--- /dev/null
+++ b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/JodaValuedEntityRepository.java
@@ -0,0 +1,46 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+package org.apache.isis.core.tck.dom.scalars;
+
+import org.apache.isis.applib.annotation.DomainService;
+import org.apache.isis.applib.annotation.MemberOrder;
+import org.apache.isis.applib.annotation.Named;
+import org.apache.isis.applib.annotation.ObjectType;
+import org.apache.isis.core.tck.dom.AbstractEntityRepository;
+
+@Named("JodaValuedEntities")
+@ObjectType("JodaValuedEntities")
+@DomainService
+public class JodaValuedEntityRepository extends AbstractEntityRepository<JodaValuedEntity> {
+
+    public JodaValuedEntityRepository() {
+        super(JodaValuedEntity.class, "JodaValuedEntities");
+    }
+
+    /**
+     * Required to discover the JodaValueEntity type.
+     */
+    @Override
+    @MemberOrder(sequence = "2")
+    public JodaValuedEntity newEntity() {
+        return super.newEntity();
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/isis/blob/93a1d5cc/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/MyEnum.java
----------------------------------------------------------------------
diff --git a/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/MyEnum.java b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/MyEnum.java
new file mode 100644
index 0000000..edcd676
--- /dev/null
+++ b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/MyEnum.java
@@ -0,0 +1,29 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+package org.apache.isis.core.tck.dom.scalars;
+
+public enum MyEnum {
+    RED,
+    ORANGE,
+    YELLOW,
+    GREEN,
+    BLUE,
+    INDIGO,
+    VIOLET
+}

http://git-wip-us.apache.org/repos/asf/isis/blob/93a1d5cc/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/PrimitiveValuedEntity.java
----------------------------------------------------------------------
diff --git a/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/PrimitiveValuedEntity.java b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/PrimitiveValuedEntity.java
new file mode 100644
index 0000000..fc8cefa
--- /dev/null
+++ b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/PrimitiveValuedEntity.java
@@ -0,0 +1,214 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+package org.apache.isis.core.tck.dom.scalars;
+
+import org.apache.isis.applib.AbstractDomainObject;
+import org.apache.isis.applib.annotation.MemberOrder;
+import org.apache.isis.applib.annotation.ObjectType;
+import org.apache.isis.applib.annotation.Title;
+
+@javax.jdo.annotations.PersistenceCapable
+@javax.jdo.annotations.Discriminator("PRMV")
+@javax.jdo.annotations.Query(
+        name="prmv_findByIntProperty", language="JDOQL",  
+        value="SELECT FROM org.apache.isis.tck.dom.scalars.PrimitiveValuedEntity WHERE intProperty == :i")
+@ObjectType("PRMV")
+public class PrimitiveValuedEntity extends AbstractDomainObject {
+
+    
+    // {{ Id (Integer)
+    private Integer id;
+
+    @Title(prepend="Primitive Valued Entity #")
+    @javax.jdo.annotations.PrimaryKey // must be on the getter.
+    public Integer getId() {
+        return id;
+    }
+
+    public void setId(final Integer id) {
+        this.id = id;
+    }
+    // }}
+
+
+    // {{ BooleanProperty
+    private boolean booleanProperty;
+
+    @MemberOrder(sequence = "3")
+    public boolean getBooleanProperty() {
+        return booleanProperty;
+    }
+
+    public void setBooleanProperty(final boolean booleanProperty) {
+        this.booleanProperty = booleanProperty;
+    }
+
+    public PrimitiveValuedEntity updateBooleanProperty(
+            final boolean booleanProperty) {
+        setBooleanProperty(booleanProperty);
+        return this;
+    }
+    // }}
+
+    // {{ ByteProperty
+    private byte byteProperty;
+
+    @MemberOrder(sequence = "1")
+    public byte getByteProperty() {
+        return byteProperty;
+    }
+
+    public void setByteProperty(final byte byteProperty) {
+        this.byteProperty = byteProperty;
+    }
+
+    public PrimitiveValuedEntity updateByteProperty(
+            final byte byteProperty) {
+        setByteProperty(byteProperty);
+        return this;
+    }
+
+    // }}
+
+    // {{ ShortProperty
+    private short shortProperty;
+
+    @MemberOrder(sequence = "1")
+    public short getShortProperty() {
+        return shortProperty;
+    }
+
+    public void setShortProperty(final short shortProperty) {
+        this.shortProperty = shortProperty;
+    }
+
+    public PrimitiveValuedEntity updateShortProperty(
+            final short shortProperty) {
+        setShortProperty(shortProperty);
+        return this;
+    }
+
+    // }}
+
+    // {{ IntProperty
+    private int intProperty;
+
+    @MemberOrder(sequence = "1")
+    public int getIntProperty() {
+        return intProperty;
+    }
+
+    public void setIntProperty(final int intProperty) {
+        this.intProperty = intProperty;
+    }
+
+    public PrimitiveValuedEntity updateIntProperty(
+            final int intProperty) {
+        setIntProperty(intProperty);
+        return this;
+    }
+
+    // }}
+
+    // {{ LongProperty
+    private long longProperty;
+
+    @MemberOrder(sequence = "1")
+    public long getLongProperty() {
+        return longProperty;
+    }
+
+    public void setLongProperty(final long longProperty) {
+        this.longProperty = longProperty;
+    }
+
+    public PrimitiveValuedEntity updateLongProperty(
+            final long longProperty) {
+        setLongProperty(longProperty);
+        return this;
+    }
+
+    // }}
+
+    // {{ FloatProperty
+    private float floatProperty;
+
+    @MemberOrder(sequence = "1")
+    public float getFloatProperty() {
+        return floatProperty;
+    }
+
+    public void setFloatProperty(final float floatProperty) {
+        this.floatProperty = floatProperty;
+    }
+
+    public PrimitiveValuedEntity updateFloatProperty(
+            final float floatProperty) {
+        setFloatProperty(floatProperty);
+        return this;
+    }
+
+    // }}
+
+    // {{ DoubleProperty
+    private double doubleProperty;
+
+    @MemberOrder(sequence = "1")
+    public double getDoubleProperty() {
+        return doubleProperty;
+    }
+
+    public void setDoubleProperty(final double doubleProperty) {
+        this.doubleProperty = doubleProperty;
+    }
+
+    public PrimitiveValuedEntity updateDoubleProperty(
+            final double doubleProperty) {
+        setDoubleProperty(doubleProperty);
+        return this;
+    }
+
+    // }}
+
+    
+    // {{ CharProperty
+    @javax.jdo.annotations.Column(jdbcType="char") // for hsqldb
+    //@javax.jdo.annotations.Column(jdbcType="char", sqlType="char") // for mssqlserver
+    private char charProperty;
+
+    @MemberOrder(sequence = "1")
+    public char getCharProperty() {
+        return charProperty;
+    }
+
+    public void setCharProperty(final char charProperty) {
+        this.charProperty = charProperty;
+    }
+
+    public PrimitiveValuedEntity updateCharProperty(
+            final char charProperty) {
+        setCharProperty(charProperty);
+        return this;
+    }
+
+    // }}
+
+
+}

http://git-wip-us.apache.org/repos/asf/isis/blob/93a1d5cc/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/PrimitiveValuedEntityRepository.java
----------------------------------------------------------------------
diff --git a/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/PrimitiveValuedEntityRepository.java b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/PrimitiveValuedEntityRepository.java
new file mode 100644
index 0000000..aa84d55
--- /dev/null
+++ b/mothballed/tck/tck-dom/src/main/java/org/apache/isis/core/tck/dom/scalars/PrimitiveValuedEntityRepository.java
@@ -0,0 +1,43 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+package org.apache.isis.core.tck.dom.scalars;
+
+import org.apache.isis.applib.annotation.*;
+import org.apache.isis.applib.query.Query;
+import org.apache.isis.applib.query.QueryDefault;
+import org.apache.isis.core.tck.dom.AbstractEntityRepository;
+
+@Named("PrimitiveValuedEntities")
+@ObjectType("PrimitiveValuedEntities")
+@DomainService
+public class PrimitiveValuedEntityRepository extends AbstractEntityRepository<PrimitiveValuedEntity> {
+
+    public PrimitiveValuedEntityRepository() {
+        super(PrimitiveValuedEntity.class, "PrimitiveValuedEntities");
+    }
+
+    @QueryOnly
+    @MemberOrder(sequence = "1")
+    public PrimitiveValuedEntity findById(int id) {
+        final Query<PrimitiveValuedEntity> query = 
+                new QueryDefault<PrimitiveValuedEntity>(PrimitiveValuedEntity.class, PrimitiveValuedEntity.class.getName() + "#pk", "id", id);
+        return this.firstMatch(query);
+    }
+}