diff --git a/com.epistimis.uddl/src/com/epistimis/uddl/constraints/all-extended-req-invariants.ocl b/com.epistimis.uddl/src/com/epistimis/uddl/constraints/all-extended-req-invariants.ocl new file mode 100644 index 0000000..c6dbb43 --- /dev/null +++ b/com.epistimis.uddl/src/com/epistimis/uddl/constraints/all-extended-req-invariants.ocl @@ -0,0 +1,6 @@ +include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/constraints/conceptualExtensions.ocl' +include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/constraints/logicalExtensions.ocl' +include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/constraints/platformExtensions.ocl' + +include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/constraints/library.ocl' + diff --git a/com.epistimis.uddl/src/com/epistimis/uddl/constraints/all-invariants.ocl b/com.epistimis.uddl/src/com/epistimis/uddl/constraints/all-invariants.ocl new file mode 100644 index 0000000..7947394 --- /dev/null +++ b/com.epistimis.uddl/src/com/epistimis/uddl/constraints/all-invariants.ocl @@ -0,0 +1,5 @@ +include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/constraints/all-standard-req-invariants.ocl' +include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/constraints/all-extended-req-invariants.ocl' +-- Optional invariants are, by definition, optional. So they don't get included automatically. +-- TODO: What mechanism should we have to load Optional invariants? These are from the UDDL Conformance suite +--include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/constraints/all-standard-opt-invariants.ocl' diff --git a/com.epistimis.uddl/src/com/epistimis/uddl/constraints/all-standard-opt-invariants.ocl b/com.epistimis.uddl/src/com/epistimis/uddl/constraints/all-standard-opt-invariants.ocl new file mode 100644 index 0000000..acc03a2 --- /dev/null +++ b/com.epistimis.uddl/src/com/epistimis/uddl/constraints/all-standard-opt-invariants.ocl @@ -0,0 +1,7 @@ +include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/constraints/conditional_entityIsUnique.ocl' +include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/constraints/conditional_observableComposedOnce.ocl' +-- The next 3 are variations on usage of some invariants. The file names indicate which invariants are active. Don't need all 3 of them at the same time +include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/constraints/entityUniqueness.observableUniqueness.conceptual.ocl' +include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/constraints/entityUniqueness.conceptual.ocl' +include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/constraints/observableUniqueness.conceptual.ocl' + diff --git a/com.epistimis.uddl/src/com/epistimis/uddl/constraints/all-standard-req-invariants.ocl b/com.epistimis.uddl/src/com/epistimis/uddl/constraints/all-standard-req-invariants.ocl new file mode 100644 index 0000000..7ebfd9a --- /dev/null +++ b/com.epistimis.uddl/src/com/epistimis/uddl/constraints/all-standard-req-invariants.ocl @@ -0,0 +1,7 @@ +include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/constraints/uddl.ocl' +include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/constraints/datamodel.ocl' + +include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/constraints/conceptual.ocl' +include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/constraints/logical.ocl' +include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/constraints/platform.ocl' + diff --git a/com.epistimis.uddl/src/com/epistimis/uddl/constraints/conceptual.ocl b/com.epistimis.uddl/src/com/epistimis/uddl/constraints/conceptual.ocl index 0e447bd..ac5e1a2 100644 --- a/com.epistimis.uddl/src/com/epistimis/uddl/constraints/conceptual.ocl +++ b/com.epistimis.uddl/src/com/epistimis/uddl/constraints/conceptual.ocl @@ -1,10 +1,8 @@ import ecore : 'http://www.eclipse.org/emf/2002/Ecore#/' ---import '../../../../../model/generated/Uddl.ecore' import 'platform:/plugin/com.epistimis.uddl/model/generated/Uddl.ecore' ---include 'helpers.ocl' -include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/constraints/helpers.ocl' +include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/extension/helpers.ocl' package uddl diff --git a/com.epistimis.uddl/src/com/epistimis/uddl/constraints/conceptualExtensions.ocl b/com.epistimis.uddl/src/com/epistimis/uddl/constraints/conceptualExtensions.ocl index e59ffe3..b3ca6d8 100644 --- a/com.epistimis.uddl/src/com/epistimis/uddl/constraints/conceptualExtensions.ocl +++ b/com.epistimis.uddl/src/com/epistimis/uddl/constraints/conceptualExtensions.ocl @@ -4,9 +4,7 @@ import ecore : 'http://www.eclipse.org/emf/2002/Ecore#/' --import uddl : 'http://www.epistimis.com/uddl/Uddl' ---import '../../../../../model/generated/Uddl.ecore' import 'platform:/plugin/com.epistimis.uddl/model/generated/Uddl.ecore' ---include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/constraints/library.ocl' include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/extension/conceptualExtensions.ocl' diff --git a/com.epistimis.uddl/src/com/epistimis/uddl/constraints/conditional_entityIsUnique.ocl b/com.epistimis.uddl/src/com/epistimis/uddl/constraints/conditional_entityIsUnique.ocl index 2427f3a..d1108b7 100644 --- a/com.epistimis.uddl/src/com/epistimis/uddl/constraints/conditional_entityIsUnique.ocl +++ b/com.epistimis.uddl/src/com/epistimis/uddl/constraints/conditional_entityIsUnique.ocl @@ -1,10 +1,8 @@ /** * UDDL standard constraints - adjusted for this metamodel */ ---import '../../../../../model/generated/Uddl.ecore' import 'platform:/plugin/com.epistimis.uddl/model/generated/Uddl.ecore' ---include 'conceptual.ocl' include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/constraints/conceptual.ocl' diff --git a/com.epistimis.uddl/src/com/epistimis/uddl/constraints/conditional_observableComposedOnce.ocl b/com.epistimis.uddl/src/com/epistimis/uddl/constraints/conditional_observableComposedOnce.ocl index e860823..e2ed717 100644 --- a/com.epistimis.uddl/src/com/epistimis/uddl/constraints/conditional_observableComposedOnce.ocl +++ b/com.epistimis.uddl/src/com/epistimis/uddl/constraints/conditional_observableComposedOnce.ocl @@ -1,10 +1,8 @@ /** * UDDL standard constraints - adjusted for this metamodel */ ---import '../../../../../model/generated/Uddl.ecore' import 'platform:/plugin/com.epistimis.uddl/model/generated/Uddl.ecore' ---include 'conceptual.ocl' include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/constraints/conceptual.ocl' package uddl diff --git a/com.epistimis.uddl/src/com/epistimis/uddl/constraints/datamodel.ocl b/com.epistimis.uddl/src/com/epistimis/uddl/constraints/datamodel.ocl index a2d78a1..2900fe7 100644 --- a/com.epistimis.uddl/src/com/epistimis/uddl/constraints/datamodel.ocl +++ b/com.epistimis.uddl/src/com/epistimis/uddl/constraints/datamodel.ocl @@ -1,11 +1,9 @@ /** * UDDL standard constraints - adjusted for this metamodel */ ---import '../../../../../model/generated/Uddl.ecore' import 'platform:/plugin/com.epistimis.uddl/model/generated/Uddl.ecore' ---include 'helpers.ocl' -include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/constraints/helpers.ocl' +include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/extension/helpers.ocl' package uddl diff --git a/com.epistimis.uddl/src/com/epistimis/uddl/constraints/entityUniqueness.conceptual.ocl b/com.epistimis.uddl/src/com/epistimis/uddl/constraints/entityUniqueness.conceptual.ocl index a0a8510..41145fc 100644 --- a/com.epistimis.uddl/src/com/epistimis/uddl/constraints/entityUniqueness.conceptual.ocl +++ b/com.epistimis.uddl/src/com/epistimis/uddl/constraints/entityUniqueness.conceptual.ocl @@ -2,11 +2,9 @@ * UDDL standard constraints - adjusted for this metamodel */ --import datamodel : 'http://www.opengroup.us/face/datamodel/3.0#/' ---import '../../../../../model/generated/Uddl.ecore' import 'platform:/plugin/com.epistimis.uddl/model/generated/Uddl.ecore' ---include 'helpers.ocl' -include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/constraints/helpers.ocl' +include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/extension/helpers.ocl' package uddl @@ -18,6 +16,7 @@ package uddl -- * from the FACE/ UDDL spec -- * -- * NOTE: XText automatically enforces this - this is redundant +-- * TODO: If we ever stop using XText, re-enable this -- */ -- inv hasUniqueName('Names must be unique within a container'): -- let parent = self.oclContainer in diff --git a/com.epistimis.uddl/src/com/epistimis/uddl/constraints/entityUniqueness.observableUniqueness.conceptual.ocl b/com.epistimis.uddl/src/com/epistimis/uddl/constraints/entityUniqueness.observableUniqueness.conceptual.ocl index 00bc29a..e9df5d4 100644 --- a/com.epistimis.uddl/src/com/epistimis/uddl/constraints/entityUniqueness.observableUniqueness.conceptual.ocl +++ b/com.epistimis.uddl/src/com/epistimis/uddl/constraints/entityUniqueness.observableUniqueness.conceptual.ocl @@ -2,11 +2,9 @@ * UDDL standard constraints - adjusted for this metamodel */ --import datamodel : 'http://www.opengroup.us/face/datamodel/3.0#/' ---import '../../../../../model/generated/Uddl.ecore' import 'platform:/plugin/com.epistimis.uddl/model/generated/Uddl.ecore' ---include 'helpers.ocl' -include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/constraints/helpers.ocl' +include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/extension/helpers.ocl' package uddl diff --git a/com.epistimis.uddl/src/com/epistimis/uddl/constraints/logical.ocl b/com.epistimis.uddl/src/com/epistimis/uddl/constraints/logical.ocl index 451d0b9..bb729b1 100644 --- a/com.epistimis.uddl/src/com/epistimis/uddl/constraints/logical.ocl +++ b/com.epistimis.uddl/src/com/epistimis/uddl/constraints/logical.ocl @@ -2,12 +2,9 @@ * UDDL standard constraints - adjusted for this metamodel */ import ecore : 'http://www.eclipse.org/emf/2002/Ecore#/' ---import '../../../../../model/generated/Uddl.ecore' import 'platform:/plugin/com.epistimis.uddl/model/generated/Uddl.ecore' ---include 'helpers.ocl' ---include 'conceptual.ocl' -include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/constraints/helpers.ocl' +include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/extension/helpers.ocl' include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/constraints/conceptual.ocl' package uddl --face::datamodel::logical diff --git a/com.epistimis.uddl/src/com/epistimis/uddl/constraints/logicalExtensions.ocl b/com.epistimis.uddl/src/com/epistimis/uddl/constraints/logicalExtensions.ocl index e63c234..3b330a3 100644 --- a/com.epistimis.uddl/src/com/epistimis/uddl/constraints/logicalExtensions.ocl +++ b/com.epistimis.uddl/src/com/epistimis/uddl/constraints/logicalExtensions.ocl @@ -3,15 +3,12 @@ */ import ecore : 'http://www.eclipse.org/emf/2002/Ecore#/' --import 'http://www.epistimis.com/uddl/Uddl' ---import '../../../../../model/generated/Uddl.ecore' import 'platform:/plugin/com.epistimis.uddl/model/generated/Uddl.ecore' ---include 'helpers.ocl' ---include 'conceptual.ocl' ---include 'conceptualExtensions.ocl' -include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/constraints/helpers.ocl' -include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/constraints/conceptual.ocl' +include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/extension/helpers.ocl' +--include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/constraints/conceptual.ocl' include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/extension/conceptualExtensions.ocl' + include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/extension/logicalExtensions.ocl' diff --git a/com.epistimis.uddl/src/com/epistimis/uddl/constraints/observableUniqueness.conceptual.ocl b/com.epistimis.uddl/src/com/epistimis/uddl/constraints/observableUniqueness.conceptual.ocl index 777e10b..1d54e33 100644 --- a/com.epistimis.uddl/src/com/epistimis/uddl/constraints/observableUniqueness.conceptual.ocl +++ b/com.epistimis.uddl/src/com/epistimis/uddl/constraints/observableUniqueness.conceptual.ocl @@ -2,10 +2,8 @@ * UDDL standard constraints - adjusted for this metamodel */ --import datamodel : 'http://www.opengroup.us/face/datamodel/3.0#/' ---import '../../../../../model/generated/Uddl.ecore' import 'platform:/plugin/com.epistimis.uddl/model/generated/Uddl.ecore' ---include 'helpers.ocl' -include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/constraints/helpers.ocl' +include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/extension/helpers.ocl' package uddl diff --git a/com.epistimis.uddl/src/com/epistimis/uddl/constraints/platform.ocl b/com.epistimis.uddl/src/com/epistimis/uddl/constraints/platform.ocl index 793ab16..e21ae83 100644 --- a/com.epistimis.uddl/src/com/epistimis/uddl/constraints/platform.ocl +++ b/com.epistimis.uddl/src/com/epistimis/uddl/constraints/platform.ocl @@ -7,7 +7,7 @@ import 'platform:/plugin/com.epistimis.uddl/model/generated/Uddl.ecore' --include 'helpers.ocl' --include 'logical.ocl' -include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/constraints/helpers.ocl' +include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/extension/helpers.ocl' include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/constraints/logical.ocl' package uddl diff --git a/com.epistimis.uddl/src/com/epistimis/uddl/constraints/platformExtensions.ocl b/com.epistimis.uddl/src/com/epistimis/uddl/constraints/platformExtensions.ocl index f11c570..53438a5 100644 --- a/com.epistimis.uddl/src/com/epistimis/uddl/constraints/platformExtensions.ocl +++ b/com.epistimis.uddl/src/com/epistimis/uddl/constraints/platformExtensions.ocl @@ -3,13 +3,9 @@ */ import ecore : 'http://www.eclipse.org/emf/2002/Ecore#/' --import 'http://www.epistimis.com/uddl/Uddl' ---import '../../../../../model/generated/Uddl.ecore' import 'platform:/plugin/com.epistimis.uddl/model/generated/Uddl.ecore' ---include 'conceptualExtensions.ocl' ---include 'logicalExtensions.ocl' -include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/constraints/conceptualExtensions.ocl' -include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/constraints/logicalExtensions.ocl' +include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/extension/platformExtensions.ocl' package uddl diff --git a/com.epistimis.uddl/src/com/epistimis/uddl/constraints/uddl.ocl b/com.epistimis.uddl/src/com/epistimis/uddl/constraints/uddl.ocl index 7bb47c7..098f05d 100644 --- a/com.epistimis.uddl/src/com/epistimis/uddl/constraints/uddl.ocl +++ b/com.epistimis.uddl/src/com/epistimis/uddl/constraints/uddl.ocl @@ -2,11 +2,9 @@ * UDDL standard constraints - adjusted for this metamodel */ --import 'http://www.epistimis.com/uddl/Uddl' ---import '../../../../../model/generated/Uddl.ecore' import 'platform:/plugin/com.epistimis.uddl/model/generated/Uddl.ecore' ---include 'helpers.ocl' -include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/constraints/helpers.ocl' +include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/extension/helpers.ocl' package uddl diff --git a/com.epistimis.uddl/src/com/epistimis/uddl/extension/logicalExtensions.ocl b/com.epistimis.uddl/src/com/epistimis/uddl/extension/logicalExtensions.ocl index 1599ae3..195e3a2 100644 --- a/com.epistimis.uddl/src/com/epistimis/uddl/extension/logicalExtensions.ocl +++ b/com.epistimis.uddl/src/com/epistimis/uddl/extension/logicalExtensions.ocl @@ -3,14 +3,11 @@ */ import ecore : 'http://www.eclipse.org/emf/2002/Ecore#/' --import 'http://www.epistimis.com/uddl/Uddl' ---import '../../../../../model/generated/Uddl.ecore' import 'platform:/plugin/com.epistimis.uddl/model/generated/Uddl.ecore' ---include 'helpers.ocl' ---include 'conceptual.ocl' ---include 'conceptualExtensions.ocl' -include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/constraints/helpers.ocl' + +include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/extension/helpers.ocl' include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/constraints/conceptual.ocl' -include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/constraints/conceptualExtensions.ocl' +include 'platform:/plugin/com.epistimis.uddl/src/com/epistimis/uddl/extension/conceptualExtensions.ocl' /** * This contains more general capability for the EXTENSIONS at the logical level