From e2cd10418dac316172b8c13cbc2cd92990d41d1d Mon Sep 17 00:00:00 2001 From: Travis CI Date: Thu, 1 Aug 2024 09:21:34 -0700 Subject: [PATCH] OML simplification: - Deleted Structure and StructuredProperty metaclasses. Use concepts (with key properties) and relations instead. - Deleted Classifier abstract metaclass. Now, Types are now either entities or scalars only. --- io.opencaesar.oml.api.feature/feature.xml | 2 +- io.opencaesar.oml.api.feature/pom.xml | 2 +- io.opencaesar.oml.dsl.feature/feature.xml | 2 +- io.opencaesar.oml.dsl.feature/pom.xml | 2 +- .../META-INF/MANIFEST.MF | 2 +- io.opencaesar.oml.dsl.ide/pom.xml | 2 +- .../META-INF/MANIFEST.MF | 2 +- io.opencaesar.oml.dsl.ui.tests/pom.xml | 2 +- io.opencaesar.oml.dsl.ui/META-INF/MANIFEST.MF | 2 +- io.opencaesar.oml.dsl.ui/pom.xml | 2 +- io.opencaesar.oml.dsl/META-INF/MANIFEST.MF | 2 +- io.opencaesar.oml.dsl/pom.xml | 2 +- .../src/io/opencaesar/oml/dsl/Oml.xtext | 49 +- .../oml/dsl/formatting2/OmlFormatter.java | 74 +- io.opencaesar.oml.edit/META-INF/MANIFEST.MF | 2 +- ...quivalences_ClassifierEquivalenceAxiom.gif | Bin 223 -> 0 bytes ...ns_PropertyCardinalityRestrictionAxiom.gif | Bin 223 -> 0 bytes ...rictions_PropertyRangeRestrictionAxiom.gif | Bin 223 -> 0 bytes ...trictions_PropertySelfRestrictionAxiom.gif | Bin 223 -> 0 bytes ...rictions_PropertyValueRestrictionAxiom.gif | Bin 223 -> 0 bytes ...s_PropertyCardinalityRestrictionAxiom.gif} | Bin 223 -> 223 bytes ...ictions_PropertyRangeRestrictionAxiom.gif} | Bin 223 -> 223 bytes ...rictions_PropertySelfRestrictionAxiom.gif} | Bin 223 -> 223 bytes ...ictions_PropertyValueRestrictionAxiom.gif} | Bin 223 -> 223 bytes ...nedEquivalences_EntityEquivalenceAxiom.gif | Bin 0 -> 223 bytes ...ns_PropertyCardinalityRestrictionAxiom.gif | Bin 0 -> 223 bytes ...rictions_PropertyRangeRestrictionAxiom.gif | Bin 0 -> 223 bytes ...trictions_PropertySelfRestrictionAxiom.gif | Bin 0 -> 223 bytes ...rictions_PropertyValueRestrictionAxiom.gif | Bin 0 -> 223 bytes ...ontainedValue_AnonymousConceptInstance.gif | Bin 0 -> 223 bytes ...rtion_containedValue_StructureInstance.gif | Bin 223 -> 0 bytes ...ontainedValue_AnonymousConceptInstance.gif | Bin 0 -> 223 bytes ...Axiom_containedValue_StructureInstance.gif | Bin 223 -> 0 bytes ...teVocabulary_ownedStatements_Structure.gif | Bin 223 -> 0 bytes ...ary_ownedStatements_StructuredProperty.gif | Bin 223 -> 0 bytes ...Axiom.gif => AnonymousConceptInstance.gif} | Bin 129 -> 129 bytes ...ructure.gif => EntityEquivalenceAxiom.gif} | Bin 129 -> 129 bytes .../icons/full/obj16/StructureInstance.gif | Bin 129 -> 0 bytes .../icons/full/obj16/StructuredProperty.gif | Bin 129 -> 0 bytes io.opencaesar.oml.edit/plugin.properties | 38 +- io.opencaesar.oml.edit/pom.xml | 2 +- ...AnonymousConceptInstanceItemProvider.java} | 18 +- .../oml/provider/ClassifierItemProvider.java | 172 --- ...> EntityEquivalenceAxiomItemProvider.java} | 52 +- .../oml/provider/EntityItemProvider.java | 31 +- .../OmlItemProviderAdapterFactory.java | 80 +- .../PropertyRestrictionAxiomItemProvider.java | 12 +- .../PropertyValueAssertionItemProvider.java | 2 +- ...ertyValueRestrictionAxiomItemProvider.java | 2 +- .../oml/provider/StructureItemProvider.java | 140 -- .../StructuredPropertyItemProvider.java | 288 ---- .../oml/provider/VocabularyItemProvider.java | 10 - .../OmlItemProviderAdapterFactoryEx.java | 102 +- io.opencaesar.oml.editor/META-INF/MANIFEST.MF | 2 +- io.opencaesar.oml.editor/pom.xml | 2 +- io.opencaesar.oml.repository/pom.xml | 2 +- io.opencaesar.oml.sdk.feature/feature.xml | 2 +- io.opencaesar.oml.sdk.feature/pom.xml | 2 +- .../src/main/graphical-syntax.md | 4 - .../src/main/images/structure.svg | 3 - .../src/main/images/structure_ref.svg | 3 - .../main/images/structured_property_ref.svg | 3 - .../src/main/language-reference.md | 189 +-- .../src/main/textual-syntax.md | 53 +- io.opencaesar.oml.target/pom.xml | 2 +- io.opencaesar.oml/META-INF/MANIFEST.MF | 2 +- io.opencaesar.oml/pom.xml | 2 +- ...nce.java => AnonymousConceptInstance.java} | 26 +- .../oml/AnonymousRelationInstance.java | 2 +- .../src-gen/io/opencaesar/oml/Classifier.java | 82 -- .../src-gen/io/opencaesar/oml/Entity.java | 41 +- ...Axiom.java => EntityEquivalenceAxiom.java} | 64 +- .../src-gen/io/opencaesar/oml/Instance.java | 6 +- .../io/opencaesar/oml/NamedInstance.java | 2 +- .../src-gen/io/opencaesar/oml/OmlFactory.java | 30 +- .../src-gen/io/opencaesar/oml/OmlPackage.java | 1207 ++++------------- .../PropertyCardinalityRestrictionAxiom.java | 2 +- .../oml/PropertyRangeRestrictionAxiom.java | 2 +- .../oml/PropertyRestrictionAxiom.java | 46 +- .../src-gen/io/opencaesar/oml/Relation.java | 2 +- .../io/opencaesar/oml/ScalarProperty.java | 8 +- .../io/opencaesar/oml/SemanticProperty.java | 4 +- .../src-gen/io/opencaesar/oml/Structure.java | 68 - .../io/opencaesar/oml/StructuredProperty.java | 143 -- ...java => AnonymousConceptInstanceImpl.java} | 88 +- .../impl/AnonymousRelationInstanceImpl.java | 8 +- .../opencaesar/oml/impl/ClassifierImpl.java | 222 --- ...l.java => EntityEquivalenceAxiomImpl.java} | 142 +- .../io/opencaesar/oml/impl/EntityImpl.java | 82 +- .../io/opencaesar/oml/impl/InstanceImpl.java | 4 +- .../oml/impl/NamedInstanceImpl.java | 9 +- .../opencaesar/oml/impl/OmlFactoryImpl.java | 40 +- .../opencaesar/oml/impl/OmlPackageImpl.java | 316 +---- .../impl/PropertyRestrictionAxiomImpl.java | 100 +- .../io/opencaesar/oml/impl/RelationImpl.java | 5 +- .../oml/impl/ScalarPropertyImpl.java | 12 +- .../oml/impl/SemanticPropertyImpl.java | 4 +- .../io/opencaesar/oml/impl/StructureImpl.java | 173 --- .../oml/impl/StructuredPropertyImpl.java | 627 --------- .../oml/util/OmlAdapterFactory.java | 74 +- .../io/opencaesar/oml/util/OmlSwitch.java | 131 +- .../io/opencaesar/oml/util/OmlValidator.java | 115 +- .../src/io/opencaesar/oml/Oml.xcore | 170 +-- .../io/opencaesar/oml/util/OmlBuilder.java | 179 +-- .../io/opencaesar/oml/util/OmlConstants.java | 14 +- .../src/io/opencaesar/oml/util/OmlIndex.java | 167 +-- .../src/io/opencaesar/oml/util/OmlRead.java | 28 +- .../src/io/opencaesar/oml/util/OmlSearch.java | 290 ++-- .../io/opencaesar/oml/util/OmlValidator2.java | 122 +- .../src/io/opencaesar/oml/util/OmlWrite.java | 157 +-- pom.xml | 2 +- version.txt | 2 +- 112 files changed, 1449 insertions(+), 4938 deletions(-) delete mode 100644 io.opencaesar.oml.edit/icons/full/ctool16/CreateClassifier_ownedEquivalences_ClassifierEquivalenceAxiom.gif delete mode 100644 io.opencaesar.oml.edit/icons/full/ctool16/CreateClassifier_ownedPropertyRestrictions_PropertyCardinalityRestrictionAxiom.gif delete mode 100644 io.opencaesar.oml.edit/icons/full/ctool16/CreateClassifier_ownedPropertyRestrictions_PropertyRangeRestrictionAxiom.gif delete mode 100644 io.opencaesar.oml.edit/icons/full/ctool16/CreateClassifier_ownedPropertyRestrictions_PropertySelfRestrictionAxiom.gif delete mode 100644 io.opencaesar.oml.edit/icons/full/ctool16/CreateClassifier_ownedPropertyRestrictions_PropertyValueRestrictionAxiom.gif rename io.opencaesar.oml.edit/icons/full/ctool16/{CreateClassifierEquivalenceAxiom_ownedPropertyRestrictions_PropertyCardinalityRestrictionAxiom.gif => CreateEntityEquivalenceAxiom_ownedPropertyRestrictions_PropertyCardinalityRestrictionAxiom.gif} (71%) rename io.opencaesar.oml.edit/icons/full/ctool16/{CreateClassifierEquivalenceAxiom_ownedPropertyRestrictions_PropertyRangeRestrictionAxiom.gif => CreateEntityEquivalenceAxiom_ownedPropertyRestrictions_PropertyRangeRestrictionAxiom.gif} (71%) rename io.opencaesar.oml.edit/icons/full/ctool16/{CreateClassifierEquivalenceAxiom_ownedPropertyRestrictions_PropertySelfRestrictionAxiom.gif => CreateEntityEquivalenceAxiom_ownedPropertyRestrictions_PropertySelfRestrictionAxiom.gif} (71%) rename io.opencaesar.oml.edit/icons/full/ctool16/{CreateClassifierEquivalenceAxiom_ownedPropertyRestrictions_PropertyValueRestrictionAxiom.gif => CreateEntityEquivalenceAxiom_ownedPropertyRestrictions_PropertyValueRestrictionAxiom.gif} (71%) create mode 100644 io.opencaesar.oml.edit/icons/full/ctool16/CreateEntity_ownedEquivalences_EntityEquivalenceAxiom.gif create mode 100644 io.opencaesar.oml.edit/icons/full/ctool16/CreateEntity_ownedPropertyRestrictions_PropertyCardinalityRestrictionAxiom.gif create mode 100644 io.opencaesar.oml.edit/icons/full/ctool16/CreateEntity_ownedPropertyRestrictions_PropertyRangeRestrictionAxiom.gif create mode 100644 io.opencaesar.oml.edit/icons/full/ctool16/CreateEntity_ownedPropertyRestrictions_PropertySelfRestrictionAxiom.gif create mode 100644 io.opencaesar.oml.edit/icons/full/ctool16/CreateEntity_ownedPropertyRestrictions_PropertyValueRestrictionAxiom.gif create mode 100644 io.opencaesar.oml.edit/icons/full/ctool16/CreatePropertyValueAssertion_containedValue_AnonymousConceptInstance.gif delete mode 100644 io.opencaesar.oml.edit/icons/full/ctool16/CreatePropertyValueAssertion_containedValue_StructureInstance.gif create mode 100644 io.opencaesar.oml.edit/icons/full/ctool16/CreatePropertyValueRestrictionAxiom_containedValue_AnonymousConceptInstance.gif delete mode 100644 io.opencaesar.oml.edit/icons/full/ctool16/CreatePropertyValueRestrictionAxiom_containedValue_StructureInstance.gif delete mode 100644 io.opencaesar.oml.edit/icons/full/ctool16/CreateVocabulary_ownedStatements_Structure.gif delete mode 100644 io.opencaesar.oml.edit/icons/full/ctool16/CreateVocabulary_ownedStatements_StructuredProperty.gif rename io.opencaesar.oml.edit/icons/full/obj16/{ClassifierEquivalenceAxiom.gif => AnonymousConceptInstance.gif} (50%) rename io.opencaesar.oml.edit/icons/full/obj16/{Structure.gif => EntityEquivalenceAxiom.gif} (50%) delete mode 100644 io.opencaesar.oml.edit/icons/full/obj16/StructureInstance.gif delete mode 100644 io.opencaesar.oml.edit/icons/full/obj16/StructuredProperty.gif rename io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/{StructureInstanceItemProvider.java => AnonymousConceptInstanceItemProvider.java} (84%) delete mode 100644 io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/ClassifierItemProvider.java rename io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/{ClassifierEquivalenceAxiomItemProvider.java => EntityEquivalenceAxiomItemProvider.java} (72%) delete mode 100644 io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/StructureItemProvider.java delete mode 100644 io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/StructuredPropertyItemProvider.java delete mode 100644 io.opencaesar.oml.specification/src/main/images/structure.svg delete mode 100644 io.opencaesar.oml.specification/src/main/images/structure_ref.svg delete mode 100644 io.opencaesar.oml.specification/src/main/images/structured_property_ref.svg rename io.opencaesar.oml/src-gen/io/opencaesar/oml/{StructureInstance.java => AnonymousConceptInstance.java} (70%) delete mode 100644 io.opencaesar.oml/src-gen/io/opencaesar/oml/Classifier.java rename io.opencaesar.oml/src-gen/io/opencaesar/oml/{ClassifierEquivalenceAxiom.java => EntityEquivalenceAxiom.java} (53%) delete mode 100644 io.opencaesar.oml/src-gen/io/opencaesar/oml/Structure.java delete mode 100644 io.opencaesar.oml/src-gen/io/opencaesar/oml/StructuredProperty.java rename io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/{StructureInstanceImpl.java => AnonymousConceptInstanceImpl.java} (66%) delete mode 100644 io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/ClassifierImpl.java rename io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/{ClassifierEquivalenceAxiomImpl.java => EntityEquivalenceAxiomImpl.java} (56%) delete mode 100644 io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/StructureImpl.java delete mode 100644 io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/StructuredPropertyImpl.java diff --git a/io.opencaesar.oml.api.feature/feature.xml b/io.opencaesar.oml.api.feature/feature.xml index 3935b45d..ded46649 100644 --- a/io.opencaesar.oml.api.feature/feature.xml +++ b/io.opencaesar.oml.api.feature/feature.xml @@ -2,7 +2,7 @@ diff --git a/io.opencaesar.oml.api.feature/pom.xml b/io.opencaesar.oml.api.feature/pom.xml index a188d4c9..4d2814c6 100644 --- a/io.opencaesar.oml.api.feature/pom.xml +++ b/io.opencaesar.oml.api.feature/pom.xml @@ -4,7 +4,7 @@ io.opencaesar.oml io.opencaesar.oml.parent - 2.7.3 + 2.8.0 io.opencaesar.oml.api.feature eclipse-feature diff --git a/io.opencaesar.oml.dsl.feature/feature.xml b/io.opencaesar.oml.dsl.feature/feature.xml index 33a7eaa4..a2a79db4 100644 --- a/io.opencaesar.oml.dsl.feature/feature.xml +++ b/io.opencaesar.oml.dsl.feature/feature.xml @@ -2,7 +2,7 @@ diff --git a/io.opencaesar.oml.dsl.feature/pom.xml b/io.opencaesar.oml.dsl.feature/pom.xml index 69537ea5..d7ebcf55 100644 --- a/io.opencaesar.oml.dsl.feature/pom.xml +++ b/io.opencaesar.oml.dsl.feature/pom.xml @@ -4,7 +4,7 @@ io.opencaesar.oml io.opencaesar.oml.parent - 2.7.3 + 2.8.0 io.opencaesar.oml.dsl.feature eclipse-feature diff --git a/io.opencaesar.oml.dsl.ide/META-INF/MANIFEST.MF b/io.opencaesar.oml.dsl.ide/META-INF/MANIFEST.MF index 8fa22f36..57569b9d 100644 --- a/io.opencaesar.oml.dsl.ide/META-INF/MANIFEST.MF +++ b/io.opencaesar.oml.dsl.ide/META-INF/MANIFEST.MF @@ -3,7 +3,7 @@ Automatic-Module-Name: io.opencaesar.oml.dsl.ide Bundle-ManifestVersion: 2 Bundle-Name: %pluginName Bundle-Vendor: %providerName -Bundle-Version: 2.7.3 +Bundle-Version: 2.8.0 Bundle-SymbolicName: io.opencaesar.oml.dsl.ide; singleton:=true Bundle-ActivationPolicy: lazy Bundle-Localization: plugin diff --git a/io.opencaesar.oml.dsl.ide/pom.xml b/io.opencaesar.oml.dsl.ide/pom.xml index 64c19d42..9a0246ea 100644 --- a/io.opencaesar.oml.dsl.ide/pom.xml +++ b/io.opencaesar.oml.dsl.ide/pom.xml @@ -4,7 +4,7 @@ io.opencaesar.oml io.opencaesar.oml.parent - 2.7.3 + 2.8.0 io.opencaesar.oml.dsl.ide eclipse-plugin diff --git a/io.opencaesar.oml.dsl.ui.tests/META-INF/MANIFEST.MF b/io.opencaesar.oml.dsl.ui.tests/META-INF/MANIFEST.MF index 716845b3..e81f3fcd 100644 --- a/io.opencaesar.oml.dsl.ui.tests/META-INF/MANIFEST.MF +++ b/io.opencaesar.oml.dsl.ui.tests/META-INF/MANIFEST.MF @@ -3,7 +3,7 @@ Automatic-Module-Name: io.opencaesar.oml.dsl.ui.tests Bundle-ManifestVersion: 2 Bundle-Name: %pluginName Bundle-Vendor: %providerName -Bundle-Version: 2.7.3 +Bundle-Version: 2.8.0 Bundle-SymbolicName: io.opencaesar.oml.dsl.ui.tests; singleton:=true Bundle-ActivationPolicy: lazy Bundle-Localization: plugin diff --git a/io.opencaesar.oml.dsl.ui.tests/pom.xml b/io.opencaesar.oml.dsl.ui.tests/pom.xml index 3aaa6591..f385ae3c 100644 --- a/io.opencaesar.oml.dsl.ui.tests/pom.xml +++ b/io.opencaesar.oml.dsl.ui.tests/pom.xml @@ -4,7 +4,7 @@ io.opencaesar.oml io.opencaesar.oml.parent - 2.7.3 + 2.8.0 io.opencaesar.oml.dsl.ui.tests eclipse-test-plugin diff --git a/io.opencaesar.oml.dsl.ui/META-INF/MANIFEST.MF b/io.opencaesar.oml.dsl.ui/META-INF/MANIFEST.MF index 3421c2aa..d81e43a9 100644 --- a/io.opencaesar.oml.dsl.ui/META-INF/MANIFEST.MF +++ b/io.opencaesar.oml.dsl.ui/META-INF/MANIFEST.MF @@ -3,7 +3,7 @@ Automatic-Module-Name: io.opencaesar.oml.dsl.ui Bundle-ManifestVersion: 2 Bundle-Name: %pluginName Bundle-Vendor: %providerName -Bundle-Version: 2.7.3 +Bundle-Version: 2.8.0 Bundle-SymbolicName: io.opencaesar.oml.dsl.ui; singleton:=true Bundle-ActivationPolicy: lazy Bundle-Localization: plugin diff --git a/io.opencaesar.oml.dsl.ui/pom.xml b/io.opencaesar.oml.dsl.ui/pom.xml index 721047d7..e6721967 100644 --- a/io.opencaesar.oml.dsl.ui/pom.xml +++ b/io.opencaesar.oml.dsl.ui/pom.xml @@ -4,7 +4,7 @@ io.opencaesar.oml io.opencaesar.oml.parent - 2.7.3 + 2.8.0 io.opencaesar.oml.dsl.ui eclipse-plugin diff --git a/io.opencaesar.oml.dsl/META-INF/MANIFEST.MF b/io.opencaesar.oml.dsl/META-INF/MANIFEST.MF index b7753300..e6b94427 100644 --- a/io.opencaesar.oml.dsl/META-INF/MANIFEST.MF +++ b/io.opencaesar.oml.dsl/META-INF/MANIFEST.MF @@ -3,7 +3,7 @@ Automatic-Module-Name: io.opencaesar.oml.dsl Bundle-ManifestVersion: 2 Bundle-Name: %pluginName Bundle-Vendor: %providerName -Bundle-Version: 2.7.3 +Bundle-Version: 2.8.0 Bundle-SymbolicName: io.opencaesar.oml.dsl; singleton:=true Bundle-ActivationPolicy: lazy Bundle-Localization: plugin diff --git a/io.opencaesar.oml.dsl/pom.xml b/io.opencaesar.oml.dsl/pom.xml index 10922edb..d66a2dab 100644 --- a/io.opencaesar.oml.dsl/pom.xml +++ b/io.opencaesar.oml.dsl/pom.xml @@ -4,7 +4,7 @@ io.opencaesar.oml io.opencaesar.oml.parent - 2.7.3 + 2.8.0 io.opencaesar.oml.dsl eclipse-plugin diff --git a/io.opencaesar.oml.dsl/src/io/opencaesar/oml/dsl/Oml.xtext b/io.opencaesar.oml.dsl/src/io/opencaesar/oml/dsl/Oml.xtext index 7ae14f60..847035dd 100644 --- a/io.opencaesar.oml.dsl/src/io/opencaesar/oml/dsl/Oml.xtext +++ b/io.opencaesar.oml.dsl/src/io/opencaesar/oml/dsl/Oml.xtext @@ -67,16 +67,11 @@ SpecializableTerm: Type | AnnotationProperty | ScalarProperty | - StructuredProperty | UnreifiedRelation; Type: - Classifier | - Scalar; - -Classifier: Entity | - Structure; + Scalar; Entity: Aspect | @@ -87,14 +82,14 @@ Aspect: ownedAnnotations+=Annotation* ('aspect' name=ID | 'ref' 'aspect' ref=[Aspect|Ref]) ('[' (ownedKeys+=KeyAxiom)* - ']')? (ClassifierSpecialization)? (ClassifierEquivalence)?; + ']')? (EntitySpecialization)? (EntityEquivalence)?; Concept: ownedAnnotations+=Annotation* ('concept' name=ID | 'ref' 'concept' ref=[Concept|Ref]) ('[' (ownedEnumeration=InstanceEnumerationAxiom)? (ownedKeys+=KeyAxiom)* - ']')? (ClassifierSpecialization)? (ClassifierEquivalence)?; + ']')? (EntitySpecialization)? (EntityEquivalence)?; RelationEntity: ownedAnnotations+=Annotation* @@ -111,28 +106,23 @@ RelationEntity: (irreflexive?='irreflexive')? & (transitive?='transitive')?) (ownedKeys+=KeyAxiom)* - ']')? (ClassifierSpecialization)? (ClassifierEquivalence)?; + ']')? (EntitySpecialization)? (EntityEquivalence)?; -Structure: - ownedAnnotations+=Annotation* - ('structure' name=ID | 'ref' 'structure' ref=[Structure|Ref]) - (ClassifierSpecialization)? (ClassifierEquivalence)?; - -fragment ClassifierSpecialization returns Classifier: +fragment EntitySpecialization returns Entity: '<' (ownedSpecializations+=SpecializationAxiom (',' ownedSpecializations+=SpecializationAxiom)* | (ownedSpecializations+=SpecializationAxiom (',' ownedSpecializations+=SpecializationAxiom)*)? '[' ownedPropertyRestrictions+=PropertyRestrictionAxiom* ']'); -fragment ClassifierEquivalence returns Classifier: - '=' ownedEquivalences+=ClassifierEquivalenceAxiom (',' ownedEquivalences+=ClassifierEquivalenceAxiom)*; +fragment EntityEquivalence returns Entity: + '=' ownedEquivalences+=EntityEquivalenceAxiom (',' ownedEquivalences+=EntityEquivalenceAxiom)*; -ClassifierEquivalenceAxiom: - superClassifiers+=[Classifier|Ref] ('&' superClassifiers+=[Classifier|Ref])* +EntityEquivalenceAxiom: + superEntities+=[Entity|Ref] ('&' superEntities+=[Entity|Ref])* | - {ClassifierEquivalenceAxiom} - (superClassifiers+=[Classifier|Ref] ('&' superClassifiers+=[Classifier|Ref])*)? '[' + {EntityEquivalenceAxiom} + (superEntities+=[Entity|Ref] ('&' superEntities+=[Entity|Ref])*)? '[' ownedPropertyRestrictions+=PropertyRestrictionAxiom* ']'; @@ -172,25 +162,16 @@ AnnotationProperty: SemanticProperty: ScalarProperty | - StructuredProperty | Relation; ScalarProperty: ownedAnnotations+=Annotation* ('scalar' 'property' name=ID | 'ref' 'scalar' 'property' ref=[ScalarProperty|Ref]) ('[' - ('domain' domains+=[Classifier|Ref] (',' domains+=[Classifier|Ref])*)? + ('domain' domains+=[Entity|Ref] (',' domains+=[Entity|Ref])*)? ('range' ranges+=[Scalar|Ref] (',' ranges+=[Scalar|Ref])*)? (functional?='functional')? ']')? (PropertySpecialization)? (PropertyEquivalence)?; -StructuredProperty: - ownedAnnotations+=Annotation* - ('structured' 'property' name=ID | 'ref' 'structured' 'property' ref=[StructuredProperty|Ref]) ('[' - ('domain' domains+=[Classifier|Ref] (',' domains+=[Classifier|Ref])*)? - ('range' ranges+=[Structure|Ref] (',' ranges+=[Structure|Ref])*)? - (functional?='functional')? - ']')? (PropertySpecialization)? (PropertyEquivalence)?; - Relation: ForwardRelation | ReverseRelation | @@ -239,11 +220,11 @@ BuiltIn: ('builtin' name=ID | 'ref' 'builtin' ref=[BuiltIn|Ref]); AnonymousInstance: - StructureInstance | + AnonymousConceptInstance | AnonymousRelationInstance; -StructureInstance: - {StructureInstance} (':' type=[Structure|Ref])? '[' +AnonymousConceptInstance: + {AnonymousConceptInstance} (':' type=[Concept|Ref])? '[' ownedPropertyValues+=PropertyValueAssertion* ']'; diff --git a/io.opencaesar.oml.dsl/src/io/opencaesar/oml/dsl/formatting2/OmlFormatter.java b/io.opencaesar.oml.dsl/src/io/opencaesar/oml/dsl/formatting2/OmlFormatter.java index f4f32037..32a54318 100644 --- a/io.opencaesar.oml.dsl/src/io/opencaesar/oml/dsl/formatting2/OmlFormatter.java +++ b/io.opencaesar.oml.dsl/src/io/opencaesar/oml/dsl/formatting2/OmlFormatter.java @@ -40,25 +40,25 @@ import io.opencaesar.oml.Annotation; import io.opencaesar.oml.AnnotationProperty; +import io.opencaesar.oml.AnonymousConceptInstance; import io.opencaesar.oml.AnonymousInstance; import io.opencaesar.oml.AnonymousRelationInstance; import io.opencaesar.oml.Aspect; import io.opencaesar.oml.BuiltIn; import io.opencaesar.oml.BuiltInPredicate; -import io.opencaesar.oml.ClassifierEquivalenceAxiom; import io.opencaesar.oml.Concept; import io.opencaesar.oml.ConceptInstance; import io.opencaesar.oml.Description; import io.opencaesar.oml.DescriptionBundle; import io.opencaesar.oml.DifferentFromPredicate; import io.opencaesar.oml.Element; +import io.opencaesar.oml.EntityEquivalenceAxiom; import io.opencaesar.oml.ForwardRelation; import io.opencaesar.oml.Import; import io.opencaesar.oml.InstanceEnumerationAxiom; import io.opencaesar.oml.KeyAxiom; import io.opencaesar.oml.Literal; import io.opencaesar.oml.LiteralEnumerationAxiom; -import io.opencaesar.oml.NamedInstance; import io.opencaesar.oml.OmlPackage; import io.opencaesar.oml.PropertyCardinalityRestrictionAxiom; import io.opencaesar.oml.PropertyPredicate; @@ -76,9 +76,6 @@ import io.opencaesar.oml.Scalar; import io.opencaesar.oml.ScalarEquivalenceAxiom; import io.opencaesar.oml.ScalarProperty; -import io.opencaesar.oml.Structure; -import io.opencaesar.oml.StructureInstance; -import io.opencaesar.oml.StructuredProperty; import io.opencaesar.oml.TypePredicate; import io.opencaesar.oml.UnreifiedRelation; import io.opencaesar.oml.Vocabulary; @@ -162,13 +159,13 @@ protected void _format(Aspect aspect, IFormattableDocument doc) { oml.getAspectAccess().getLeftSquareBracketKeyword_2_0(), oml.getAspectAccess().getRightSquareBracketKeyword_2_2()); aspect.getOwnedKeys().forEach(i -> doc.prepend(doc.format(i), newLine())); - doc.surround(keyword(aspect, oml.getClassifierSpecializationAccess().getLessThanSignKeyword_0()), oneSpace()); + doc.surround(keyword(aspect, oml.getEntitySpecializationAccess().getLessThanSignKeyword_0()), oneSpace()); formatCommas(aspect, doc); formatBrackets(aspect, doc, - oml.getClassifierSpecializationAccess().getLeftSquareBracketKeyword_1_1_1(), - oml.getClassifierSpecializationAccess().getRightSquareBracketKeyword_1_1_3()); + oml.getEntitySpecializationAccess().getLeftSquareBracketKeyword_1_1_1(), + oml.getEntitySpecializationAccess().getRightSquareBracketKeyword_1_1_3()); aspect.getOwnedPropertyRestrictions().forEach(i -> doc.prepend(doc.format(i), newLine())); - doc.surround(keyword(aspect, oml.getClassifierEquivalenceAccess().getEqualsSignKeyword_0()), oneSpace()); + doc.surround(keyword(aspect, oml.getEntityEquivalenceAccess().getEqualsSignKeyword_0()), oneSpace()); aspect.getOwnedEquivalences().forEach(i -> doc.prepend(doc.format(i), oneSpace())); } @@ -185,13 +182,13 @@ protected void _format(Concept concept, IFormattableDocument doc) { oml.getConceptAccess().getRightSquareBracketKeyword_2_3()); ifNotNull(concept.getOwnedEnumeration(), (Procedure1)(i -> doc.prepend(doc.format(i), newLine()))); concept.getOwnedKeys().forEach(i -> doc.prepend(doc.format(i), newLine())); - doc.surround(keyword(concept, oml.getClassifierSpecializationAccess().getLessThanSignKeyword_0()), oneSpace()); + doc.surround(keyword(concept, oml.getEntitySpecializationAccess().getLessThanSignKeyword_0()), oneSpace()); formatCommas(concept, doc); formatBrackets(concept, doc, - oml.getClassifierSpecializationAccess().getLeftSquareBracketKeyword_1_1_1(), - oml.getClassifierSpecializationAccess().getRightSquareBracketKeyword_1_1_3()); + oml.getEntitySpecializationAccess().getLeftSquareBracketKeyword_1_1_1(), + oml.getEntitySpecializationAccess().getRightSquareBracketKeyword_1_1_3()); concept.getOwnedPropertyRestrictions().forEach(i -> doc.prepend(doc.format(i), newLine())); - doc.surround(keyword(concept, oml.getClassifierEquivalenceAccess().getEqualsSignKeyword_0()), oneSpace()); + doc.surround(keyword(concept, oml.getEntityEquivalenceAccess().getEqualsSignKeyword_0()), oneSpace()); concept.getOwnedEquivalences().forEach(i -> doc.prepend(doc.format(i), oneSpace())); } @@ -220,33 +217,17 @@ protected void _format(RelationEntity entity, IFormattableDocument doc) { doc.prepend(keyword(entity, oml.getRelationEntityAccess().getIrreflexiveIrreflexiveKeyword_2_5_5_0()), newLine()); doc.prepend(keyword(entity, oml.getRelationEntityAccess().getTransitiveTransitiveKeyword_2_5_6_0()), newLine()); entity.getOwnedKeys().forEach(i -> doc.prepend(doc.format(i), newLine())); - doc.surround(keyword(entity, oml.getClassifierSpecializationAccess().getLessThanSignKeyword_0()), oneSpace()); + doc.surround(keyword(entity, oml.getEntitySpecializationAccess().getLessThanSignKeyword_0()), oneSpace()); formatCommas(entity, doc); formatBrackets(entity, doc, - oml.getClassifierSpecializationAccess().getLeftSquareBracketKeyword_1_1_1(), - oml.getClassifierSpecializationAccess().getRightSquareBracketKeyword_1_1_3()); + oml.getEntitySpecializationAccess().getLeftSquareBracketKeyword_1_1_1(), + oml.getEntitySpecializationAccess().getRightSquareBracketKeyword_1_1_3()); entity.getOwnedPropertyRestrictions().forEach(i -> doc.prepend(doc.format(i), newLine())); - doc.surround(keyword(entity, oml.getClassifierEquivalenceAccess().getEqualsSignKeyword_0()), oneSpace()); + doc.surround(keyword(entity, oml.getEntityEquivalenceAccess().getEqualsSignKeyword_0()), oneSpace()); entity.getOwnedEquivalences().forEach(i -> doc.prepend(doc.format(i), oneSpace())); } - protected void _format(Structure structure, IFormattableDocument doc) { - structure.getOwnedAnnotations().forEach(i -> doc.append(doc.format(i), newLine())); - if (structure.getName() != null) { - doc.append(keyword(structure, oml.getStructureAccess().getStructureKeyword_1_0_0()), oneSpace()); - } else if (structure.isRef()) { - doc.append(keyword(structure, oml.getStructureAccess().getRefKeyword_1_1_0()), oneSpace()); - doc.append(keyword(structure, oml.getStructureAccess().getStructureKeyword_1_1_1()), oneSpace()); - } - doc.surround(keyword(structure, oml.getClassifierSpecializationAccess().getLessThanSignKeyword_0()), oneSpace()); - formatCommas(structure, doc); - formatBrackets(structure, doc); - structure.getOwnedPropertyRestrictions().forEach(i -> doc.prepend(doc.format(i), newLine())); - doc.surround(keyword(structure, oml.getClassifierEquivalenceAccess().getEqualsSignKeyword_0()), oneSpace()); - structure.getOwnedEquivalences().forEach(i -> doc.prepend(doc.format(i), oneSpace())); - } - - protected void _format(ClassifierEquivalenceAxiom axiom, IFormattableDocument doc) { + protected void _format(EntityEquivalenceAxiom axiom, IFormattableDocument doc) { formatAmpersands(axiom, doc); formatBrackets(axiom, doc); axiom.getOwnedPropertyRestrictions().forEach(i -> doc.prepend(doc.format(i), newLine())); @@ -286,25 +267,6 @@ protected void _format(ScalarProperty property, IFormattableDocument doc) { formatCommas(property, doc); } - protected void _format(StructuredProperty property, IFormattableDocument doc) { - property.getOwnedAnnotations().forEach(i -> doc.append(doc.format(i), newLine())); - if (property.getName() != null) { - doc.append(keyword(property, oml.getStructuredPropertyAccess().getStructuredKeyword_1_0_0()), oneSpace()); - doc.append(keyword(property, oml.getStructuredPropertyAccess().getPropertyKeyword_1_0_1()), oneSpace()); - } else if (property.isRef()) { - doc.append(keyword(property, oml.getStructuredPropertyAccess().getRefKeyword_1_1_0()), oneSpace()); - doc.append(keyword(property, oml.getStructuredPropertyAccess().getStructuredKeyword_1_1_1()), oneSpace()); - doc.append(keyword(property, oml.getStructuredPropertyAccess().getPropertyKeyword_1_1_2()), oneSpace()); - } - formatBrackets(property, doc); - doc.prepend(keyword(property, oml.getStructuredPropertyAccess().getDomainKeyword_2_1_0()), newLine()); - doc.prepend(keyword(property, oml.getStructuredPropertyAccess().getRangeKeyword_2_2_0()), newLine()); - doc.prepend(keyword(property, oml.getStructuredPropertyAccess().getFunctionalFunctionalKeyword_2_3_0()), newLine()); - doc.surround(keyword(property, oml.getPropertySpecializationAccess().getLessThanSignKeyword_0()), oneSpace()); - doc.surround(keyword(property, oml.getPropertyEquivalenceAccess().getEqualsSignKeyword_0()), oneSpace()); - formatCommas(property, doc); - } - protected void _format(Scalar scalar, IFormattableDocument doc) { scalar.getOwnedAnnotations().forEach(i -> doc.append(doc.format(i), newLine())); if (scalar.getName() != null) { @@ -428,9 +390,9 @@ protected void _format(RelationInstance instance, IFormattableDocument doc) { instance.getOwnedPropertyValues().forEach(i -> doc.prepend(doc.format(i), newLine())); } - protected void _format(StructureInstance instance, IFormattableDocument doc) { - doc.append(keyword(instance, oml.getStructureInstanceAccess().getColonKeyword_1_0()), oneSpace()); - doc.append(feature(instance, OmlPackage.Literals.STRUCTURE_INSTANCE__TYPE), oneSpace()); + protected void _format(AnonymousConceptInstance instance, IFormattableDocument doc) { + doc.append(keyword(instance, oml.getAnonymousConceptInstanceAccess().getColonKeyword_1_0()), oneSpace()); + doc.append(feature(instance, OmlPackage.Literals.ANONYMOUS_CONCEPT_INSTANCE__TYPE), oneSpace()); formatBrackets(instance, doc); instance.getOwnedPropertyValues().forEach(i -> doc.prepend(doc.format(i), newLine())); } diff --git a/io.opencaesar.oml.edit/META-INF/MANIFEST.MF b/io.opencaesar.oml.edit/META-INF/MANIFEST.MF index e32ee44f..15c39995 100644 --- a/io.opencaesar.oml.edit/META-INF/MANIFEST.MF +++ b/io.opencaesar.oml.edit/META-INF/MANIFEST.MF @@ -3,7 +3,7 @@ Bundle-ManifestVersion: 2 Bundle-Name: %pluginName Bundle-SymbolicName: io.opencaesar.oml.edit;singleton:=true Automatic-Module-Name: io.opencaesar.oml.edit -Bundle-Version: 2.7.3 +Bundle-Version: 2.8.0 Bundle-ClassPath: . Bundle-Activator: io.opencaesar.oml.provider.OmlEditPlugin$Implementation Bundle-Vendor: %providerName diff --git a/io.opencaesar.oml.edit/icons/full/ctool16/CreateClassifier_ownedEquivalences_ClassifierEquivalenceAxiom.gif b/io.opencaesar.oml.edit/icons/full/ctool16/CreateClassifier_ownedEquivalences_ClassifierEquivalenceAxiom.gif deleted file mode 100644 index 9a4c2437ff56a2e0f8f12f7f8d3b2563e5fc5f96..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 223 zcmZ?wbhEHb6krfwIKsg2|NsB{_xIb|$1^Z6?Ai08r{`u`+8GCj1ONZW&yTnNf8V~L zq2a)R12fak02vMr4!fqS0nye;%Imu1mo`bws}!4ABK+^~dm#Gz`8*K)dA|7f-DaR^ z5TN*zg%QNk0TCcO8CYW!6#7yk?bH}%o;^I}!q!Rs&3%(fJdHn_^jyoHq$#G}FO{6> z9H=pS`3ZKBKCL;YPP$n!=&0TIcCio$YMA{Z;lrYn?Mw?3+~jYx)ZEV1I{h*|pCPBF NDYdaFTUC+48UQkWVDbO} diff --git a/io.opencaesar.oml.edit/icons/full/ctool16/CreateClassifier_ownedPropertyRestrictions_PropertyCardinalityRestrictionAxiom.gif b/io.opencaesar.oml.edit/icons/full/ctool16/CreateClassifier_ownedPropertyRestrictions_PropertyCardinalityRestrictionAxiom.gif deleted file mode 100644 index afa6bafdb656bd49ae039258345da177d181c78b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 223 zcmZ?wbhEHb6krfwIKsg2|NsB{_xIb|$1^Z6Tx)7N7970B(y~oQ=l}os`SJGu@7p&t zG#of^U}oAGAj84IVb^puAlf=fd0m(M(k7{Sm0~kXg#Z104@7@Ip9i8p&lmr`+YB@f z0u+C;FoIY*AOd7318aB0|3TtUkd;L diff --git a/io.opencaesar.oml.edit/icons/full/ctool16/CreateClassifier_ownedPropertyRestrictions_PropertyRangeRestrictionAxiom.gif b/io.opencaesar.oml.edit/icons/full/ctool16/CreateClassifier_ownedPropertyRestrictions_PropertyRangeRestrictionAxiom.gif deleted file mode 100644 index a10c850374ede7cd0d26c2b8e21f6ec413add835..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 223 zcmZ?wbhEHb6krfwIKsg2|NsB{_xIb|$1^Z695`@b=9#pHh6V=*hyVZM=f~Uszi$uZ zg2dC#K*V=VR|BH0la$wW$uDh^npY_{vqbpc-}gZD_w#um`tyA8@4L-F(;z_cCkrEp zr2`^Bb~3QWC@A!$MB1q_%shK|%7v|y`kVVEm3SI|HtD&RJxNncyYLM_VN?# zB7ItOPMvhKV$e~$@9knC5Y#aHMZ$+gC)=48Cb-GpXsNlKt9ANidOkx=O;c)PQ?{xi GgEat-tzZ-Y diff --git a/io.opencaesar.oml.edit/icons/full/ctool16/CreateClassifier_ownedPropertyRestrictions_PropertySelfRestrictionAxiom.gif b/io.opencaesar.oml.edit/icons/full/ctool16/CreateClassifier_ownedPropertyRestrictions_PropertySelfRestrictionAxiom.gif deleted file mode 100644 index f9b01aa7f8ba3e40c49ba0c5f21c3b317860f4fc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 223 zcmZ?wbhEHb6krfwIKsg2|NsB{_xIb|$1^Z695`@bX4;vCh6V=*hyVZM=f~Uszi$uZ zB8%^ut_DO~Cn>M%l3&^+HLp@^W{L2>zwd$Q@8|PC^ym5F-*=mVra^$>PZmZHO9w=N z>||h#QBdehiL_H=n0fZ_lnYxY^*8rTD)BV_Y|?Wrdy=M@dcRb1rgNai?ByreMf$Yn zoI2@d#h{~h-`mAPAgE#Xi-Zr0PPQ{GOmLIG(Nc3eSL^i4^n8Y#nx@porfgM325SJ0 CM_?2H diff --git a/io.opencaesar.oml.edit/icons/full/ctool16/CreateClassifier_ownedPropertyRestrictions_PropertyValueRestrictionAxiom.gif b/io.opencaesar.oml.edit/icons/full/ctool16/CreateClassifier_ownedPropertyRestrictions_PropertyValueRestrictionAxiom.gif deleted file mode 100644 index 1254d2c5d654b053709db90c9607209680f55be5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 223 zcmZ?wbhEHb6krfwIKsg2|NsB{_xIb|$1^Z695`@b&YU?74GqO=KL7v6&yTnNf8QR+ z1&Ys1I|F1mI5_N@t_DO~Cn>M%l3&^+HLp@^W{L2>zwd$Q@8|PC^ym5F-*=mVra^$> zPZmZHO9w=N>||h#QBdehiL_H=n0fZ_lnYxY^*8rTD)BV_Y|?Wrdy=M@dcRb1rgNai z?ByreMf$YnoI2@d#h{~h-`mAPAgE#Xi-Zr0PPQ{GOmLIG(Nc3eSL^i4^n8Y#nx@po KrfgM325SJYpI|}& diff --git a/io.opencaesar.oml.edit/icons/full/ctool16/CreateClassifierEquivalenceAxiom_ownedPropertyRestrictions_PropertyCardinalityRestrictionAxiom.gif b/io.opencaesar.oml.edit/icons/full/ctool16/CreateEntityEquivalenceAxiom_ownedPropertyRestrictions_PropertyCardinalityRestrictionAxiom.gif similarity index 71% rename from io.opencaesar.oml.edit/icons/full/ctool16/CreateClassifierEquivalenceAxiom_ownedPropertyRestrictions_PropertyCardinalityRestrictionAxiom.gif rename to io.opencaesar.oml.edit/icons/full/ctool16/CreateEntityEquivalenceAxiom_ownedPropertyRestrictions_PropertyCardinalityRestrictionAxiom.gif index 247a03297605142d5cdb6ca67d1cc1c24a9dbfa7..5a3ab4a77c4dd1f455e800db90f59bd1520558af 100644 GIT binary patch delta 22 ecmcc5c%N~CAY&-2B!EQ}zQ4u}BR$-o+;pwO2RX{W|8^X%a%7q(97Z|<8^;%WTZq~}`pBuz2(eyQY4 z=Rl3w%TKV2^l8mGb<)j>K}YSrw~K{9P{ZsO2_F`nY-d`S;3j{grRH|7*6Ek&`3yNV NO{tAd*{X^R)&S>pViN!W literal 0 HcmV?d00001 diff --git a/io.opencaesar.oml.edit/icons/full/ctool16/CreateEntity_ownedPropertyRestrictions_PropertyCardinalityRestrictionAxiom.gif b/io.opencaesar.oml.edit/icons/full/ctool16/CreateEntity_ownedPropertyRestrictions_PropertyCardinalityRestrictionAxiom.gif new file mode 100644 index 0000000000000000000000000000000000000000..fcfac9a6a5c0061968aa94f0a2325e67d225139b GIT binary patch literal 223 zcmZ?wbhEHb6krfwIKsg2|NsB{_xIb|$1^Z6Tx)7N7970B(y~oQ=l}os`SJGu@7p&t zH0*hCspsaVv@M%l3&^+HLp@^W{L2>zwd$Q@8|PC^ym5F-*=mV zra^$>PZmZHO9w=N>||h#QBdehiL_H=n0fZ_lnYxY^*8rTD)BV_Y|?Wrdy=M@dcRb1 zrgNai?ByreMf$YnoI2@d#h{~h-`mAPAgE#Xi-Zr0PPQ{GOmLIG(Nc3eSL^i4^n8Y# Onx@porfgM325SJw<6xKo literal 0 HcmV?d00001 diff --git a/io.opencaesar.oml.edit/icons/full/ctool16/CreateEntity_ownedPropertyRestrictions_PropertyRangeRestrictionAxiom.gif b/io.opencaesar.oml.edit/icons/full/ctool16/CreateEntity_ownedPropertyRestrictions_PropertyRangeRestrictionAxiom.gif new file mode 100644 index 0000000000000000000000000000000000000000..992def4d44dbe37d4419f1b4b00c1dc6c1b10ab7 GIT binary patch literal 223 zcmZ?wbhEHb6krfwIKsg2|NsB{_xIb|$1^Z695`@b=9#pHh6V=*hyVZM=f~Uszi$uZ z?s;*k=jNugGcz3yH0+wL21HvYDX;62U)m%!uTpGgiSWO_?}6y==kq}H=lSB_cbkEx zL4e{<7Df3tK1kH}_2{@ihKy(sM0)lBSq?zf^Lj zbD+lTg4sA2Ytgb#~OwlghEaFf5$Qgb_3>-5X?e1@Ew Nrqsr!Y*j@DYXFfWVW9v3 literal 0 HcmV?d00001 diff --git a/io.opencaesar.oml.edit/icons/full/ctool16/CreateEntity_ownedPropertyRestrictions_PropertySelfRestrictionAxiom.gif b/io.opencaesar.oml.edit/icons/full/ctool16/CreateEntity_ownedPropertyRestrictions_PropertySelfRestrictionAxiom.gif new file mode 100644 index 0000000000000000000000000000000000000000..615cc24ef529e02dc66b4194c41ea30f94b1368d GIT binary patch literal 223 zcmZ?wbhEHb6krfwIKsg2|NsB{_xIb|$1^Z695`@bX4;vCh6V=*hyVZM=f~Uszi$uZ z?s;*k=jNugGcz3yH0+wL21HvYDX;62U)m%!uTpGgiSWO_?}6y==kq}H=lSB_cbkEx zL4e{<7Df3tK1kH}_2{@ihKy(sM0)lBSq?zf^Lj zbD+lTg4sA2Ytgb#~OwlghEaFf5$Qgb_3>-5X?e1@Ew Nrqsr!Y*j@DYXFeFVW9v3 literal 0 HcmV?d00001 diff --git a/io.opencaesar.oml.edit/icons/full/ctool16/CreateEntity_ownedPropertyRestrictions_PropertyValueRestrictionAxiom.gif b/io.opencaesar.oml.edit/icons/full/ctool16/CreateEntity_ownedPropertyRestrictions_PropertyValueRestrictionAxiom.gif new file mode 100644 index 0000000000000000000000000000000000000000..753454dc0264f5710cd141a455168436e48eb3ad GIT binary patch literal 223 zcmZ?wbhEHb6krfwIKsg2|NsB{_xIb|$1^Z695`@b&YU?74GqO=KL7v6&yTnNf8QR+ z-Sgs7&&^F~XJ$GaXxKGf4T!c*QeM|3zqCneUZvQ~65)S;-viO#&*y>Y&-2B!EQ}zQ4u}BR$-o+;pwO2RX{W|8^X%a%7q(97Z|<8^;%WTZq~}`pBuz2(eyQY4 z=Rl3w%TKV2^l8mGb<)j>K}YSrw~K{9P{ZsO2_F`nY-d`S;3j{grRH|7*6Ek&`3yNV NO{tAd*{X^R)&R2=Vb1^n literal 0 HcmV?d00001 diff --git a/io.opencaesar.oml.edit/icons/full/ctool16/CreatePropertyValueAssertion_containedValue_AnonymousConceptInstance.gif b/io.opencaesar.oml.edit/icons/full/ctool16/CreatePropertyValueAssertion_containedValue_AnonymousConceptInstance.gif new file mode 100644 index 0000000000000000000000000000000000000000..9ff2342489cd049bc6ec22b0b193ccebb5bc7821 GIT binary patch literal 223 zcmZ?wbhEHb6krfwIKsg2|NsB{_xIb|$1^Z6eEt37=$jk!@9(d?wCw-?`1$en|L@y3 zG&CGIaA3}yISvg692^{WO;-b=t&^13b;&PnlA2d3HnT+d-{1E@^!M|5Ao}xs@$b9M zK+_;V@h1x-h@}G}Kz1^)#waNCr9|4PG0Z%Bc*=#Xllq(cCY5*^e>Um4mOV*ROub(! zIny~%WA^eB>>_Um4mOV*ROub(! zIny~%WA^eB>>_MmLCOy}(CuxeQ_e&*b zItOaZUVegIq)%(ksgrJ23_5D}yf*NMONcgbmWINNs1ULB`Ej71uwNAfG&u7S~ OX-aKu%2rimum%7sk7Jeq literal 0 HcmV?d00001 diff --git a/io.opencaesar.oml.edit/icons/full/ctool16/CreatePropertyValueRestrictionAxiom_containedValue_StructureInstance.gif b/io.opencaesar.oml.edit/icons/full/ctool16/CreatePropertyValueRestrictionAxiom_containedValue_StructureInstance.gif deleted file mode 100644 index 73f16499bfc4d1e66af197790ef31079812e1b16..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 223 zcmZ?wbhEHb6krfwIKsg2|NsB{_xIb|$1^Z6{QmLv&5fh?_s_qytn&Z=`1$en|L@y3 zG&CGIaA3}yIY36Sn$NE3YCyDglJdGP`K3)#^D4z=mI(j*`yPn?em)OGf1WS?eYY8C z8U!f*WMKrcbU*~iP6pN(1%MmLCOy}(CuxeQ_e&*b zItOaZUVegIq)%(ksgrJ23_5D}yf*NMONcgbmWINNs1ULB`Ej71uwNAfG&u7S~ OX-aKu%2rimum%7txMP+8 diff --git a/io.opencaesar.oml.edit/icons/full/ctool16/CreateVocabulary_ownedStatements_Structure.gif b/io.opencaesar.oml.edit/icons/full/ctool16/CreateVocabulary_ownedStatements_Structure.gif deleted file mode 100644 index 671249c1599282bff0f7b20280c9c8a69072949d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 223 zcmZ?wbhEHb6krfwIKsg2|NsB{_xIb|$1^Z6?0Ipi=jNugGcz3yH2nV`KR@37|9$(0 zhK2(N4$PS|=hCH02M32;)75}z>m=oMUGhttq~=wM%`6fA_xC*z{r!9%i2giZ{QGV* z&@>28{K>)yV(EYgkev*yF$xNODUo(+3^UIjo^oO9r2gi6>ylsEBsH&6Y-Wk@zrXK+=@ diff --git a/io.opencaesar.oml.edit/icons/full/obj16/Structure.gif b/io.opencaesar.oml.edit/icons/full/obj16/EntityEquivalenceAxiom.gif similarity index 50% rename from io.opencaesar.oml.edit/icons/full/obj16/Structure.gif rename to io.opencaesar.oml.edit/icons/full/obj16/EntityEquivalenceAxiom.gif index ef56c140853105ca812564e9b12a76413c8c3fb9..c414fe9f728a37e7a2578cf66e5d3f625b429d0e 100644 GIT binary patch delta 22 ecmZo7fk zFD+|z`)6%1JVgHgMmfQ;H2m3y%w*(d{g0nSm?Ull=W6hg4cqDUv2b0PE)&T WR^GExlV5i^W2f7Zi9*7R4AuaSD>A77 diff --git a/io.opencaesar.oml.edit/icons/full/obj16/StructuredProperty.gif b/io.opencaesar.oml.edit/icons/full/obj16/StructuredProperty.gif deleted file mode 100644 index 2124f3e3ab2646fd6aec35b94fe003b565ba4c2c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 129 zcmZ?wbhEHb6krfw*vtS14M4Jip`qcxfddT<4GjN*-2XuK|Nmgt|Nmcq{62c)&HVlM zE0+|z`)6%1JVgHgMmfQ;H2m3y%w*(d{g0nSm?Ull=W6hg4cqDUv2b0PE)&T WR^GExlV5i^W2f7Zi9*7R4AuaQpE9Wc diff --git a/io.opencaesar.oml.edit/plugin.properties b/io.opencaesar.oml.edit/plugin.properties index 70be55cc..ae21737a 100644 --- a/io.opencaesar.oml.edit/plugin.properties +++ b/io.opencaesar.oml.edit/plugin.properties @@ -58,31 +58,30 @@ _UI_Property_type = Property _UI_Type_type = Type _UI_RelationBase_type = Relation Base _UI_SpecializableProperty_type = Specializable Property -_UI_Classifier_type = Classifier _UI_Scalar_type = Scalar _UI_Entity_type = Entity -_UI_Structure_type = Structure _UI_Aspect_type = Aspect _UI_Concept_type = Concept _UI_RelationEntity_type = Relation Entity _UI_AnnotationProperty_type = Annotation Property _UI_SemanticProperty_type = Semantic Property _UI_ScalarProperty_type = Scalar Property -_UI_StructuredProperty_type = Structured Property _UI_Relation_type = Relation _UI_ForwardRelation_type = Forward Relation _UI_ReverseRelation_type = Reverse Relation _UI_UnreifiedRelation_type = Unreified Relation _UI_NamedInstance_type = Named Instance +_UI_AnonymousInstance_type = Anonymous Instance _UI_ConceptInstance_type = Concept Instance _UI_RelationInstance_type = Relation Instance -_UI_StructureInstance_type = Structure Instance +_UI_AnonymousConceptInstance_type = Anonymous Concept Instance +_UI_AnonymousRelationInstance_type = Anonymous Relation Instance _UI_KeyAxiom_type = Key Axiom _UI_SpecializationAxiom_type = Specialization Axiom _UI_InstanceEnumerationAxiom_type = Instance Enumeration Axiom _UI_PropertyRestrictionAxiom_type = Property Restriction Axiom _UI_LiteralEnumerationAxiom_type = Literal Enumeration Axiom -_UI_ClassifierEquivalenceAxiom_type = Classifier Equivalence Axiom +_UI_EntityEquivalenceAxiom_type = Entity Equivalence Axiom _UI_ScalarEquivalenceAxiom_type = Scalar Equivalence Axiom _UI_PropertyEquivalenceAxiom_type = Property Equivalence Axiom _UI_PropertyRangeRestrictionAxiom_type = Property Range Restriction Axiom @@ -167,13 +166,12 @@ _UI_RelationBase_reflexive_feature = Reflexive _UI_RelationBase_irreflexive_feature = Irreflexive _UI_RelationBase_transitive_feature = Transitive _UI_SpecializableProperty_ownedEquivalences_feature = Owned Equivalences -_UI_Classifier_ownedEquivalences_feature = Owned Equivalences -_UI_Classifier_ownedPropertyRestrictions_feature = Owned Property Restrictions _UI_Scalar_ref_feature = Ref _UI_Scalar_ownedEnumeration_feature = Owned Enumeration _UI_Scalar_ownedEquivalences_feature = Owned Equivalences +_UI_Entity_ownedEquivalences_feature = Owned Equivalences +_UI_Entity_ownedPropertyRestrictions_feature = Owned Property Restrictions _UI_Entity_ownedKeys_feature = Owned Keys -_UI_Structure_ref_feature = Ref _UI_Aspect_ref_feature = Ref _UI_Concept_ref_feature = Ref _UI_Concept_ownedEnumeration_feature = Owned Enumeration @@ -184,21 +182,18 @@ _UI_ScalarProperty_ref_feature = Ref _UI_ScalarProperty_functional_feature = Functional _UI_ScalarProperty_domains_feature = Domains _UI_ScalarProperty_ranges_feature = Ranges -_UI_StructuredProperty_ref_feature = Ref -_UI_StructuredProperty_functional_feature = Functional -_UI_StructuredProperty_domains_feature = Domains -_UI_StructuredProperty_ranges_feature = Ranges _UI_ForwardRelation_relationEntity_feature = Relation Entity _UI_ReverseRelation_relationBase_feature = Relation Base _UI_UnreifiedRelation_ref_feature = Ref _UI_NamedInstance_ownedTypes_feature = Owned Types +_UI_AnonymousInstance_owningAssertion_feature = Owning Assertion +_UI_AnonymousInstance_owningAxiom_feature = Owning Axiom _UI_ConceptInstance_ref_feature = Ref _UI_RelationInstance_ref_feature = Ref _UI_RelationInstance_sources_feature = Sources _UI_RelationInstance_targets_feature = Targets -_UI_StructureInstance_type_feature = Type -_UI_StructureInstance_owningAxiom_feature = Owning Axiom -_UI_StructureInstance_owningAssertion_feature = Owning Assertion +_UI_AnonymousConceptInstance_type_feature = Type +_UI_AnonymousRelationInstance_target_feature = Target _UI_KeyAxiom_properties_feature = Properties _UI_KeyAxiom_owningEntity_feature = Owning Entity _UI_SpecializationAxiom_superTerm_feature = Super Term @@ -206,13 +201,13 @@ _UI_SpecializationAxiom_owningTerm_feature = Owning Term _UI_InstanceEnumerationAxiom_instances_feature = Instances _UI_InstanceEnumerationAxiom_owningConcept_feature = Owning Concept _UI_PropertyRestrictionAxiom_property_feature = Property -_UI_PropertyRestrictionAxiom_owningClassifier_feature = Owning Classifier +_UI_PropertyRestrictionAxiom_owningEntity_feature = Owning Entity _UI_PropertyRestrictionAxiom_owningAxiom_feature = Owning Axiom _UI_LiteralEnumerationAxiom_literals_feature = Literals _UI_LiteralEnumerationAxiom_owningScalar_feature = Owning Scalar -_UI_ClassifierEquivalenceAxiom_superClassifiers_feature = Super Classifiers -_UI_ClassifierEquivalenceAxiom_ownedPropertyRestrictions_feature = Owned Property Restrictions -_UI_ClassifierEquivalenceAxiom_owningClassifier_feature = Owning Classifier +_UI_EntityEquivalenceAxiom_superEntities_feature = Super Entities +_UI_EntityEquivalenceAxiom_ownedPropertyRestrictions_feature = Owned Property Restrictions +_UI_EntityEquivalenceAxiom_owningEntity_feature = Owning Entity _UI_ScalarEquivalenceAxiom_superScalar_feature = Super Scalar _UI_ScalarEquivalenceAxiom_owningScalar_feature = Owning Scalar _UI_ScalarEquivalenceAxiom_length_feature = Length @@ -395,8 +390,3 @@ _UI_CardinalityRestrictionKind_max_literal = max _UI_ImportKind_extension_literal = extension _UI_ImportKind_usage_literal = usage _UI_ImportKind_inclusion_literal = inclusion -_UI_AnonymousInstance_type = Anonymous Instance -_UI_AnonymousInstance_owningAssertion_feature = Owning Assertion -_UI_AnonymousInstance_owningAxiom_feature = Owning Axiom -_UI_AnonymousRelationInstance_type = Anonymous Relation Instance -_UI_AnonymousRelationInstance_target_feature = Target diff --git a/io.opencaesar.oml.edit/pom.xml b/io.opencaesar.oml.edit/pom.xml index 65f9bdce..877187fd 100644 --- a/io.opencaesar.oml.edit/pom.xml +++ b/io.opencaesar.oml.edit/pom.xml @@ -4,7 +4,7 @@ io.opencaesar.oml io.opencaesar.oml.parent - 2.7.3 + 2.8.0 io.opencaesar.oml.edit eclipse-plugin diff --git a/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/StructureInstanceItemProvider.java b/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/AnonymousConceptInstanceItemProvider.java similarity index 84% rename from io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/StructureInstanceItemProvider.java rename to io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/AnonymousConceptInstanceItemProvider.java index 63240d71..52987c4f 100644 --- a/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/StructureInstanceItemProvider.java +++ b/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/AnonymousConceptInstanceItemProvider.java @@ -31,19 +31,19 @@ import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; /** - * This is the item provider adapter for a {@link io.opencaesar.oml.StructureInstance} object. + * This is the item provider adapter for a {@link io.opencaesar.oml.AnonymousConceptInstance} object. * * * @generated */ -public class StructureInstanceItemProvider extends AnonymousInstanceItemProvider { +public class AnonymousConceptInstanceItemProvider extends AnonymousInstanceItemProvider { /** * This constructs an instance from a factory and a notifier. * * * @generated */ - public StructureInstanceItemProvider(AdapterFactory adapterFactory) { + public AnonymousConceptInstanceItemProvider(AdapterFactory adapterFactory) { super(adapterFactory); } @@ -74,9 +74,9 @@ protected void addTypePropertyDescriptor(Object object) { (createItemPropertyDescriptor (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), - getString("_UI_StructureInstance_type_feature"), - getString("_UI_PropertyDescriptor_description", "_UI_StructureInstance_type_feature", "_UI_StructureInstance_type"), - OmlPackage.Literals.STRUCTURE_INSTANCE__TYPE, + getString("_UI_AnonymousConceptInstance_type_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_AnonymousConceptInstance_type_feature", "_UI_AnonymousConceptInstance_type"), + OmlPackage.Literals.ANONYMOUS_CONCEPT_INSTANCE__TYPE, true, false, true, @@ -86,14 +86,14 @@ protected void addTypePropertyDescriptor(Object object) { } /** - * This returns StructureInstance.gif. + * This returns AnonymousConceptInstance.gif. * * * @generated */ @Override public Object getImage(Object object) { - return overlayImage(object, getResourceLocator().getImage("full/obj16/StructureInstance")); + return overlayImage(object, getResourceLocator().getImage("full/obj16/AnonymousConceptInstance")); } /** @@ -104,7 +104,7 @@ public Object getImage(Object object) { */ @Override public String getText(Object object) { - return getString("_UI_StructureInstance_type"); + return getString("_UI_AnonymousConceptInstance_type"); } diff --git a/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/ClassifierItemProvider.java b/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/ClassifierItemProvider.java deleted file mode 100644 index 7f5363e4..00000000 --- a/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/ClassifierItemProvider.java +++ /dev/null @@ -1,172 +0,0 @@ -/** - * - * Copyright 2019-2022 California Institute of Technology ("Caltech"). - * U.S. Government sponsorship acknowledged. - * - * Licensed 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 io.opencaesar.oml.provider; - - -import io.opencaesar.oml.Classifier; -import io.opencaesar.oml.OmlFactory; -import io.opencaesar.oml.OmlPackage; - -import java.util.Collection; -import java.util.List; - -import org.eclipse.emf.common.notify.AdapterFactory; -import org.eclipse.emf.common.notify.Notification; - -import org.eclipse.emf.ecore.EStructuralFeature; - -import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; -import org.eclipse.emf.edit.provider.ViewerNotification; - -/** - * This is the item provider adapter for a {@link io.opencaesar.oml.Classifier} object. - * - * - * @generated - */ -public class ClassifierItemProvider extends TypeItemProvider { - /** - * This constructs an instance from a factory and a notifier. - * - * - * @generated - */ - public ClassifierItemProvider(AdapterFactory adapterFactory) { - super(adapterFactory); - } - - /** - * This returns the property descriptors for the adapted class. - * - * - * @generated - */ - @Override - public List getPropertyDescriptors(Object object) { - if (itemPropertyDescriptors == null) { - super.getPropertyDescriptors(object); - - } - return itemPropertyDescriptors; - } - - /** - * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an - * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or - * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. - * - * - * @generated - */ - @Override - public Collection getChildrenFeatures(Object object) { - if (childrenFeatures == null) { - super.getChildrenFeatures(object); - childrenFeatures.add(OmlPackage.Literals.CLASSIFIER__OWNED_EQUIVALENCES); - childrenFeatures.add(OmlPackage.Literals.CLASSIFIER__OWNED_PROPERTY_RESTRICTIONS); - } - return childrenFeatures; - } - - /** - * - * - * @generated - */ - @Override - protected EStructuralFeature getChildFeature(Object object, Object child) { - // Check the type of the specified child object and return the proper feature to use for - // adding (see {@link AddCommand}) it as a child. - - return super.getChildFeature(object, child); - } - - /** - * This returns the label text for the adapted class. - * - * - * @generated - */ - @Override - public String getText(Object object) { - String label = ((Classifier)object).getName(); - return label == null || label.length() == 0 ? - getString("_UI_Classifier_type") : - getString("_UI_Classifier_type") + " " + label; - } - - - /** - * This handles model notifications by calling {@link #updateChildren} to update any cached - * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. - * - * - * @generated - */ - @Override - public void notifyChanged(Notification notification) { - updateChildren(notification); - - switch (notification.getFeatureID(Classifier.class)) { - case OmlPackage.CLASSIFIER__OWNED_EQUIVALENCES: - case OmlPackage.CLASSIFIER__OWNED_PROPERTY_RESTRICTIONS: - fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false)); - return; - } - super.notifyChanged(notification); - } - - /** - * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children - * that can be created under this object. - * - * - * @generated - */ - @Override - protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { - super.collectNewChildDescriptors(newChildDescriptors, object); - - newChildDescriptors.add - (createChildParameter - (OmlPackage.Literals.CLASSIFIER__OWNED_EQUIVALENCES, - OmlFactory.eINSTANCE.createClassifierEquivalenceAxiom())); - - newChildDescriptors.add - (createChildParameter - (OmlPackage.Literals.CLASSIFIER__OWNED_PROPERTY_RESTRICTIONS, - OmlFactory.eINSTANCE.createPropertyRangeRestrictionAxiom())); - - newChildDescriptors.add - (createChildParameter - (OmlPackage.Literals.CLASSIFIER__OWNED_PROPERTY_RESTRICTIONS, - OmlFactory.eINSTANCE.createPropertyCardinalityRestrictionAxiom())); - - newChildDescriptors.add - (createChildParameter - (OmlPackage.Literals.CLASSIFIER__OWNED_PROPERTY_RESTRICTIONS, - OmlFactory.eINSTANCE.createPropertyValueRestrictionAxiom())); - - newChildDescriptors.add - (createChildParameter - (OmlPackage.Literals.CLASSIFIER__OWNED_PROPERTY_RESTRICTIONS, - OmlFactory.eINSTANCE.createPropertySelfRestrictionAxiom())); - } - -} diff --git a/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/ClassifierEquivalenceAxiomItemProvider.java b/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/EntityEquivalenceAxiomItemProvider.java similarity index 72% rename from io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/ClassifierEquivalenceAxiomItemProvider.java rename to io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/EntityEquivalenceAxiomItemProvider.java index ecfc6abd..8d6b9937 100644 --- a/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/ClassifierEquivalenceAxiomItemProvider.java +++ b/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/EntityEquivalenceAxiomItemProvider.java @@ -19,7 +19,7 @@ package io.opencaesar.oml.provider; -import io.opencaesar.oml.ClassifierEquivalenceAxiom; +import io.opencaesar.oml.EntityEquivalenceAxiom; import io.opencaesar.oml.OmlFactory; import io.opencaesar.oml.OmlPackage; @@ -36,19 +36,19 @@ import org.eclipse.emf.edit.provider.ViewerNotification; /** - * This is the item provider adapter for a {@link io.opencaesar.oml.ClassifierEquivalenceAxiom} object. + * This is the item provider adapter for a {@link io.opencaesar.oml.EntityEquivalenceAxiom} object. * * * @generated */ -public class ClassifierEquivalenceAxiomItemProvider extends AxiomItemProvider { +public class EntityEquivalenceAxiomItemProvider extends AxiomItemProvider { /** * This constructs an instance from a factory and a notifier. * * * @generated */ - public ClassifierEquivalenceAxiomItemProvider(AdapterFactory adapterFactory) { + public EntityEquivalenceAxiomItemProvider(AdapterFactory adapterFactory) { super(adapterFactory); } @@ -63,26 +63,26 @@ public List getPropertyDescriptors(Object object) { if (itemPropertyDescriptors == null) { super.getPropertyDescriptors(object); - addSuperClassifiersPropertyDescriptor(object); - addOwningClassifierPropertyDescriptor(object); + addSuperEntitiesPropertyDescriptor(object); + addOwningEntityPropertyDescriptor(object); } return itemPropertyDescriptors; } /** - * This adds a property descriptor for the Super Classifiers feature. + * This adds a property descriptor for the Super Entities feature. * * * @generated */ - protected void addSuperClassifiersPropertyDescriptor(Object object) { + protected void addSuperEntitiesPropertyDescriptor(Object object) { itemPropertyDescriptors.add (createItemPropertyDescriptor (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), - getString("_UI_ClassifierEquivalenceAxiom_superClassifiers_feature"), - getString("_UI_PropertyDescriptor_description", "_UI_ClassifierEquivalenceAxiom_superClassifiers_feature", "_UI_ClassifierEquivalenceAxiom_type"), - OmlPackage.Literals.CLASSIFIER_EQUIVALENCE_AXIOM__SUPER_CLASSIFIERS, + getString("_UI_EntityEquivalenceAxiom_superEntities_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_EntityEquivalenceAxiom_superEntities_feature", "_UI_EntityEquivalenceAxiom_type"), + OmlPackage.Literals.ENTITY_EQUIVALENCE_AXIOM__SUPER_ENTITIES, true, false, true, @@ -92,19 +92,19 @@ protected void addSuperClassifiersPropertyDescriptor(Object object) { } /** - * This adds a property descriptor for the Owning Classifier feature. + * This adds a property descriptor for the Owning Entity feature. * * * @generated */ - protected void addOwningClassifierPropertyDescriptor(Object object) { + protected void addOwningEntityPropertyDescriptor(Object object) { itemPropertyDescriptors.add (createItemPropertyDescriptor (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), - getString("_UI_ClassifierEquivalenceAxiom_owningClassifier_feature"), - getString("_UI_PropertyDescriptor_description", "_UI_ClassifierEquivalenceAxiom_owningClassifier_feature", "_UI_ClassifierEquivalenceAxiom_type"), - OmlPackage.Literals.CLASSIFIER_EQUIVALENCE_AXIOM__OWNING_CLASSIFIER, + getString("_UI_EntityEquivalenceAxiom_owningEntity_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_EntityEquivalenceAxiom_owningEntity_feature", "_UI_EntityEquivalenceAxiom_type"), + OmlPackage.Literals.ENTITY_EQUIVALENCE_AXIOM__OWNING_ENTITY, true, false, true, @@ -125,7 +125,7 @@ protected void addOwningClassifierPropertyDescriptor(Object object) { public Collection getChildrenFeatures(Object object) { if (childrenFeatures == null) { super.getChildrenFeatures(object); - childrenFeatures.add(OmlPackage.Literals.CLASSIFIER_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS); + childrenFeatures.add(OmlPackage.Literals.ENTITY_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS); } return childrenFeatures; } @@ -144,14 +144,14 @@ protected EStructuralFeature getChildFeature(Object object, Object child) { } /** - * This returns ClassifierEquivalenceAxiom.gif. + * This returns EntityEquivalenceAxiom.gif. * * * @generated */ @Override public Object getImage(Object object) { - return overlayImage(object, getResourceLocator().getImage("full/obj16/ClassifierEquivalenceAxiom")); + return overlayImage(object, getResourceLocator().getImage("full/obj16/EntityEquivalenceAxiom")); } /** @@ -162,7 +162,7 @@ public Object getImage(Object object) { */ @Override public String getText(Object object) { - return getString("_UI_ClassifierEquivalenceAxiom_type"); + return getString("_UI_EntityEquivalenceAxiom_type"); } @@ -177,8 +177,8 @@ public String getText(Object object) { public void notifyChanged(Notification notification) { updateChildren(notification); - switch (notification.getFeatureID(ClassifierEquivalenceAxiom.class)) { - case OmlPackage.CLASSIFIER_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS: + switch (notification.getFeatureID(EntityEquivalenceAxiom.class)) { + case OmlPackage.ENTITY_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS: fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false)); return; } @@ -198,22 +198,22 @@ protected void collectNewChildDescriptors(Collection newChildDescriptors newChildDescriptors.add (createChildParameter - (OmlPackage.Literals.CLASSIFIER_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS, + (OmlPackage.Literals.ENTITY_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS, OmlFactory.eINSTANCE.createPropertyRangeRestrictionAxiom())); newChildDescriptors.add (createChildParameter - (OmlPackage.Literals.CLASSIFIER_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS, + (OmlPackage.Literals.ENTITY_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS, OmlFactory.eINSTANCE.createPropertyCardinalityRestrictionAxiom())); newChildDescriptors.add (createChildParameter - (OmlPackage.Literals.CLASSIFIER_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS, + (OmlPackage.Literals.ENTITY_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS, OmlFactory.eINSTANCE.createPropertyValueRestrictionAxiom())); newChildDescriptors.add (createChildParameter - (OmlPackage.Literals.CLASSIFIER_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS, + (OmlPackage.Literals.ENTITY_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS, OmlFactory.eINSTANCE.createPropertySelfRestrictionAxiom())); } diff --git a/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/EntityItemProvider.java b/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/EntityItemProvider.java index 07e0f9be..1940cdf9 100644 --- a/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/EntityItemProvider.java +++ b/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/EntityItemProvider.java @@ -40,7 +40,7 @@ * * @generated */ -public class EntityItemProvider extends ClassifierItemProvider { +public class EntityItemProvider extends TypeItemProvider { /** * This constructs an instance from a factory and a notifier. * @@ -78,6 +78,8 @@ public List getPropertyDescriptors(Object object) { public Collection getChildrenFeatures(Object object) { if (childrenFeatures == null) { super.getChildrenFeatures(object); + childrenFeatures.add(OmlPackage.Literals.ENTITY__OWNED_EQUIVALENCES); + childrenFeatures.add(OmlPackage.Literals.ENTITY__OWNED_PROPERTY_RESTRICTIONS); childrenFeatures.add(OmlPackage.Literals.ENTITY__OWNED_KEYS); } return childrenFeatures; @@ -123,6 +125,8 @@ public void notifyChanged(Notification notification) { updateChildren(notification); switch (notification.getFeatureID(Entity.class)) { + case OmlPackage.ENTITY__OWNED_EQUIVALENCES: + case OmlPackage.ENTITY__OWNED_PROPERTY_RESTRICTIONS: case OmlPackage.ENTITY__OWNED_KEYS: fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false)); return; @@ -141,6 +145,31 @@ public void notifyChanged(Notification notification) { protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { super.collectNewChildDescriptors(newChildDescriptors, object); + newChildDescriptors.add + (createChildParameter + (OmlPackage.Literals.ENTITY__OWNED_EQUIVALENCES, + OmlFactory.eINSTANCE.createEntityEquivalenceAxiom())); + + newChildDescriptors.add + (createChildParameter + (OmlPackage.Literals.ENTITY__OWNED_PROPERTY_RESTRICTIONS, + OmlFactory.eINSTANCE.createPropertyRangeRestrictionAxiom())); + + newChildDescriptors.add + (createChildParameter + (OmlPackage.Literals.ENTITY__OWNED_PROPERTY_RESTRICTIONS, + OmlFactory.eINSTANCE.createPropertyCardinalityRestrictionAxiom())); + + newChildDescriptors.add + (createChildParameter + (OmlPackage.Literals.ENTITY__OWNED_PROPERTY_RESTRICTIONS, + OmlFactory.eINSTANCE.createPropertyValueRestrictionAxiom())); + + newChildDescriptors.add + (createChildParameter + (OmlPackage.Literals.ENTITY__OWNED_PROPERTY_RESTRICTIONS, + OmlFactory.eINSTANCE.createPropertySelfRestrictionAxiom())); + newChildDescriptors.add (createChildParameter (OmlPackage.Literals.ENTITY__OWNED_KEYS, diff --git a/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/OmlItemProviderAdapterFactory.java b/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/OmlItemProviderAdapterFactory.java index 393fcddd..f05c864a 100644 --- a/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/OmlItemProviderAdapterFactory.java +++ b/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/OmlItemProviderAdapterFactory.java @@ -317,29 +317,6 @@ public Adapter createScalarAdapter() { return scalarItemProvider; } - /** - * This keeps track of the one adapter used for all {@link io.opencaesar.oml.Structure} instances. - * - * - * @generated - */ - protected StructureItemProvider structureItemProvider; - - /** - * This creates an adapter for a {@link io.opencaesar.oml.Structure}. - * - * - * @generated - */ - @Override - public Adapter createStructureAdapter() { - if (structureItemProvider == null) { - structureItemProvider = new StructureItemProvider(this); - } - - return structureItemProvider; - } - /** * This keeps track of the one adapter used for all {@link io.opencaesar.oml.Aspect} instances. * @@ -455,29 +432,6 @@ public Adapter createScalarPropertyAdapter() { return scalarPropertyItemProvider; } - /** - * This keeps track of the one adapter used for all {@link io.opencaesar.oml.StructuredProperty} instances. - * - * - * @generated - */ - protected StructuredPropertyItemProvider structuredPropertyItemProvider; - - /** - * This creates an adapter for a {@link io.opencaesar.oml.StructuredProperty}. - * - * - * @generated - */ - @Override - public Adapter createStructuredPropertyAdapter() { - if (structuredPropertyItemProvider == null) { - structuredPropertyItemProvider = new StructuredPropertyItemProvider(this); - } - - return structuredPropertyItemProvider; - } - /** * This keeps track of the one adapter used for all {@link io.opencaesar.oml.ForwardRelation} instances. * @@ -594,26 +548,26 @@ public Adapter createRelationInstanceAdapter() { } /** - * This keeps track of the one adapter used for all {@link io.opencaesar.oml.StructureInstance} instances. + * This keeps track of the one adapter used for all {@link io.opencaesar.oml.AnonymousConceptInstance} instances. * * * @generated */ - protected StructureInstanceItemProvider structureInstanceItemProvider; + protected AnonymousConceptInstanceItemProvider anonymousConceptInstanceItemProvider; /** - * This creates an adapter for a {@link io.opencaesar.oml.StructureInstance}. + * This creates an adapter for a {@link io.opencaesar.oml.AnonymousConceptInstance}. * * * @generated */ @Override - public Adapter createStructureInstanceAdapter() { - if (structureInstanceItemProvider == null) { - structureInstanceItemProvider = new StructureInstanceItemProvider(this); + public Adapter createAnonymousConceptInstanceAdapter() { + if (anonymousConceptInstanceItemProvider == null) { + anonymousConceptInstanceItemProvider = new AnonymousConceptInstanceItemProvider(this); } - return structureInstanceItemProvider; + return anonymousConceptInstanceItemProvider; } /** @@ -732,26 +686,26 @@ public Adapter createLiteralEnumerationAxiomAdapter() { } /** - * This keeps track of the one adapter used for all {@link io.opencaesar.oml.ClassifierEquivalenceAxiom} instances. + * This keeps track of the one adapter used for all {@link io.opencaesar.oml.EntityEquivalenceAxiom} instances. * * * @generated */ - protected ClassifierEquivalenceAxiomItemProvider classifierEquivalenceAxiomItemProvider; + protected EntityEquivalenceAxiomItemProvider entityEquivalenceAxiomItemProvider; /** - * This creates an adapter for a {@link io.opencaesar.oml.ClassifierEquivalenceAxiom}. + * This creates an adapter for a {@link io.opencaesar.oml.EntityEquivalenceAxiom}. * * * @generated */ @Override - public Adapter createClassifierEquivalenceAxiomAdapter() { - if (classifierEquivalenceAxiomItemProvider == null) { - classifierEquivalenceAxiomItemProvider = new ClassifierEquivalenceAxiomItemProvider(this); + public Adapter createEntityEquivalenceAxiomAdapter() { + if (entityEquivalenceAxiomItemProvider == null) { + entityEquivalenceAxiomItemProvider = new EntityEquivalenceAxiomItemProvider(this); } - return classifierEquivalenceAxiomItemProvider; + return entityEquivalenceAxiomItemProvider; } /** @@ -1306,25 +1260,23 @@ public void dispose() { if (ruleItemProvider != null) ruleItemProvider.dispose(); if (builtInItemProvider != null) builtInItemProvider.dispose(); if (scalarItemProvider != null) scalarItemProvider.dispose(); - if (structureItemProvider != null) structureItemProvider.dispose(); if (aspectItemProvider != null) aspectItemProvider.dispose(); if (conceptItemProvider != null) conceptItemProvider.dispose(); if (relationEntityItemProvider != null) relationEntityItemProvider.dispose(); if (annotationPropertyItemProvider != null) annotationPropertyItemProvider.dispose(); if (scalarPropertyItemProvider != null) scalarPropertyItemProvider.dispose(); - if (structuredPropertyItemProvider != null) structuredPropertyItemProvider.dispose(); if (forwardRelationItemProvider != null) forwardRelationItemProvider.dispose(); if (reverseRelationItemProvider != null) reverseRelationItemProvider.dispose(); if (unreifiedRelationItemProvider != null) unreifiedRelationItemProvider.dispose(); if (conceptInstanceItemProvider != null) conceptInstanceItemProvider.dispose(); if (relationInstanceItemProvider != null) relationInstanceItemProvider.dispose(); - if (structureInstanceItemProvider != null) structureInstanceItemProvider.dispose(); + if (anonymousConceptInstanceItemProvider != null) anonymousConceptInstanceItemProvider.dispose(); if (anonymousRelationInstanceItemProvider != null) anonymousRelationInstanceItemProvider.dispose(); if (keyAxiomItemProvider != null) keyAxiomItemProvider.dispose(); if (specializationAxiomItemProvider != null) specializationAxiomItemProvider.dispose(); if (instanceEnumerationAxiomItemProvider != null) instanceEnumerationAxiomItemProvider.dispose(); if (literalEnumerationAxiomItemProvider != null) literalEnumerationAxiomItemProvider.dispose(); - if (classifierEquivalenceAxiomItemProvider != null) classifierEquivalenceAxiomItemProvider.dispose(); + if (entityEquivalenceAxiomItemProvider != null) entityEquivalenceAxiomItemProvider.dispose(); if (scalarEquivalenceAxiomItemProvider != null) scalarEquivalenceAxiomItemProvider.dispose(); if (propertyEquivalenceAxiomItemProvider != null) propertyEquivalenceAxiomItemProvider.dispose(); if (propertyRangeRestrictionAxiomItemProvider != null) propertyRangeRestrictionAxiomItemProvider.dispose(); diff --git a/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/PropertyRestrictionAxiomItemProvider.java b/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/PropertyRestrictionAxiomItemProvider.java index fcece6f8..01042542 100644 --- a/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/PropertyRestrictionAxiomItemProvider.java +++ b/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/PropertyRestrictionAxiomItemProvider.java @@ -59,7 +59,7 @@ public List getPropertyDescriptors(Object object) { super.getPropertyDescriptors(object); addPropertyPropertyDescriptor(object); - addOwningClassifierPropertyDescriptor(object); + addOwningEntityPropertyDescriptor(object); addOwningAxiomPropertyDescriptor(object); } return itemPropertyDescriptors; @@ -88,19 +88,19 @@ protected void addPropertyPropertyDescriptor(Object object) { } /** - * This adds a property descriptor for the Owning Classifier feature. + * This adds a property descriptor for the Owning Entity feature. * * * @generated */ - protected void addOwningClassifierPropertyDescriptor(Object object) { + protected void addOwningEntityPropertyDescriptor(Object object) { itemPropertyDescriptors.add (createItemPropertyDescriptor (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), - getString("_UI_PropertyRestrictionAxiom_owningClassifier_feature"), - getString("_UI_PropertyDescriptor_description", "_UI_PropertyRestrictionAxiom_owningClassifier_feature", "_UI_PropertyRestrictionAxiom_type"), - OmlPackage.Literals.PROPERTY_RESTRICTION_AXIOM__OWNING_CLASSIFIER, + getString("_UI_PropertyRestrictionAxiom_owningEntity_feature"), + getString("_UI_PropertyDescriptor_description", "_UI_PropertyRestrictionAxiom_owningEntity_feature", "_UI_PropertyRestrictionAxiom_type"), + OmlPackage.Literals.PROPERTY_RESTRICTION_AXIOM__OWNING_ENTITY, true, false, true, diff --git a/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/PropertyValueAssertionItemProvider.java b/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/PropertyValueAssertionItemProvider.java index 57a5f49f..e5a4e340 100644 --- a/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/PropertyValueAssertionItemProvider.java +++ b/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/PropertyValueAssertionItemProvider.java @@ -249,7 +249,7 @@ protected void collectNewChildDescriptors(Collection newChildDescriptors newChildDescriptors.add (createChildParameter (OmlPackage.Literals.PROPERTY_VALUE_ASSERTION__CONTAINED_VALUE, - OmlFactory.eINSTANCE.createStructureInstance())); + OmlFactory.eINSTANCE.createAnonymousConceptInstance())); newChildDescriptors.add (createChildParameter diff --git a/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/PropertyValueRestrictionAxiomItemProvider.java b/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/PropertyValueRestrictionAxiomItemProvider.java index 9cd5e8ba..d3b7fefc 100644 --- a/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/PropertyValueRestrictionAxiomItemProvider.java +++ b/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/PropertyValueRestrictionAxiomItemProvider.java @@ -203,7 +203,7 @@ protected void collectNewChildDescriptors(Collection newChildDescriptors newChildDescriptors.add (createChildParameter (OmlPackage.Literals.PROPERTY_VALUE_RESTRICTION_AXIOM__CONTAINED_VALUE, - OmlFactory.eINSTANCE.createStructureInstance())); + OmlFactory.eINSTANCE.createAnonymousConceptInstance())); newChildDescriptors.add (createChildParameter diff --git a/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/StructureItemProvider.java b/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/StructureItemProvider.java deleted file mode 100644 index 47c67dc0..00000000 --- a/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/StructureItemProvider.java +++ /dev/null @@ -1,140 +0,0 @@ -/** - * - * Copyright 2019-2022 California Institute of Technology ("Caltech"). - * U.S. Government sponsorship acknowledged. - * - * Licensed 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 io.opencaesar.oml.provider; - - -import io.opencaesar.oml.OmlPackage; -import io.opencaesar.oml.Structure; - -import java.util.Collection; -import java.util.List; - -import org.eclipse.emf.common.notify.AdapterFactory; -import org.eclipse.emf.common.notify.Notification; - -import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; -import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; - -/** - * This is the item provider adapter for a {@link io.opencaesar.oml.Structure} object. - * - * - * @generated - */ -public class StructureItemProvider extends ClassifierItemProvider { - /** - * This constructs an instance from a factory and a notifier. - * - * - * @generated - */ - public StructureItemProvider(AdapterFactory adapterFactory) { - super(adapterFactory); - } - - /** - * This returns the property descriptors for the adapted class. - * - * - * @generated - */ - @Override - public List getPropertyDescriptors(Object object) { - if (itemPropertyDescriptors == null) { - super.getPropertyDescriptors(object); - - addRefPropertyDescriptor(object); - } - return itemPropertyDescriptors; - } - - /** - * This adds a property descriptor for the Ref feature. - * - * - * @generated - */ - protected void addRefPropertyDescriptor(Object object) { - itemPropertyDescriptors.add - (createItemPropertyDescriptor - (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), - getResourceLocator(), - getString("_UI_Structure_ref_feature"), - getString("_UI_PropertyDescriptor_description", "_UI_Structure_ref_feature", "_UI_Structure_type"), - OmlPackage.Literals.STRUCTURE__REF, - true, - false, - true, - null, - null, - null)); - } - - /** - * This returns Structure.gif. - * - * - * @generated - */ - @Override - public Object getImage(Object object) { - return overlayImage(object, getResourceLocator().getImage("full/obj16/Structure")); - } - - /** - * This returns the label text for the adapted class. - * - * - * @generated - */ - @Override - public String getText(Object object) { - String label = ((Structure)object).getName(); - return label == null || label.length() == 0 ? - getString("_UI_Structure_type") : - getString("_UI_Structure_type") + " " + label; - } - - - /** - * This handles model notifications by calling {@link #updateChildren} to update any cached - * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. - * - * - * @generated - */ - @Override - public void notifyChanged(Notification notification) { - updateChildren(notification); - super.notifyChanged(notification); - } - - /** - * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children - * that can be created under this object. - * - * - * @generated - */ - @Override - protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { - super.collectNewChildDescriptors(newChildDescriptors, object); - } - -} diff --git a/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/StructuredPropertyItemProvider.java b/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/StructuredPropertyItemProvider.java deleted file mode 100644 index e21db848..00000000 --- a/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/StructuredPropertyItemProvider.java +++ /dev/null @@ -1,288 +0,0 @@ -/** - * - * Copyright 2019-2022 California Institute of Technology ("Caltech"). - * U.S. Government sponsorship acknowledged. - * - * Licensed 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 io.opencaesar.oml.provider; - - -import io.opencaesar.oml.OmlFactory; -import io.opencaesar.oml.OmlPackage; -import io.opencaesar.oml.StructuredProperty; - -import java.util.Collection; -import java.util.List; - -import org.eclipse.emf.common.notify.AdapterFactory; -import org.eclipse.emf.common.notify.Notification; - -import org.eclipse.emf.ecore.EStructuralFeature; - -import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; -import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; -import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; -import org.eclipse.emf.edit.provider.ViewerNotification; - -/** - * This is the item provider adapter for a {@link io.opencaesar.oml.StructuredProperty} object. - * - * - * @generated - */ -public class StructuredPropertyItemProvider extends SemanticPropertyItemProvider { - /** - * This constructs an instance from a factory and a notifier. - * - * - * @generated - */ - public StructuredPropertyItemProvider(AdapterFactory adapterFactory) { - super(adapterFactory); - } - - /** - * This returns the property descriptors for the adapted class. - * - * - * @generated - */ - @Override - public List getPropertyDescriptors(Object object) { - if (itemPropertyDescriptors == null) { - super.getPropertyDescriptors(object); - - addOwningVocabularyPropertyDescriptor(object); - addRefPropertyDescriptor(object); - addFunctionalPropertyDescriptor(object); - addDomainsPropertyDescriptor(object); - addRangesPropertyDescriptor(object); - } - return itemPropertyDescriptors; - } - - /** - * This adds a property descriptor for the Owning Vocabulary feature. - * - * - * @generated - */ - protected void addOwningVocabularyPropertyDescriptor(Object object) { - itemPropertyDescriptors.add - (createItemPropertyDescriptor - (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), - getResourceLocator(), - getString("_UI_VocabularyStatement_owningVocabulary_feature"), - getString("_UI_PropertyDescriptor_description", "_UI_VocabularyStatement_owningVocabulary_feature", "_UI_VocabularyStatement_type"), - OmlPackage.Literals.VOCABULARY_STATEMENT__OWNING_VOCABULARY, - true, - false, - true, - null, - null, - null)); - } - - /** - * This adds a property descriptor for the Ref feature. - * - * - * @generated - */ - protected void addRefPropertyDescriptor(Object object) { - itemPropertyDescriptors.add - (createItemPropertyDescriptor - (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), - getResourceLocator(), - getString("_UI_StructuredProperty_ref_feature"), - getString("_UI_PropertyDescriptor_description", "_UI_StructuredProperty_ref_feature", "_UI_StructuredProperty_type"), - OmlPackage.Literals.STRUCTURED_PROPERTY__REF, - true, - false, - true, - null, - null, - null)); - } - - /** - * This adds a property descriptor for the Functional feature. - * - * - * @generated - */ - protected void addFunctionalPropertyDescriptor(Object object) { - itemPropertyDescriptors.add - (createItemPropertyDescriptor - (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), - getResourceLocator(), - getString("_UI_StructuredProperty_functional_feature"), - getString("_UI_PropertyDescriptor_description", "_UI_StructuredProperty_functional_feature", "_UI_StructuredProperty_type"), - OmlPackage.Literals.STRUCTURED_PROPERTY__FUNCTIONAL, - true, - false, - false, - ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE, - null, - null)); - } - - /** - * This adds a property descriptor for the Domains feature. - * - * - * @generated - */ - protected void addDomainsPropertyDescriptor(Object object) { - itemPropertyDescriptors.add - (createItemPropertyDescriptor - (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), - getResourceLocator(), - getString("_UI_StructuredProperty_domains_feature"), - getString("_UI_PropertyDescriptor_description", "_UI_StructuredProperty_domains_feature", "_UI_StructuredProperty_type"), - OmlPackage.Literals.STRUCTURED_PROPERTY__DOMAINS, - true, - false, - true, - null, - null, - null)); - } - - /** - * This adds a property descriptor for the Ranges feature. - * - * - * @generated - */ - protected void addRangesPropertyDescriptor(Object object) { - itemPropertyDescriptors.add - (createItemPropertyDescriptor - (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), - getResourceLocator(), - getString("_UI_StructuredProperty_ranges_feature"), - getString("_UI_PropertyDescriptor_description", "_UI_StructuredProperty_ranges_feature", "_UI_StructuredProperty_type"), - OmlPackage.Literals.STRUCTURED_PROPERTY__RANGES, - true, - false, - true, - null, - null, - null)); - } - - /** - * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an - * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or - * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. - * - * - * @generated - */ - @Override - public Collection getChildrenFeatures(Object object) { - if (childrenFeatures == null) { - super.getChildrenFeatures(object); - childrenFeatures.add(OmlPackage.Literals.SPECIALIZABLE_TERM__OWNED_SPECIALIZATIONS); - childrenFeatures.add(OmlPackage.Literals.SPECIALIZABLE_PROPERTY__OWNED_EQUIVALENCES); - } - return childrenFeatures; - } - - /** - * - * - * @generated - */ - @Override - protected EStructuralFeature getChildFeature(Object object, Object child) { - // Check the type of the specified child object and return the proper feature to use for - // adding (see {@link AddCommand}) it as a child. - - return super.getChildFeature(object, child); - } - - /** - * This returns StructuredProperty.gif. - * - * - * @generated - */ - @Override - public Object getImage(Object object) { - return overlayImage(object, getResourceLocator().getImage("full/obj16/StructuredProperty")); - } - - /** - * This returns the label text for the adapted class. - * - * - * @generated - */ - @Override - public String getText(Object object) { - String label = ((StructuredProperty)object).getName(); - return label == null || label.length() == 0 ? - getString("_UI_StructuredProperty_type") : - getString("_UI_StructuredProperty_type") + " " + label; - } - - - /** - * This handles model notifications by calling {@link #updateChildren} to update any cached - * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. - * - * - * @generated - */ - @Override - public void notifyChanged(Notification notification) { - updateChildren(notification); - - switch (notification.getFeatureID(StructuredProperty.class)) { - case OmlPackage.STRUCTURED_PROPERTY__FUNCTIONAL: - fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true)); - return; - case OmlPackage.STRUCTURED_PROPERTY__OWNED_SPECIALIZATIONS: - case OmlPackage.STRUCTURED_PROPERTY__OWNED_EQUIVALENCES: - fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false)); - return; - } - super.notifyChanged(notification); - } - - /** - * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children - * that can be created under this object. - * - * - * @generated - */ - @Override - protected void collectNewChildDescriptors(Collection newChildDescriptors, Object object) { - super.collectNewChildDescriptors(newChildDescriptors, object); - - newChildDescriptors.add - (createChildParameter - (OmlPackage.Literals.SPECIALIZABLE_TERM__OWNED_SPECIALIZATIONS, - OmlFactory.eINSTANCE.createSpecializationAxiom())); - - newChildDescriptors.add - (createChildParameter - (OmlPackage.Literals.SPECIALIZABLE_PROPERTY__OWNED_EQUIVALENCES, - OmlFactory.eINSTANCE.createPropertyEquivalenceAxiom())); - } - -} diff --git a/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/VocabularyItemProvider.java b/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/VocabularyItemProvider.java index 44fcdcbb..890f2fa9 100644 --- a/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/VocabularyItemProvider.java +++ b/io.opencaesar.oml.edit/src-gen/io/opencaesar/oml/provider/VocabularyItemProvider.java @@ -167,11 +167,6 @@ protected void collectNewChildDescriptors(Collection newChildDescriptors (OmlPackage.Literals.VOCABULARY__OWNED_STATEMENTS, OmlFactory.eINSTANCE.createScalar())); - newChildDescriptors.add - (createChildParameter - (OmlPackage.Literals.VOCABULARY__OWNED_STATEMENTS, - OmlFactory.eINSTANCE.createStructure())); - newChildDescriptors.add (createChildParameter (OmlPackage.Literals.VOCABULARY__OWNED_STATEMENTS, @@ -197,11 +192,6 @@ protected void collectNewChildDescriptors(Collection newChildDescriptors (OmlPackage.Literals.VOCABULARY__OWNED_STATEMENTS, OmlFactory.eINSTANCE.createScalarProperty())); - newChildDescriptors.add - (createChildParameter - (OmlPackage.Literals.VOCABULARY__OWNED_STATEMENTS, - OmlFactory.eINSTANCE.createStructuredProperty())); - newChildDescriptors.add (createChildParameter (OmlPackage.Literals.VOCABULARY__OWNED_STATEMENTS, diff --git a/io.opencaesar.oml.edit/src/io/opencaesar/oml/provider/OmlItemProviderAdapterFactoryEx.java b/io.opencaesar.oml.edit/src/io/opencaesar/oml/provider/OmlItemProviderAdapterFactoryEx.java index 9a38fc6d..85639f49 100644 --- a/io.opencaesar.oml.edit/src/io/opencaesar/oml/provider/OmlItemProviderAdapterFactoryEx.java +++ b/io.opencaesar.oml.edit/src/io/opencaesar/oml/provider/OmlItemProviderAdapterFactoryEx.java @@ -12,6 +12,7 @@ import io.opencaesar.oml.Annotation; import io.opencaesar.oml.AnnotationProperty; +import io.opencaesar.oml.AnonymousConceptInstance; import io.opencaesar.oml.AnonymousRelationInstance; import io.opencaesar.oml.Argument; import io.opencaesar.oml.Aspect; @@ -53,9 +54,6 @@ import io.opencaesar.oml.Scalar; import io.opencaesar.oml.ScalarProperty; import io.opencaesar.oml.SpecializationAxiom; -import io.opencaesar.oml.Structure; -import io.opencaesar.oml.StructureInstance; -import io.opencaesar.oml.StructuredProperty; import io.opencaesar.oml.TypeAssertion; import io.opencaesar.oml.TypePredicate; import io.opencaesar.oml.Vocabulary; @@ -171,7 +169,7 @@ public String getText(Object object) { return descriptionBundleItemProvider; } - // Types (aspect, concept, relation entity, structure) + // Types (aspect, concept, relation entity) @Override public Adapter createAspectAdapter() { @@ -242,29 +240,6 @@ public String getText(Object object) { return relationEntityItemProvider; } - @Override - public Adapter createStructureAdapter() { - if (structureItemProvider == null) structureItemProvider = new StructureItemProvider(this) { - @Override - public String getText(Object object) { - Structure structure = (Structure)object; - if (structure.eIsProxy()) { - try { - String fragment = URLDecoder.decode(((InternalEObject)structure).eProxyURI().fragment(), "utf-8"); - return "structure <" + fragment + ">"; - } catch (UnsupportedEncodingException e) { - throw new AssertionError(e); - } - } else if (structure.isRef()){ - return "ref structure " + getLabel(structure.resolve(), structure); - } else { - return "structure " + getLabel(structure); - } - } - }; - return structureItemProvider; - } - @Override public Adapter createScalarAdapter() { if (scalarItemProvider == null) scalarItemProvider = new ScalarItemProvider(this) { @@ -288,7 +263,7 @@ public String getText(Object object) { return scalarItemProvider; } - // Properties (annotation, scalar, structured) + // Properties (annotation, scalar, relation) @Override public Adapter createAnnotationPropertyAdapter() { @@ -336,29 +311,6 @@ public String getText(Object object) { return scalarPropertyItemProvider; } - @Override - public Adapter createStructuredPropertyAdapter() { - if (structuredPropertyItemProvider == null) structuredPropertyItemProvider = new StructuredPropertyItemProvider(this) { - @Override - public String getText(Object object) { - StructuredProperty property = (StructuredProperty)object; - if (property.eIsProxy()) { - try { - String fragment = URLDecoder.decode(((InternalEObject)property).eProxyURI().fragment(), "utf-8"); - return "structured property <" + fragment + ">"; - } catch (UnsupportedEncodingException e) { - throw new AssertionError(e); - } - } else if (property.isRef()){ - return "ref structured property " + getLabel(property.resolve(), property); - } else { - return "structured property " + getLabel(property); - } - } - }; - return structuredPropertyItemProvider; - } - // Relations (forward, reverse, source, target, inverse source, inverse target) @Override @@ -563,8 +515,6 @@ public String getText(Object object) { String propertyKind = ""; if (axiom.getProperty() instanceof ScalarProperty) { propertyKind = "scalar property"; - } else if (axiom.getProperty() instanceof StructuredProperty) { - propertyKind = "structured property"; } else if (axiom.getProperty() instanceof Relation) { propertyKind = "relation"; } @@ -583,8 +533,6 @@ public String getText(Object object) { String propertyKind = ""; if (axiom.getProperty() instanceof ScalarProperty) { propertyKind = "scalar property"; - } else if (axiom.getProperty() instanceof StructuredProperty) { - propertyKind = "structured property"; } else if (axiom.getProperty() instanceof Relation) { propertyKind = "relation"; } @@ -603,9 +551,9 @@ public String getText(Object object) { String valueLabel = ""; if (axiom.getLiteralValue() != null) { valueLabel = getLiteralLabel(axiom.getLiteralValue()).toString(); - } else if (axiom.getContainedValue() instanceof StructureInstance) { - var instance = (StructureInstance) axiom.getContainedValue(); - var type = instance.getStructure(); + } else if (axiom.getContainedValue() instanceof AnonymousConceptInstance) { + var instance = (AnonymousConceptInstance) axiom.getContainedValue(); + var type = instance.getEntity(); if (type != null) { valueLabel = getLabel(type, instance); } @@ -636,7 +584,7 @@ public String getText(Object object) { return propertySelfRestrictionAxiomItemProvider; } - // Property values (annotation, scalar, structured, link) + // Property values (annotation, scalar, relation) @Override public Adapter createAnnotationAdapter() { @@ -662,7 +610,7 @@ public String getText(Object object) { return propertyValueAssertionItemProvider; } - // Instances (concept, relation, structure) + // Instances (concept, relation) @Override public Adapter createConceptInstanceAdapter() { @@ -721,21 +669,37 @@ public String getText(Object object) { } @Override - public Adapter createStructureInstanceAdapter() { - if (structureInstanceItemProvider == null) structureInstanceItemProvider = new StructureInstanceItemProvider(this) { + public Adapter createAnonymousConceptInstanceAdapter() { + if (anonymousConceptInstanceItemProvider == null) anonymousConceptInstanceItemProvider = new AnonymousConceptInstanceItemProvider(this) { @Override public String getText(Object object) { - StructureInstance instance = (StructureInstance) object; - if (instance.getType() != null) { - return getLabel(instance.getType(), instance); + AnonymousConceptInstance instance = (AnonymousConceptInstance) object; + if (instance.getEntity() != null) { + return getLabel(instance.getEntity(), instance); } else { - return ""; + return ""; } } }; - return structureInstanceItemProvider; + return anonymousConceptInstanceItemProvider; } + @Override + public Adapter createAnonymousRelationInstanceAdapter() { + if (anonymousRelationInstanceItemProvider == null) anonymousRelationInstanceItemProvider = new AnonymousRelationInstanceItemProvider(this) { + @Override + public String getText(Object object) { + AnonymousRelationInstance instance = (AnonymousRelationInstance) object; + if (instance.getRelationEntity() != null) { + return getLabel(instance.getRelationEntity(), instance); + } else { + return ""; + } + } + }; + return anonymousRelationInstanceItemProvider; + } + // Type assertion @Override @@ -823,8 +787,8 @@ static String getPropertyLabel(Member property, List values, Element el for (Element value : values) { if (value instanceof Literal) { valuesLabels.add(getLiteralLabel((Literal)value)); - } else if (value instanceof StructureInstance) { - var instance = (StructureInstance) value; + } else if (value instanceof AnonymousConceptInstance) { + var instance = (AnonymousConceptInstance) value; valuesLabels.add(getLabel(instance.getType(), instance)); } else if (value instanceof AnonymousRelationInstance) { var instance = (AnonymousRelationInstance) value; diff --git a/io.opencaesar.oml.editor/META-INF/MANIFEST.MF b/io.opencaesar.oml.editor/META-INF/MANIFEST.MF index 87ccb4dd..e9e01f18 100644 --- a/io.opencaesar.oml.editor/META-INF/MANIFEST.MF +++ b/io.opencaesar.oml.editor/META-INF/MANIFEST.MF @@ -3,7 +3,7 @@ Bundle-ManifestVersion: 2 Bundle-Name: %pluginName Bundle-SymbolicName: io.opencaesar.oml.editor;singleton:=true Automatic-Module-Name: io.opencaesar.oml.editor -Bundle-Version: 2.7.3 +Bundle-Version: 2.8.0 Bundle-ClassPath: . Bundle-Activator: io.opencaesar.oml.presentation.OmlEditorPlugin$Implementation Bundle-Vendor: %providerName diff --git a/io.opencaesar.oml.editor/pom.xml b/io.opencaesar.oml.editor/pom.xml index d53efca0..9473d937 100644 --- a/io.opencaesar.oml.editor/pom.xml +++ b/io.opencaesar.oml.editor/pom.xml @@ -4,7 +4,7 @@ io.opencaesar.oml io.opencaesar.oml.parent - 2.7.3 + 2.8.0 io.opencaesar.oml.editor eclipse-plugin diff --git a/io.opencaesar.oml.repository/pom.xml b/io.opencaesar.oml.repository/pom.xml index 881d1a61..bb8383c1 100644 --- a/io.opencaesar.oml.repository/pom.xml +++ b/io.opencaesar.oml.repository/pom.xml @@ -4,7 +4,7 @@ io.opencaesar.oml io.opencaesar.oml.parent - 2.7.3 + 2.8.0 io.opencaesar.oml.repository eclipse-repository diff --git a/io.opencaesar.oml.sdk.feature/feature.xml b/io.opencaesar.oml.sdk.feature/feature.xml index 72ebcf25..f1d71121 100644 --- a/io.opencaesar.oml.sdk.feature/feature.xml +++ b/io.opencaesar.oml.sdk.feature/feature.xml @@ -2,7 +2,7 @@ diff --git a/io.opencaesar.oml.sdk.feature/pom.xml b/io.opencaesar.oml.sdk.feature/pom.xml index c424521d..60c10ba9 100644 --- a/io.opencaesar.oml.sdk.feature/pom.xml +++ b/io.opencaesar.oml.sdk.feature/pom.xml @@ -4,7 +4,7 @@ io.opencaesar.oml io.opencaesar.oml.parent - 2.7.3 + 2.8.0 io.opencaesar.oml.sdk.feature eclipse-feature diff --git a/io.opencaesar.oml.specification/src/main/graphical-syntax.md b/io.opencaesar.oml.specification/src/main/graphical-syntax.md index bdf1d7c9..429ca17b 100644 --- a/io.opencaesar.oml.specification/src/main/graphical-syntax.md +++ b/io.opencaesar.oml.specification/src/main/graphical-syntax.md @@ -14,10 +14,6 @@ BNF symbols are colored in orange and will not show up in actual rendering of OM -Structure: - - - Scalar: diff --git a/io.opencaesar.oml.specification/src/main/images/structure.svg b/io.opencaesar.oml.specification/src/main/images/structure.svg deleted file mode 100644 index f43ba1d4..00000000 --- a/io.opencaesar.oml.specification/src/main/images/structure.svg +++ /dev/null @@ -1,3 +0,0 @@ - - -StructuredProperty
?
?
*
*
?structured properties?scalar properties
?
?
*
*
ScalarProperty«structure»ID
Viewer does not support full SVG 1.1
\ No newline at end of file diff --git a/io.opencaesar.oml.specification/src/main/images/structure_ref.svg b/io.opencaesar.oml.specification/src/main/images/structure_ref.svg deleted file mode 100644 index d81da1f7..00000000 --- a/io.opencaesar.oml.specification/src/main/images/structure_ref.svg +++ /dev/null @@ -1,3 +0,0 @@ - - -StructuredProperty
?
?
*
*
?structured properties?scalar properties
?
?
*
*
ScalarProperty«structure»Structure_IRI
Viewer does not support full SVG 1.1
\ No newline at end of file diff --git a/io.opencaesar.oml.specification/src/main/images/structured_property_ref.svg b/io.opencaesar.oml.specification/src/main/images/structured_property_ref.svg deleted file mode 100644 index c5254a98..00000000 --- a/io.opencaesar.oml.specification/src/main/images/structured_property_ref.svg +++ /dev/null @@ -1,3 +0,0 @@ - - -StructuredProperty_IRI : range \ No newline at end of file diff --git a/io.opencaesar.oml.specification/src/main/language-reference.md b/io.opencaesar.oml.specification/src/main/language-reference.md index ee007864..5137d115 100644 --- a/io.opencaesar.oml.specification/src/main/language-reference.md +++ b/io.opencaesar.oml.specification/src/main/language-reference.md @@ -80,11 +80,9 @@ OML supports several kinds of concrete members for each of its ontology kinds: - [Aspect](#Aspect-LR) - [Concept](#Concept-LR) - [Relation Entity](#RelationEntity-LR) - - [Structure](#Structure-LR) - [Scalar](#Scalar-LR) - [Annotation Property](#AnnotationProperty-LR) - [Scalar Property](#ScalarProperty-LR) - - [Structured Property](#StructuredProperty-LR) - [Unreified Relation](#UnreifiedRelation-LR) - [BuiltIn](#BuiltIn-LR) - [Rule](#Rule-LR) @@ -329,18 +327,18 @@ Note: descriptions that are used by a vocabulary typically define notable instan ### Types ### {#Types-LR} -Types that can be defined in a vocabulary are either *classifiers* (structured types) or *scalars* (primitive types). Some classifiers ([Aspect](#Aspect-LR), [Concept](#Concept-LR) and [Relation Entity]((#RelationEntity-LR))) are *entities*, meaning they can classify named instances (that are unique by reference). Other classifiers ([Structure](#Structure-LR)) can only classify anonymous instances (that are unique by value). Also, scalars ([Scalar](#Scalar-LR)) can classify literals. +Types that can be defined in a vocabulary are either *entities* (structured types) or *scalars* (primitive types). Entities ([Aspect](#Aspect-LR), [Concept](#Concept-LR) and [Relation Entity]((#RelationEntity-LR))) classify instances (named or anonymous). Scalars ([Scalar](#Scalar-LR)) classify literals. #### Aspect #### {#Aspect-LR} -An [=aspect=] is an entity defined in a vocabulary and represents a mixin type (or a capability) in a modeled domain. An aspect is declared with the keyword `aspect` followed by an `ID`. An existing (local or imported) aspect can be referenced by the keywords `ref` `aspect` followed by its `IRI`. Moreover, an spect can specify between a pair of `[` `]` brackets a set of [KeyAxioms](#KeyAxiom-LR). It can also be followed by an optional [ClassifierSpecializationAxiom](#ClassifierSpecializationAxiom-LR), and an optional [ClassifierEquivalenceAxiom](#ClassifierEquivalenceAxiom-LR), using the following syntax: - +An [=aspect=] is an entity defined in a vocabulary and represents a mixin type (or a capability) in a modeled domain. An aspect is declared with the keyword `aspect` followed by an `ID`. An existing (local or imported) aspect can be referenced by the keywords `ref` `aspect` followed by its `IRI`. Moreover, an spect can specify between a pair of `[` `]` brackets a set of [KeyAxioms](#KeyAxiom-LR). It can also be followed by an optional [EntitySpecializationAxiom](#EntitySpecializationAxiom-LR), and an optional [EntityEquivalenceAxiom](#EntityEquivalenceAxiom-LR), using the following syntax: +
     Annotation*
 	(`aspect` ID | `ref` `aspect` [Aspect|Ref]) (`[`
 		(KeyAxiom)* 
-	`]`)? (ClassifierSpecializationAxiom)? (ClassifierEquivalenceAxiom)?
+	`]`)? (EntitySpecializationAxiom)? (EntityEquivalenceAxiom)?
 
The following example vocabulary defines an aspect: *IdentifiedElement*, and references an imported aspect *base:Container* to add some axioms to it. @@ -364,14 +362,14 @@ Two special aspects defined by the owl vocabulary are: *owl:Thing* and *owl:Noth #### Concept #### {#Concept-LR} -A [=concept=] is an entity defined in a vocabulary and represents a concrete type in a modeled domain. A concept is declared with the keyword `concept` followed by an `ID`. An existing (local or imported) concept can be referenced by the keywords `ref` `concept` followed by an existing `IRI`. Moreover, a concept can specify between a pair of `[` `]` bracketsa a set of [KeyAxioms](#KeyAxiom-RL] and an optional [InstanceEnumerationAxiom](#InstanceEnumerationAxiom-LR). It can also be followed by an optional [ClassifierSpecializationAxiom](#ClassifierSpecializationAxiom-LR) and an optional [ClassifierEquivalenceAxiom](#ClassifierEquivalenceAxiom-LR), using the following syntax. +A [=concept=] is an entity defined in a vocabulary and represents a concrete type in a modeled domain. A concept is declared with the keyword `concept` followed by an `ID`. An existing (local or imported) concept can be referenced by the keywords `ref` `concept` followed by an existing `IRI`. Moreover, a concept can specify between a pair of `[` `]` bracketsa a set of [KeyAxioms](#KeyAxiom-RL] and an optional [InstanceEnumerationAxiom](#InstanceEnumerationAxiom-LR). It can also be followed by an optional [EntitySpecializationAxiom](#EntitySpecializationAxiom-LR) and an optional [EntityEquivalenceAxiom](#EntityEquivalenceAxiom-LR), using the following syntax.
     Annotation*
 	(`concept` ID | `ref` `concept` [Concept|IRI]) (`[`
 		(KeyAxiom)* 
 		(InstanceEnumerationAxiom)?
-	`]`)? (ClassifierSpecialization)? (ClassifierEquivalence)?
+	`]`)? (EntitySpecialization)? (EntityEquivalence)?
 
The following example vocabulary defines a concept *Component*, and references an imported concept *base:Package* to add some axioms to it. @@ -386,7 +384,7 @@ The following example vocabulary defines a concept *Component*, and references a #### Relation Entity #### {#RelationEntity-LR} - A [relation entity](#RelationEntity-Syntax) is an entity defined in a vocabulary and represents a reified relation between two entities in a modeled domain. A relation entity is declared with the keyword `relation` `entity` followed by an `ID`. An existing (local or imported) relation entity can be referenced by the keywords `ref` `relation` `entity` followed by its `IRI`. A relation entity can specify between `[` `]` some more details like optional `from` (domain) entities and optional `to` (range) entities that represent types of instances related by this relation, optional names for non-reified `forward` relation (with the same domains and ranges) and non-reified `reverse` relation (with the opposite domains and ranges), various DL flags (`functional`, `inverse functional`, `symmetric`, `assymetric`, `reflective`, `irreflexive`, and `transitive`), as well as a set of [KeyAxioms](#KeyAxiom-LR). A relation entity definition can also be followed by an optional [ClassifierSpecializationAxiom](#ClassifierSpecializationAxiom-LR) and an optional [ClassifierEquivalenceAxiom](#ClassifierEquivalenceAxiom-LR), using the following syntax. + A [relation entity](#RelationEntity-Syntax) is an entity defined in a vocabulary and represents a reified relation between two entities in a modeled domain. A relation entity is declared with the keyword `relation` `entity` followed by an `ID`. An existing (local or imported) relation entity can be referenced by the keywords `ref` `relation` `entity` followed by its `IRI`. A relation entity can specify between `[` `]` some more details like optional `from` (domain) entities and optional `to` (range) entities that represent types of instances related by this relation, optional names for non-reified `forward` relation (with the same domains and ranges) and non-reified `reverse` relation (with the opposite domains and ranges), various DL flags (`functional`, `inverse functional`, `symmetric`, `assymetric`, `reflective`, `irreflexive`, and `transitive`), as well as a set of [KeyAxioms](#KeyAxiom-LR). A relation entity definition can also be followed by an optional [EntitySpecializationAxiom](#EntitySpecializationAxiom-LR) and an optional [EntityEquivalenceAxiom](#EntityEquivalenceAxiom-LR), using the following syntax.
 	Annotation*
@@ -403,7 +401,7 @@ The following example vocabulary defines a concept *Component*, and references a
 		(`irreflexive`)?
 		(`transitive`)?
 		(KeyAxiom)*
-	`]`)? (ClassifierSpecialization)? (ClassifierEquivalence)?
+	`]`)? (EntitySpecialization)? (EntityEquivalence)?
 
The optional [forward relation](#ForwardRelation-Syntax) and [reverse relation](#ReverseRelation-Syntax) are specified by `ID` as part of the textual syntax of a relation entity as shown belpw. When both are specified, the `forward` and `reverse` relations become inverse of each other, meaning if one is asserted (from instance A to B), the other is inferred (from instance B to A). @@ -447,24 +445,6 @@ The following example vocabulary defines a relation entity named *Performs* `fro `}` -#### Structure #### {#Structure-LR} - -A [=structure=] is a classifier defined in a vocabulary and represents a structured datatype with anonymous instances in a modeled domain. A structure is declared with the keyword `structure` followed by an `ID`. An existing (local or imported) structure can be referenced by the keywords `ref` `structure` followed by its `IRI`. Moreover, a structure can be followed by an optional [ClassifierSpecializationAxiom](#ClassifierSpecializationAxiom-LR) and an optional [ClassifierEquivalenceAxiom](#ClassifierEquivalenceAxiom-LR), using the following syntax. - -
-Annotation*
-(`structure` ID | `ref` `structure` [Structure|IRI])
-(ClassifierSpecialization)? (ClassifierEquivalence)?
-
- -The following example vocabulary defines the structure *Point* whose instances are anonymous points on a grid. - -
-`vocabulary` `<`http://com.xyz/methodology/mission#`>` `as` mission `{`
-     `structure` Point
-`}`
-
- #### Scalar #### {#Scalar-LR} A [=scalar=] is a type defined in a vocabulary and represents a primitive type that classifies a set of literals. A scalar is declared with the keyword `scalar` followed by an `ID`. An existing (local or imported) scalar can be referenced by the keywords `ref` `scalar` followed by its `IRI`. A scalar can also specify between a pair of `[` `]` brackets an optional [LiteralEnumerationAxiom](#LiteralEnumerationAxiom-LR). It can also be followed by an optional [ScalarSpecializationAxiom](#ScalarSpecializationAxiom-LR) and an optional [ScalarEquivalenceAxiom](#ScalarEquivalenceAxiom-LR) using the following syntax: @@ -543,7 +523,7 @@ Note: for the standard scalars above to be used (cross-referenced) in a project, ### Properties ### {#Properties-LR} -Properties are characteristics of model elements. Two categories of properties can be defined in a vocabulary: *annotation properties* and *semantic properties*. An [Annotation Property](#AnnotationProperty-LR) has no logical semantics and can characterize any identified element (ontology or member). On the other hand, a semantic property ([Scalar Property](#ScalarProperty-LR), [Structured Property](#StructuredProperty-LR)) or [UnreifiedRelation](#UnreifiedRelation-LR)) has logical semantics and is specified with one or more *domains* representing classifiers (or entities in the case of a relation) whose instances can be characterized by such property, and one or more *ranges* representing types of values for the property. +Properties are characteristics of model elements. Two categories of properties can be defined in a vocabulary: *annotation properties* and *semantic properties*. An [Annotation Property](#AnnotationProperty-LR) has no logical semantics and can characterize any identified element (ontology or member). On the other hand, a semantic property ([Scalar Property](#ScalarProperty-LR) or [UnreifiedRelation](#UnreifiedRelation-LR)) has logical semantics and is specified with one or more *domains* representing entities whose instances can be characterized by such property, and one or more *ranges* representing types of values for the property. #### Annotation Property #### {#AnnotationProperty-LR} @@ -612,12 +592,12 @@ http://purl.org/dc/elements/1.1/hasVersion #### Scalar Property #### {#ScalarProperty-LR} -A [scalar property](#ScalarProperty-Syntax) is a semantic property defined in a vocabulary, whose domains can be classifiers ([Aspects](#Aspect-LR), [Concepts](#Concept-LR), [Relation Entities](#RelationEntity-LR), or [Structures](#Structure-LR)) and whose ranges can be ([Scalars](#Scalar-LR). This means the values of a scalar property are literals of those scalar ranges. A scalar property is defined with the keywords `scalar` `property` followed by a name ID. An existing (local or imported) scalar property can be referenced by the keywords `ref` `scalar` `property` followed by its `IRI`. It can also specify between a pair of `[` `]` brackets optional `domain` classifiers and optional `range` scalars that can be inferred as types of values related by this property. When either is omitted, no type can be inferred for the value in that position. It can slso specify an optional DL flag `functional`that specifies that this property can relate an instance of its domains to a maximum of one literal of its ranges. The property can also be followed an optional [PropertySpecializationAxiom](#PropertySpecializationAxiom-LR) and an optional [PropertyEquivalenceAxiom](#PropertyEquivalenceAxiom-LR), using the following syntax: +A [scalar property](#ScalarProperty-Syntax) is a semantic property defined in a vocabulary, whose domains can be entities ([Aspects](#Aspect-LR), [Concepts](#Concept-LR), or [Relation Entities](#RelationEntity-LR)) and whose ranges can be ([Scalars](#Scalar-LR). This means the values of a scalar property are literals of those scalar ranges. A scalar property is defined with the keywords `scalar` `property` followed by a name ID. An existing (local or imported) scalar property can be referenced by the keywords `ref` `scalar` `property` followed by its `IRI`. It can also specify between a pair of `[` `]` brackets optional `domain` entities and optional `range` scalars that can be inferred as types of values related by this property. When either is omitted, no type can be inferred for the value in that position. It can slso specify an optional DL flag `functional`that specifies that this property can relate an instance of its domains to a maximum of one literal of its ranges. The property can also be followed an optional [PropertySpecializationAxiom](#PropertySpecializationAxiom-LR) and an optional [PropertyEquivalenceAxiom](#PropertyEquivalenceAxiom-LR), using the following syntax:
 	Annotation*
 	(`scalar` `property` ID | `ref` `scalar` `property` [ScalarProperty|IRI]) (`[`
-		(`domain` [Classifier|IRI] (`,` [Classifier|IRI])*)?
+		(`domain` [Entity|IRI] (`,` [Entity|IRI])*)?
 		(`range` [Scalar|IRI] (`,` [Scalar|IRI])*)?
 		(`functional`)?
 	`]`)? (PropertySpecialization)? (PropertyEquivalence)?
@@ -647,44 +627,6 @@ The following example vocabulary defines three scalar properties named *hasId*,
 `}`
 
-#### Structured Property #### {#StructuredProperty-LR} - -A [structured property](#StructuredProperty-Syntax) is a semantic property defined in a vocabulary, whose domains can be classifiers ([Aspects](#Aspect-LR), [Concepts](#Concept-LR), [Relation Entities](#RelationEntity-LR), or [Structures](#Structure-LR)) and whose ranges can be ([Structures](#Structure-LR). This means the values of a structured property are instances of those structures. A stuctured property is defined with the keywords `structured` `property` followed by a name ID. An existing (local or imported) structured property can be referenced by the keywords `ref` `structured` `property` followed by its `IRI`. It can also specify between a pair of `[` `]` brackets optional `domain` classifiers and optional `range` structures that can be inferred as types of values related by this property. When either is omitted, no type can be inferred for the value in that position. It can slso specify an optional DL flag `functional`that specifies that this property can relate an instance of its domains to a maximum of one instance of its ranges. The property can also be followed an optional [PropertySpecializationAxiom](#PropertySpecializationAxiom-LR) and an optional [PropertyEquivalenceAxiom](#PropertyEquivalenceAxiom-LR), using the following syntax: - -
-	Annotation*
-	(`structured` `property` ID | `ref` `structured` `property` [StructuredProperty|IRI]) (`[`
-		(`domain` [Classifier|IRI] (`,` [Classifier|IRI])*)?
-		(`range` [Structure|IRI] (`,` [Structure|IRI])*)?
-		(`functional`)?
-	`]`)? (PropertySpecialization)? (PropertyEquivalence)?
-
- -The following example vocabulary defines a structured property named *hasLocation* whose domain is concept *Shape* and whose range is structure *Point*. The latter is the domain of two scalar properties *hasX* and *hasY* that have a range of *xsd:int*. - -
-`vocabulary` `<`http://com.xyz/methodology/graphics#`>` `as` graphics `{`
-    `extends` `<`http://www.w3.org/2001/XMLSchema#`>` `as` xsd
-    `concept` Shape
-    `structure` Point
-    `structured` `property` hasLocation `[`
-        `domain` Shape
-        `range` Point
-        `functional`
-    `]`
-    `scalar` `property` hasX `[`
-        `domain` Point
-        `range` xsd:int
-        `functional`
-    `]`
-    `scalar` `property` hasY `[`
-        `domain` Point
-        `range` xsd:int
-        `functional`
-    `]`
-`}`
-
- #### Unreified Relation #### {#UnreifiedRelation-LR} An [unreified relation](#UnreifiedRelation-Syntax) is an relation defined in a vocabulary between two entities, a source entity and a target entity . An unreified relation is declared with the keyword `relation` followed by an `ID`. An existing (local or imported) unreified relation can be referenced by the keywords `ref` `relation` followed by its `IRI`. An unreified relation specifies between a pair of `[` `]` brackets optional `from` (domain) entities and optional `to` (range) entities that can be inferred as types of instances related by this relation. When either is omitted, no type can be inferred for a related instance in that position. An unreified relation can also specify an optional name for a non-reified `reverse` relation (with the opposite domains and ranges). Moreover, It can specify various DL flags (`functional`, `inverse functional`, `symmetric`, `assymetric`, `reflective`, `irreflexive`, and `transitive`). It can also be followed by an optional [PropertySpecializationAxiom](#PropertySpecializationAxiom-LR) and an optional [PropertyEquivalenceAxiom](#PropertyEquivalenceAxiom-LR), using the following syntax. @@ -814,19 +756,19 @@ The following example vocabulary defines a scalar *RGB* with *Red*, *Green*, and `}` -#### Classifier Specialization Axiom #### {#ClassifierSpecializationAxiom-LR} +#### Entity Specialization Axiom #### {#EntitySpecializationAxiom-LR} -A Classifier Specialization Axiom is one that can be specified on a [=Classifier=] to specify that it specializes other [=Classifiers=] and/or has [=PropertyRestrictionAxioms=]. Its syntax starts with `<` then a list of comma-separated [=Classifier=] and/or a list of [=PropertyRestrictionAxioms=] as follows: +An Entity Specialization Axiom is one that can be specified on an [=Entity=] to specify that it specializes other [=Entities=] and/or has [=PropertyRestrictionAxioms=]. Its syntax starts with `<` then a list of comma-separated [=Entities=] and/or a list of [=PropertyRestrictionAxioms=] as follows:
-	`<` ([Classifier|IRI] (`,` [Classifier|IRI])* 
+	`<` ([Entity|IRI] (`,` [Entity|IRI])* 
 		|
-		([Classifier|IRI] (`,` [Classifier|IRI])*)? `[`
+		([Entity|IRI] (`,` [Entity|IRI])*)? `[`
 			PropertyRestrictionAxiom*
 		`]`)
 
-Examples of using Classifier Specialization Axioms can be seen in the following: +Examples of using Entity Specialization Axioms can be seen in the following:
     `aspect` Component `<` IdentifiableElement
@@ -835,9 +777,9 @@ Examples of using Classifier Specialization Axioms can be seen in the following:
     `]`
 
-classifiers can only specialize classifiers of the same kind (e.g., concept speciailzes concept, structure specializes structure, etc.). The only exception to this is [=Aspect=] which can be specialized by any entity ([=Aspect=], [=Concept=], [=RelationEntity=]). +Entities can only specialize entities of the same kind (e.g., concept specializes concept, scalar specializes scalar, etc.). The only exception to this is [=Aspect=] which can be specialized by any entity ([=Aspect=], [=Concept=], [=RelationEntity=]). -A [=RelationEntity=], being a kind of [=Classifier=], can also specialize another [-RelationEntity=]. This case has the following extra semantics: +A [=RelationEntity=], being a kind of [=Entity=], can also specialize another [-RelationEntity=]. This case has the following extra semantics: - The intersection of the `from` entities of a sub relation entity specializes the intersection of the `from` entities of the super relation entity. - The intersection of the `to` entities of a sub relation entity specializes the intersection of the `to` entities of the super relation entity. @@ -867,22 +809,22 @@ An example of [=RelationEntity=] specialization is given below. In this case, wh `}` -#### Classifier Equivalence Axiom #### {#ClassifierEquivalenceAxiom-LR} +#### Entity Equivalence Axiom #### {#EntityEquivalenceAxiom-LR} -A Classifier Equivalence Axiom is one that can be specified on a [=Classifier=] to specify that it is equivalent to the intersection of other [=Classifiers=] and/or [=PropertyRestrictionAxioms=]. The syntax starts with `=` then a list of comma-separated [=ClassifierEquivalenceAxiom=], each of which consists of a `&` separated list of classifiers and/or a list of [=PropertyRestrictionAxioms=] between `[` `]` brackets as follows: +An Entity Equivalence Axiom is one that can be specified on an [=Entity=] to specify that it is equivalent to the intersection of other [=Entities=] and/or [=PropertyRestrictionAxioms=]. The syntax starts with `=` then a list of comma-separated [=EntityEquivalenceAxiom=], each of which consists of a `&` separated list of entities and/or a list of [=PropertyRestrictionAxioms=] between `[` `]` brackets as follows:
-`=` ClassifierEquivalenceAxiom (`,` ClassifierEquivalenceAxiom)*
+`=` EntityEquivalenceAxiom (`,` EntityEquivalenceAxiom)*
 
-<ClassifierEquivalenceAxiom>:
-	[Classifier|IRI] (`&` [Classifier|IRI])*
+<EntityEquivalenceAxiom>:
+	[Entity|IRI] (`&` [Entity|IRI])*
 	|
-	([Classifier|IRI] (`&` [Classifier|IRI])*)? `[`
+	([Entity|IRI] (`&` [Entity|IRI])*)? `[`
 		PropertyRestrictionAxiom*
 	`]`
 
-Examples of using Classifier Equivalence Axioms can be seen in the following: +Examples of using Entity Equivalence Axioms can be seen in the following:
     `concept` FunctionalComponent `=` Component `[`
@@ -894,9 +836,9 @@ Examples of using Classifier Equivalence Axioms can be seen in the following:
     `]`
 
-Saying that classifier *A* is equivalent to *B* is like saying that *A* specializes *B* and *B* specializes *A*. Therefore, the semantic of classifier specialization described for [=ClassifierSpecializationAxiom] hold in both directions. This means if an instance is asserted to be typed by *A*, it will be inferred to be typed by *B* as well and vice versa (bidirectional inferencing). However, if *B* is an intersection of multiple [=Classifiers=] and/or [=PropertyRestrictionAxioms=] then the inverse specialization is not inferred until an instance of *A* is an instance of each of the intersecting components. In the example above, if an instance is a *Component* and has some of its requirements as *FunctionalRequirement*, then the instance can be inferred to be a *FunctionalComponent*. +Saying that entity *A* is equivalent to *B* is like saying that *A* specializes *B* and *B* specializes *A*. Therefore, the semantic of entity specialization described for [=EntitySpecializationAxiom] hold in both directions. This means if an instance is asserted to be typed by *A*, it will be inferred to be typed by *B* as well and vice versa (bidirectional inferencing). However, if *B* is an intersection of multiple [=Entities=] and/or [=PropertyRestrictionAxioms=] then the inverse specialization is not inferred until an instance of *A* is an instance of each of the intersecting components. In the example above, if an instance is a *Component* and has some of its requirements as *FunctionalRequirement*, then the instance can be inferred to be a *FunctionalComponent*. -Note: that equivalent classes must be of the same kind (e.g., concept is equivalent to concepts). The only exception is when an entity *A* is equivalent to an intersection of [=Classifiers=] and/or [=PropertyRestrictionAxioms=], in which case some of the equivalent classifiers could be [=Aspects=]. +Note: that equivalent classes must be of the same kind (e.g., concept is equivalent to concepts). The only exception is when an entity *A* is equivalent to an intersection of [=Entities=] and/or [=PropertyRestrictionAxioms=], in which case some of the equivalent entities could be [=Aspects=]. #### Scalar Specialization Axiom #### {#ScalarSpecializationAxiom-LR} @@ -1009,17 +951,14 @@ Note: that equivalent properties must be of the same kind (e.g., scalar property #### Property Value Restriction Axiom #### {#PropertyValueRestrictionAxiom-LR} -A [property value restriction axiom](#PropertyValueRestrictionAxiom-Syntax) is an axiom defined on a classifier ([Aspect](#Aspect-LR), [Concept](#Concept-LR), [Relation Entity](#RelationEntity-LR) and [Structure](#Structure-LR)) that restricts a semantic property in some way in the classifier's context. This property can be ([Scalar Property](#ScalarProperty-LR), [Structured Property](#StructuredProperty-LR), [Forward Relation](#RelationEntity-LR), [Reverse Relation](#RelationEntity-LR), or [Unreified Relation](#UnreifiedRelation-LR)) whose domain is the context type or one of its supertypes. The facets that can be restricted about those properties vary (like their range, cardinality, or value) resulting in different subtypes of restriction axioms. - -Note: a structure can specify property value restriction axioms only on scalar and structures properties, but not relations (forward, reverse, or unreified) since a structure cannot be a source (domain) or target (range) of a relation. +A [property value restriction axiom](#PropertyValueRestrictionAxiom-Syntax) is an axiom defined on an entity ([Aspect](#Aspect-LR), [Concept](#Concept-LR), or [Relation Entity](#RelationEntity-LR)) that restricts a semantic property in some way in the entity's context. This property can be ([Scalar Property](#ScalarProperty-LR), [Forward Relation](#RelationEntity-LR), [Reverse Relation](#RelationEntity-LR), or [Unreified Relation](#UnreifiedRelation-LR)) whose domain is the context type or one of its supertypes. The facets that can be restricted about those properties vary (like their range, cardinality, or value) resulting in different subtypes of restriction axioms. Property Range Restriction Axioms -A range restriction axiom restricts the range of a property in the context of some classifier. The axiom specifies a restricted range that is a subtype of the property's original range. The syntax of a range restriction axioms starts with the keyword `restricts` followed by a restriction kind, which can either be `all` (requiring all values to conform to the restricted range) or `some` (requiring at least one value to conform to the restricted range). This is followed by the kind of property (`scalar property`, `structured property`, or `relation`) then a reference to the property by IRI. Finally, the keyword `to` is used followed by a reference to the restricted range (a scalar, a structure, or an entity) by IRI. The following shows the three supported syntaxes: +A range restriction axiom restricts the range of a property in the context of some entity. The axiom specifies a restricted range that is a subtype of the property's original range. The syntax of a range restriction axioms starts with the keyword `restricts` followed by a restriction kind, which can either be `all` (requiring all values to conform to the restricted range) or `some` (requiring at least one value to conform to the restricted range). This is followed by the kind of property (`scalar property`, or `relation`) then a reference to the property by IRI. Finally, the keyword `to` is used followed by a reference to the restricted range (a scalar or an entity) by IRI. The following shows the three supported syntaxes:
 	`restricts` [ `all` | `some` ] [ScalarProperty|IRI] `to` [Scalar|IRI]
-	`restricts` [ `all` | `some` ] [StructuredProperty|IRI] `to` [Structure|IRI]
 	`restricts` [ `all` | `some` ] [Relation|IRI] `to` [Entity|IRI]
 
@@ -1039,8 +978,8 @@ The following example shows a vocabulary that defines a concept *Assembly* with `scalar` ten-chars < xsd:string `[` `length` 10 `]` - `structure` Pin - `structure` InputPin < Pin + `concept` Pin + `concept` InputPin < Pin `relation` `entity` Performs `[` `from` Component `to` Function @@ -1052,9 +991,9 @@ The following example shows a vocabulary that defines a concept *Assembly* with `range` xsd:string `functional` `]` - `structured` `property` hasPin `[` - `domain` Component - `range` Pin + `relation` hasPin `[` + `from` Component + `to` Pin `functional` `]` `}` @@ -1062,11 +1001,10 @@ The following example shows a vocabulary that defines a concept *Assembly* with Property Cardinality Restriction Axioms -A cardinality restriction axiom restricts the cardinality of a property in the context of some classifier. The axiom specifies a minimum, a maximum, or an exact number of values, conforming to the original range, or to a specified restricted range, that a property can have in that context. The syntax of a cardinality restriction axioms starts with the keyword `restricts` followed by the kind of property (`scalar property`, `structured property`, or `relation`) then a reference to the property by IRI. Then, the keyword `to` is used followed by a cardinality kind (`min`, `max`, or `exactly`), a cardinality value (positive integer), and finally an optional reference to a restricted range (a scalar, a structure, or an entity) by IRI. The following shows the three supported syntaxes: +A cardinality restriction axiom restricts the cardinality of a property in the context of some entity. The axiom specifies a minimum, a maximum, or an exact number of values, conforming to the original range, or to a specified restricted range, that a property can have in that context. The syntax of a cardinality restriction axioms starts with the keyword `restricts` followed by the kind of property (`scalar property` or `relation`) then a reference to the property by IRI. Then, the keyword `to` is used followed by a cardinality kind (`min`, `max`, or `exactly`), a cardinality value (positive integer), and finally an optional reference to a restricted range (a scalar or an entity) by IRI. The following shows the three supported syntaxes:
 	`restricts` [ScalarProperty|IRI] `to` [ `max` | `min` | `exactly` ] UnsignedInteger [Scalar|IRI]?
-	`restricts` [StructuredProperty|IRI] `to` [ `max` | `min` | `exactly` ] UnsignedInteger [Structure|IRI]?
 	`restricts` [Relation|IRI] `to` [ `max` | `min` | `exactly` ] UnsignedInteger [Entity|IRI]?
 
@@ -1082,8 +1020,8 @@ The following example shows a vocabulary that defines a concept *Assembly* with `restricts` hasPin `to` max 2 InputPin // there must be at most two input pins `restricts` performs `to` min 5 // a minimum of 5 functions must be performed ] - `structure` Pin - `structure` InputPin < Pin + `concept` Pin + `concept` InputPin < Pin `relation` `entity` Performs `[` `from` Component `to` Function @@ -1095,9 +1033,9 @@ The following example shows a vocabulary that defines a concept *Assembly* with `range` xsd:string `functional` `]` - `structured` `property` hasPin `[` - `domain` Component - `range` Pin + `relation` hasPin `[` + `from` Component + `to` Pin `functional` `]` `}` @@ -1105,7 +1043,7 @@ The following example shows a vocabulary that defines a concept *Assembly* with Property Value Restriction Axioms -A value restriction axiom restricts the value of a property in the context of some classifier. In the case of a relation, the restricted value represents the relation's target instance. The syntax of a value restriction axioms starts with the keyword `restricts` followed by a reference to the property by IRI. Then, the keyword `to` is used followed by a value that is suitable for each case (a [literal](#Literal-Syntax), an [anonymous instance](#AnonymousInstance-Syntax), or a reference to a [named instance](#NamedInstance-Syntax) by IRI). The following shows the three supported syntaxes: +A value restriction axiom restricts the value of a property in the context of some entity. In the case of a relation, the restricted value represents the relation's target instance. The syntax of a value restriction axioms starts with the keyword `restricts` followed by a reference to the property by IRI. Then, the keyword `to` is used followed by a value that is suitable for each case (a [literal](#Literal-Syntax), an [anonymous instance](#AnonymousInstance-Syntax), or a reference to a [named instance](#NamedInstance-Syntax) by IRI). The following shows the three supported syntaxes:
 	`restricts` [SemanticProperty|IRI] `to` Literal
@@ -1126,7 +1064,7 @@ The following example shows a vocabulary that defines a concept *Assembly* with
         `restricts` hasPin `to` Pin `[` hasNumber 1 `]`   // hasPin must have a Pin with hasNumber of 1
         `restricts` performs `to` functions:F1                         // the performed function must be functions:F1
     ]
-    `structure` Pin
+    `concept` Pin
     `relation` `entity` Performs `[`
         `from` Component
         `to` Function
@@ -1138,9 +1076,9 @@ The following example shows a vocabulary that defines a concept *Assembly* with
         `range` xsd:string
         `functional`
    `]`
-    `structured` `property` hasPin `[`
-        `domain` Component
-        `range` Pin
+    `relation` hasPin `[`
+        `from` Component
+        `to` Pin
         `functional`
    `]`
     `scalar` `property` hasNumber `[`
@@ -1158,7 +1096,7 @@ The following example shows a vocabulary that defines a concept *Assembly* with
 
 Property Self Restriction Axioms
 
-A self restriction axiom restricts the value of a relation in the context of some classifier to the context itself. In other words, it restricts the instance that is the target of a relation to be the same one as the source of the relation. The syntax of a self restriction axioms starts with the keyword `restricts` followed by a reference to the relation by IRI, followed by the keyword `to` then finally the keyword `self`. The following shows the supported syntaxes:
+A self restriction axiom restricts the value of a relation in the context of some entity to the context itself. In other words, it restricts the instance that is the target of a relation to be the same one as the source of the relation. The syntax of a self restriction axioms starts with the keyword `restricts` followed by a reference to the relation by IRI, followed by the keyword `to` then finally the keyword `self`. The following shows the supported syntaxes:
 
 
 	`restricts` [Relation|IRI] `to` `self`
@@ -1361,11 +1299,11 @@ In the following example description, the *mission* vocabulary is used to descri
 
 ### Instances ### {#Instances-LR}
 
-Instances represent objects or data in a given system. They are described using terms (types and properties) from some vocabulary. Specifically, they can be given types and have assertions on properties in the domain of those types. Instances can either be named ([Concept Instance](#ConceptInstance-LR) and [Relation Instance](#RelationInstance-LR)), in which case they are specified as members of some description, or they can be anonymous ([Structure Instance](#StructureInstance-LR) and [Anonymous Relation Instance](#AnonymousRelationInstance-LR)), in which case they defined as values of [semantic properties](SemanticProperty-LR) in the context of other (named or anonymous) instances.
+Instances represent objects or data in a given system. They are described using terms (types and properties) from some vocabulary. Specifically, they can be given types and have assertions on properties in the domain of those types. Instances can either be named ([Concept Instance](#ConceptInstance-LR) and [Relation Instance](#RelationInstance-LR)), in which case they are specified as members of some description, or they can be anonymous ([Anonymous Concept Instance](#AnonymousConceptInstance-LR) and [Anonymous Relation Instance](#AnonymousRelationInstance-LR)), in which case they defined as values of [semantic properties](SemanticProperty-LR) in the context of other (named or anonymous) instances.
 
 #### Concept Instance #### {#ConceptInstance-LR}
 
-A [concept instance](#ConceptInstance-Syntax) is a named instance defined as a member of a description and can be typed by concepts (from some imported vocabulary). The concept instance is declared with the keyword `instance` and a name ID. It can optionally be followed by a `:` and the IRIs of one or more concepts that are considered types of the instance. It can also optionally be followed by a pair of square brackets `[` `]` that holds assertions about the instance.
+A [concept instance](#ConceptInstance-Syntax) is a named instance defined as a member of a description and can be typed by concepts (from some imported vocabulary). The concept instance is declared with the keyword `instance` and a name ID. It can optionally be followed by a `:` and the IRIs of one or more concepts (or aspects) that are considered types of the instance. It can also optionally be followed by a pair of square brackets `[` `]` that holds assertions about the instance.
 
 
 	Annotation*
@@ -1414,12 +1352,12 @@ The following example description defines three concept instances: *component1*
 `}`
 
-#### Structure Instance #### {#StructureInstance-LR} +#### Anonymous Concept Instance #### {#AnonymousConceptInstance-LR} -A [structure instance](#StructureInstance-Syntax) is an anonymous instance that can be defined as a value of a structured property. Such value can either be specified in a [property value assertion](#PropertyValueAssertion-LR), defined in the context of some instance, or in a [property value restriction axiom](#PropertyValueRestrictionAxiom-LR) on some structured property in the context of some classifier. A structure instance is declared with an optional type, represented by a colon (`:`) followed by a structure IRI , followed by a pair of square brackets (`[` `]`) that holds assertions about the instance. Note that if a type is omitted, it will be inferred to be the range of the structure property that defines the structure instance. +An [anonymous concept instance](#AnonymousConceptInstance-Syntax) is an anonymous instance that can be defined as a value of a relation. Such value can either be specified in a [property value assertion](#PropertyValueAssertion-LR), defined in the context of some instance, or in a [property value restriction axiom](#PropertyValueRestrictionAxiom-LR) on some relation in the context of some entity. An anonymous concept instance is declared with an optional type, represented by a colon (`:`) followed by a concept (or aspect) IRI , followed by a pair of square brackets (`[` `]`) that holds assertions about the instance. Note that if a type is omitted, it will be inferred to be the target of the relation that defines the anonymous concept instance.
-	(`:` [Structure|IRI])? `[`
+	(`:` [Entity|IRI])? `[`
 		Assertion*
 	`]`
 
@@ -1430,12 +1368,12 @@ The following example shows . `vocabulary` `<`http://com.xyz/methodology/mission#`>` `as` mission `{` `extends` `<`http://www.w3.org/2001/XMLSchema#`>` `as` xsd `concept` Component `[` - `restricts` hasPin `to` `:` Pin `[` hasNumber 1 `]` // structure instance used as restricted value + `restricts` hasPin `to` `:` Pin `[` hasNumber 1 `]` // anonymous concept instance used as restricted value `]` - `structure` Pin - `structured` `property` hasPin `[` - `domain` Component - `range` Pin + `concept` Pin + `relation` hasPin `[` + `from` Component + `to` Pin `functional` `]` `scalar` `property` hasNumber `[` @@ -1448,14 +1386,14 @@ The following example shows . `description` `<`http://com.xyz/methodology/functions#`>` `as` functions `{` `uses` `<`http://com.xyz/methodology/mission#`>` `as` mission `instance` C1 `:` mission:Component `[` - mission:hasPin `:` Pin `[` mission:hasNumber 2 `]` // structure instance used in value assertion + mission:hasPin `:` Pin `[` mission:hasNumber 2 `]` // anonymous concept instance used in value assertion `]` `}`
#### Anonymous Relation Instance #### {#AnonymousRelationInstance-LR} -An [anonymous relation instance](#AnonymousRelationInstance-Syntax) is an anonymous instance of a relation entity that can be defined as a value of a forward or a reverse relation. Such value can either be specified in a [property value assertion](#PropertyValueAssertion-LR), defined on some forward or reverse relation in the context of a (source) named instance, or in a [property value restriction axiom](#PropertyValueRestrictionAxiom-LR) on some forward or reverse relation in the context of a classifier (representing the type of source of the relation). An anonymous relation instance is declared with the IRI of a (target) named instance followed by a pair of square brackets (`[` `]`) that holds assertions about the relation instance. +An [anonymous relation instance](#AnonymousRelationInstance-Syntax) is an anonymous instance of a relation entity that can be defined as a value of a forward or a reverse relation. Such value can either be specified in a [property value assertion](#PropertyValueAssertion-LR), defined on some forward or reverse relation in the context of a (source) named instance, or in a [property value restriction axiom](#PropertyValueRestrictionAxiom-LR) on some forward or reverse relation in the context of an entity (representing the type of source of the relation). An anonymous relation instance is declared with the IRI of a (target) named instance followed by a pair of square brackets (`[` `]`) that holds assertions about the relation instance.
 	[NamedInstance|IRI] `[`
@@ -1497,28 +1435,25 @@ The following example shows .
 
 ### Assertions ### {#Assertions-LR}
 
-Assertions are statements about instances that enable characterizing them. They appear in the body of an instance (either named or anonymous) between its two brackets `[` `]`. This section describes the supported assertions, which include a [property value assertion](#PropertyValueAssertion-LR) that can be specified on (concept, relation, or structure) instances.
+Assertions are statements about instances that enable characterizing them. They appear in the body of an instance (either named or anonymous) between its two brackets `[` `]`. This section describes the supported assertions, which include a [property value assertion](#PropertyValueAssertion-LR) that can be specified on named or anonymous (concept or relation) instances.
 
 #### Property Value Assertion #### {#PropertyValueAssertion-LR}
 
-A value for a semantic property can be [asserted](#PropertyValueAssertion-Syntax) on an instance ([Concept Instance](#ConceptInstance-LR), [Relation Instance](#RelationInstance-LR), or [Structure Instance](#StructureInstance-LR)). Such assertion can be added as one of the assertions between the square  brackets `[` `]` of the instance. Its syntax consists of an IRI to a [semantic property](#SemanticProperty-Syntax) from some vocabulary followed by one or more values, which could be literals, structure instances, or IRIs of named instances.
+A value for a semantic property can be [asserted](#PropertyValueAssertion-Syntax) on an instance ([Concept Instance](#ConceptInstance-LR), [Relation Instance](#RelationInstance-LR), [Anonymous Concept Instance](#AnonymousConceptInstance-LR) or [Anonymous Relation Instance](#AnonymousRelationInstance-LR)). Such assertion can be added as one of the assertions between the square  brackets `[` `]` of the instance. Its syntax consists of an IRI to a [semantic property](#SemanticProperty-Syntax) from some vocabulary followed by one or more values, which could be literals, anonymous instances, or IRIs of named instances.
 
 
 [ScalarProperty|IRI] Literal (`,` Literal)*
-[StructuredProperty|IRI] StuctureInstance (`,` StuctureInstance)* 
 [Relation|IRI] [NamedInstance|IRI] (`,` [NamedInstance|IRI])*
 
-Note: a structure instance can specify property value assertion only for scalar and structures properties, but not relations (forward, reverse, or unreified) since a structure cannot be a source (domain) or target (range) of a relation. - -The following example description defines two concept instances that each makes a number of property assertions. Specifically, instance *component1* asserts that the *mission:hasId* scalar property has a string value of *C1*, the *mission:hasPin* structured property as a structure instance (whose *mission:hasNumber* property value is asserted to be 2) as a value, and the *mission:performs* relation has the IRI of instance *function1* as a value. Also, instance *function1* asserts that its *mission:hasName* property has a string value of *F1*. +The following example description defines two concept instances that each makes a number of property assertions. Specifically, instance *component1* asserts that the *mission:hasId* scalar property has a string value of *C1*, the *mission:hasPin* relation as an anonymous concept instance (whose *mission:hasNumber* property value is asserted to be 2) as a value, and the *mission:performs* relation has the IRI of instance *function1* as a value. Also, instance *function1* asserts that its *mission:hasName* property has a string value of *F1*.
 `description` `<`http://com.xyz/system/components#`>` `as` components `{`
     `uses` `<`http://com.xyz/methodology/mission#`>` `as` mission
     `instance` component1 `:` mission:Component `[`
         mission:hasId 'C1'        							// scalar property value assertion
-        mission:hasPin Pin `[` mission:hasNumber 2 `]`      // structure property value assertion
+        mission:hasPin Pin `[` mission:hasNumber 2 `]`      // anonymous concept property value assertion
         mission:performs function1    						// relation value assertion
     `]`
     `instance` function1 `:` mission:Function `[`
diff --git a/io.opencaesar.oml.specification/src/main/textual-syntax.md b/io.opencaesar.oml.specification/src/main/textual-syntax.md
index c46a926f..cd8e9cd9 100644
--- a/io.opencaesar.oml.specification/src/main/textual-syntax.md
+++ b/io.opencaesar.oml.specification/src/main/textual-syntax.md
@@ -47,16 +47,11 @@
 	Type |
 	AnnotationProperty |
 	ScalarProperty |
-	StructuredProperty |
 	UnreifiedRelation
 
 Type ::=
-	Classifier |
-	Scalar	
-
-Classifier ::=
 	Entity |
-	Structure
+	Scalar	
 	
 Entity ::=
 	Aspect |
@@ -67,14 +62,14 @@
 	Annotation*
 	("aspect" ID | "ref" "aspect" [Aspect|IRI]) ("["
 		(KeyAxiom)* 
-	"]")? (ClassifierSpecialization)? (ClassifierEquivalence)?
+	"]")? (EntitySpecialization)? (EntityEquivalence)?
 
 Concept ::=
 	Annotation*
 	("concept" ID | "ref" "concept" [Concept|IRI]) ("["
 		(InstanceEnumerationAxiom)?
 		(KeyAxiom)* 
-	"]")? (ClassifierSpecialization)? (ClassifierEquivalence)?
+	"]")? (EntitySpecialization)? (EntityEquivalence)?
 	
 RelationEntity ::=
 	Annotation*
@@ -91,28 +86,23 @@
 		("irreflexive")?
 		("transitive")?
 		(KeyAxiom)*
-	"]")? (ClassifierSpecialization)? (ClassifierEquivalence)?
+	"]")? (EntitySpecialization)? (EntityEquivalence)?
 	
-Structure ::=
-	Annotation*
-	("structure" ID | "ref" "structure" [Structure|IRI])
-		(ClassifierSpecialization)? (ClassifierEquivalence)?
-
-ClassifierSpecialization ::=
-	"<" (Classifier ("," Classifier)* 
+EntitySpecialization ::=
+	"<" (Entity ("," Entity)* 
 		|
-		(Classifier ("," Classifier)*)? "["
+		(Entity ("," Entity)*)? "["
 			PropertyRestrictionAxiom*
 		"]")
 
-ClassifierEquivalence ::=
-	"=" ClassifierEquivalenceAxiom ("," ClassifierEquivalenceAxiom)*
+EntityEquivalence ::=
+	"=" EntityEquivalenceAxiom ("," EntityEquivalenceAxiom)*
 
-ClassifierEquivalenceAxiom ::=
-	[Classifier|IRI] ("&" [Classifier|IRI])*
+EntityEquivalenceAxiom ::=
+	[Entity|IRI] ("&" [Entity|IRI])*
 	|
-	{ClassifierEquivalenceAxiom} 
-	([Classifier|IRI] ("&" [Classifier|IRI])*)? "["
+	{EntityEquivalenceAxiom} 
+	([Entity|IRI] ("&" [Entity|IRI])*)? "["
 		PropertyRestrictionAxiom*
 	"]"
 
@@ -152,25 +142,16 @@
 
 SemanticProperty ::=
 	ScalarProperty |
-	StructuredProperty |
 	Relation
 
 ScalarProperty ::=
 	Annotation*
 	("scalar" "property" ID | "ref" "scalar" "property" [ScalarProperty|IRI]) ("["
-		("domain" [Classifier|IRI] ("," [Classifier|IRI])*)?
+		("domain" [Entity|IRI] ("," [Entity|IRI])*)?
 		("range" [Scalar|IRI] ("," [Scalar|IRI])*)?
 		("functional")?
 	"]")? (PropertySpecialization)? (PropertyEquivalence)?
 
-StructuredProperty ::=
-	Annotation*
-	("structured" "property" ID | "ref" "structured" "property" [StructuredProperty|IRI]) ("["
-		("domain" [Classifier|IRI] ("," [Classifier|IRI])*)?
-		("range" [Structure|IRI] ("," [Structure|IRI])*)?
-		("functional")?
-	"]")? (PropertySpecialization)? (PropertyEquivalence)?
-
 Relation ::=
 	ForwardRelation |
 	ReverseRelation |
@@ -219,11 +200,11 @@
 	("builtin" ID | "ref" "builtin" [BuiltIn|IRI])
 
 AnonymousInstance ::=	
-	StructureInstance |
+	AnonymousConceptInstance |
 	AnonymousRelationInstance
 
-StructureInstance ::=	
-	(":" [Structure|IRI])? "["
+AnonymousConceptInstance ::=	
+	(":" [Entity|IRI])? "["
 		PropertyValueAssertion*
 	"]"
 	
diff --git a/io.opencaesar.oml.target/pom.xml b/io.opencaesar.oml.target/pom.xml
index 22ff40fc..4afb302f 100644
--- a/io.opencaesar.oml.target/pom.xml
+++ b/io.opencaesar.oml.target/pom.xml
@@ -4,7 +4,7 @@
 	
 		io.opencaesar.oml
 		io.opencaesar.oml.parent
-		2.7.3
+		2.8.0
 	
 	io.opencaesar.oml.target
 	eclipse-target-definition
diff --git a/io.opencaesar.oml/META-INF/MANIFEST.MF b/io.opencaesar.oml/META-INF/MANIFEST.MF
index 50f376fc..80bc1bd3 100644
--- a/io.opencaesar.oml/META-INF/MANIFEST.MF
+++ b/io.opencaesar.oml/META-INF/MANIFEST.MF
@@ -3,7 +3,7 @@ Bundle-ManifestVersion: 2
 Bundle-Name: %pluginName
 Bundle-SymbolicName: io.opencaesar.oml;singleton:=true
 Automatic-Module-Name: io.opencaesar.oml
-Bundle-Version: 2.7.3
+Bundle-Version: 2.8.0
 Bundle-ClassPath: .
 Bundle-Vendor: %providerName
 Bundle-Localization: plugin
diff --git a/io.opencaesar.oml/pom.xml b/io.opencaesar.oml/pom.xml
index 9896de49..a339469b 100644
--- a/io.opencaesar.oml/pom.xml
+++ b/io.opencaesar.oml/pom.xml
@@ -4,7 +4,7 @@
 	
 		io.opencaesar.oml
 		io.opencaesar.oml.parent
-		2.7.3
+		2.8.0
 	
 	io.opencaesar.oml
 	eclipse-plugin
diff --git a/io.opencaesar.oml/src-gen/io/opencaesar/oml/StructureInstance.java b/io.opencaesar.oml/src-gen/io/opencaesar/oml/AnonymousConceptInstance.java
similarity index 70%
rename from io.opencaesar.oml/src-gen/io/opencaesar/oml/StructureInstance.java
rename to io.opencaesar.oml/src-gen/io/opencaesar/oml/AnonymousConceptInstance.java
index 54bd0a6a..ef5122e5 100644
--- a/io.opencaesar.oml/src-gen/io/opencaesar/oml/StructureInstance.java
+++ b/io.opencaesar.oml/src-gen/io/opencaesar/oml/AnonymousConceptInstance.java
@@ -22,25 +22,25 @@
 
 /**
  * 
- * A representation of the model object 'Structure Instance'.
+ * A representation of the model object 'Anonymous Concept Instance'.
  * 
  *
  * 
- * StructureInstance is an [=AnonymousInstance=] that can be typed by a [=Structure=].
+ * AnonymousConceptInstance is an [=AnonymousInstance=] that is typed by a [=Concept=] or an [=Aspect=].
  * 
  *
  * 

* The following features are supported: *

*
    - *
  • {@link io.opencaesar.oml.StructureInstance#getType Type}
  • + *
  • {@link io.opencaesar.oml.AnonymousConceptInstance#getType Type}
  • *
* - * @see io.opencaesar.oml.OmlPackage#getStructureInstance() + * @see io.opencaesar.oml.OmlPackage#getAnonymousConceptInstance() * @model annotation="https://tabatkins.github.io/bikeshed heading='Instances'" * @generated */ -public interface StructureInstance extends AnonymousInstance { +public interface AnonymousConceptInstance extends AnonymousInstance { /** * Returns the value of the 'Type' reference. * @@ -49,22 +49,22 @@ public interface StructureInstance extends AnonymousInstance { * The type of this instance * * @return the value of the 'Type' reference. - * @see #setType(Structure) - * @see io.opencaesar.oml.OmlPackage#getStructureInstance_Type() + * @see #setType(Entity) + * @see io.opencaesar.oml.OmlPackage#getAnonymousConceptInstance_Type() * @model * @generated */ - Structure getType(); + Entity getType(); /** - * Sets the value of the '{@link io.opencaesar.oml.StructureInstance#getType Type}' reference. + * Sets the value of the '{@link io.opencaesar.oml.AnonymousConceptInstance#getType Type}' reference. * * * @param value the new value of the 'Type' reference. * @see #getType() * @generated */ - void setType(Structure value); + void setType(Entity value); /** * @@ -72,7 +72,7 @@ public interface StructureInstance extends AnonymousInstance { * @model kind="operation" unique="false" * @generated */ - Structure getStructure(); + Entity getEntity(); /** * @@ -80,6 +80,6 @@ public interface StructureInstance extends AnonymousInstance { * @model kind="operation" unique="false" * @generated */ - EList getTypes(); + EList getTypes(); -} // StructureInstance +} // AnonymousConceptInstance diff --git a/io.opencaesar.oml/src-gen/io/opencaesar/oml/AnonymousRelationInstance.java b/io.opencaesar.oml/src-gen/io/opencaesar/oml/AnonymousRelationInstance.java index 79a36e36..5c85f9cf 100644 --- a/io.opencaesar.oml/src-gen/io/opencaesar/oml/AnonymousRelationInstance.java +++ b/io.opencaesar.oml/src-gen/io/opencaesar/oml/AnonymousRelationInstance.java @@ -87,6 +87,6 @@ public interface AnonymousRelationInstance extends AnonymousInstance { * @model kind="operation" unique="false" * @generated */ - EList getTypes(); + EList getTypes(); } // AnonymousRelationInstance diff --git a/io.opencaesar.oml/src-gen/io/opencaesar/oml/Classifier.java b/io.opencaesar.oml/src-gen/io/opencaesar/oml/Classifier.java deleted file mode 100644 index 8c12080b..00000000 --- a/io.opencaesar.oml/src-gen/io/opencaesar/oml/Classifier.java +++ /dev/null @@ -1,82 +0,0 @@ -/** - * - * Copyright 2019-2022 California Institute of Technology ("Caltech"). - * U.S. Government sponsorship acknowledged. - * - * Licensed 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 io.opencaesar.oml; - -import org.eclipse.emf.common.util.EList; - -/** - * - * A representation of the model object 'Classifier'. - * - * - * - * Classifier is a [=type=] that classifies a set of [=instances=] and characterizes them with [=properties=] - * (where it becomes a domain of these properties). it can also own a set of [=PropertyRestrictionAxioms=] as well as - * set of [=ClassifierEquivalenceAxioms=]. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link io.opencaesar.oml.Classifier#getOwnedEquivalences Owned Equivalences}
  • - *
  • {@link io.opencaesar.oml.Classifier#getOwnedPropertyRestrictions Owned Property Restrictions}
  • - *
- * - * @see io.opencaesar.oml.OmlPackage#getClassifier() - * @model abstract="true" - * annotation="https://tabatkins.github.io/bikeshed heading='Types'" - * @generated - */ -public interface Classifier extends Type { - /** - * Returns the value of the 'Owned Equivalences' containment reference list. - * The list contents are of type {@link io.opencaesar.oml.ClassifierEquivalenceAxiom}. - * It is bidirectional and its opposite is '{@link io.opencaesar.oml.ClassifierEquivalenceAxiom#getOwningClassifier Owning Classifier}'. - * - * - * - * The set of classifier equivalence axioms of this classifier - * - * @return the value of the 'Owned Equivalences' containment reference list. - * @see io.opencaesar.oml.OmlPackage#getClassifier_OwnedEquivalences() - * @see io.opencaesar.oml.ClassifierEquivalenceAxiom#getOwningClassifier - * @model opposite="owningClassifier" containment="true" - * @generated - */ - EList getOwnedEquivalences(); - - /** - * Returns the value of the 'Owned Property Restrictions' containment reference list. - * The list contents are of type {@link io.opencaesar.oml.PropertyRestrictionAxiom}. - * It is bidirectional and its opposite is '{@link io.opencaesar.oml.PropertyRestrictionAxiom#getOwningClassifier Owning Classifier}'. - * - * - * - * The set of property restriction axioms of this classifier - * - * @return the value of the 'Owned Property Restrictions' containment reference list. - * @see io.opencaesar.oml.OmlPackage#getClassifier_OwnedPropertyRestrictions() - * @see io.opencaesar.oml.PropertyRestrictionAxiom#getOwningClassifier - * @model opposite="owningClassifier" containment="true" - * @generated - */ - EList getOwnedPropertyRestrictions(); - -} // Classifier diff --git a/io.opencaesar.oml/src-gen/io/opencaesar/oml/Entity.java b/io.opencaesar.oml/src-gen/io/opencaesar/oml/Entity.java index 89200d4a..7fb8f70d 100644 --- a/io.opencaesar.oml/src-gen/io/opencaesar/oml/Entity.java +++ b/io.opencaesar.oml/src-gen/io/opencaesar/oml/Entity.java @@ -26,13 +26,16 @@ * * * - * Entity is a [=classifier=] whose instances are [=NamedInstances=]. It can also specify a set of [=KeyAxioms=]. + * Entity is a structured [=type=] that represent a set of [=Instances=]. it can specify a set of [=PropertyRestrictionAxioms=], + * set of [=EntityEquivalenceAxioms=], and a set of [=KeyAxioms=]. * * *

* The following features are supported: *

*
    + *
  • {@link io.opencaesar.oml.Entity#getOwnedEquivalences Owned Equivalences}
  • + *
  • {@link io.opencaesar.oml.Entity#getOwnedPropertyRestrictions Owned Property Restrictions}
  • *
  • {@link io.opencaesar.oml.Entity#getOwnedKeys Owned Keys}
  • *
* @@ -41,7 +44,41 @@ * annotation="https://tabatkins.github.io/bikeshed heading='Types'" * @generated */ -public interface Entity extends Classifier { +public interface Entity extends Type { + /** + * Returns the value of the 'Owned Equivalences' containment reference list. + * The list contents are of type {@link io.opencaesar.oml.EntityEquivalenceAxiom}. + * It is bidirectional and its opposite is '{@link io.opencaesar.oml.EntityEquivalenceAxiom#getOwningEntity Owning Entity}'. + * + * + * + * The set of entity equivalence axioms of this entity + * + * @return the value of the 'Owned Equivalences' containment reference list. + * @see io.opencaesar.oml.OmlPackage#getEntity_OwnedEquivalences() + * @see io.opencaesar.oml.EntityEquivalenceAxiom#getOwningEntity + * @model opposite="owningEntity" containment="true" + * @generated + */ + EList getOwnedEquivalences(); + + /** + * Returns the value of the 'Owned Property Restrictions' containment reference list. + * The list contents are of type {@link io.opencaesar.oml.PropertyRestrictionAxiom}. + * It is bidirectional and its opposite is '{@link io.opencaesar.oml.PropertyRestrictionAxiom#getOwningEntity Owning Entity}'. + * + * + * + * The set of property restriction axioms of this entity + * + * @return the value of the 'Owned Property Restrictions' containment reference list. + * @see io.opencaesar.oml.OmlPackage#getEntity_OwnedPropertyRestrictions() + * @see io.opencaesar.oml.PropertyRestrictionAxiom#getOwningEntity + * @model opposite="owningEntity" containment="true" + * @generated + */ + EList getOwnedPropertyRestrictions(); + /** * Returns the value of the 'Owned Keys' containment reference list. * The list contents are of type {@link io.opencaesar.oml.KeyAxiom}. diff --git a/io.opencaesar.oml/src-gen/io/opencaesar/oml/ClassifierEquivalenceAxiom.java b/io.opencaesar.oml/src-gen/io/opencaesar/oml/EntityEquivalenceAxiom.java similarity index 53% rename from io.opencaesar.oml/src-gen/io/opencaesar/oml/ClassifierEquivalenceAxiom.java rename to io.opencaesar.oml/src-gen/io/opencaesar/oml/EntityEquivalenceAxiom.java index d1435310..48c6c0a1 100644 --- a/io.opencaesar.oml/src-gen/io/opencaesar/oml/ClassifierEquivalenceAxiom.java +++ b/io.opencaesar.oml/src-gen/io/opencaesar/oml/EntityEquivalenceAxiom.java @@ -22,14 +22,14 @@ /** * - * A representation of the model object 'Classifier Equivalence Axiom'. + * A representation of the model object 'Entity Equivalence Axiom'. * * * - * ClassifierEquivalenceAxiom is an [=Axiom=] specified on a subject [=Classifier=] that states that it is equivalent to the intersection - * of [=Classifiers=] and/or [=PropertyRestrictionAxioms=]. This axiom implies that the [=classifiers=] are super types of the subject classifier. + * EntityEquivalenceAxiom is an [=Axiom=] specified on a subject [=Entity=] that states that it is equivalent to the intersection + * of [=Entities=] and/or [=PropertyRestrictionAxioms=]. This axiom implies that the [=entities=] are super types of the subject entity. * It also implies that when an instance is classified by this intersection, then it follows that it is also classified by the - * subject classifier. Conversely, when an instance is classified by the subject classifier, then it follows that it is also classified + * subject entity. Conversely, when an instance is classified by the subject entity, then it follows that it is also classified * by the intersection. In other words, this axiom enables bi-directional (or two-way) inferencing. * * @@ -37,30 +37,30 @@ * The following features are supported: *

*
    - *
  • {@link io.opencaesar.oml.ClassifierEquivalenceAxiom#getSuperClassifiers Super Classifiers}
  • - *
  • {@link io.opencaesar.oml.ClassifierEquivalenceAxiom#getOwnedPropertyRestrictions Owned Property Restrictions}
  • - *
  • {@link io.opencaesar.oml.ClassifierEquivalenceAxiom#getOwningClassifier Owning Classifier}
  • + *
  • {@link io.opencaesar.oml.EntityEquivalenceAxiom#getSuperEntities Super Entities}
  • + *
  • {@link io.opencaesar.oml.EntityEquivalenceAxiom#getOwnedPropertyRestrictions Owned Property Restrictions}
  • + *
  • {@link io.opencaesar.oml.EntityEquivalenceAxiom#getOwningEntity Owning Entity}
  • *
* - * @see io.opencaesar.oml.OmlPackage#getClassifierEquivalenceAxiom() + * @see io.opencaesar.oml.OmlPackage#getEntityEquivalenceAxiom() * @model annotation="https://tabatkins.github.io/bikeshed heading='Axioms'" * @generated */ -public interface ClassifierEquivalenceAxiom extends Axiom { +public interface EntityEquivalenceAxiom extends Axiom { /** - * Returns the value of the 'Super Classifiers' reference list. - * The list contents are of type {@link io.opencaesar.oml.Classifier}. + * Returns the value of the 'Super Entities' reference list. + * The list contents are of type {@link io.opencaesar.oml.Entity}. * * * - * The super classifiers specified by this axiom + * The super entity specified by this axiom * - * @return the value of the 'Super Classifiers' reference list. - * @see io.opencaesar.oml.OmlPackage#getClassifierEquivalenceAxiom_SuperClassifiers() + * @return the value of the 'Super Entities' reference list. + * @see io.opencaesar.oml.OmlPackage#getEntityEquivalenceAxiom_SuperEntities() * @model * @generated */ - EList getSuperClassifiers(); + EList getSuperEntities(); /** * Returns the value of the 'Owned Property Restrictions' containment reference list. @@ -72,7 +72,7 @@ public interface ClassifierEquivalenceAxiom extends Axiom { * The property restrictions specified by this axiom * * @return the value of the 'Owned Property Restrictions' containment reference list. - * @see io.opencaesar.oml.OmlPackage#getClassifierEquivalenceAxiom_OwnedPropertyRestrictions() + * @see io.opencaesar.oml.OmlPackage#getEntityEquivalenceAxiom_OwnedPropertyRestrictions() * @see io.opencaesar.oml.PropertyRestrictionAxiom#getOwningAxiom * @model opposite="owningAxiom" containment="true" * @generated @@ -80,42 +80,42 @@ public interface ClassifierEquivalenceAxiom extends Axiom { EList getOwnedPropertyRestrictions(); /** - * Returns the value of the 'Owning Classifier' container reference. - * It is bidirectional and its opposite is '{@link io.opencaesar.oml.Classifier#getOwnedEquivalences Owned Equivalences}'. + * Returns the value of the 'Owning Entity' container reference. + * It is bidirectional and its opposite is '{@link io.opencaesar.oml.Entity#getOwnedEquivalences Owned Equivalences}'. * * * - * The owning classifier specified by this axiom + * The owning entity specified by this axiom * - * @return the value of the 'Owning Classifier' container reference. - * @see #setOwningClassifier(Classifier) - * @see io.opencaesar.oml.OmlPackage#getClassifierEquivalenceAxiom_OwningClassifier() - * @see io.opencaesar.oml.Classifier#getOwnedEquivalences + * @return the value of the 'Owning Entity' container reference. + * @see #setOwningEntity(Entity) + * @see io.opencaesar.oml.OmlPackage#getEntityEquivalenceAxiom_OwningEntity() + * @see io.opencaesar.oml.Entity#getOwnedEquivalences * @model opposite="ownedEquivalences" transient="false" * @generated */ - Classifier getOwningClassifier(); + Entity getOwningEntity(); /** - * Sets the value of the '{@link io.opencaesar.oml.ClassifierEquivalenceAxiom#getOwningClassifier Owning Classifier}' container reference. + * Sets the value of the '{@link io.opencaesar.oml.EntityEquivalenceAxiom#getOwningEntity Owning Entity}' container reference. * * - * @param value the new value of the 'Owning Classifier' container reference. - * @see #getOwningClassifier() + * @param value the new value of the 'Owning Entity' container reference. + * @see #getOwningEntity() * @generated */ - void setOwningClassifier(Classifier value); + void setOwningEntity(Entity value); /** * * * - * Gets the sub classifier of this axiom + * Gets the sub entity of this axiom * * @model kind="operation" unique="false" * @generated */ - Classifier getSubClassifier(); + Entity getSubEntity(); /** * @@ -123,6 +123,6 @@ public interface ClassifierEquivalenceAxiom extends Axiom { * @model kind="operation" unique="false" * @generated */ - Classifier getCharacterizedTerm(); + Entity getCharacterizedTerm(); -} // ClassifierEquivalenceAxiom +} // EntityEquivalenceAxiom diff --git a/io.opencaesar.oml/src-gen/io/opencaesar/oml/Instance.java b/io.opencaesar.oml/src-gen/io/opencaesar/oml/Instance.java index 70b5b5e4..0d9789f2 100644 --- a/io.opencaesar.oml/src-gen/io/opencaesar/oml/Instance.java +++ b/io.opencaesar.oml/src-gen/io/opencaesar/oml/Instance.java @@ -26,8 +26,8 @@ * * * - * Instance is an element that represents a instance of one or more [=classifiers=]. - * It can assert a set of values for those classifiers' [=properties=]. + * Instance is an element that represents a instance of one or more [=Entities=]. + * It can assert a set of values for those entities' [=properties=]. * * *

@@ -69,6 +69,6 @@ public interface Instance extends Element { * @model kind="operation" unique="false" * @generated */ - EList getTypes(); + EList getTypes(); } // Instance diff --git a/io.opencaesar.oml/src-gen/io/opencaesar/oml/NamedInstance.java b/io.opencaesar.oml/src-gen/io/opencaesar/oml/NamedInstance.java index 8768a0c2..65766d85 100644 --- a/io.opencaesar.oml/src-gen/io/opencaesar/oml/NamedInstance.java +++ b/io.opencaesar.oml/src-gen/io/opencaesar/oml/NamedInstance.java @@ -76,6 +76,6 @@ public interface NamedInstance extends DescriptionStatement, Instance { * @model kind="operation" unique="false" * @generated */ - EList getTypes(); + EList getTypes(); } // NamedInstance diff --git a/io.opencaesar.oml/src-gen/io/opencaesar/oml/OmlFactory.java b/io.opencaesar.oml/src-gen/io/opencaesar/oml/OmlFactory.java index 0aa100bd..6e26f28f 100644 --- a/io.opencaesar.oml/src-gen/io/opencaesar/oml/OmlFactory.java +++ b/io.opencaesar.oml/src-gen/io/opencaesar/oml/OmlFactory.java @@ -127,15 +127,6 @@ public interface OmlFactory extends EFactory { */ Scalar createScalar(); - /** - * Returns a new object of class 'Structure'. - * - * - * @return a new object of class 'Structure'. - * @generated - */ - Structure createStructure(); - /** * Returns a new object of class 'Aspect'. * @@ -181,15 +172,6 @@ public interface OmlFactory extends EFactory { */ ScalarProperty createScalarProperty(); - /** - * Returns a new object of class 'Structured Property'. - * - * - * @return a new object of class 'Structured Property'. - * @generated - */ - StructuredProperty createStructuredProperty(); - /** * Returns a new object of class 'Forward Relation'. * @@ -236,13 +218,13 @@ public interface OmlFactory extends EFactory { RelationInstance createRelationInstance(); /** - * Returns a new object of class 'Structure Instance'. + * Returns a new object of class 'Anonymous Concept Instance'. * * - * @return a new object of class 'Structure Instance'. + * @return a new object of class 'Anonymous Concept Instance'. * @generated */ - StructureInstance createStructureInstance(); + AnonymousConceptInstance createAnonymousConceptInstance(); /** * Returns a new object of class 'Anonymous Relation Instance'. @@ -290,13 +272,13 @@ public interface OmlFactory extends EFactory { LiteralEnumerationAxiom createLiteralEnumerationAxiom(); /** - * Returns a new object of class 'Classifier Equivalence Axiom'. + * Returns a new object of class 'Entity Equivalence Axiom'. * * - * @return a new object of class 'Classifier Equivalence Axiom'. + * @return a new object of class 'Entity Equivalence Axiom'. * @generated */ - ClassifierEquivalenceAxiom createClassifierEquivalenceAxiom(); + EntityEquivalenceAxiom createEntityEquivalenceAxiom(); /** * Returns a new object of class 'Scalar Equivalence Axiom'. diff --git a/io.opencaesar.oml/src-gen/io/opencaesar/oml/OmlPackage.java b/io.opencaesar.oml/src-gen/io/opencaesar/oml/OmlPackage.java index d50f599d..c4d1c8bb 100644 --- a/io.opencaesar.oml/src-gen/io/opencaesar/oml/OmlPackage.java +++ b/io.opencaesar.oml/src-gen/io/opencaesar/oml/OmlPackage.java @@ -3290,151 +3290,6 @@ public interface OmlPackage extends EPackage { */ int SPECIALIZABLE_PROPERTY_OPERATION_COUNT = SPECIALIZABLE_TERM_OPERATION_COUNT + 0; - /** - * The meta object id for the '{@link io.opencaesar.oml.impl.ClassifierImpl Classifier}' class. - * - * - * @see io.opencaesar.oml.impl.ClassifierImpl - * @see io.opencaesar.oml.impl.OmlPackageImpl#getClassifier() - * @generated - */ - int CLASSIFIER = 31; - - /** - * The feature id for the 'Owned Annotations' containment reference list. - * - * - * @generated - * @ordered - */ - int CLASSIFIER__OWNED_ANNOTATIONS = TYPE__OWNED_ANNOTATIONS; - - /** - * The feature id for the 'Name' attribute. - * - * - * @generated - * @ordered - */ - int CLASSIFIER__NAME = TYPE__NAME; - - /** - * The feature id for the 'Owning Vocabulary' container reference. - * - * - * @generated - * @ordered - */ - int CLASSIFIER__OWNING_VOCABULARY = TYPE__OWNING_VOCABULARY; - - /** - * The feature id for the 'Owned Specializations' containment reference list. - * - * - * @generated - * @ordered - */ - int CLASSIFIER__OWNED_SPECIALIZATIONS = TYPE__OWNED_SPECIALIZATIONS; - - /** - * The feature id for the 'Owned Equivalences' containment reference list. - * - * - * @generated - * @ordered - */ - int CLASSIFIER__OWNED_EQUIVALENCES = TYPE_FEATURE_COUNT + 0; - - /** - * The feature id for the 'Owned Property Restrictions' containment reference list. - * - * - * @generated - * @ordered - */ - int CLASSIFIER__OWNED_PROPERTY_RESTRICTIONS = TYPE_FEATURE_COUNT + 1; - - /** - * The number of structural features of the 'Classifier' class. - * - * - * @generated - * @ordered - */ - int CLASSIFIER_FEATURE_COUNT = TYPE_FEATURE_COUNT + 2; - - /** - * The operation id for the 'Get Ontology' operation. - * - * - * @generated - * @ordered - */ - int CLASSIFIER___GET_ONTOLOGY = TYPE___GET_ONTOLOGY; - - /** - * The operation id for the 'Extra Validate' operation. - * - * - * @generated - * @ordered - */ - int CLASSIFIER___EXTRA_VALIDATE__DIAGNOSTICCHAIN_MAP = TYPE___EXTRA_VALIDATE__DIAGNOSTICCHAIN_MAP; - - /** - * The operation id for the 'Get Ref' operation. - * - * - * @generated - * @ordered - */ - int CLASSIFIER___GET_REF = TYPE___GET_REF; - - /** - * The operation id for the 'Is Ref' operation. - * - * - * @generated - * @ordered - */ - int CLASSIFIER___IS_REF = TYPE___IS_REF; - - /** - * The operation id for the 'Resolve' operation. - * - * - * @generated - * @ordered - */ - int CLASSIFIER___RESOLVE = TYPE___RESOLVE; - - /** - * The operation id for the 'Get Iri' operation. - * - * - * @generated - * @ordered - */ - int CLASSIFIER___GET_IRI = TYPE___GET_IRI; - - /** - * The operation id for the 'Get Abbreviated Iri' operation. - * - * - * @generated - * @ordered - */ - int CLASSIFIER___GET_ABBREVIATED_IRI = TYPE___GET_ABBREVIATED_IRI; - - /** - * The number of operations of the 'Classifier' class. - * - * - * @generated - * @ordered - */ - int CLASSIFIER_OPERATION_COUNT = TYPE_OPERATION_COUNT + 0; - /** * The meta object id for the '{@link io.opencaesar.oml.impl.ScalarImpl Scalar}' class. * @@ -3443,7 +3298,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getScalar() * @generated */ - int SCALAR = 32; + int SCALAR = 31; /** * The feature id for the 'Owned Annotations' containment reference list. @@ -3597,7 +3452,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getEntity() * @generated */ - int ENTITY = 33; + int ENTITY = 32; /** * The feature id for the 'Owned Annotations' containment reference list. @@ -3606,7 +3461,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int ENTITY__OWNED_ANNOTATIONS = CLASSIFIER__OWNED_ANNOTATIONS; + int ENTITY__OWNED_ANNOTATIONS = TYPE__OWNED_ANNOTATIONS; /** * The feature id for the 'Name' attribute. @@ -3615,7 +3470,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int ENTITY__NAME = CLASSIFIER__NAME; + int ENTITY__NAME = TYPE__NAME; /** * The feature id for the 'Owning Vocabulary' container reference. @@ -3624,7 +3479,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int ENTITY__OWNING_VOCABULARY = CLASSIFIER__OWNING_VOCABULARY; + int ENTITY__OWNING_VOCABULARY = TYPE__OWNING_VOCABULARY; /** * The feature id for the 'Owned Specializations' containment reference list. @@ -3633,7 +3488,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int ENTITY__OWNED_SPECIALIZATIONS = CLASSIFIER__OWNED_SPECIALIZATIONS; + int ENTITY__OWNED_SPECIALIZATIONS = TYPE__OWNED_SPECIALIZATIONS; /** * The feature id for the 'Owned Equivalences' containment reference list. @@ -3642,7 +3497,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int ENTITY__OWNED_EQUIVALENCES = CLASSIFIER__OWNED_EQUIVALENCES; + int ENTITY__OWNED_EQUIVALENCES = TYPE_FEATURE_COUNT + 0; /** * The feature id for the 'Owned Property Restrictions' containment reference list. @@ -3651,7 +3506,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int ENTITY__OWNED_PROPERTY_RESTRICTIONS = CLASSIFIER__OWNED_PROPERTY_RESTRICTIONS; + int ENTITY__OWNED_PROPERTY_RESTRICTIONS = TYPE_FEATURE_COUNT + 1; /** * The feature id for the 'Owned Keys' containment reference list. @@ -3660,7 +3515,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int ENTITY__OWNED_KEYS = CLASSIFIER_FEATURE_COUNT + 0; + int ENTITY__OWNED_KEYS = TYPE_FEATURE_COUNT + 2; /** * The number of structural features of the 'Entity' class. @@ -3669,7 +3524,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int ENTITY_FEATURE_COUNT = CLASSIFIER_FEATURE_COUNT + 1; + int ENTITY_FEATURE_COUNT = TYPE_FEATURE_COUNT + 3; /** * The operation id for the 'Get Ontology' operation. @@ -3678,7 +3533,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int ENTITY___GET_ONTOLOGY = CLASSIFIER___GET_ONTOLOGY; + int ENTITY___GET_ONTOLOGY = TYPE___GET_ONTOLOGY; /** * The operation id for the 'Extra Validate' operation. @@ -3687,7 +3542,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int ENTITY___EXTRA_VALIDATE__DIAGNOSTICCHAIN_MAP = CLASSIFIER___EXTRA_VALIDATE__DIAGNOSTICCHAIN_MAP; + int ENTITY___EXTRA_VALIDATE__DIAGNOSTICCHAIN_MAP = TYPE___EXTRA_VALIDATE__DIAGNOSTICCHAIN_MAP; /** * The operation id for the 'Get Ref' operation. @@ -3696,7 +3551,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int ENTITY___GET_REF = CLASSIFIER___GET_REF; + int ENTITY___GET_REF = TYPE___GET_REF; /** * The operation id for the 'Is Ref' operation. @@ -3705,7 +3560,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int ENTITY___IS_REF = CLASSIFIER___IS_REF; + int ENTITY___IS_REF = TYPE___IS_REF; /** * The operation id for the 'Resolve' operation. @@ -3714,7 +3569,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int ENTITY___RESOLVE = CLASSIFIER___RESOLVE; + int ENTITY___RESOLVE = TYPE___RESOLVE; /** * The operation id for the 'Get Iri' operation. @@ -3723,7 +3578,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int ENTITY___GET_IRI = CLASSIFIER___GET_IRI; + int ENTITY___GET_IRI = TYPE___GET_IRI; /** * The operation id for the 'Get Abbreviated Iri' operation. @@ -3732,7 +3587,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int ENTITY___GET_ABBREVIATED_IRI = CLASSIFIER___GET_ABBREVIATED_IRI; + int ENTITY___GET_ABBREVIATED_IRI = TYPE___GET_ABBREVIATED_IRI; /** * The number of operations of the 'Entity' class. @@ -3741,161 +3596,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int ENTITY_OPERATION_COUNT = CLASSIFIER_OPERATION_COUNT + 0; - - /** - * The meta object id for the '{@link io.opencaesar.oml.impl.StructureImpl Structure}' class. - * - * - * @see io.opencaesar.oml.impl.StructureImpl - * @see io.opencaesar.oml.impl.OmlPackageImpl#getStructure() - * @generated - */ - int STRUCTURE = 34; - - /** - * The feature id for the 'Owned Annotations' containment reference list. - * - * - * @generated - * @ordered - */ - int STRUCTURE__OWNED_ANNOTATIONS = CLASSIFIER__OWNED_ANNOTATIONS; - - /** - * The feature id for the 'Name' attribute. - * - * - * @generated - * @ordered - */ - int STRUCTURE__NAME = CLASSIFIER__NAME; - - /** - * The feature id for the 'Owning Vocabulary' container reference. - * - * - * @generated - * @ordered - */ - int STRUCTURE__OWNING_VOCABULARY = CLASSIFIER__OWNING_VOCABULARY; - - /** - * The feature id for the 'Owned Specializations' containment reference list. - * - * - * @generated - * @ordered - */ - int STRUCTURE__OWNED_SPECIALIZATIONS = CLASSIFIER__OWNED_SPECIALIZATIONS; - - /** - * The feature id for the 'Owned Equivalences' containment reference list. - * - * - * @generated - * @ordered - */ - int STRUCTURE__OWNED_EQUIVALENCES = CLASSIFIER__OWNED_EQUIVALENCES; - - /** - * The feature id for the 'Owned Property Restrictions' containment reference list. - * - * - * @generated - * @ordered - */ - int STRUCTURE__OWNED_PROPERTY_RESTRICTIONS = CLASSIFIER__OWNED_PROPERTY_RESTRICTIONS; - - /** - * The feature id for the 'Ref' reference. - * - * - * @generated - * @ordered - */ - int STRUCTURE__REF = CLASSIFIER_FEATURE_COUNT + 0; - - /** - * The number of structural features of the 'Structure' class. - * - * - * @generated - * @ordered - */ - int STRUCTURE_FEATURE_COUNT = CLASSIFIER_FEATURE_COUNT + 1; - - /** - * The operation id for the 'Get Ontology' operation. - * - * - * @generated - * @ordered - */ - int STRUCTURE___GET_ONTOLOGY = CLASSIFIER___GET_ONTOLOGY; - - /** - * The operation id for the 'Extra Validate' operation. - * - * - * @generated - * @ordered - */ - int STRUCTURE___EXTRA_VALIDATE__DIAGNOSTICCHAIN_MAP = CLASSIFIER___EXTRA_VALIDATE__DIAGNOSTICCHAIN_MAP; - - /** - * The operation id for the 'Get Ref' operation. - * - * - * @generated - * @ordered - */ - int STRUCTURE___GET_REF = CLASSIFIER___GET_REF; - - /** - * The operation id for the 'Is Ref' operation. - * - * - * @generated - * @ordered - */ - int STRUCTURE___IS_REF = CLASSIFIER___IS_REF; - - /** - * The operation id for the 'Resolve' operation. - * - * - * @generated - * @ordered - */ - int STRUCTURE___RESOLVE = CLASSIFIER___RESOLVE; - - /** - * The operation id for the 'Get Iri' operation. - * - * - * @generated - * @ordered - */ - int STRUCTURE___GET_IRI = CLASSIFIER___GET_IRI; - - /** - * The operation id for the 'Get Abbreviated Iri' operation. - * - * - * @generated - * @ordered - */ - int STRUCTURE___GET_ABBREVIATED_IRI = CLASSIFIER___GET_ABBREVIATED_IRI; - - /** - * The number of operations of the 'Structure' class. - * - * - * @generated - * @ordered - */ - int STRUCTURE_OPERATION_COUNT = CLASSIFIER_OPERATION_COUNT + 0; + int ENTITY_OPERATION_COUNT = TYPE_OPERATION_COUNT + 0; /** * The meta object id for the '{@link io.opencaesar.oml.impl.AspectImpl Aspect}' class. @@ -3905,7 +3606,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getAspect() * @generated */ - int ASPECT = 35; + int ASPECT = 33; /** * The feature id for the 'Owned Annotations' containment reference list. @@ -4068,7 +3769,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getConcept() * @generated */ - int CONCEPT = 36; + int CONCEPT = 34; /** * The feature id for the 'Owned Annotations' containment reference list. @@ -4240,7 +3941,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getRelationEntity() * @generated */ - int RELATION_ENTITY = 37; + int RELATION_ENTITY = 35; /** * The feature id for the 'Owned Annotations' containment reference list. @@ -4502,7 +4203,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getAnnotationProperty() * @generated */ - int ANNOTATION_PROPERTY = 38; + int ANNOTATION_PROPERTY = 36; /** * The feature id for the 'Owned Annotations' containment reference list. @@ -4592,288 +4293,89 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int ANNOTATION_PROPERTY___GET_REF = SPECIALIZABLE_PROPERTY___GET_REF; - - /** - * The operation id for the 'Is Ref' operation. - * - * - * @generated - * @ordered - */ - int ANNOTATION_PROPERTY___IS_REF = SPECIALIZABLE_PROPERTY___IS_REF; - - /** - * The operation id for the 'Resolve' operation. - * - * - * @generated - * @ordered - */ - int ANNOTATION_PROPERTY___RESOLVE = SPECIALIZABLE_PROPERTY___RESOLVE; - - /** - * The operation id for the 'Get Iri' operation. - * - * - * @generated - * @ordered - */ - int ANNOTATION_PROPERTY___GET_IRI = SPECIALIZABLE_PROPERTY___GET_IRI; - - /** - * The operation id for the 'Get Abbreviated Iri' operation. - * - * - * @generated - * @ordered - */ - int ANNOTATION_PROPERTY___GET_ABBREVIATED_IRI = SPECIALIZABLE_PROPERTY___GET_ABBREVIATED_IRI; - - /** - * The number of operations of the 'Annotation Property' class. - * - * - * @generated - * @ordered - */ - int ANNOTATION_PROPERTY_OPERATION_COUNT = SPECIALIZABLE_PROPERTY_OPERATION_COUNT + 0; - - /** - * The meta object id for the '{@link io.opencaesar.oml.impl.SemanticPropertyImpl Semantic Property}' class. - * - * - * @see io.opencaesar.oml.impl.SemanticPropertyImpl - * @see io.opencaesar.oml.impl.OmlPackageImpl#getSemanticProperty() - * @generated - */ - int SEMANTIC_PROPERTY = 39; - - /** - * The feature id for the 'Owned Annotations' containment reference list. - * - * - * @generated - * @ordered - */ - int SEMANTIC_PROPERTY__OWNED_ANNOTATIONS = PROPERTY__OWNED_ANNOTATIONS; - - /** - * The feature id for the 'Name' attribute. - * - * - * @generated - * @ordered - */ - int SEMANTIC_PROPERTY__NAME = PROPERTY__NAME; - - /** - * The number of structural features of the 'Semantic Property' class. - * - * - * @generated - * @ordered - */ - int SEMANTIC_PROPERTY_FEATURE_COUNT = PROPERTY_FEATURE_COUNT + 0; - - /** - * The operation id for the 'Get Ontology' operation. - * - * - * @generated - * @ordered - */ - int SEMANTIC_PROPERTY___GET_ONTOLOGY = PROPERTY___GET_ONTOLOGY; - - /** - * The operation id for the 'Extra Validate' operation. - * - * - * @generated - * @ordered - */ - int SEMANTIC_PROPERTY___EXTRA_VALIDATE__DIAGNOSTICCHAIN_MAP = PROPERTY___EXTRA_VALIDATE__DIAGNOSTICCHAIN_MAP; - - /** - * The operation id for the 'Get Ref' operation. - * - * - * @generated - * @ordered - */ - int SEMANTIC_PROPERTY___GET_REF = PROPERTY___GET_REF; - - /** - * The operation id for the 'Is Ref' operation. - * - * - * @generated - * @ordered - */ - int SEMANTIC_PROPERTY___IS_REF = PROPERTY___IS_REF; - - /** - * The operation id for the 'Resolve' operation. - * - * - * @generated - * @ordered - */ - int SEMANTIC_PROPERTY___RESOLVE = PROPERTY___RESOLVE; - - /** - * The operation id for the 'Get Iri' operation. - * - * - * @generated - * @ordered - */ - int SEMANTIC_PROPERTY___GET_IRI = PROPERTY___GET_IRI; - - /** - * The operation id for the 'Get Abbreviated Iri' operation. - * - * - * @generated - * @ordered - */ - int SEMANTIC_PROPERTY___GET_ABBREVIATED_IRI = PROPERTY___GET_ABBREVIATED_IRI; - - /** - * The operation id for the 'Is Functional' operation. - * - * - * @generated - * @ordered - */ - int SEMANTIC_PROPERTY___IS_FUNCTIONAL = PROPERTY_OPERATION_COUNT + 0; - - /** - * The operation id for the 'Get Domain List' operation. - * - * - * @generated - * @ordered - */ - int SEMANTIC_PROPERTY___GET_DOMAIN_LIST = PROPERTY_OPERATION_COUNT + 1; - - /** - * The operation id for the 'Get Range List' operation. - * - * - * @generated - * @ordered - */ - int SEMANTIC_PROPERTY___GET_RANGE_LIST = PROPERTY_OPERATION_COUNT + 2; - - /** - * The number of operations of the 'Semantic Property' class. - * - * - * @generated - * @ordered - */ - int SEMANTIC_PROPERTY_OPERATION_COUNT = PROPERTY_OPERATION_COUNT + 3; - - /** - * The meta object id for the '{@link io.opencaesar.oml.impl.ScalarPropertyImpl Scalar Property}' class. - * - * - * @see io.opencaesar.oml.impl.ScalarPropertyImpl - * @see io.opencaesar.oml.impl.OmlPackageImpl#getScalarProperty() - * @generated - */ - int SCALAR_PROPERTY = 40; - - /** - * The feature id for the 'Owned Annotations' containment reference list. - * - * - * @generated - * @ordered - */ - int SCALAR_PROPERTY__OWNED_ANNOTATIONS = SEMANTIC_PROPERTY__OWNED_ANNOTATIONS; + int ANNOTATION_PROPERTY___GET_REF = SPECIALIZABLE_PROPERTY___GET_REF; /** - * The feature id for the 'Name' attribute. + * The operation id for the 'Is Ref' operation. * * * @generated * @ordered */ - int SCALAR_PROPERTY__NAME = SEMANTIC_PROPERTY__NAME; + int ANNOTATION_PROPERTY___IS_REF = SPECIALIZABLE_PROPERTY___IS_REF; /** - * The feature id for the 'Owning Vocabulary' container reference. + * The operation id for the 'Resolve' operation. * * * @generated * @ordered */ - int SCALAR_PROPERTY__OWNING_VOCABULARY = SEMANTIC_PROPERTY_FEATURE_COUNT + 0; + int ANNOTATION_PROPERTY___RESOLVE = SPECIALIZABLE_PROPERTY___RESOLVE; /** - * The feature id for the 'Owned Specializations' containment reference list. + * The operation id for the 'Get Iri' operation. * * * @generated * @ordered */ - int SCALAR_PROPERTY__OWNED_SPECIALIZATIONS = SEMANTIC_PROPERTY_FEATURE_COUNT + 1; + int ANNOTATION_PROPERTY___GET_IRI = SPECIALIZABLE_PROPERTY___GET_IRI; /** - * The feature id for the 'Owned Equivalences' containment reference list. + * The operation id for the 'Get Abbreviated Iri' operation. * * * @generated * @ordered */ - int SCALAR_PROPERTY__OWNED_EQUIVALENCES = SEMANTIC_PROPERTY_FEATURE_COUNT + 2; + int ANNOTATION_PROPERTY___GET_ABBREVIATED_IRI = SPECIALIZABLE_PROPERTY___GET_ABBREVIATED_IRI; /** - * The feature id for the 'Ref' reference. + * The number of operations of the 'Annotation Property' class. * * * @generated * @ordered */ - int SCALAR_PROPERTY__REF = SEMANTIC_PROPERTY_FEATURE_COUNT + 3; + int ANNOTATION_PROPERTY_OPERATION_COUNT = SPECIALIZABLE_PROPERTY_OPERATION_COUNT + 0; /** - * The feature id for the 'Functional' attribute. + * The meta object id for the '{@link io.opencaesar.oml.impl.SemanticPropertyImpl Semantic Property}' class. * * + * @see io.opencaesar.oml.impl.SemanticPropertyImpl + * @see io.opencaesar.oml.impl.OmlPackageImpl#getSemanticProperty() * @generated - * @ordered */ - int SCALAR_PROPERTY__FUNCTIONAL = SEMANTIC_PROPERTY_FEATURE_COUNT + 4; + int SEMANTIC_PROPERTY = 37; /** - * The feature id for the 'Domains' reference list. + * The feature id for the 'Owned Annotations' containment reference list. * * * @generated * @ordered */ - int SCALAR_PROPERTY__DOMAINS = SEMANTIC_PROPERTY_FEATURE_COUNT + 5; + int SEMANTIC_PROPERTY__OWNED_ANNOTATIONS = PROPERTY__OWNED_ANNOTATIONS; /** - * The feature id for the 'Ranges' reference list. + * The feature id for the 'Name' attribute. * * * @generated * @ordered */ - int SCALAR_PROPERTY__RANGES = SEMANTIC_PROPERTY_FEATURE_COUNT + 6; + int SEMANTIC_PROPERTY__NAME = PROPERTY__NAME; /** - * The number of structural features of the 'Scalar Property' class. + * The number of structural features of the 'Semantic Property' class. * * * @generated * @ordered */ - int SCALAR_PROPERTY_FEATURE_COUNT = SEMANTIC_PROPERTY_FEATURE_COUNT + 7; + int SEMANTIC_PROPERTY_FEATURE_COUNT = PROPERTY_FEATURE_COUNT + 0; /** * The operation id for the 'Get Ontology' operation. @@ -4882,7 +4384,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int SCALAR_PROPERTY___GET_ONTOLOGY = SEMANTIC_PROPERTY___GET_ONTOLOGY; + int SEMANTIC_PROPERTY___GET_ONTOLOGY = PROPERTY___GET_ONTOLOGY; /** * The operation id for the 'Extra Validate' operation. @@ -4891,7 +4393,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int SCALAR_PROPERTY___EXTRA_VALIDATE__DIAGNOSTICCHAIN_MAP = SEMANTIC_PROPERTY___EXTRA_VALIDATE__DIAGNOSTICCHAIN_MAP; + int SEMANTIC_PROPERTY___EXTRA_VALIDATE__DIAGNOSTICCHAIN_MAP = PROPERTY___EXTRA_VALIDATE__DIAGNOSTICCHAIN_MAP; /** * The operation id for the 'Get Ref' operation. @@ -4900,7 +4402,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int SCALAR_PROPERTY___GET_REF = SEMANTIC_PROPERTY___GET_REF; + int SEMANTIC_PROPERTY___GET_REF = PROPERTY___GET_REF; /** * The operation id for the 'Is Ref' operation. @@ -4909,7 +4411,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int SCALAR_PROPERTY___IS_REF = SEMANTIC_PROPERTY___IS_REF; + int SEMANTIC_PROPERTY___IS_REF = PROPERTY___IS_REF; /** * The operation id for the 'Resolve' operation. @@ -4918,7 +4420,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int SCALAR_PROPERTY___RESOLVE = SEMANTIC_PROPERTY___RESOLVE; + int SEMANTIC_PROPERTY___RESOLVE = PROPERTY___RESOLVE; /** * The operation id for the 'Get Iri' operation. @@ -4927,7 +4429,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int SCALAR_PROPERTY___GET_IRI = SEMANTIC_PROPERTY___GET_IRI; + int SEMANTIC_PROPERTY___GET_IRI = PROPERTY___GET_IRI; /** * The operation id for the 'Get Abbreviated Iri' operation. @@ -4936,7 +4438,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int SCALAR_PROPERTY___GET_ABBREVIATED_IRI = SEMANTIC_PROPERTY___GET_ABBREVIATED_IRI; + int SEMANTIC_PROPERTY___GET_ABBREVIATED_IRI = PROPERTY___GET_ABBREVIATED_IRI; /** * The operation id for the 'Is Functional' operation. @@ -4945,7 +4447,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int SCALAR_PROPERTY___IS_FUNCTIONAL = SEMANTIC_PROPERTY___IS_FUNCTIONAL; + int SEMANTIC_PROPERTY___IS_FUNCTIONAL = PROPERTY_OPERATION_COUNT + 0; /** * The operation id for the 'Get Domain List' operation. @@ -4954,7 +4456,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int SCALAR_PROPERTY___GET_DOMAIN_LIST = SEMANTIC_PROPERTY_OPERATION_COUNT + 0; + int SEMANTIC_PROPERTY___GET_DOMAIN_LIST = PROPERTY_OPERATION_COUNT + 1; /** * The operation id for the 'Get Range List' operation. @@ -4963,26 +4465,26 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int SCALAR_PROPERTY___GET_RANGE_LIST = SEMANTIC_PROPERTY_OPERATION_COUNT + 1; + int SEMANTIC_PROPERTY___GET_RANGE_LIST = PROPERTY_OPERATION_COUNT + 2; /** - * The number of operations of the 'Scalar Property' class. + * The number of operations of the 'Semantic Property' class. * * * @generated * @ordered */ - int SCALAR_PROPERTY_OPERATION_COUNT = SEMANTIC_PROPERTY_OPERATION_COUNT + 2; + int SEMANTIC_PROPERTY_OPERATION_COUNT = PROPERTY_OPERATION_COUNT + 3; /** - * The meta object id for the '{@link io.opencaesar.oml.impl.StructuredPropertyImpl Structured Property}' class. + * The meta object id for the '{@link io.opencaesar.oml.impl.ScalarPropertyImpl Scalar Property}' class. * * - * @see io.opencaesar.oml.impl.StructuredPropertyImpl - * @see io.opencaesar.oml.impl.OmlPackageImpl#getStructuredProperty() + * @see io.opencaesar.oml.impl.ScalarPropertyImpl + * @see io.opencaesar.oml.impl.OmlPackageImpl#getScalarProperty() * @generated */ - int STRUCTURED_PROPERTY = 41; + int SCALAR_PROPERTY = 38; /** * The feature id for the 'Owned Annotations' containment reference list. @@ -4991,7 +4493,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int STRUCTURED_PROPERTY__OWNED_ANNOTATIONS = SEMANTIC_PROPERTY__OWNED_ANNOTATIONS; + int SCALAR_PROPERTY__OWNED_ANNOTATIONS = SEMANTIC_PROPERTY__OWNED_ANNOTATIONS; /** * The feature id for the 'Name' attribute. @@ -5000,7 +4502,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int STRUCTURED_PROPERTY__NAME = SEMANTIC_PROPERTY__NAME; + int SCALAR_PROPERTY__NAME = SEMANTIC_PROPERTY__NAME; /** * The feature id for the 'Owning Vocabulary' container reference. @@ -5009,7 +4511,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int STRUCTURED_PROPERTY__OWNING_VOCABULARY = SEMANTIC_PROPERTY_FEATURE_COUNT + 0; + int SCALAR_PROPERTY__OWNING_VOCABULARY = SEMANTIC_PROPERTY_FEATURE_COUNT + 0; /** * The feature id for the 'Owned Specializations' containment reference list. @@ -5018,7 +4520,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int STRUCTURED_PROPERTY__OWNED_SPECIALIZATIONS = SEMANTIC_PROPERTY_FEATURE_COUNT + 1; + int SCALAR_PROPERTY__OWNED_SPECIALIZATIONS = SEMANTIC_PROPERTY_FEATURE_COUNT + 1; /** * The feature id for the 'Owned Equivalences' containment reference list. @@ -5027,7 +4529,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int STRUCTURED_PROPERTY__OWNED_EQUIVALENCES = SEMANTIC_PROPERTY_FEATURE_COUNT + 2; + int SCALAR_PROPERTY__OWNED_EQUIVALENCES = SEMANTIC_PROPERTY_FEATURE_COUNT + 2; /** * The feature id for the 'Ref' reference. @@ -5036,7 +4538,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int STRUCTURED_PROPERTY__REF = SEMANTIC_PROPERTY_FEATURE_COUNT + 3; + int SCALAR_PROPERTY__REF = SEMANTIC_PROPERTY_FEATURE_COUNT + 3; /** * The feature id for the 'Functional' attribute. @@ -5045,7 +4547,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int STRUCTURED_PROPERTY__FUNCTIONAL = SEMANTIC_PROPERTY_FEATURE_COUNT + 4; + int SCALAR_PROPERTY__FUNCTIONAL = SEMANTIC_PROPERTY_FEATURE_COUNT + 4; /** * The feature id for the 'Domains' reference list. @@ -5054,7 +4556,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int STRUCTURED_PROPERTY__DOMAINS = SEMANTIC_PROPERTY_FEATURE_COUNT + 5; + int SCALAR_PROPERTY__DOMAINS = SEMANTIC_PROPERTY_FEATURE_COUNT + 5; /** * The feature id for the 'Ranges' reference list. @@ -5063,16 +4565,16 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int STRUCTURED_PROPERTY__RANGES = SEMANTIC_PROPERTY_FEATURE_COUNT + 6; + int SCALAR_PROPERTY__RANGES = SEMANTIC_PROPERTY_FEATURE_COUNT + 6; /** - * The number of structural features of the 'Structured Property' class. + * The number of structural features of the 'Scalar Property' class. * * * @generated * @ordered */ - int STRUCTURED_PROPERTY_FEATURE_COUNT = SEMANTIC_PROPERTY_FEATURE_COUNT + 7; + int SCALAR_PROPERTY_FEATURE_COUNT = SEMANTIC_PROPERTY_FEATURE_COUNT + 7; /** * The operation id for the 'Get Ontology' operation. @@ -5081,7 +4583,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int STRUCTURED_PROPERTY___GET_ONTOLOGY = SEMANTIC_PROPERTY___GET_ONTOLOGY; + int SCALAR_PROPERTY___GET_ONTOLOGY = SEMANTIC_PROPERTY___GET_ONTOLOGY; /** * The operation id for the 'Extra Validate' operation. @@ -5090,7 +4592,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int STRUCTURED_PROPERTY___EXTRA_VALIDATE__DIAGNOSTICCHAIN_MAP = SEMANTIC_PROPERTY___EXTRA_VALIDATE__DIAGNOSTICCHAIN_MAP; + int SCALAR_PROPERTY___EXTRA_VALIDATE__DIAGNOSTICCHAIN_MAP = SEMANTIC_PROPERTY___EXTRA_VALIDATE__DIAGNOSTICCHAIN_MAP; /** * The operation id for the 'Get Ref' operation. @@ -5099,7 +4601,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int STRUCTURED_PROPERTY___GET_REF = SEMANTIC_PROPERTY___GET_REF; + int SCALAR_PROPERTY___GET_REF = SEMANTIC_PROPERTY___GET_REF; /** * The operation id for the 'Is Ref' operation. @@ -5108,7 +4610,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int STRUCTURED_PROPERTY___IS_REF = SEMANTIC_PROPERTY___IS_REF; + int SCALAR_PROPERTY___IS_REF = SEMANTIC_PROPERTY___IS_REF; /** * The operation id for the 'Resolve' operation. @@ -5117,7 +4619,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int STRUCTURED_PROPERTY___RESOLVE = SEMANTIC_PROPERTY___RESOLVE; + int SCALAR_PROPERTY___RESOLVE = SEMANTIC_PROPERTY___RESOLVE; /** * The operation id for the 'Get Iri' operation. @@ -5126,7 +4628,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int STRUCTURED_PROPERTY___GET_IRI = SEMANTIC_PROPERTY___GET_IRI; + int SCALAR_PROPERTY___GET_IRI = SEMANTIC_PROPERTY___GET_IRI; /** * The operation id for the 'Get Abbreviated Iri' operation. @@ -5135,7 +4637,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int STRUCTURED_PROPERTY___GET_ABBREVIATED_IRI = SEMANTIC_PROPERTY___GET_ABBREVIATED_IRI; + int SCALAR_PROPERTY___GET_ABBREVIATED_IRI = SEMANTIC_PROPERTY___GET_ABBREVIATED_IRI; /** * The operation id for the 'Is Functional' operation. @@ -5144,7 +4646,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int STRUCTURED_PROPERTY___IS_FUNCTIONAL = SEMANTIC_PROPERTY___IS_FUNCTIONAL; + int SCALAR_PROPERTY___IS_FUNCTIONAL = SEMANTIC_PROPERTY___IS_FUNCTIONAL; /** * The operation id for the 'Get Domain List' operation. @@ -5153,7 +4655,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int STRUCTURED_PROPERTY___GET_DOMAIN_LIST = SEMANTIC_PROPERTY_OPERATION_COUNT + 0; + int SCALAR_PROPERTY___GET_DOMAIN_LIST = SEMANTIC_PROPERTY_OPERATION_COUNT + 0; /** * The operation id for the 'Get Range List' operation. @@ -5162,16 +4664,16 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int STRUCTURED_PROPERTY___GET_RANGE_LIST = SEMANTIC_PROPERTY_OPERATION_COUNT + 1; + int SCALAR_PROPERTY___GET_RANGE_LIST = SEMANTIC_PROPERTY_OPERATION_COUNT + 1; /** - * The number of operations of the 'Structured Property' class. + * The number of operations of the 'Scalar Property' class. * * * @generated * @ordered */ - int STRUCTURED_PROPERTY_OPERATION_COUNT = SEMANTIC_PROPERTY_OPERATION_COUNT + 2; + int SCALAR_PROPERTY_OPERATION_COUNT = SEMANTIC_PROPERTY_OPERATION_COUNT + 2; /** * The meta object id for the '{@link io.opencaesar.oml.impl.RelationImpl Relation}' class. @@ -5181,7 +4683,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getRelation() * @generated */ - int RELATION = 42; + int RELATION = 39; /** * The feature id for the 'Owned Annotations' containment reference list. @@ -5398,7 +4900,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getForwardRelation() * @generated */ - int FORWARD_RELATION = 43; + int FORWARD_RELATION = 40; /** * The feature id for the 'Owned Annotations' containment reference list. @@ -5624,7 +5126,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getReverseRelation() * @generated */ - int REVERSE_RELATION = 44; + int REVERSE_RELATION = 41; /** * The feature id for the 'Owned Annotations' containment reference list. @@ -5850,7 +5352,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getUnreifiedRelation() * @generated */ - int UNREIFIED_RELATION = 45; + int UNREIFIED_RELATION = 42; /** * The feature id for the 'Owned Annotations' containment reference list. @@ -6193,7 +5695,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getNamedInstance() * @generated */ - int NAMED_INSTANCE = 46; + int NAMED_INSTANCE = 43; /** * The feature id for the 'Owned Annotations' containment reference list. @@ -6347,7 +5849,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getAnonymousInstance() * @generated */ - int ANONYMOUS_INSTANCE = 47; + int ANONYMOUS_INSTANCE = 44; /** * The feature id for the 'Owned Property Values' containment reference list. @@ -6438,7 +5940,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getConceptInstance() * @generated */ - int CONCEPT_INSTANCE = 48; + int CONCEPT_INSTANCE = 45; /** * The feature id for the 'Owned Annotations' containment reference list. @@ -6601,7 +6103,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getRelationInstance() * @generated */ - int RELATION_INSTANCE = 49; + int RELATION_INSTANCE = 46; /** * The feature id for the 'Owned Annotations' containment reference list. @@ -6775,14 +6277,14 @@ public interface OmlPackage extends EPackage { int RELATION_INSTANCE_OPERATION_COUNT = NAMED_INSTANCE_OPERATION_COUNT + 0; /** - * The meta object id for the '{@link io.opencaesar.oml.impl.StructureInstanceImpl Structure Instance}' class. + * The meta object id for the '{@link io.opencaesar.oml.impl.AnonymousConceptInstanceImpl Anonymous Concept Instance}' class. * * - * @see io.opencaesar.oml.impl.StructureInstanceImpl - * @see io.opencaesar.oml.impl.OmlPackageImpl#getStructureInstance() + * @see io.opencaesar.oml.impl.AnonymousConceptInstanceImpl + * @see io.opencaesar.oml.impl.OmlPackageImpl#getAnonymousConceptInstance() * @generated */ - int STRUCTURE_INSTANCE = 50; + int ANONYMOUS_CONCEPT_INSTANCE = 47; /** * The feature id for the 'Owned Property Values' containment reference list. @@ -6791,7 +6293,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int STRUCTURE_INSTANCE__OWNED_PROPERTY_VALUES = ANONYMOUS_INSTANCE__OWNED_PROPERTY_VALUES; + int ANONYMOUS_CONCEPT_INSTANCE__OWNED_PROPERTY_VALUES = ANONYMOUS_INSTANCE__OWNED_PROPERTY_VALUES; /** * The feature id for the 'Owning Assertion' container reference. @@ -6800,7 +6302,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int STRUCTURE_INSTANCE__OWNING_ASSERTION = ANONYMOUS_INSTANCE__OWNING_ASSERTION; + int ANONYMOUS_CONCEPT_INSTANCE__OWNING_ASSERTION = ANONYMOUS_INSTANCE__OWNING_ASSERTION; /** * The feature id for the 'Owning Axiom' container reference. @@ -6809,7 +6311,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int STRUCTURE_INSTANCE__OWNING_AXIOM = ANONYMOUS_INSTANCE__OWNING_AXIOM; + int ANONYMOUS_CONCEPT_INSTANCE__OWNING_AXIOM = ANONYMOUS_INSTANCE__OWNING_AXIOM; /** * The feature id for the 'Type' reference. @@ -6818,16 +6320,16 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int STRUCTURE_INSTANCE__TYPE = ANONYMOUS_INSTANCE_FEATURE_COUNT + 0; + int ANONYMOUS_CONCEPT_INSTANCE__TYPE = ANONYMOUS_INSTANCE_FEATURE_COUNT + 0; /** - * The number of structural features of the 'Structure Instance' class. + * The number of structural features of the 'Anonymous Concept Instance' class. * * * @generated * @ordered */ - int STRUCTURE_INSTANCE_FEATURE_COUNT = ANONYMOUS_INSTANCE_FEATURE_COUNT + 1; + int ANONYMOUS_CONCEPT_INSTANCE_FEATURE_COUNT = ANONYMOUS_INSTANCE_FEATURE_COUNT + 1; /** * The operation id for the 'Get Ontology' operation. @@ -6836,7 +6338,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int STRUCTURE_INSTANCE___GET_ONTOLOGY = ANONYMOUS_INSTANCE___GET_ONTOLOGY; + int ANONYMOUS_CONCEPT_INSTANCE___GET_ONTOLOGY = ANONYMOUS_INSTANCE___GET_ONTOLOGY; /** * The operation id for the 'Extra Validate' operation. @@ -6845,7 +6347,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int STRUCTURE_INSTANCE___EXTRA_VALIDATE__DIAGNOSTICCHAIN_MAP = ANONYMOUS_INSTANCE___EXTRA_VALIDATE__DIAGNOSTICCHAIN_MAP; + int ANONYMOUS_CONCEPT_INSTANCE___EXTRA_VALIDATE__DIAGNOSTICCHAIN_MAP = ANONYMOUS_INSTANCE___EXTRA_VALIDATE__DIAGNOSTICCHAIN_MAP; /** * The operation id for the 'Get Is Value Of Property' operation. @@ -6854,16 +6356,16 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int STRUCTURE_INSTANCE___GET_IS_VALUE_OF_PROPERTY = ANONYMOUS_INSTANCE___GET_IS_VALUE_OF_PROPERTY; + int ANONYMOUS_CONCEPT_INSTANCE___GET_IS_VALUE_OF_PROPERTY = ANONYMOUS_INSTANCE___GET_IS_VALUE_OF_PROPERTY; /** - * The operation id for the 'Get Structure' operation. + * The operation id for the 'Get Entity' operation. * * * @generated * @ordered */ - int STRUCTURE_INSTANCE___GET_STRUCTURE = ANONYMOUS_INSTANCE_OPERATION_COUNT + 0; + int ANONYMOUS_CONCEPT_INSTANCE___GET_ENTITY = ANONYMOUS_INSTANCE_OPERATION_COUNT + 0; /** * The operation id for the 'Get Types' operation. @@ -6872,16 +6374,16 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int STRUCTURE_INSTANCE___GET_TYPES = ANONYMOUS_INSTANCE_OPERATION_COUNT + 1; + int ANONYMOUS_CONCEPT_INSTANCE___GET_TYPES = ANONYMOUS_INSTANCE_OPERATION_COUNT + 1; /** - * The number of operations of the 'Structure Instance' class. + * The number of operations of the 'Anonymous Concept Instance' class. * * * @generated * @ordered */ - int STRUCTURE_INSTANCE_OPERATION_COUNT = ANONYMOUS_INSTANCE_OPERATION_COUNT + 2; + int ANONYMOUS_CONCEPT_INSTANCE_OPERATION_COUNT = ANONYMOUS_INSTANCE_OPERATION_COUNT + 2; /** * The meta object id for the '{@link io.opencaesar.oml.impl.AnonymousRelationInstanceImpl Anonymous Relation Instance}' class. @@ -6891,7 +6393,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getAnonymousRelationInstance() * @generated */ - int ANONYMOUS_RELATION_INSTANCE = 51; + int ANONYMOUS_RELATION_INSTANCE = 48; /** * The feature id for the 'Owned Property Values' containment reference list. @@ -7000,7 +6502,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getKeyAxiom() * @generated */ - int KEY_AXIOM = 52; + int KEY_AXIOM = 49; /** * The feature id for the 'Properties' reference list. @@ -7082,7 +6584,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getSpecializationAxiom() * @generated */ - int SPECIALIZATION_AXIOM = 53; + int SPECIALIZATION_AXIOM = 50; /** * The feature id for the 'Super Term' reference. @@ -7164,7 +6666,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getInstanceEnumerationAxiom() * @generated */ - int INSTANCE_ENUMERATION_AXIOM = 54; + int INSTANCE_ENUMERATION_AXIOM = 51; /** * The feature id for the 'Instances' reference list. @@ -7246,7 +6748,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getPropertyRestrictionAxiom() * @generated */ - int PROPERTY_RESTRICTION_AXIOM = 55; + int PROPERTY_RESTRICTION_AXIOM = 52; /** * The feature id for the 'Property' reference. @@ -7258,13 +6760,13 @@ public interface OmlPackage extends EPackage { int PROPERTY_RESTRICTION_AXIOM__PROPERTY = AXIOM_FEATURE_COUNT + 0; /** - * The feature id for the 'Owning Classifier' container reference. + * The feature id for the 'Owning Entity' container reference. * * * @generated * @ordered */ - int PROPERTY_RESTRICTION_AXIOM__OWNING_CLASSIFIER = AXIOM_FEATURE_COUNT + 1; + int PROPERTY_RESTRICTION_AXIOM__OWNING_ENTITY = AXIOM_FEATURE_COUNT + 1; /** * The feature id for the 'Owning Axiom' container reference. @@ -7337,7 +6839,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getLiteralEnumerationAxiom() * @generated */ - int LITERAL_ENUMERATION_AXIOM = 56; + int LITERAL_ENUMERATION_AXIOM = 53; /** * The feature id for the 'Literals' containment reference list. @@ -7412,23 +6914,23 @@ public interface OmlPackage extends EPackage { int LITERAL_ENUMERATION_AXIOM_OPERATION_COUNT = AXIOM_OPERATION_COUNT + 2; /** - * The meta object id for the '{@link io.opencaesar.oml.impl.ClassifierEquivalenceAxiomImpl Classifier Equivalence Axiom}' class. + * The meta object id for the '{@link io.opencaesar.oml.impl.EntityEquivalenceAxiomImpl Entity Equivalence Axiom}' class. * * - * @see io.opencaesar.oml.impl.ClassifierEquivalenceAxiomImpl - * @see io.opencaesar.oml.impl.OmlPackageImpl#getClassifierEquivalenceAxiom() + * @see io.opencaesar.oml.impl.EntityEquivalenceAxiomImpl + * @see io.opencaesar.oml.impl.OmlPackageImpl#getEntityEquivalenceAxiom() * @generated */ - int CLASSIFIER_EQUIVALENCE_AXIOM = 57; + int ENTITY_EQUIVALENCE_AXIOM = 54; /** - * The feature id for the 'Super Classifiers' reference list. + * The feature id for the 'Super Entities' reference list. * * * @generated * @ordered */ - int CLASSIFIER_EQUIVALENCE_AXIOM__SUPER_CLASSIFIERS = AXIOM_FEATURE_COUNT + 0; + int ENTITY_EQUIVALENCE_AXIOM__SUPER_ENTITIES = AXIOM_FEATURE_COUNT + 0; /** * The feature id for the 'Owned Property Restrictions' containment reference list. @@ -7437,25 +6939,25 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int CLASSIFIER_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS = AXIOM_FEATURE_COUNT + 1; + int ENTITY_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS = AXIOM_FEATURE_COUNT + 1; /** - * The feature id for the 'Owning Classifier' container reference. + * The feature id for the 'Owning Entity' container reference. * * * @generated * @ordered */ - int CLASSIFIER_EQUIVALENCE_AXIOM__OWNING_CLASSIFIER = AXIOM_FEATURE_COUNT + 2; + int ENTITY_EQUIVALENCE_AXIOM__OWNING_ENTITY = AXIOM_FEATURE_COUNT + 2; /** - * The number of structural features of the 'Classifier Equivalence Axiom' class. + * The number of structural features of the 'Entity Equivalence Axiom' class. * * * @generated * @ordered */ - int CLASSIFIER_EQUIVALENCE_AXIOM_FEATURE_COUNT = AXIOM_FEATURE_COUNT + 3; + int ENTITY_EQUIVALENCE_AXIOM_FEATURE_COUNT = AXIOM_FEATURE_COUNT + 3; /** * The operation id for the 'Get Ontology' operation. @@ -7464,7 +6966,7 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int CLASSIFIER_EQUIVALENCE_AXIOM___GET_ONTOLOGY = AXIOM___GET_ONTOLOGY; + int ENTITY_EQUIVALENCE_AXIOM___GET_ONTOLOGY = AXIOM___GET_ONTOLOGY; /** * The operation id for the 'Extra Validate' operation. @@ -7473,16 +6975,16 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int CLASSIFIER_EQUIVALENCE_AXIOM___EXTRA_VALIDATE__DIAGNOSTICCHAIN_MAP = AXIOM___EXTRA_VALIDATE__DIAGNOSTICCHAIN_MAP; + int ENTITY_EQUIVALENCE_AXIOM___EXTRA_VALIDATE__DIAGNOSTICCHAIN_MAP = AXIOM___EXTRA_VALIDATE__DIAGNOSTICCHAIN_MAP; /** - * The operation id for the 'Get Sub Classifier' operation. + * The operation id for the 'Get Sub Entity' operation. * * * @generated * @ordered */ - int CLASSIFIER_EQUIVALENCE_AXIOM___GET_SUB_CLASSIFIER = AXIOM_OPERATION_COUNT + 0; + int ENTITY_EQUIVALENCE_AXIOM___GET_SUB_ENTITY = AXIOM_OPERATION_COUNT + 0; /** * The operation id for the 'Get Characterized Term' operation. @@ -7491,16 +6993,16 @@ public interface OmlPackage extends EPackage { * @generated * @ordered */ - int CLASSIFIER_EQUIVALENCE_AXIOM___GET_CHARACTERIZED_TERM = AXIOM_OPERATION_COUNT + 1; + int ENTITY_EQUIVALENCE_AXIOM___GET_CHARACTERIZED_TERM = AXIOM_OPERATION_COUNT + 1; /** - * The number of operations of the 'Classifier Equivalence Axiom' class. + * The number of operations of the 'Entity Equivalence Axiom' class. * * * @generated * @ordered */ - int CLASSIFIER_EQUIVALENCE_AXIOM_OPERATION_COUNT = AXIOM_OPERATION_COUNT + 2; + int ENTITY_EQUIVALENCE_AXIOM_OPERATION_COUNT = AXIOM_OPERATION_COUNT + 2; /** * The meta object id for the '{@link io.opencaesar.oml.impl.ScalarEquivalenceAxiomImpl Scalar Equivalence Axiom}' class. @@ -7510,7 +7012,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getScalarEquivalenceAxiom() * @generated */ - int SCALAR_EQUIVALENCE_AXIOM = 58; + int SCALAR_EQUIVALENCE_AXIOM = 55; /** * The feature id for the 'Super Scalar' reference. @@ -7673,7 +7175,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getPropertyEquivalenceAxiom() * @generated */ - int PROPERTY_EQUIVALENCE_AXIOM = 59; + int PROPERTY_EQUIVALENCE_AXIOM = 56; /** * The feature id for the 'Super Property' reference. @@ -7755,7 +7257,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getPropertyRangeRestrictionAxiom() * @generated */ - int PROPERTY_RANGE_RESTRICTION_AXIOM = 60; + int PROPERTY_RANGE_RESTRICTION_AXIOM = 57; /** * The feature id for the 'Property' reference. @@ -7767,13 +7269,13 @@ public interface OmlPackage extends EPackage { int PROPERTY_RANGE_RESTRICTION_AXIOM__PROPERTY = PROPERTY_RESTRICTION_AXIOM__PROPERTY; /** - * The feature id for the 'Owning Classifier' container reference. + * The feature id for the 'Owning Entity' container reference. * * * @generated * @ordered */ - int PROPERTY_RANGE_RESTRICTION_AXIOM__OWNING_CLASSIFIER = PROPERTY_RESTRICTION_AXIOM__OWNING_CLASSIFIER; + int PROPERTY_RANGE_RESTRICTION_AXIOM__OWNING_ENTITY = PROPERTY_RESTRICTION_AXIOM__OWNING_ENTITY; /** * The feature id for the 'Owning Axiom' container reference. @@ -7864,7 +7366,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getPropertyCardinalityRestrictionAxiom() * @generated */ - int PROPERTY_CARDINALITY_RESTRICTION_AXIOM = 61; + int PROPERTY_CARDINALITY_RESTRICTION_AXIOM = 58; /** * The feature id for the 'Property' reference. @@ -7876,13 +7378,13 @@ public interface OmlPackage extends EPackage { int PROPERTY_CARDINALITY_RESTRICTION_AXIOM__PROPERTY = PROPERTY_RESTRICTION_AXIOM__PROPERTY; /** - * The feature id for the 'Owning Classifier' container reference. + * The feature id for the 'Owning Entity' container reference. * * * @generated * @ordered */ - int PROPERTY_CARDINALITY_RESTRICTION_AXIOM__OWNING_CLASSIFIER = PROPERTY_RESTRICTION_AXIOM__OWNING_CLASSIFIER; + int PROPERTY_CARDINALITY_RESTRICTION_AXIOM__OWNING_ENTITY = PROPERTY_RESTRICTION_AXIOM__OWNING_ENTITY; /** * The feature id for the 'Owning Axiom' container reference. @@ -7982,7 +7484,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getPropertyValueRestrictionAxiom() * @generated */ - int PROPERTY_VALUE_RESTRICTION_AXIOM = 62; + int PROPERTY_VALUE_RESTRICTION_AXIOM = 59; /** * The feature id for the 'Property' reference. @@ -7994,13 +7496,13 @@ public interface OmlPackage extends EPackage { int PROPERTY_VALUE_RESTRICTION_AXIOM__PROPERTY = PROPERTY_RESTRICTION_AXIOM__PROPERTY; /** - * The feature id for the 'Owning Classifier' container reference. + * The feature id for the 'Owning Entity' container reference. * * * @generated * @ordered */ - int PROPERTY_VALUE_RESTRICTION_AXIOM__OWNING_CLASSIFIER = PROPERTY_RESTRICTION_AXIOM__OWNING_CLASSIFIER; + int PROPERTY_VALUE_RESTRICTION_AXIOM__OWNING_ENTITY = PROPERTY_RESTRICTION_AXIOM__OWNING_ENTITY; /** * The feature id for the 'Owning Axiom' container reference. @@ -8109,7 +7611,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getPropertySelfRestrictionAxiom() * @generated */ - int PROPERTY_SELF_RESTRICTION_AXIOM = 63; + int PROPERTY_SELF_RESTRICTION_AXIOM = 60; /** * The feature id for the 'Property' reference. @@ -8121,13 +7623,13 @@ public interface OmlPackage extends EPackage { int PROPERTY_SELF_RESTRICTION_AXIOM__PROPERTY = PROPERTY_RESTRICTION_AXIOM__PROPERTY; /** - * The feature id for the 'Owning Classifier' container reference. + * The feature id for the 'Owning Entity' container reference. * * * @generated * @ordered */ - int PROPERTY_SELF_RESTRICTION_AXIOM__OWNING_CLASSIFIER = PROPERTY_RESTRICTION_AXIOM__OWNING_CLASSIFIER; + int PROPERTY_SELF_RESTRICTION_AXIOM__OWNING_ENTITY = PROPERTY_RESTRICTION_AXIOM__OWNING_ENTITY; /** * The feature id for the 'Owning Axiom' container reference. @@ -8200,7 +7702,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getTypeAssertion() * @generated */ - int TYPE_ASSERTION = 64; + int TYPE_ASSERTION = 61; /** * The feature id for the 'Type' reference. @@ -8291,7 +7793,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getPropertyValueAssertion() * @generated */ - int PROPERTY_VALUE_ASSERTION = 65; + int PROPERTY_VALUE_ASSERTION = 62; /** * The feature id for the 'Property' reference. @@ -8409,7 +7911,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getUnaryPredicate() * @generated */ - int UNARY_PREDICATE = 66; + int UNARY_PREDICATE = 63; /** * The feature id for the 'Antecedent Rule' container reference. @@ -8482,7 +7984,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getBinaryPredicate() * @generated */ - int BINARY_PREDICATE = 67; + int BINARY_PREDICATE = 64; /** * The feature id for the 'Antecedent Rule' container reference. @@ -8564,7 +8066,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getBuiltInPredicate() * @generated */ - int BUILT_IN_PREDICATE = 68; + int BUILT_IN_PREDICATE = 65; /** * The feature id for the 'Antecedent Rule' container reference. @@ -8646,7 +8148,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getTypePredicate() * @generated */ - int TYPE_PREDICATE = 69; + int TYPE_PREDICATE = 66; /** * The feature id for the 'Antecedent Rule' container reference. @@ -8728,7 +8230,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getRelationEntityPredicate() * @generated */ - int RELATION_ENTITY_PREDICATE = 70; + int RELATION_ENTITY_PREDICATE = 67; /** * The feature id for the 'Antecedent Rule' container reference. @@ -8828,7 +8330,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getPropertyPredicate() * @generated */ - int PROPERTY_PREDICATE = 71; + int PROPERTY_PREDICATE = 68; /** * The feature id for the 'Antecedent Rule' container reference. @@ -8919,7 +8421,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getSameAsPredicate() * @generated */ - int SAME_AS_PREDICATE = 72; + int SAME_AS_PREDICATE = 69; /** * The feature id for the 'Antecedent Rule' container reference. @@ -9001,7 +8503,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getDifferentFromPredicate() * @generated */ - int DIFFERENT_FROM_PREDICATE = 73; + int DIFFERENT_FROM_PREDICATE = 70; /** * The feature id for the 'Antecedent Rule' container reference. @@ -9083,7 +8585,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getQuotedLiteral() * @generated */ - int QUOTED_LITERAL = 74; + int QUOTED_LITERAL = 71; /** * The feature id for the 'Value' attribute. @@ -9192,7 +8694,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getIntegerLiteral() * @generated */ - int INTEGER_LITERAL = 75; + int INTEGER_LITERAL = 72; /** * The feature id for the 'Value' attribute. @@ -9283,7 +8785,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getDecimalLiteral() * @generated */ - int DECIMAL_LITERAL = 76; + int DECIMAL_LITERAL = 73; /** * The feature id for the 'Value' attribute. @@ -9374,7 +8876,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getDoubleLiteral() * @generated */ - int DOUBLE_LITERAL = 77; + int DOUBLE_LITERAL = 74; /** * The feature id for the 'Value' attribute. @@ -9465,7 +8967,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getBooleanLiteral() * @generated */ - int BOOLEAN_LITERAL = 78; + int BOOLEAN_LITERAL = 75; /** * The feature id for the 'Value' attribute. @@ -9565,7 +9067,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getSeparatorKind() * @generated */ - int SEPARATOR_KIND = 79; + int SEPARATOR_KIND = 76; /** * The meta object id for the '{@link io.opencaesar.oml.RangeRestrictionKind Range Restriction Kind}' enum. @@ -9575,7 +9077,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getRangeRestrictionKind() * @generated */ - int RANGE_RESTRICTION_KIND = 80; + int RANGE_RESTRICTION_KIND = 77; /** * The meta object id for the '{@link io.opencaesar.oml.CardinalityRestrictionKind Cardinality Restriction Kind}' enum. @@ -9585,7 +9087,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getCardinalityRestrictionKind() * @generated */ - int CARDINALITY_RESTRICTION_KIND = 81; + int CARDINALITY_RESTRICTION_KIND = 78; /** * The meta object id for the '{@link io.opencaesar.oml.ImportKind Import Kind}' enum. @@ -9595,7 +9097,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getImportKind() * @generated */ - int IMPORT_KIND = 82; + int IMPORT_KIND = 79; /** * The meta object id for the 'Unsigned Int' data type. @@ -9604,7 +9106,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getUnsignedInt() * @generated */ - int UNSIGNED_INT = 83; + int UNSIGNED_INT = 80; /** * The meta object id for the 'Unsigned Integer' data type. @@ -9614,7 +9116,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getUnsignedInteger() * @generated */ - int UNSIGNED_INTEGER = 84; + int UNSIGNED_INTEGER = 81; /** * The meta object id for the 'Decimal' data type. @@ -9624,7 +9126,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getDecimal() * @generated */ - int DECIMAL = 85; + int DECIMAL = 82; /** * The meta object id for the 'Double' data type. @@ -9634,7 +9136,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getDouble() * @generated */ - int DOUBLE = 86; + int DOUBLE = 83; /** * The meta object id for the 'ID' data type. @@ -9644,7 +9146,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getID() * @generated */ - int ID = 87; + int ID = 84; /** * The meta object id for the 'Namespace' data type. @@ -9654,7 +9156,7 @@ public interface OmlPackage extends EPackage { * @see io.opencaesar.oml.impl.OmlPackageImpl#getNamespace() * @generated */ - int NAMESPACE = 88; + int NAMESPACE = 85; /** @@ -10626,38 +10128,6 @@ public interface OmlPackage extends EPackage { */ EReference getSpecializableProperty_OwnedEquivalences(); - /** - * Returns the meta object for class '{@link io.opencaesar.oml.Classifier Classifier}'. - * - * - * @return the meta object for class 'Classifier'. - * @see io.opencaesar.oml.Classifier - * @generated - */ - EClass getClassifier(); - - /** - * Returns the meta object for the containment reference list '{@link io.opencaesar.oml.Classifier#getOwnedEquivalences Owned Equivalences}'. - * - * - * @return the meta object for the containment reference list 'Owned Equivalences'. - * @see io.opencaesar.oml.Classifier#getOwnedEquivalences() - * @see #getClassifier() - * @generated - */ - EReference getClassifier_OwnedEquivalences(); - - /** - * Returns the meta object for the containment reference list '{@link io.opencaesar.oml.Classifier#getOwnedPropertyRestrictions Owned Property Restrictions}'. - * - * - * @return the meta object for the containment reference list 'Owned Property Restrictions'. - * @see io.opencaesar.oml.Classifier#getOwnedPropertyRestrictions() - * @see #getClassifier() - * @generated - */ - EReference getClassifier_OwnedPropertyRestrictions(); - /** * Returns the meta object for class '{@link io.opencaesar.oml.Scalar Scalar}'. * @@ -10712,36 +10182,37 @@ public interface OmlPackage extends EPackage { EClass getEntity(); /** - * Returns the meta object for the containment reference list '{@link io.opencaesar.oml.Entity#getOwnedKeys Owned Keys}'. + * Returns the meta object for the containment reference list '{@link io.opencaesar.oml.Entity#getOwnedEquivalences Owned Equivalences}'. * * - * @return the meta object for the containment reference list 'Owned Keys'. - * @see io.opencaesar.oml.Entity#getOwnedKeys() + * @return the meta object for the containment reference list 'Owned Equivalences'. + * @see io.opencaesar.oml.Entity#getOwnedEquivalences() * @see #getEntity() * @generated */ - EReference getEntity_OwnedKeys(); + EReference getEntity_OwnedEquivalences(); /** - * Returns the meta object for class '{@link io.opencaesar.oml.Structure Structure}'. + * Returns the meta object for the containment reference list '{@link io.opencaesar.oml.Entity#getOwnedPropertyRestrictions Owned Property Restrictions}'. * * - * @return the meta object for class 'Structure'. - * @see io.opencaesar.oml.Structure + * @return the meta object for the containment reference list 'Owned Property Restrictions'. + * @see io.opencaesar.oml.Entity#getOwnedPropertyRestrictions() + * @see #getEntity() * @generated */ - EClass getStructure(); + EReference getEntity_OwnedPropertyRestrictions(); /** - * Returns the meta object for the reference '{@link io.opencaesar.oml.Structure#getRef Ref}'. + * Returns the meta object for the containment reference list '{@link io.opencaesar.oml.Entity#getOwnedKeys Owned Keys}'. * * - * @return the meta object for the reference 'Ref'. - * @see io.opencaesar.oml.Structure#getRef() - * @see #getStructure() + * @return the meta object for the containment reference list 'Owned Keys'. + * @see io.opencaesar.oml.Entity#getOwnedKeys() + * @see #getEntity() * @generated */ - EReference getStructure_Ref(); + EReference getEntity_OwnedKeys(); /** * Returns the meta object for class '{@link io.opencaesar.oml.Aspect Aspect}'. @@ -10963,80 +10434,6 @@ public interface OmlPackage extends EPackage { */ EOperation getScalarProperty__GetRangeList(); - /** - * Returns the meta object for class '{@link io.opencaesar.oml.StructuredProperty Structured Property}'. - * - * - * @return the meta object for class 'Structured Property'. - * @see io.opencaesar.oml.StructuredProperty - * @generated - */ - EClass getStructuredProperty(); - - /** - * Returns the meta object for the reference '{@link io.opencaesar.oml.StructuredProperty#getRef Ref}'. - * - * - * @return the meta object for the reference 'Ref'. - * @see io.opencaesar.oml.StructuredProperty#getRef() - * @see #getStructuredProperty() - * @generated - */ - EReference getStructuredProperty_Ref(); - - /** - * Returns the meta object for the attribute '{@link io.opencaesar.oml.StructuredProperty#isFunctional Functional}'. - * - * - * @return the meta object for the attribute 'Functional'. - * @see io.opencaesar.oml.StructuredProperty#isFunctional() - * @see #getStructuredProperty() - * @generated - */ - EAttribute getStructuredProperty_Functional(); - - /** - * Returns the meta object for the reference list '{@link io.opencaesar.oml.StructuredProperty#getDomains Domains}'. - * - * - * @return the meta object for the reference list 'Domains'. - * @see io.opencaesar.oml.StructuredProperty#getDomains() - * @see #getStructuredProperty() - * @generated - */ - EReference getStructuredProperty_Domains(); - - /** - * Returns the meta object for the reference list '{@link io.opencaesar.oml.StructuredProperty#getRanges Ranges}'. - * - * - * @return the meta object for the reference list 'Ranges'. - * @see io.opencaesar.oml.StructuredProperty#getRanges() - * @see #getStructuredProperty() - * @generated - */ - EReference getStructuredProperty_Ranges(); - - /** - * Returns the meta object for the '{@link io.opencaesar.oml.StructuredProperty#getDomainList() Get Domain List}' operation. - * - * - * @return the meta object for the 'Get Domain List' operation. - * @see io.opencaesar.oml.StructuredProperty#getDomainList() - * @generated - */ - EOperation getStructuredProperty__GetDomainList(); - - /** - * Returns the meta object for the '{@link io.opencaesar.oml.StructuredProperty#getRangeList() Get Range List}' operation. - * - * - * @return the meta object for the 'Get Range List' operation. - * @see io.opencaesar.oml.StructuredProperty#getRangeList() - * @generated - */ - EOperation getStructuredProperty__GetRangeList(); - /** * Returns the meta object for class '{@link io.opencaesar.oml.Relation Relation}'. * @@ -11618,45 +11015,45 @@ public interface OmlPackage extends EPackage { EReference getRelationInstance_Targets(); /** - * Returns the meta object for class '{@link io.opencaesar.oml.StructureInstance Structure Instance}'. + * Returns the meta object for class '{@link io.opencaesar.oml.AnonymousConceptInstance Anonymous Concept Instance}'. * * - * @return the meta object for class 'Structure Instance'. - * @see io.opencaesar.oml.StructureInstance + * @return the meta object for class 'Anonymous Concept Instance'. + * @see io.opencaesar.oml.AnonymousConceptInstance * @generated */ - EClass getStructureInstance(); + EClass getAnonymousConceptInstance(); /** - * Returns the meta object for the reference '{@link io.opencaesar.oml.StructureInstance#getType Type}'. + * Returns the meta object for the reference '{@link io.opencaesar.oml.AnonymousConceptInstance#getType Type}'. * * * @return the meta object for the reference 'Type'. - * @see io.opencaesar.oml.StructureInstance#getType() - * @see #getStructureInstance() + * @see io.opencaesar.oml.AnonymousConceptInstance#getType() + * @see #getAnonymousConceptInstance() * @generated */ - EReference getStructureInstance_Type(); + EReference getAnonymousConceptInstance_Type(); /** - * Returns the meta object for the '{@link io.opencaesar.oml.StructureInstance#getStructure() Get Structure}' operation. + * Returns the meta object for the '{@link io.opencaesar.oml.AnonymousConceptInstance#getEntity() Get Entity}' operation. * * - * @return the meta object for the 'Get Structure' operation. - * @see io.opencaesar.oml.StructureInstance#getStructure() + * @return the meta object for the 'Get Entity' operation. + * @see io.opencaesar.oml.AnonymousConceptInstance#getEntity() * @generated */ - EOperation getStructureInstance__GetStructure(); + EOperation getAnonymousConceptInstance__GetEntity(); /** - * Returns the meta object for the '{@link io.opencaesar.oml.StructureInstance#getTypes() Get Types}' operation. + * Returns the meta object for the '{@link io.opencaesar.oml.AnonymousConceptInstance#getTypes() Get Types}' operation. * * * @return the meta object for the 'Get Types' operation. - * @see io.opencaesar.oml.StructureInstance#getTypes() + * @see io.opencaesar.oml.AnonymousConceptInstance#getTypes() * @generated */ - EOperation getStructureInstance__GetTypes(); + EOperation getAnonymousConceptInstance__GetTypes(); /** * Returns the meta object for class '{@link io.opencaesar.oml.AnonymousRelationInstance Anonymous Relation Instance}'. @@ -11877,15 +11274,15 @@ public interface OmlPackage extends EPackage { EReference getPropertyRestrictionAxiom_Property(); /** - * Returns the meta object for the container reference '{@link io.opencaesar.oml.PropertyRestrictionAxiom#getOwningClassifier Owning Classifier}'. + * Returns the meta object for the container reference '{@link io.opencaesar.oml.PropertyRestrictionAxiom#getOwningEntity Owning Entity}'. * * - * @return the meta object for the container reference 'Owning Classifier'. - * @see io.opencaesar.oml.PropertyRestrictionAxiom#getOwningClassifier() + * @return the meta object for the container reference 'Owning Entity'. + * @see io.opencaesar.oml.PropertyRestrictionAxiom#getOwningEntity() * @see #getPropertyRestrictionAxiom() * @generated */ - EReference getPropertyRestrictionAxiom_OwningClassifier(); + EReference getPropertyRestrictionAxiom_OwningEntity(); /** * Returns the meta object for the container reference '{@link io.opencaesar.oml.PropertyRestrictionAxiom#getOwningAxiom Owning Axiom}'. @@ -11971,67 +11368,67 @@ public interface OmlPackage extends EPackage { EOperation getLiteralEnumerationAxiom__GetCharacterizedTerm(); /** - * Returns the meta object for class '{@link io.opencaesar.oml.ClassifierEquivalenceAxiom Classifier Equivalence Axiom}'. + * Returns the meta object for class '{@link io.opencaesar.oml.EntityEquivalenceAxiom Entity Equivalence Axiom}'. * * - * @return the meta object for class 'Classifier Equivalence Axiom'. - * @see io.opencaesar.oml.ClassifierEquivalenceAxiom + * @return the meta object for class 'Entity Equivalence Axiom'. + * @see io.opencaesar.oml.EntityEquivalenceAxiom * @generated */ - EClass getClassifierEquivalenceAxiom(); + EClass getEntityEquivalenceAxiom(); /** - * Returns the meta object for the reference list '{@link io.opencaesar.oml.ClassifierEquivalenceAxiom#getSuperClassifiers Super Classifiers}'. + * Returns the meta object for the reference list '{@link io.opencaesar.oml.EntityEquivalenceAxiom#getSuperEntities Super Entities}'. * * - * @return the meta object for the reference list 'Super Classifiers'. - * @see io.opencaesar.oml.ClassifierEquivalenceAxiom#getSuperClassifiers() - * @see #getClassifierEquivalenceAxiom() + * @return the meta object for the reference list 'Super Entities'. + * @see io.opencaesar.oml.EntityEquivalenceAxiom#getSuperEntities() + * @see #getEntityEquivalenceAxiom() * @generated */ - EReference getClassifierEquivalenceAxiom_SuperClassifiers(); + EReference getEntityEquivalenceAxiom_SuperEntities(); /** - * Returns the meta object for the containment reference list '{@link io.opencaesar.oml.ClassifierEquivalenceAxiom#getOwnedPropertyRestrictions Owned Property Restrictions}'. + * Returns the meta object for the containment reference list '{@link io.opencaesar.oml.EntityEquivalenceAxiom#getOwnedPropertyRestrictions Owned Property Restrictions}'. * * * @return the meta object for the containment reference list 'Owned Property Restrictions'. - * @see io.opencaesar.oml.ClassifierEquivalenceAxiom#getOwnedPropertyRestrictions() - * @see #getClassifierEquivalenceAxiom() + * @see io.opencaesar.oml.EntityEquivalenceAxiom#getOwnedPropertyRestrictions() + * @see #getEntityEquivalenceAxiom() * @generated */ - EReference getClassifierEquivalenceAxiom_OwnedPropertyRestrictions(); + EReference getEntityEquivalenceAxiom_OwnedPropertyRestrictions(); /** - * Returns the meta object for the container reference '{@link io.opencaesar.oml.ClassifierEquivalenceAxiom#getOwningClassifier Owning Classifier}'. + * Returns the meta object for the container reference '{@link io.opencaesar.oml.EntityEquivalenceAxiom#getOwningEntity Owning Entity}'. * * - * @return the meta object for the container reference 'Owning Classifier'. - * @see io.opencaesar.oml.ClassifierEquivalenceAxiom#getOwningClassifier() - * @see #getClassifierEquivalenceAxiom() + * @return the meta object for the container reference 'Owning Entity'. + * @see io.opencaesar.oml.EntityEquivalenceAxiom#getOwningEntity() + * @see #getEntityEquivalenceAxiom() * @generated */ - EReference getClassifierEquivalenceAxiom_OwningClassifier(); + EReference getEntityEquivalenceAxiom_OwningEntity(); /** - * Returns the meta object for the '{@link io.opencaesar.oml.ClassifierEquivalenceAxiom#getSubClassifier() Get Sub Classifier}' operation. + * Returns the meta object for the '{@link io.opencaesar.oml.EntityEquivalenceAxiom#getSubEntity() Get Sub Entity}' operation. * * - * @return the meta object for the 'Get Sub Classifier' operation. - * @see io.opencaesar.oml.ClassifierEquivalenceAxiom#getSubClassifier() + * @return the meta object for the 'Get Sub Entity' operation. + * @see io.opencaesar.oml.EntityEquivalenceAxiom#getSubEntity() * @generated */ - EOperation getClassifierEquivalenceAxiom__GetSubClassifier(); + EOperation getEntityEquivalenceAxiom__GetSubEntity(); /** - * Returns the meta object for the '{@link io.opencaesar.oml.ClassifierEquivalenceAxiom#getCharacterizedTerm() Get Characterized Term}' operation. + * Returns the meta object for the '{@link io.opencaesar.oml.EntityEquivalenceAxiom#getCharacterizedTerm() Get Characterized Term}' operation. * * * @return the meta object for the 'Get Characterized Term' operation. - * @see io.opencaesar.oml.ClassifierEquivalenceAxiom#getCharacterizedTerm() + * @see io.opencaesar.oml.EntityEquivalenceAxiom#getCharacterizedTerm() * @generated */ - EOperation getClassifierEquivalenceAxiom__GetCharacterizedTerm(); + EOperation getEntityEquivalenceAxiom__GetCharacterizedTerm(); /** * Returns the meta object for class '{@link io.opencaesar.oml.ScalarEquivalenceAxiom Scalar Equivalence Axiom}'. @@ -13825,32 +13222,6 @@ interface Literals { */ EReference SPECIALIZABLE_PROPERTY__OWNED_EQUIVALENCES = eINSTANCE.getSpecializableProperty_OwnedEquivalences(); - /** - * The meta object literal for the '{@link io.opencaesar.oml.impl.ClassifierImpl Classifier}' class. - * - * - * @see io.opencaesar.oml.impl.ClassifierImpl - * @see io.opencaesar.oml.impl.OmlPackageImpl#getClassifier() - * @generated - */ - EClass CLASSIFIER = eINSTANCE.getClassifier(); - - /** - * The meta object literal for the 'Owned Equivalences' containment reference list feature. - * - * - * @generated - */ - EReference CLASSIFIER__OWNED_EQUIVALENCES = eINSTANCE.getClassifier_OwnedEquivalences(); - - /** - * The meta object literal for the 'Owned Property Restrictions' containment reference list feature. - * - * - * @generated - */ - EReference CLASSIFIER__OWNED_PROPERTY_RESTRICTIONS = eINSTANCE.getClassifier_OwnedPropertyRestrictions(); - /** * The meta object literal for the '{@link io.opencaesar.oml.impl.ScalarImpl Scalar}' class. * @@ -13896,30 +13267,28 @@ interface Literals { EClass ENTITY = eINSTANCE.getEntity(); /** - * The meta object literal for the 'Owned Keys' containment reference list feature. + * The meta object literal for the 'Owned Equivalences' containment reference list feature. * * * @generated */ - EReference ENTITY__OWNED_KEYS = eINSTANCE.getEntity_OwnedKeys(); + EReference ENTITY__OWNED_EQUIVALENCES = eINSTANCE.getEntity_OwnedEquivalences(); /** - * The meta object literal for the '{@link io.opencaesar.oml.impl.StructureImpl Structure}' class. + * The meta object literal for the 'Owned Property Restrictions' containment reference list feature. * * - * @see io.opencaesar.oml.impl.StructureImpl - * @see io.opencaesar.oml.impl.OmlPackageImpl#getStructure() * @generated */ - EClass STRUCTURE = eINSTANCE.getStructure(); + EReference ENTITY__OWNED_PROPERTY_RESTRICTIONS = eINSTANCE.getEntity_OwnedPropertyRestrictions(); /** - * The meta object literal for the 'Ref' reference feature. + * The meta object literal for the 'Owned Keys' containment reference list feature. * * * @generated */ - EReference STRUCTURE__REF = eINSTANCE.getStructure_Ref(); + EReference ENTITY__OWNED_KEYS = eINSTANCE.getEntity_OwnedKeys(); /** * The meta object literal for the '{@link io.opencaesar.oml.impl.AspectImpl Aspect}' class. @@ -14101,64 +13470,6 @@ interface Literals { */ EOperation SCALAR_PROPERTY___GET_RANGE_LIST = eINSTANCE.getScalarProperty__GetRangeList(); - /** - * The meta object literal for the '{@link io.opencaesar.oml.impl.StructuredPropertyImpl Structured Property}' class. - * - * - * @see io.opencaesar.oml.impl.StructuredPropertyImpl - * @see io.opencaesar.oml.impl.OmlPackageImpl#getStructuredProperty() - * @generated - */ - EClass STRUCTURED_PROPERTY = eINSTANCE.getStructuredProperty(); - - /** - * The meta object literal for the 'Ref' reference feature. - * - * - * @generated - */ - EReference STRUCTURED_PROPERTY__REF = eINSTANCE.getStructuredProperty_Ref(); - - /** - * The meta object literal for the 'Functional' attribute feature. - * - * - * @generated - */ - EAttribute STRUCTURED_PROPERTY__FUNCTIONAL = eINSTANCE.getStructuredProperty_Functional(); - - /** - * The meta object literal for the 'Domains' reference list feature. - * - * - * @generated - */ - EReference STRUCTURED_PROPERTY__DOMAINS = eINSTANCE.getStructuredProperty_Domains(); - - /** - * The meta object literal for the 'Ranges' reference list feature. - * - * - * @generated - */ - EReference STRUCTURED_PROPERTY__RANGES = eINSTANCE.getStructuredProperty_Ranges(); - - /** - * The meta object literal for the 'Get Domain List' operation. - * - * - * @generated - */ - EOperation STRUCTURED_PROPERTY___GET_DOMAIN_LIST = eINSTANCE.getStructuredProperty__GetDomainList(); - - /** - * The meta object literal for the 'Get Range List' operation. - * - * - * @generated - */ - EOperation STRUCTURED_PROPERTY___GET_RANGE_LIST = eINSTANCE.getStructuredProperty__GetRangeList(); - /** * The meta object literal for the '{@link io.opencaesar.oml.impl.RelationImpl Relation}' class. * @@ -14632,14 +13943,14 @@ interface Literals { EReference RELATION_INSTANCE__TARGETS = eINSTANCE.getRelationInstance_Targets(); /** - * The meta object literal for the '{@link io.opencaesar.oml.impl.StructureInstanceImpl Structure Instance}' class. + * The meta object literal for the '{@link io.opencaesar.oml.impl.AnonymousConceptInstanceImpl Anonymous Concept Instance}' class. * * - * @see io.opencaesar.oml.impl.StructureInstanceImpl - * @see io.opencaesar.oml.impl.OmlPackageImpl#getStructureInstance() + * @see io.opencaesar.oml.impl.AnonymousConceptInstanceImpl + * @see io.opencaesar.oml.impl.OmlPackageImpl#getAnonymousConceptInstance() * @generated */ - EClass STRUCTURE_INSTANCE = eINSTANCE.getStructureInstance(); + EClass ANONYMOUS_CONCEPT_INSTANCE = eINSTANCE.getAnonymousConceptInstance(); /** * The meta object literal for the 'Type' reference feature. @@ -14647,15 +13958,15 @@ interface Literals { * * @generated */ - EReference STRUCTURE_INSTANCE__TYPE = eINSTANCE.getStructureInstance_Type(); + EReference ANONYMOUS_CONCEPT_INSTANCE__TYPE = eINSTANCE.getAnonymousConceptInstance_Type(); /** - * The meta object literal for the 'Get Structure' operation. + * The meta object literal for the 'Get Entity' operation. * * * @generated */ - EOperation STRUCTURE_INSTANCE___GET_STRUCTURE = eINSTANCE.getStructureInstance__GetStructure(); + EOperation ANONYMOUS_CONCEPT_INSTANCE___GET_ENTITY = eINSTANCE.getAnonymousConceptInstance__GetEntity(); /** * The meta object literal for the 'Get Types' operation. @@ -14663,7 +13974,7 @@ interface Literals { * * @generated */ - EOperation STRUCTURE_INSTANCE___GET_TYPES = eINSTANCE.getStructureInstance__GetTypes(); + EOperation ANONYMOUS_CONCEPT_INSTANCE___GET_TYPES = eINSTANCE.getAnonymousConceptInstance__GetTypes(); /** * The meta object literal for the '{@link io.opencaesar.oml.impl.AnonymousRelationInstanceImpl Anonymous Relation Instance}' class. @@ -14844,12 +14155,12 @@ interface Literals { EReference PROPERTY_RESTRICTION_AXIOM__PROPERTY = eINSTANCE.getPropertyRestrictionAxiom_Property(); /** - * The meta object literal for the 'Owning Classifier' container reference feature. + * The meta object literal for the 'Owning Entity' container reference feature. * * * @generated */ - EReference PROPERTY_RESTRICTION_AXIOM__OWNING_CLASSIFIER = eINSTANCE.getPropertyRestrictionAxiom_OwningClassifier(); + EReference PROPERTY_RESTRICTION_AXIOM__OWNING_ENTITY = eINSTANCE.getPropertyRestrictionAxiom_OwningEntity(); /** * The meta object literal for the 'Owning Axiom' container reference feature. @@ -14918,22 +14229,22 @@ interface Literals { EOperation LITERAL_ENUMERATION_AXIOM___GET_CHARACTERIZED_TERM = eINSTANCE.getLiteralEnumerationAxiom__GetCharacterizedTerm(); /** - * The meta object literal for the '{@link io.opencaesar.oml.impl.ClassifierEquivalenceAxiomImpl Classifier Equivalence Axiom}' class. + * The meta object literal for the '{@link io.opencaesar.oml.impl.EntityEquivalenceAxiomImpl Entity Equivalence Axiom}' class. * * - * @see io.opencaesar.oml.impl.ClassifierEquivalenceAxiomImpl - * @see io.opencaesar.oml.impl.OmlPackageImpl#getClassifierEquivalenceAxiom() + * @see io.opencaesar.oml.impl.EntityEquivalenceAxiomImpl + * @see io.opencaesar.oml.impl.OmlPackageImpl#getEntityEquivalenceAxiom() * @generated */ - EClass CLASSIFIER_EQUIVALENCE_AXIOM = eINSTANCE.getClassifierEquivalenceAxiom(); + EClass ENTITY_EQUIVALENCE_AXIOM = eINSTANCE.getEntityEquivalenceAxiom(); /** - * The meta object literal for the 'Super Classifiers' reference list feature. + * The meta object literal for the 'Super Entities' reference list feature. * * * @generated */ - EReference CLASSIFIER_EQUIVALENCE_AXIOM__SUPER_CLASSIFIERS = eINSTANCE.getClassifierEquivalenceAxiom_SuperClassifiers(); + EReference ENTITY_EQUIVALENCE_AXIOM__SUPER_ENTITIES = eINSTANCE.getEntityEquivalenceAxiom_SuperEntities(); /** * The meta object literal for the 'Owned Property Restrictions' containment reference list feature. @@ -14941,23 +14252,23 @@ interface Literals { * * @generated */ - EReference CLASSIFIER_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS = eINSTANCE.getClassifierEquivalenceAxiom_OwnedPropertyRestrictions(); + EReference ENTITY_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS = eINSTANCE.getEntityEquivalenceAxiom_OwnedPropertyRestrictions(); /** - * The meta object literal for the 'Owning Classifier' container reference feature. + * The meta object literal for the 'Owning Entity' container reference feature. * * * @generated */ - EReference CLASSIFIER_EQUIVALENCE_AXIOM__OWNING_CLASSIFIER = eINSTANCE.getClassifierEquivalenceAxiom_OwningClassifier(); + EReference ENTITY_EQUIVALENCE_AXIOM__OWNING_ENTITY = eINSTANCE.getEntityEquivalenceAxiom_OwningEntity(); /** - * The meta object literal for the 'Get Sub Classifier' operation. + * The meta object literal for the 'Get Sub Entity' operation. * * * @generated */ - EOperation CLASSIFIER_EQUIVALENCE_AXIOM___GET_SUB_CLASSIFIER = eINSTANCE.getClassifierEquivalenceAxiom__GetSubClassifier(); + EOperation ENTITY_EQUIVALENCE_AXIOM___GET_SUB_ENTITY = eINSTANCE.getEntityEquivalenceAxiom__GetSubEntity(); /** * The meta object literal for the 'Get Characterized Term' operation. @@ -14965,7 +14276,7 @@ interface Literals { * * @generated */ - EOperation CLASSIFIER_EQUIVALENCE_AXIOM___GET_CHARACTERIZED_TERM = eINSTANCE.getClassifierEquivalenceAxiom__GetCharacterizedTerm(); + EOperation ENTITY_EQUIVALENCE_AXIOM___GET_CHARACTERIZED_TERM = eINSTANCE.getEntityEquivalenceAxiom__GetCharacterizedTerm(); /** * The meta object literal for the '{@link io.opencaesar.oml.impl.ScalarEquivalenceAxiomImpl Scalar Equivalence Axiom}' class. diff --git a/io.opencaesar.oml/src-gen/io/opencaesar/oml/PropertyCardinalityRestrictionAxiom.java b/io.opencaesar.oml/src-gen/io/opencaesar/oml/PropertyCardinalityRestrictionAxiom.java index 6e8823d1..3190557e 100644 --- a/io.opencaesar.oml/src-gen/io/opencaesar/oml/PropertyCardinalityRestrictionAxiom.java +++ b/io.opencaesar.oml/src-gen/io/opencaesar/oml/PropertyCardinalityRestrictionAxiom.java @@ -27,7 +27,7 @@ * * PropertyCardinalityRestrictionAxiom is a [=PropertyRestrictionAxiom=] that restricts the cardinality of a [=property=] * to an exact value, a minimum value or a maximum value. This restrictions can apply either to all values of the property - * in the restricting [=classifier=], or only to those values classified by a specific subtype of the range. + * in the restricting [=Entity=], or only to those values classified by a specific subtype of the range. * * *

diff --git a/io.opencaesar.oml/src-gen/io/opencaesar/oml/PropertyRangeRestrictionAxiom.java b/io.opencaesar.oml/src-gen/io/opencaesar/oml/PropertyRangeRestrictionAxiom.java index 66b57fa0..a5fbc972 100644 --- a/io.opencaesar.oml/src-gen/io/opencaesar/oml/PropertyRangeRestrictionAxiom.java +++ b/io.opencaesar.oml/src-gen/io/opencaesar/oml/PropertyRangeRestrictionAxiom.java @@ -27,7 +27,7 @@ * * PropertyRangeRestrictionAxiom is a [=PropertyRestrictionAxiom=] that restricts the range of a [=property=] to * a [=type=] that specializes the original range. This restrictions may apply to `all` or to `some` values of the property - * that have the restricting [=classifier=] as a domain. + * that have the restricting [=Entity=] as a domain. * * *

diff --git a/io.opencaesar.oml/src-gen/io/opencaesar/oml/PropertyRestrictionAxiom.java b/io.opencaesar.oml/src-gen/io/opencaesar/oml/PropertyRestrictionAxiom.java index 26077513..0eafe528 100644 --- a/io.opencaesar.oml/src-gen/io/opencaesar/oml/PropertyRestrictionAxiom.java +++ b/io.opencaesar.oml/src-gen/io/opencaesar/oml/PropertyRestrictionAxiom.java @@ -25,8 +25,8 @@ * * * - * PropertyRestrictionAxiom is an [=Axiom=] specified on a [=Classifier=] that places some restriction on the value of a [=SemanticProperty=] - * in the context of the classifier. + * PropertyRestrictionAxiom is an [=Axiom=] specified on a [=Entity=] that places some restriction on the value of a [=SemanticProperty=] + * in the context of the entity. * * *

@@ -34,7 +34,7 @@ *

*
    *
  • {@link io.opencaesar.oml.PropertyRestrictionAxiom#getProperty Property}
  • - *
  • {@link io.opencaesar.oml.PropertyRestrictionAxiom#getOwningClassifier Owning Classifier}
  • + *
  • {@link io.opencaesar.oml.PropertyRestrictionAxiom#getOwningEntity Owning Entity}
  • *
  • {@link io.opencaesar.oml.PropertyRestrictionAxiom#getOwningAxiom Owning Axiom}
  • *
* @@ -70,48 +70,48 @@ public interface PropertyRestrictionAxiom extends Axiom { void setProperty(SemanticProperty value); /** - * Returns the value of the 'Owning Classifier' container reference. - * It is bidirectional and its opposite is '{@link io.opencaesar.oml.Classifier#getOwnedPropertyRestrictions Owned Property Restrictions}'. + * Returns the value of the 'Owning Entity' container reference. + * It is bidirectional and its opposite is '{@link io.opencaesar.oml.Entity#getOwnedPropertyRestrictions Owned Property Restrictions}'. * * * - * The owning classifier specified by this axiom + * The owning entity specified by this axiom * - * @return the value of the 'Owning Classifier' container reference. - * @see #setOwningClassifier(Classifier) - * @see io.opencaesar.oml.OmlPackage#getPropertyRestrictionAxiom_OwningClassifier() - * @see io.opencaesar.oml.Classifier#getOwnedPropertyRestrictions + * @return the value of the 'Owning Entity' container reference. + * @see #setOwningEntity(Entity) + * @see io.opencaesar.oml.OmlPackage#getPropertyRestrictionAxiom_OwningEntity() + * @see io.opencaesar.oml.Entity#getOwnedPropertyRestrictions * @model opposite="ownedPropertyRestrictions" transient="false" * @generated */ - Classifier getOwningClassifier(); + Entity getOwningEntity(); /** - * Sets the value of the '{@link io.opencaesar.oml.PropertyRestrictionAxiom#getOwningClassifier Owning Classifier}' container reference. + * Sets the value of the '{@link io.opencaesar.oml.PropertyRestrictionAxiom#getOwningEntity Owning Entity}' container reference. * * - * @param value the new value of the 'Owning Classifier' container reference. - * @see #getOwningClassifier() + * @param value the new value of the 'Owning Entity' container reference. + * @see #getOwningEntity() * @generated */ - void setOwningClassifier(Classifier value); + void setOwningEntity(Entity value); /** * Returns the value of the 'Owning Axiom' container reference. - * It is bidirectional and its opposite is '{@link io.opencaesar.oml.ClassifierEquivalenceAxiom#getOwnedPropertyRestrictions Owned Property Restrictions}'. + * It is bidirectional and its opposite is '{@link io.opencaesar.oml.EntityEquivalenceAxiom#getOwnedPropertyRestrictions Owned Property Restrictions}'. * * * - * The owning classifier equivalence axiom specified by this axiom + * The owning entity equivalence axiom specified by this axiom * * @return the value of the 'Owning Axiom' container reference. - * @see #setOwningAxiom(ClassifierEquivalenceAxiom) + * @see #setOwningAxiom(EntityEquivalenceAxiom) * @see io.opencaesar.oml.OmlPackage#getPropertyRestrictionAxiom_OwningAxiom() - * @see io.opencaesar.oml.ClassifierEquivalenceAxiom#getOwnedPropertyRestrictions + * @see io.opencaesar.oml.EntityEquivalenceAxiom#getOwnedPropertyRestrictions * @model opposite="ownedPropertyRestrictions" transient="false" * @generated */ - ClassifierEquivalenceAxiom getOwningAxiom(); + EntityEquivalenceAxiom getOwningAxiom(); /** * Sets the value of the '{@link io.opencaesar.oml.PropertyRestrictionAxiom#getOwningAxiom Owning Axiom}' container reference. @@ -121,7 +121,7 @@ public interface PropertyRestrictionAxiom extends Axiom { * @see #getOwningAxiom() * @generated */ - void setOwningAxiom(ClassifierEquivalenceAxiom value); + void setOwningAxiom(EntityEquivalenceAxiom value); /** * @@ -132,7 +132,7 @@ public interface PropertyRestrictionAxiom extends Axiom { * @model kind="operation" unique="false" * @generated */ - Classifier getRestrictingDomain(); + Entity getRestrictingDomain(); /** * @@ -140,6 +140,6 @@ public interface PropertyRestrictionAxiom extends Axiom { * @model kind="operation" unique="false" * @generated */ - Classifier getCharacterizedTerm(); + Entity getCharacterizedTerm(); } // PropertyRestrictionAxiom diff --git a/io.opencaesar.oml/src-gen/io/opencaesar/oml/Relation.java b/io.opencaesar.oml/src-gen/io/opencaesar/oml/Relation.java index 6c9d8c84..ff260f78 100644 --- a/io.opencaesar.oml/src-gen/io/opencaesar/oml/Relation.java +++ b/io.opencaesar.oml/src-gen/io/opencaesar/oml/Relation.java @@ -142,7 +142,7 @@ public interface Relation extends SemanticProperty { * @model kind="operation" unique="false" * @generated */ - EList getDomainList(); + EList getDomainList(); /** * diff --git a/io.opencaesar.oml/src-gen/io/opencaesar/oml/ScalarProperty.java b/io.opencaesar.oml/src-gen/io/opencaesar/oml/ScalarProperty.java index 26dfa61f..47d55402 100644 --- a/io.opencaesar.oml/src-gen/io/opencaesar/oml/ScalarProperty.java +++ b/io.opencaesar.oml/src-gen/io/opencaesar/oml/ScalarProperty.java @@ -96,18 +96,18 @@ public interface ScalarProperty extends SemanticProperty, SpecializableProperty /** * Returns the value of the 'Domains' reference list. - * The list contents are of type {@link io.opencaesar.oml.Classifier}. + * The list contents are of type {@link io.opencaesar.oml.Entity}. * * * - * The classifier that is the domain of this property + * The entity that is the domain of this property * * @return the value of the 'Domains' reference list. * @see io.opencaesar.oml.OmlPackage#getScalarProperty_Domains() * @model * @generated */ - EList getDomains(); + EList getDomains(); /** * Returns the value of the 'Ranges' reference list. @@ -130,7 +130,7 @@ public interface ScalarProperty extends SemanticProperty, SpecializableProperty * @model kind="operation" unique="false" * @generated */ - EList getDomainList(); + EList getDomainList(); /** * diff --git a/io.opencaesar.oml/src-gen/io/opencaesar/oml/SemanticProperty.java b/io.opencaesar.oml/src-gen/io/opencaesar/oml/SemanticProperty.java index dd47c403..08fb691b 100644 --- a/io.opencaesar.oml/src-gen/io/opencaesar/oml/SemanticProperty.java +++ b/io.opencaesar.oml/src-gen/io/opencaesar/oml/SemanticProperty.java @@ -26,7 +26,7 @@ * * * - * SemanticProperty is a [=property=] with DL semantics that relates a [=classifier=] acting as its + * SemanticProperty is a [=property=] with DL semantics that relates a [=entity=] acting as its * domain to a [=type=] acting as its range. * * @@ -57,7 +57,7 @@ public interface SemanticProperty extends Property { * @model kind="operation" unique="false" * @generated */ - EList getDomainList(); + EList getDomainList(); /** * diff --git a/io.opencaesar.oml/src-gen/io/opencaesar/oml/Structure.java b/io.opencaesar.oml/src-gen/io/opencaesar/oml/Structure.java deleted file mode 100644 index 21d197a9..00000000 --- a/io.opencaesar.oml/src-gen/io/opencaesar/oml/Structure.java +++ /dev/null @@ -1,68 +0,0 @@ -/** - * - * Copyright 2019-2022 California Institute of Technology ("Caltech"). - * U.S. Government sponsorship acknowledged. - * - * Licensed 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 io.opencaesar.oml; - - -/** - * - * A representation of the model object 'Structure'. - * - * - * - * Structure is a [=classifier=] whose [=instances=] are anonymous and assignable as values to [=StructuredProperties=]. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link io.opencaesar.oml.Structure#getRef Ref}
  • - *
- * - * @see io.opencaesar.oml.OmlPackage#getStructure() - * @model annotation="https://tabatkins.github.io/bikeshed heading='Types'" - * @generated - */ -public interface Structure extends Classifier { - /** - * Returns the value of the 'Ref' reference. - * - * - * - * A ref to another structure - * - * @return the value of the 'Ref' reference. - * @see #setRef(Structure) - * @see io.opencaesar.oml.OmlPackage#getStructure_Ref() - * @model - * @generated - */ - Structure getRef(); - - /** - * Sets the value of the '{@link io.opencaesar.oml.Structure#getRef Ref}' reference. - * - * - * @param value the new value of the 'Ref' reference. - * @see #getRef() - * @generated - */ - void setRef(Structure value); - -} // Structure diff --git a/io.opencaesar.oml/src-gen/io/opencaesar/oml/StructuredProperty.java b/io.opencaesar.oml/src-gen/io/opencaesar/oml/StructuredProperty.java deleted file mode 100644 index a00908c8..00000000 --- a/io.opencaesar.oml/src-gen/io/opencaesar/oml/StructuredProperty.java +++ /dev/null @@ -1,143 +0,0 @@ -/** - * - * Copyright 2019-2022 California Institute of Technology ("Caltech"). - * U.S. Government sponsorship acknowledged. - * - * Licensed 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 io.opencaesar.oml; - -import org.eclipse.emf.common.util.EList; - -/** - * - * A representation of the model object 'Structured Property'. - * - * - * - * StructuredProperty is a [=SemanticProperty=] whose range is a [=Structure=]. It can specialize other [=StructuredProperties=]. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link io.opencaesar.oml.StructuredProperty#getRef Ref}
  • - *
  • {@link io.opencaesar.oml.StructuredProperty#isFunctional Functional}
  • - *
  • {@link io.opencaesar.oml.StructuredProperty#getDomains Domains}
  • - *
  • {@link io.opencaesar.oml.StructuredProperty#getRanges Ranges}
  • - *
- * - * @see io.opencaesar.oml.OmlPackage#getStructuredProperty() - * @model annotation="https://tabatkins.github.io/bikeshed heading='Properties'" - * @generated - */ -public interface StructuredProperty extends SemanticProperty, SpecializableProperty { - /** - * Returns the value of the 'Ref' reference. - * - * - * - * A ref to another structured property - * - * @return the value of the 'Ref' reference. - * @see #setRef(StructuredProperty) - * @see io.opencaesar.oml.OmlPackage#getStructuredProperty_Ref() - * @model - * @generated - */ - StructuredProperty getRef(); - - /** - * Sets the value of the '{@link io.opencaesar.oml.StructuredProperty#getRef Ref}' reference. - * - * - * @param value the new value of the 'Ref' reference. - * @see #getRef() - * @generated - */ - void setRef(StructuredProperty value); - - /** - * Returns the value of the 'Functional' attribute. - * - * - * - * Whether this property is functional (has a max of one value per instance) - * - * @return the value of the 'Functional' attribute. - * @see #setFunctional(boolean) - * @see io.opencaesar.oml.OmlPackage#getStructuredProperty_Functional() - * @model unique="false" - * @generated - */ - boolean isFunctional(); - - /** - * Sets the value of the '{@link io.opencaesar.oml.StructuredProperty#isFunctional Functional}' attribute. - * - * - * @param value the new value of the 'Functional' attribute. - * @see #isFunctional() - * @generated - */ - void setFunctional(boolean value); - - /** - * Returns the value of the 'Domains' reference list. - * The list contents are of type {@link io.opencaesar.oml.Classifier}. - * - * - * - * The classifiers that are the domains of this property - * - * @return the value of the 'Domains' reference list. - * @see io.opencaesar.oml.OmlPackage#getStructuredProperty_Domains() - * @model - * @generated - */ - EList getDomains(); - - /** - * Returns the value of the 'Ranges' reference list. - * The list contents are of type {@link io.opencaesar.oml.Structure}. - * - * - * - * The structures that are the range of this property - * - * @return the value of the 'Ranges' reference list. - * @see io.opencaesar.oml.OmlPackage#getStructuredProperty_Ranges() - * @model - * @generated - */ - EList getRanges(); - - /** - * - * - * @model kind="operation" unique="false" - * @generated - */ - EList getDomainList(); - - /** - * - * - * @model kind="operation" unique="false" - * @generated - */ - EList getRangeList(); - -} // StructuredProperty diff --git a/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/StructureInstanceImpl.java b/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/AnonymousConceptInstanceImpl.java similarity index 66% rename from io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/StructureInstanceImpl.java rename to io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/AnonymousConceptInstanceImpl.java index 074d6611..0b957db8 100644 --- a/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/StructureInstanceImpl.java +++ b/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/AnonymousConceptInstanceImpl.java @@ -18,12 +18,11 @@ */ package io.opencaesar.oml.impl; -import io.opencaesar.oml.Classifier; +import io.opencaesar.oml.AnonymousConceptInstance; +import io.opencaesar.oml.Entity; import io.opencaesar.oml.OmlPackage; +import io.opencaesar.oml.Relation; import io.opencaesar.oml.SemanticProperty; -import io.opencaesar.oml.Structure; -import io.opencaesar.oml.StructureInstance; -import io.opencaesar.oml.StructuredProperty; import java.lang.reflect.InvocationTargetException; @@ -37,20 +36,22 @@ import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.xtext.xbase.lib.IterableExtensions; + /** * - * An implementation of the model object 'Structure Instance'. + * An implementation of the model object 'Anonymous Concept Instance'. * *

* The following features are implemented: *

*
    - *
  • {@link io.opencaesar.oml.impl.StructureInstanceImpl#getType Type}
  • + *
  • {@link io.opencaesar.oml.impl.AnonymousConceptInstanceImpl#getType Type}
  • *
* * @generated */ -public class StructureInstanceImpl extends AnonymousInstanceImpl implements StructureInstance { +public class AnonymousConceptInstanceImpl extends AnonymousInstanceImpl implements AnonymousConceptInstance { /** * The cached value of the '{@link #getType() Type}' reference. * @@ -59,14 +60,14 @@ public class StructureInstanceImpl extends AnonymousInstanceImpl implements Stru * @generated * @ordered */ - protected Structure type; + protected Entity type; /** * * * @generated */ - protected StructureInstanceImpl() { + protected AnonymousConceptInstanceImpl() { super(); } @@ -77,7 +78,7 @@ protected StructureInstanceImpl() { */ @Override protected EClass eStaticClass() { - return OmlPackage.Literals.STRUCTURE_INSTANCE; + return OmlPackage.Literals.ANONYMOUS_CONCEPT_INSTANCE; } /** @@ -86,13 +87,13 @@ protected EClass eStaticClass() { * @generated */ @Override - public Structure getType() { + public Entity getType() { if (type != null && type.eIsProxy()) { InternalEObject oldType = (InternalEObject)type; - type = (Structure)eResolveProxy(oldType); + type = (Entity)eResolveProxy(oldType); if (type != oldType) { if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.RESOLVE, OmlPackage.STRUCTURE_INSTANCE__TYPE, oldType, type)); + eNotify(new ENotificationImpl(this, Notification.RESOLVE, OmlPackage.ANONYMOUS_CONCEPT_INSTANCE__TYPE, oldType, type)); } } return type; @@ -103,7 +104,7 @@ public Structure getType() { * * @generated */ - public Structure basicGetType() { + public Entity basicGetType() { return type; } @@ -113,11 +114,11 @@ public Structure basicGetType() { * @generated */ @Override - public void setType(Structure newType) { - Structure oldType = type; + public void setType(Entity newType) { + Entity oldType = type; type = newType; if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, OmlPackage.STRUCTURE_INSTANCE__TYPE, oldType, type)); + eNotify(new ENotificationImpl(this, Notification.SET, OmlPackage.ANONYMOUS_CONCEPT_INSTANCE__TYPE, oldType, type)); } /** @@ -126,29 +127,20 @@ public void setType(Structure newType) { * @generated */ @Override - public Structure getStructure() { - Structure _xifexpression = null; - Structure _type = this.getType(); + public Entity getEntity() { + Entity _xifexpression = null; + Entity _type = this.getType(); boolean _tripleNotEquals = (_type != null); if (_tripleNotEquals) { return this.getType(); } else { - Structure _xblockexpression = null; + Entity _xblockexpression = null; { SemanticProperty property = this.getIsValueOfProperty(); - Structure _xifexpression_1 = null; - if ((property instanceof StructuredProperty)) { - Structure _xifexpression_2 = null; - boolean _isEmpty = ((StructuredProperty)property).getRanges().isEmpty(); - boolean _not = (!_isEmpty); - if (_not) { - _xifexpression_2 = ((StructuredProperty)property).getRanges().get(0); - } - else { - _xifexpression_2 = null; - } - _xifexpression_1 = _xifexpression_2; + Entity _xifexpression_1 = null; + if ((property instanceof Relation)) { + _xifexpression_1 = IterableExtensions.head(((Relation)property).getRanges()); } _xblockexpression = _xifexpression_1; } @@ -163,13 +155,13 @@ public Structure getStructure() { * @generated */ @Override - public EList getTypes() { - Structure structure = this.getStructure(); - if ((structure != null)) { - return ECollections.singletonEList(structure); + public EList getTypes() { + Entity entity = this.getEntity(); + if ((entity != null)) { + return ECollections.singletonEList(entity); } else { - return ECollections.emptyEList(); + return ECollections.emptyEList(); } } @@ -181,7 +173,7 @@ public EList getTypes() { @Override public Object eGet(int featureID, boolean resolve, boolean coreType) { switch (featureID) { - case OmlPackage.STRUCTURE_INSTANCE__TYPE: + case OmlPackage.ANONYMOUS_CONCEPT_INSTANCE__TYPE: if (resolve) return getType(); return basicGetType(); } @@ -196,8 +188,8 @@ public Object eGet(int featureID, boolean resolve, boolean coreType) { @Override public void eSet(int featureID, Object newValue) { switch (featureID) { - case OmlPackage.STRUCTURE_INSTANCE__TYPE: - setType((Structure)newValue); + case OmlPackage.ANONYMOUS_CONCEPT_INSTANCE__TYPE: + setType((Entity)newValue); return; } super.eSet(featureID, newValue); @@ -211,8 +203,8 @@ public void eSet(int featureID, Object newValue) { @Override public void eUnset(int featureID) { switch (featureID) { - case OmlPackage.STRUCTURE_INSTANCE__TYPE: - setType((Structure)null); + case OmlPackage.ANONYMOUS_CONCEPT_INSTANCE__TYPE: + setType((Entity)null); return; } super.eUnset(featureID); @@ -226,7 +218,7 @@ public void eUnset(int featureID) { @Override public boolean eIsSet(int featureID) { switch (featureID) { - case OmlPackage.STRUCTURE_INSTANCE__TYPE: + case OmlPackage.ANONYMOUS_CONCEPT_INSTANCE__TYPE: return type != null; } return super.eIsSet(featureID); @@ -240,12 +232,12 @@ public boolean eIsSet(int featureID) { @Override public Object eInvoke(int operationID, EList arguments) throws InvocationTargetException { switch (operationID) { - case OmlPackage.STRUCTURE_INSTANCE___GET_STRUCTURE: - return getStructure(); - case OmlPackage.STRUCTURE_INSTANCE___GET_TYPES: + case OmlPackage.ANONYMOUS_CONCEPT_INSTANCE___GET_ENTITY: + return getEntity(); + case OmlPackage.ANONYMOUS_CONCEPT_INSTANCE___GET_TYPES: return getTypes(); } return super.eInvoke(operationID, arguments); } -} //StructureInstanceImpl +} //AnonymousConceptInstanceImpl diff --git a/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/AnonymousRelationInstanceImpl.java b/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/AnonymousRelationInstanceImpl.java index 860f98a3..250a4471 100644 --- a/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/AnonymousRelationInstanceImpl.java +++ b/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/AnonymousRelationInstanceImpl.java @@ -19,7 +19,7 @@ package io.opencaesar.oml.impl; import io.opencaesar.oml.AnonymousRelationInstance; -import io.opencaesar.oml.Classifier; +import io.opencaesar.oml.Entity; import io.opencaesar.oml.ForwardRelation; import io.opencaesar.oml.NamedInstance; import io.opencaesar.oml.OmlPackage; @@ -152,13 +152,13 @@ public RelationEntity getRelationEntity() { * @generated */ @Override - public EList getTypes() { + public EList getTypes() { RelationEntity entity = this.getRelationEntity(); if ((entity != null)) { - return ECollections.singletonEList(entity); + return ECollections.singletonEList(entity); } else { - return ECollections.emptyEList(); + return ECollections.emptyEList(); } } diff --git a/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/ClassifierImpl.java b/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/ClassifierImpl.java deleted file mode 100644 index 5ef4484a..00000000 --- a/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/ClassifierImpl.java +++ /dev/null @@ -1,222 +0,0 @@ -/** - * - * Copyright 2019-2022 California Institute of Technology ("Caltech"). - * U.S. Government sponsorship acknowledged. - * - * Licensed 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 io.opencaesar.oml.impl; - -import io.opencaesar.oml.Classifier; -import io.opencaesar.oml.ClassifierEquivalenceAxiom; -import io.opencaesar.oml.OmlPackage; -import io.opencaesar.oml.PropertyRestrictionAxiom; - -import java.util.Collection; - -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.common.util.EList; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList; -import org.eclipse.emf.ecore.util.InternalEList; - -/** - * - * An implementation of the model object 'Classifier'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link io.opencaesar.oml.impl.ClassifierImpl#getOwnedEquivalences Owned Equivalences}
  • - *
  • {@link io.opencaesar.oml.impl.ClassifierImpl#getOwnedPropertyRestrictions Owned Property Restrictions}
  • - *
- * - * @generated - */ -public abstract class ClassifierImpl extends TypeImpl implements Classifier { - /** - * The cached value of the '{@link #getOwnedEquivalences() Owned Equivalences}' containment reference list. - * - * - * @see #getOwnedEquivalences() - * @generated - * @ordered - */ - protected EList ownedEquivalences; - - /** - * The cached value of the '{@link #getOwnedPropertyRestrictions() Owned Property Restrictions}' containment reference list. - * - * - * @see #getOwnedPropertyRestrictions() - * @generated - * @ordered - */ - protected EList ownedPropertyRestrictions; - - /** - * - * - * @generated - */ - protected ClassifierImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return OmlPackage.Literals.CLASSIFIER; - } - - /** - * - * - * @generated - */ - @Override - public EList getOwnedEquivalences() { - if (ownedEquivalences == null) { - ownedEquivalences = new EObjectContainmentWithInverseEList(ClassifierEquivalenceAxiom.class, this, OmlPackage.CLASSIFIER__OWNED_EQUIVALENCES, OmlPackage.CLASSIFIER_EQUIVALENCE_AXIOM__OWNING_CLASSIFIER); - } - return ownedEquivalences; - } - - /** - * - * - * @generated - */ - @Override - public EList getOwnedPropertyRestrictions() { - if (ownedPropertyRestrictions == null) { - ownedPropertyRestrictions = new EObjectContainmentWithInverseEList(PropertyRestrictionAxiom.class, this, OmlPackage.CLASSIFIER__OWNED_PROPERTY_RESTRICTIONS, OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_CLASSIFIER); - } - return ownedPropertyRestrictions; - } - - /** - * - * - * @generated - */ - @SuppressWarnings("unchecked") - @Override - public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { - switch (featureID) { - case OmlPackage.CLASSIFIER__OWNED_EQUIVALENCES: - return ((InternalEList)(InternalEList)getOwnedEquivalences()).basicAdd(otherEnd, msgs); - case OmlPackage.CLASSIFIER__OWNED_PROPERTY_RESTRICTIONS: - return ((InternalEList)(InternalEList)getOwnedPropertyRestrictions()).basicAdd(otherEnd, msgs); - } - return super.eInverseAdd(otherEnd, featureID, msgs); - } - - /** - * - * - * @generated - */ - @Override - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { - switch (featureID) { - case OmlPackage.CLASSIFIER__OWNED_EQUIVALENCES: - return ((InternalEList)getOwnedEquivalences()).basicRemove(otherEnd, msgs); - case OmlPackage.CLASSIFIER__OWNED_PROPERTY_RESTRICTIONS: - return ((InternalEList)getOwnedPropertyRestrictions()).basicRemove(otherEnd, msgs); - } - return super.eInverseRemove(otherEnd, featureID, msgs); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case OmlPackage.CLASSIFIER__OWNED_EQUIVALENCES: - return getOwnedEquivalences(); - case OmlPackage.CLASSIFIER__OWNED_PROPERTY_RESTRICTIONS: - return getOwnedPropertyRestrictions(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @SuppressWarnings("unchecked") - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case OmlPackage.CLASSIFIER__OWNED_EQUIVALENCES: - getOwnedEquivalences().clear(); - getOwnedEquivalences().addAll((Collection)newValue); - return; - case OmlPackage.CLASSIFIER__OWNED_PROPERTY_RESTRICTIONS: - getOwnedPropertyRestrictions().clear(); - getOwnedPropertyRestrictions().addAll((Collection)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case OmlPackage.CLASSIFIER__OWNED_EQUIVALENCES: - getOwnedEquivalences().clear(); - return; - case OmlPackage.CLASSIFIER__OWNED_PROPERTY_RESTRICTIONS: - getOwnedPropertyRestrictions().clear(); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case OmlPackage.CLASSIFIER__OWNED_EQUIVALENCES: - return ownedEquivalences != null && !ownedEquivalences.isEmpty(); - case OmlPackage.CLASSIFIER__OWNED_PROPERTY_RESTRICTIONS: - return ownedPropertyRestrictions != null && !ownedPropertyRestrictions.isEmpty(); - } - return super.eIsSet(featureID); - } - -} //ClassifierImpl diff --git a/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/ClassifierEquivalenceAxiomImpl.java b/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/EntityEquivalenceAxiomImpl.java similarity index 56% rename from io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/ClassifierEquivalenceAxiomImpl.java rename to io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/EntityEquivalenceAxiomImpl.java index 593a3f04..25876f79 100644 --- a/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/ClassifierEquivalenceAxiomImpl.java +++ b/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/EntityEquivalenceAxiomImpl.java @@ -18,8 +18,8 @@ */ package io.opencaesar.oml.impl; -import io.opencaesar.oml.Classifier; -import io.opencaesar.oml.ClassifierEquivalenceAxiom; +import io.opencaesar.oml.Entity; +import io.opencaesar.oml.EntityEquivalenceAxiom; import io.opencaesar.oml.Member; import io.opencaesar.oml.OmlPackage; import io.opencaesar.oml.PropertyRestrictionAxiom; @@ -45,29 +45,29 @@ /** * - * An implementation of the model object 'Classifier Equivalence Axiom'. + * An implementation of the model object 'Entity Equivalence Axiom'. * *

* The following features are implemented: *

*
    - *
  • {@link io.opencaesar.oml.impl.ClassifierEquivalenceAxiomImpl#getSuperClassifiers Super Classifiers}
  • - *
  • {@link io.opencaesar.oml.impl.ClassifierEquivalenceAxiomImpl#getOwnedPropertyRestrictions Owned Property Restrictions}
  • - *
  • {@link io.opencaesar.oml.impl.ClassifierEquivalenceAxiomImpl#getOwningClassifier Owning Classifier}
  • + *
  • {@link io.opencaesar.oml.impl.EntityEquivalenceAxiomImpl#getSuperEntities Super Entities}
  • + *
  • {@link io.opencaesar.oml.impl.EntityEquivalenceAxiomImpl#getOwnedPropertyRestrictions Owned Property Restrictions}
  • + *
  • {@link io.opencaesar.oml.impl.EntityEquivalenceAxiomImpl#getOwningEntity Owning Entity}
  • *
* * @generated */ -public class ClassifierEquivalenceAxiomImpl extends AxiomImpl implements ClassifierEquivalenceAxiom { +public class EntityEquivalenceAxiomImpl extends AxiomImpl implements EntityEquivalenceAxiom { /** - * The cached value of the '{@link #getSuperClassifiers() Super Classifiers}' reference list. + * The cached value of the '{@link #getSuperEntities() Super Entities}' reference list. * * - * @see #getSuperClassifiers() + * @see #getSuperEntities() * @generated * @ordered */ - protected EList superClassifiers; + protected EList superEntities; /** * The cached value of the '{@link #getOwnedPropertyRestrictions() Owned Property Restrictions}' containment reference list. @@ -84,7 +84,7 @@ public class ClassifierEquivalenceAxiomImpl extends AxiomImpl implements Classif * * @generated */ - protected ClassifierEquivalenceAxiomImpl() { + protected EntityEquivalenceAxiomImpl() { super(); } @@ -95,7 +95,7 @@ protected ClassifierEquivalenceAxiomImpl() { */ @Override protected EClass eStaticClass() { - return OmlPackage.Literals.CLASSIFIER_EQUIVALENCE_AXIOM; + return OmlPackage.Literals.ENTITY_EQUIVALENCE_AXIOM; } /** @@ -104,11 +104,11 @@ protected EClass eStaticClass() { * @generated */ @Override - public EList getSuperClassifiers() { - if (superClassifiers == null) { - superClassifiers = new EObjectResolvingEList(Classifier.class, this, OmlPackage.CLASSIFIER_EQUIVALENCE_AXIOM__SUPER_CLASSIFIERS); + public EList getSuperEntities() { + if (superEntities == null) { + superEntities = new EObjectResolvingEList(Entity.class, this, OmlPackage.ENTITY_EQUIVALENCE_AXIOM__SUPER_ENTITIES); } - return superClassifiers; + return superEntities; } /** @@ -119,7 +119,7 @@ public EList getSuperClassifiers() { @Override public EList getOwnedPropertyRestrictions() { if (ownedPropertyRestrictions == null) { - ownedPropertyRestrictions = new EObjectContainmentWithInverseEList(PropertyRestrictionAxiom.class, this, OmlPackage.CLASSIFIER_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS, OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_AXIOM); + ownedPropertyRestrictions = new EObjectContainmentWithInverseEList(PropertyRestrictionAxiom.class, this, OmlPackage.ENTITY_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS, OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_AXIOM); } return ownedPropertyRestrictions; } @@ -130,9 +130,9 @@ public EList getOwnedPropertyRestrictions() { * @generated */ @Override - public Classifier getOwningClassifier() { - if (eContainerFeatureID() != OmlPackage.CLASSIFIER_EQUIVALENCE_AXIOM__OWNING_CLASSIFIER) return null; - return (Classifier)eContainer(); + public Entity getOwningEntity() { + if (eContainerFeatureID() != OmlPackage.ENTITY_EQUIVALENCE_AXIOM__OWNING_ENTITY) return null; + return (Entity)eContainer(); } /** @@ -140,9 +140,9 @@ public Classifier getOwningClassifier() { * * @generated */ - public Classifier basicGetOwningClassifier() { - if (eContainerFeatureID() != OmlPackage.CLASSIFIER_EQUIVALENCE_AXIOM__OWNING_CLASSIFIER) return null; - return (Classifier)eInternalContainer(); + public Entity basicGetOwningEntity() { + if (eContainerFeatureID() != OmlPackage.ENTITY_EQUIVALENCE_AXIOM__OWNING_ENTITY) return null; + return (Entity)eInternalContainer(); } /** @@ -150,8 +150,8 @@ public Classifier basicGetOwningClassifier() { * * @generated */ - public NotificationChain basicSetOwningClassifier(Classifier newOwningClassifier, NotificationChain msgs) { - msgs = eBasicSetContainer((InternalEObject)newOwningClassifier, OmlPackage.CLASSIFIER_EQUIVALENCE_AXIOM__OWNING_CLASSIFIER, msgs); + public NotificationChain basicSetOwningEntity(Entity newOwningEntity, NotificationChain msgs) { + msgs = eBasicSetContainer((InternalEObject)newOwningEntity, OmlPackage.ENTITY_EQUIVALENCE_AXIOM__OWNING_ENTITY, msgs); return msgs; } @@ -161,20 +161,20 @@ public NotificationChain basicSetOwningClassifier(Classifier newOwningClassifier * @generated */ @Override - public void setOwningClassifier(Classifier newOwningClassifier) { - if (newOwningClassifier != eInternalContainer() || (eContainerFeatureID() != OmlPackage.CLASSIFIER_EQUIVALENCE_AXIOM__OWNING_CLASSIFIER && newOwningClassifier != null)) { - if (EcoreUtil.isAncestor(this, newOwningClassifier)) + public void setOwningEntity(Entity newOwningEntity) { + if (newOwningEntity != eInternalContainer() || (eContainerFeatureID() != OmlPackage.ENTITY_EQUIVALENCE_AXIOM__OWNING_ENTITY && newOwningEntity != null)) { + if (EcoreUtil.isAncestor(this, newOwningEntity)) throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); NotificationChain msgs = null; if (eInternalContainer() != null) msgs = eBasicRemoveFromContainer(msgs); - if (newOwningClassifier != null) - msgs = ((InternalEObject)newOwningClassifier).eInverseAdd(this, OmlPackage.CLASSIFIER__OWNED_EQUIVALENCES, Classifier.class, msgs); - msgs = basicSetOwningClassifier(newOwningClassifier, msgs); + if (newOwningEntity != null) + msgs = ((InternalEObject)newOwningEntity).eInverseAdd(this, OmlPackage.ENTITY__OWNED_EQUIVALENCES, Entity.class, msgs); + msgs = basicSetOwningEntity(newOwningEntity, msgs); if (msgs != null) msgs.dispatch(); } else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, OmlPackage.CLASSIFIER_EQUIVALENCE_AXIOM__OWNING_CLASSIFIER, newOwningClassifier, newOwningClassifier)); + eNotify(new ENotificationImpl(this, Notification.SET, OmlPackage.ENTITY_EQUIVALENCE_AXIOM__OWNING_ENTITY, newOwningEntity, newOwningEntity)); } /** @@ -183,9 +183,9 @@ else if (eNotificationRequired()) * @generated */ @Override - public Classifier getSubClassifier() { - Member _resolve = this.getOwningClassifier().resolve(); - return ((Classifier) _resolve); + public Entity getSubEntity() { + Member _resolve = this.getOwningEntity().resolve(); + return ((Entity) _resolve); } /** @@ -194,8 +194,8 @@ public Classifier getSubClassifier() { * @generated */ @Override - public Classifier getCharacterizedTerm() { - return this.getSubClassifier(); + public Entity getCharacterizedTerm() { + return this.getSubEntity(); } /** @@ -207,12 +207,12 @@ public Classifier getCharacterizedTerm() { @Override public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { switch (featureID) { - case OmlPackage.CLASSIFIER_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS: + case OmlPackage.ENTITY_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS: return ((InternalEList)(InternalEList)getOwnedPropertyRestrictions()).basicAdd(otherEnd, msgs); - case OmlPackage.CLASSIFIER_EQUIVALENCE_AXIOM__OWNING_CLASSIFIER: + case OmlPackage.ENTITY_EQUIVALENCE_AXIOM__OWNING_ENTITY: if (eInternalContainer() != null) msgs = eBasicRemoveFromContainer(msgs); - return basicSetOwningClassifier((Classifier)otherEnd, msgs); + return basicSetOwningEntity((Entity)otherEnd, msgs); } return super.eInverseAdd(otherEnd, featureID, msgs); } @@ -225,10 +225,10 @@ public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, No @Override public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { switch (featureID) { - case OmlPackage.CLASSIFIER_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS: + case OmlPackage.ENTITY_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS: return ((InternalEList)getOwnedPropertyRestrictions()).basicRemove(otherEnd, msgs); - case OmlPackage.CLASSIFIER_EQUIVALENCE_AXIOM__OWNING_CLASSIFIER: - return basicSetOwningClassifier(null, msgs); + case OmlPackage.ENTITY_EQUIVALENCE_AXIOM__OWNING_ENTITY: + return basicSetOwningEntity(null, msgs); } return super.eInverseRemove(otherEnd, featureID, msgs); } @@ -241,8 +241,8 @@ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, @Override public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) { switch (eContainerFeatureID()) { - case OmlPackage.CLASSIFIER_EQUIVALENCE_AXIOM__OWNING_CLASSIFIER: - return eInternalContainer().eInverseRemove(this, OmlPackage.CLASSIFIER__OWNED_EQUIVALENCES, Classifier.class, msgs); + case OmlPackage.ENTITY_EQUIVALENCE_AXIOM__OWNING_ENTITY: + return eInternalContainer().eInverseRemove(this, OmlPackage.ENTITY__OWNED_EQUIVALENCES, Entity.class, msgs); } return super.eBasicRemoveFromContainerFeature(msgs); } @@ -255,13 +255,13 @@ public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs @Override public Object eGet(int featureID, boolean resolve, boolean coreType) { switch (featureID) { - case OmlPackage.CLASSIFIER_EQUIVALENCE_AXIOM__SUPER_CLASSIFIERS: - return getSuperClassifiers(); - case OmlPackage.CLASSIFIER_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS: + case OmlPackage.ENTITY_EQUIVALENCE_AXIOM__SUPER_ENTITIES: + return getSuperEntities(); + case OmlPackage.ENTITY_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS: return getOwnedPropertyRestrictions(); - case OmlPackage.CLASSIFIER_EQUIVALENCE_AXIOM__OWNING_CLASSIFIER: - if (resolve) return getOwningClassifier(); - return basicGetOwningClassifier(); + case OmlPackage.ENTITY_EQUIVALENCE_AXIOM__OWNING_ENTITY: + if (resolve) return getOwningEntity(); + return basicGetOwningEntity(); } return super.eGet(featureID, resolve, coreType); } @@ -275,16 +275,16 @@ public Object eGet(int featureID, boolean resolve, boolean coreType) { @Override public void eSet(int featureID, Object newValue) { switch (featureID) { - case OmlPackage.CLASSIFIER_EQUIVALENCE_AXIOM__SUPER_CLASSIFIERS: - getSuperClassifiers().clear(); - getSuperClassifiers().addAll((Collection)newValue); + case OmlPackage.ENTITY_EQUIVALENCE_AXIOM__SUPER_ENTITIES: + getSuperEntities().clear(); + getSuperEntities().addAll((Collection)newValue); return; - case OmlPackage.CLASSIFIER_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS: + case OmlPackage.ENTITY_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS: getOwnedPropertyRestrictions().clear(); getOwnedPropertyRestrictions().addAll((Collection)newValue); return; - case OmlPackage.CLASSIFIER_EQUIVALENCE_AXIOM__OWNING_CLASSIFIER: - setOwningClassifier((Classifier)newValue); + case OmlPackage.ENTITY_EQUIVALENCE_AXIOM__OWNING_ENTITY: + setOwningEntity((Entity)newValue); return; } super.eSet(featureID, newValue); @@ -298,14 +298,14 @@ public void eSet(int featureID, Object newValue) { @Override public void eUnset(int featureID) { switch (featureID) { - case OmlPackage.CLASSIFIER_EQUIVALENCE_AXIOM__SUPER_CLASSIFIERS: - getSuperClassifiers().clear(); + case OmlPackage.ENTITY_EQUIVALENCE_AXIOM__SUPER_ENTITIES: + getSuperEntities().clear(); return; - case OmlPackage.CLASSIFIER_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS: + case OmlPackage.ENTITY_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS: getOwnedPropertyRestrictions().clear(); return; - case OmlPackage.CLASSIFIER_EQUIVALENCE_AXIOM__OWNING_CLASSIFIER: - setOwningClassifier((Classifier)null); + case OmlPackage.ENTITY_EQUIVALENCE_AXIOM__OWNING_ENTITY: + setOwningEntity((Entity)null); return; } super.eUnset(featureID); @@ -319,12 +319,12 @@ public void eUnset(int featureID) { @Override public boolean eIsSet(int featureID) { switch (featureID) { - case OmlPackage.CLASSIFIER_EQUIVALENCE_AXIOM__SUPER_CLASSIFIERS: - return superClassifiers != null && !superClassifiers.isEmpty(); - case OmlPackage.CLASSIFIER_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS: + case OmlPackage.ENTITY_EQUIVALENCE_AXIOM__SUPER_ENTITIES: + return superEntities != null && !superEntities.isEmpty(); + case OmlPackage.ENTITY_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS: return ownedPropertyRestrictions != null && !ownedPropertyRestrictions.isEmpty(); - case OmlPackage.CLASSIFIER_EQUIVALENCE_AXIOM__OWNING_CLASSIFIER: - return basicGetOwningClassifier() != null; + case OmlPackage.ENTITY_EQUIVALENCE_AXIOM__OWNING_ENTITY: + return basicGetOwningEntity() != null; } return super.eIsSet(featureID); } @@ -337,12 +337,12 @@ public boolean eIsSet(int featureID) { @Override public Object eInvoke(int operationID, EList arguments) throws InvocationTargetException { switch (operationID) { - case OmlPackage.CLASSIFIER_EQUIVALENCE_AXIOM___GET_SUB_CLASSIFIER: - return getSubClassifier(); - case OmlPackage.CLASSIFIER_EQUIVALENCE_AXIOM___GET_CHARACTERIZED_TERM: + case OmlPackage.ENTITY_EQUIVALENCE_AXIOM___GET_SUB_ENTITY: + return getSubEntity(); + case OmlPackage.ENTITY_EQUIVALENCE_AXIOM___GET_CHARACTERIZED_TERM: return getCharacterizedTerm(); } return super.eInvoke(operationID, arguments); } -} //ClassifierEquivalenceAxiomImpl +} //EntityEquivalenceAxiomImpl diff --git a/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/EntityImpl.java b/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/EntityImpl.java index 7bb52471..2204746a 100644 --- a/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/EntityImpl.java +++ b/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/EntityImpl.java @@ -19,8 +19,10 @@ package io.opencaesar.oml.impl; import io.opencaesar.oml.Entity; +import io.opencaesar.oml.EntityEquivalenceAxiom; import io.opencaesar.oml.KeyAxiom; import io.opencaesar.oml.OmlPackage; +import io.opencaesar.oml.PropertyRestrictionAxiom; import java.util.Collection; @@ -42,12 +44,34 @@ * The following features are implemented: *

*
    + *
  • {@link io.opencaesar.oml.impl.EntityImpl#getOwnedEquivalences Owned Equivalences}
  • + *
  • {@link io.opencaesar.oml.impl.EntityImpl#getOwnedPropertyRestrictions Owned Property Restrictions}
  • *
  • {@link io.opencaesar.oml.impl.EntityImpl#getOwnedKeys Owned Keys}
  • *
* * @generated */ -public abstract class EntityImpl extends ClassifierImpl implements Entity { +public abstract class EntityImpl extends TypeImpl implements Entity { + /** + * The cached value of the '{@link #getOwnedEquivalences() Owned Equivalences}' containment reference list. + * + * + * @see #getOwnedEquivalences() + * @generated + * @ordered + */ + protected EList ownedEquivalences; + + /** + * The cached value of the '{@link #getOwnedPropertyRestrictions() Owned Property Restrictions}' containment reference list. + * + * + * @see #getOwnedPropertyRestrictions() + * @generated + * @ordered + */ + protected EList ownedPropertyRestrictions; + /** * The cached value of the '{@link #getOwnedKeys() Owned Keys}' containment reference list. * @@ -77,6 +101,32 @@ protected EClass eStaticClass() { return OmlPackage.Literals.ENTITY; } + /** + * + * + * @generated + */ + @Override + public EList getOwnedEquivalences() { + if (ownedEquivalences == null) { + ownedEquivalences = new EObjectContainmentWithInverseEList(EntityEquivalenceAxiom.class, this, OmlPackage.ENTITY__OWNED_EQUIVALENCES, OmlPackage.ENTITY_EQUIVALENCE_AXIOM__OWNING_ENTITY); + } + return ownedEquivalences; + } + + /** + * + * + * @generated + */ + @Override + public EList getOwnedPropertyRestrictions() { + if (ownedPropertyRestrictions == null) { + ownedPropertyRestrictions = new EObjectContainmentWithInverseEList(PropertyRestrictionAxiom.class, this, OmlPackage.ENTITY__OWNED_PROPERTY_RESTRICTIONS, OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_ENTITY); + } + return ownedPropertyRestrictions; + } + /** * * @@ -99,6 +149,10 @@ public EList getOwnedKeys() { @Override public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { switch (featureID) { + case OmlPackage.ENTITY__OWNED_EQUIVALENCES: + return ((InternalEList)(InternalEList)getOwnedEquivalences()).basicAdd(otherEnd, msgs); + case OmlPackage.ENTITY__OWNED_PROPERTY_RESTRICTIONS: + return ((InternalEList)(InternalEList)getOwnedPropertyRestrictions()).basicAdd(otherEnd, msgs); case OmlPackage.ENTITY__OWNED_KEYS: return ((InternalEList)(InternalEList)getOwnedKeys()).basicAdd(otherEnd, msgs); } @@ -113,6 +167,10 @@ public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, No @Override public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { switch (featureID) { + case OmlPackage.ENTITY__OWNED_EQUIVALENCES: + return ((InternalEList)getOwnedEquivalences()).basicRemove(otherEnd, msgs); + case OmlPackage.ENTITY__OWNED_PROPERTY_RESTRICTIONS: + return ((InternalEList)getOwnedPropertyRestrictions()).basicRemove(otherEnd, msgs); case OmlPackage.ENTITY__OWNED_KEYS: return ((InternalEList)getOwnedKeys()).basicRemove(otherEnd, msgs); } @@ -127,6 +185,10 @@ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, @Override public Object eGet(int featureID, boolean resolve, boolean coreType) { switch (featureID) { + case OmlPackage.ENTITY__OWNED_EQUIVALENCES: + return getOwnedEquivalences(); + case OmlPackage.ENTITY__OWNED_PROPERTY_RESTRICTIONS: + return getOwnedPropertyRestrictions(); case OmlPackage.ENTITY__OWNED_KEYS: return getOwnedKeys(); } @@ -142,6 +204,14 @@ public Object eGet(int featureID, boolean resolve, boolean coreType) { @Override public void eSet(int featureID, Object newValue) { switch (featureID) { + case OmlPackage.ENTITY__OWNED_EQUIVALENCES: + getOwnedEquivalences().clear(); + getOwnedEquivalences().addAll((Collection)newValue); + return; + case OmlPackage.ENTITY__OWNED_PROPERTY_RESTRICTIONS: + getOwnedPropertyRestrictions().clear(); + getOwnedPropertyRestrictions().addAll((Collection)newValue); + return; case OmlPackage.ENTITY__OWNED_KEYS: getOwnedKeys().clear(); getOwnedKeys().addAll((Collection)newValue); @@ -158,6 +228,12 @@ public void eSet(int featureID, Object newValue) { @Override public void eUnset(int featureID) { switch (featureID) { + case OmlPackage.ENTITY__OWNED_EQUIVALENCES: + getOwnedEquivalences().clear(); + return; + case OmlPackage.ENTITY__OWNED_PROPERTY_RESTRICTIONS: + getOwnedPropertyRestrictions().clear(); + return; case OmlPackage.ENTITY__OWNED_KEYS: getOwnedKeys().clear(); return; @@ -173,6 +249,10 @@ public void eUnset(int featureID) { @Override public boolean eIsSet(int featureID) { switch (featureID) { + case OmlPackage.ENTITY__OWNED_EQUIVALENCES: + return ownedEquivalences != null && !ownedEquivalences.isEmpty(); + case OmlPackage.ENTITY__OWNED_PROPERTY_RESTRICTIONS: + return ownedPropertyRestrictions != null && !ownedPropertyRestrictions.isEmpty(); case OmlPackage.ENTITY__OWNED_KEYS: return ownedKeys != null && !ownedKeys.isEmpty(); } diff --git a/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/InstanceImpl.java b/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/InstanceImpl.java index 67442f71..938172d8 100644 --- a/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/InstanceImpl.java +++ b/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/InstanceImpl.java @@ -18,7 +18,7 @@ */ package io.opencaesar.oml.impl; -import io.opencaesar.oml.Classifier; +import io.opencaesar.oml.Entity; import io.opencaesar.oml.Instance; import io.opencaesar.oml.OmlPackage; import io.opencaesar.oml.PropertyValueAssertion; @@ -99,7 +99,7 @@ public EList getOwnedPropertyValues() { * @generated */ @Override - public EList getTypes() { + public EList getTypes() { // TODO: implement this method // Ensure that you remove @generated or mark it @generated NOT throw new UnsupportedOperationException(); diff --git a/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/NamedInstanceImpl.java b/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/NamedInstanceImpl.java index 072a9fa3..f80ff3aa 100644 --- a/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/NamedInstanceImpl.java +++ b/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/NamedInstanceImpl.java @@ -18,7 +18,6 @@ */ package io.opencaesar.oml.impl; -import io.opencaesar.oml.Classifier; import io.opencaesar.oml.Entity; import io.opencaesar.oml.Instance; import io.opencaesar.oml.NamedInstance; @@ -145,13 +144,13 @@ public Entity apply(final TypeAssertion it) { * @generated */ @Override - public EList getTypes() { - final Function1 _function = new Function1() { - public Classifier apply(final TypeAssertion it) { + public EList getTypes() { + final Function1 _function = new Function1() { + public Entity apply(final TypeAssertion it) { return it.getType(); } }; - return XcoreEListExtensions.map(this.getOwnedTypes(), _function); + return XcoreEListExtensions.map(this.getOwnedTypes(), _function); } /** diff --git a/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/OmlFactoryImpl.java b/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/OmlFactoryImpl.java index 53fef088..ed02154d 100644 --- a/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/OmlFactoryImpl.java +++ b/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/OmlFactoryImpl.java @@ -88,25 +88,23 @@ public EObject create(EClass eClass) { case OmlPackage.RULE: return createRule(); case OmlPackage.BUILT_IN: return createBuiltIn(); case OmlPackage.SCALAR: return createScalar(); - case OmlPackage.STRUCTURE: return createStructure(); case OmlPackage.ASPECT: return createAspect(); case OmlPackage.CONCEPT: return createConcept(); case OmlPackage.RELATION_ENTITY: return createRelationEntity(); case OmlPackage.ANNOTATION_PROPERTY: return createAnnotationProperty(); case OmlPackage.SCALAR_PROPERTY: return createScalarProperty(); - case OmlPackage.STRUCTURED_PROPERTY: return createStructuredProperty(); case OmlPackage.FORWARD_RELATION: return createForwardRelation(); case OmlPackage.REVERSE_RELATION: return createReverseRelation(); case OmlPackage.UNREIFIED_RELATION: return createUnreifiedRelation(); case OmlPackage.CONCEPT_INSTANCE: return createConceptInstance(); case OmlPackage.RELATION_INSTANCE: return createRelationInstance(); - case OmlPackage.STRUCTURE_INSTANCE: return createStructureInstance(); + case OmlPackage.ANONYMOUS_CONCEPT_INSTANCE: return createAnonymousConceptInstance(); case OmlPackage.ANONYMOUS_RELATION_INSTANCE: return createAnonymousRelationInstance(); case OmlPackage.KEY_AXIOM: return createKeyAxiom(); case OmlPackage.SPECIALIZATION_AXIOM: return createSpecializationAxiom(); case OmlPackage.INSTANCE_ENUMERATION_AXIOM: return createInstanceEnumerationAxiom(); case OmlPackage.LITERAL_ENUMERATION_AXIOM: return createLiteralEnumerationAxiom(); - case OmlPackage.CLASSIFIER_EQUIVALENCE_AXIOM: return createClassifierEquivalenceAxiom(); + case OmlPackage.ENTITY_EQUIVALENCE_AXIOM: return createEntityEquivalenceAxiom(); case OmlPackage.SCALAR_EQUIVALENCE_AXIOM: return createScalarEquivalenceAxiom(); case OmlPackage.PROPERTY_EQUIVALENCE_AXIOM: return createPropertyEquivalenceAxiom(); case OmlPackage.PROPERTY_RANGE_RESTRICTION_AXIOM: return createPropertyRangeRestrictionAxiom(); @@ -307,17 +305,6 @@ public Scalar createScalar() { return scalar; } - /** - * - * - * @generated - */ - @Override - public Structure createStructure() { - StructureImpl structure = new StructureImpl(); - return structure; - } - /** * * @@ -373,17 +360,6 @@ public ScalarProperty createScalarProperty() { return scalarProperty; } - /** - * - * - * @generated - */ - @Override - public StructuredProperty createStructuredProperty() { - StructuredPropertyImpl structuredProperty = new StructuredPropertyImpl(); - return structuredProperty; - } - /** * * @@ -445,9 +421,9 @@ public RelationInstance createRelationInstance() { * @generated */ @Override - public StructureInstance createStructureInstance() { - StructureInstanceImpl structureInstance = new StructureInstanceImpl(); - return structureInstance; + public AnonymousConceptInstance createAnonymousConceptInstance() { + AnonymousConceptInstanceImpl anonymousConceptInstance = new AnonymousConceptInstanceImpl(); + return anonymousConceptInstance; } /** @@ -511,9 +487,9 @@ public LiteralEnumerationAxiom createLiteralEnumerationAxiom() { * @generated */ @Override - public ClassifierEquivalenceAxiom createClassifierEquivalenceAxiom() { - ClassifierEquivalenceAxiomImpl classifierEquivalenceAxiom = new ClassifierEquivalenceAxiomImpl(); - return classifierEquivalenceAxiom; + public EntityEquivalenceAxiom createEntityEquivalenceAxiom() { + EntityEquivalenceAxiomImpl entityEquivalenceAxiom = new EntityEquivalenceAxiomImpl(); + return entityEquivalenceAxiom; } /** diff --git a/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/OmlPackageImpl.java b/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/OmlPackageImpl.java index a18cbbde..a7fbd1d1 100644 --- a/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/OmlPackageImpl.java +++ b/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/OmlPackageImpl.java @@ -20,6 +20,7 @@ import io.opencaesar.oml.Annotation; import io.opencaesar.oml.AnnotationProperty; +import io.opencaesar.oml.AnonymousConceptInstance; import io.opencaesar.oml.AnonymousInstance; import io.opencaesar.oml.AnonymousRelationInstance; import io.opencaesar.oml.Argument; @@ -31,8 +32,6 @@ import io.opencaesar.oml.BuiltIn; import io.opencaesar.oml.BuiltInPredicate; import io.opencaesar.oml.CardinalityRestrictionKind; -import io.opencaesar.oml.Classifier; -import io.opencaesar.oml.ClassifierEquivalenceAxiom; import io.opencaesar.oml.Concept; import io.opencaesar.oml.ConceptInstance; import io.opencaesar.oml.DecimalLiteral; @@ -45,6 +44,7 @@ import io.opencaesar.oml.DoubleLiteral; import io.opencaesar.oml.Element; import io.opencaesar.oml.Entity; +import io.opencaesar.oml.EntityEquivalenceAxiom; import io.opencaesar.oml.ForwardRelation; import io.opencaesar.oml.IdentifiedElement; import io.opencaesar.oml.Import; @@ -89,9 +89,6 @@ import io.opencaesar.oml.SpecializableTerm; import io.opencaesar.oml.SpecializationAxiom; import io.opencaesar.oml.Statement; -import io.opencaesar.oml.Structure; -import io.opencaesar.oml.StructureInstance; -import io.opencaesar.oml.StructuredProperty; import io.opencaesar.oml.Term; import io.opencaesar.oml.Type; import io.opencaesar.oml.TypeAssertion; @@ -345,13 +342,6 @@ public class OmlPackageImpl extends EPackageImpl implements OmlPackage { */ private EClass specializablePropertyEClass = null; - /** - * - * - * @generated - */ - private EClass classifierEClass = null; - /** * * @@ -366,13 +356,6 @@ public class OmlPackageImpl extends EPackageImpl implements OmlPackage { */ private EClass entityEClass = null; - /** - * - * - * @generated - */ - private EClass structureEClass = null; - /** * * @@ -415,13 +398,6 @@ public class OmlPackageImpl extends EPackageImpl implements OmlPackage { */ private EClass scalarPropertyEClass = null; - /** - * - * - * @generated - */ - private EClass structuredPropertyEClass = null; - /** * * @@ -483,7 +459,7 @@ public class OmlPackageImpl extends EPackageImpl implements OmlPackage { * * @generated */ - private EClass structureInstanceEClass = null; + private EClass anonymousConceptInstanceEClass = null; /** * @@ -532,7 +508,7 @@ public class OmlPackageImpl extends EPackageImpl implements OmlPackage { * * @generated */ - private EClass classifierEquivalenceAxiomEClass = null; + private EClass entityEquivalenceAxiomEClass = null; /** * @@ -1754,36 +1730,6 @@ public EReference getSpecializableProperty_OwnedEquivalences() { return (EReference)specializablePropertyEClass.getEStructuralFeatures().get(0); } - /** - * - * - * @generated - */ - @Override - public EClass getClassifier() { - return classifierEClass; - } - - /** - * - * - * @generated - */ - @Override - public EReference getClassifier_OwnedEquivalences() { - return (EReference)classifierEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EReference getClassifier_OwnedPropertyRestrictions() { - return (EReference)classifierEClass.getEStructuralFeatures().get(1); - } - /** * * @@ -1840,7 +1786,7 @@ public EClass getEntity() { * @generated */ @Override - public EReference getEntity_OwnedKeys() { + public EReference getEntity_OwnedEquivalences() { return (EReference)entityEClass.getEStructuralFeatures().get(0); } @@ -1850,8 +1796,8 @@ public EReference getEntity_OwnedKeys() { * @generated */ @Override - public EClass getStructure() { - return structureEClass; + public EReference getEntity_OwnedPropertyRestrictions() { + return (EReference)entityEClass.getEStructuralFeatures().get(1); } /** @@ -1860,8 +1806,8 @@ public EClass getStructure() { * @generated */ @Override - public EReference getStructure_Ref() { - return (EReference)structureEClass.getEStructuralFeatures().get(0); + public EReference getEntity_OwnedKeys() { + return (EReference)entityEClass.getEStructuralFeatures().get(2); } /** @@ -2074,76 +2020,6 @@ public EOperation getScalarProperty__GetRangeList() { return scalarPropertyEClass.getEOperations().get(1); } - /** - * - * - * @generated - */ - @Override - public EClass getStructuredProperty() { - return structuredPropertyEClass; - } - - /** - * - * - * @generated - */ - @Override - public EReference getStructuredProperty_Ref() { - return (EReference)structuredPropertyEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getStructuredProperty_Functional() { - return (EAttribute)structuredPropertyEClass.getEStructuralFeatures().get(1); - } - - /** - * - * - * @generated - */ - @Override - public EReference getStructuredProperty_Domains() { - return (EReference)structuredPropertyEClass.getEStructuralFeatures().get(2); - } - - /** - * - * - * @generated - */ - @Override - public EReference getStructuredProperty_Ranges() { - return (EReference)structuredPropertyEClass.getEStructuralFeatures().get(3); - } - - /** - * - * - * @generated - */ - @Override - public EOperation getStructuredProperty__GetDomainList() { - return structuredPropertyEClass.getEOperations().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EOperation getStructuredProperty__GetRangeList() { - return structuredPropertyEClass.getEOperations().get(1); - } - /** * * @@ -2720,8 +2596,8 @@ public EReference getRelationInstance_Targets() { * @generated */ @Override - public EClass getStructureInstance() { - return structureInstanceEClass; + public EClass getAnonymousConceptInstance() { + return anonymousConceptInstanceEClass; } /** @@ -2730,8 +2606,8 @@ public EClass getStructureInstance() { * @generated */ @Override - public EReference getStructureInstance_Type() { - return (EReference)structureInstanceEClass.getEStructuralFeatures().get(0); + public EReference getAnonymousConceptInstance_Type() { + return (EReference)anonymousConceptInstanceEClass.getEStructuralFeatures().get(0); } /** @@ -2740,8 +2616,8 @@ public EReference getStructureInstance_Type() { * @generated */ @Override - public EOperation getStructureInstance__GetStructure() { - return structureInstanceEClass.getEOperations().get(0); + public EOperation getAnonymousConceptInstance__GetEntity() { + return anonymousConceptInstanceEClass.getEOperations().get(0); } /** @@ -2750,8 +2626,8 @@ public EOperation getStructureInstance__GetStructure() { * @generated */ @Override - public EOperation getStructureInstance__GetTypes() { - return structureInstanceEClass.getEOperations().get(1); + public EOperation getAnonymousConceptInstance__GetTypes() { + return anonymousConceptInstanceEClass.getEOperations().get(1); } /** @@ -2970,7 +2846,7 @@ public EReference getPropertyRestrictionAxiom_Property() { * @generated */ @Override - public EReference getPropertyRestrictionAxiom_OwningClassifier() { + public EReference getPropertyRestrictionAxiom_OwningEntity() { return (EReference)propertyRestrictionAxiomEClass.getEStructuralFeatures().get(1); } @@ -3060,8 +2936,8 @@ public EOperation getLiteralEnumerationAxiom__GetCharacterizedTerm() { * @generated */ @Override - public EClass getClassifierEquivalenceAxiom() { - return classifierEquivalenceAxiomEClass; + public EClass getEntityEquivalenceAxiom() { + return entityEquivalenceAxiomEClass; } /** @@ -3070,8 +2946,8 @@ public EClass getClassifierEquivalenceAxiom() { * @generated */ @Override - public EReference getClassifierEquivalenceAxiom_SuperClassifiers() { - return (EReference)classifierEquivalenceAxiomEClass.getEStructuralFeatures().get(0); + public EReference getEntityEquivalenceAxiom_SuperEntities() { + return (EReference)entityEquivalenceAxiomEClass.getEStructuralFeatures().get(0); } /** @@ -3080,8 +2956,8 @@ public EReference getClassifierEquivalenceAxiom_SuperClassifiers() { * @generated */ @Override - public EReference getClassifierEquivalenceAxiom_OwnedPropertyRestrictions() { - return (EReference)classifierEquivalenceAxiomEClass.getEStructuralFeatures().get(1); + public EReference getEntityEquivalenceAxiom_OwnedPropertyRestrictions() { + return (EReference)entityEquivalenceAxiomEClass.getEStructuralFeatures().get(1); } /** @@ -3090,8 +2966,8 @@ public EReference getClassifierEquivalenceAxiom_OwnedPropertyRestrictions() { * @generated */ @Override - public EReference getClassifierEquivalenceAxiom_OwningClassifier() { - return (EReference)classifierEquivalenceAxiomEClass.getEStructuralFeatures().get(2); + public EReference getEntityEquivalenceAxiom_OwningEntity() { + return (EReference)entityEquivalenceAxiomEClass.getEStructuralFeatures().get(2); } /** @@ -3100,8 +2976,8 @@ public EReference getClassifierEquivalenceAxiom_OwningClassifier() { * @generated */ @Override - public EOperation getClassifierEquivalenceAxiom__GetSubClassifier() { - return classifierEquivalenceAxiomEClass.getEOperations().get(0); + public EOperation getEntityEquivalenceAxiom__GetSubEntity() { + return entityEquivalenceAxiomEClass.getEOperations().get(0); } /** @@ -3110,8 +2986,8 @@ public EOperation getClassifierEquivalenceAxiom__GetSubClassifier() { * @generated */ @Override - public EOperation getClassifierEquivalenceAxiom__GetCharacterizedTerm() { - return classifierEquivalenceAxiomEClass.getEOperations().get(1); + public EOperation getEntityEquivalenceAxiom__GetCharacterizedTerm() { + return entityEquivalenceAxiomEClass.getEOperations().get(1); } /** @@ -4177,21 +4053,16 @@ public void createPackageContents() { specializablePropertyEClass = createEClass(SPECIALIZABLE_PROPERTY); createEReference(specializablePropertyEClass, SPECIALIZABLE_PROPERTY__OWNED_EQUIVALENCES); - classifierEClass = createEClass(CLASSIFIER); - createEReference(classifierEClass, CLASSIFIER__OWNED_EQUIVALENCES); - createEReference(classifierEClass, CLASSIFIER__OWNED_PROPERTY_RESTRICTIONS); - scalarEClass = createEClass(SCALAR); createEReference(scalarEClass, SCALAR__REF); createEReference(scalarEClass, SCALAR__OWNED_ENUMERATION); createEReference(scalarEClass, SCALAR__OWNED_EQUIVALENCES); entityEClass = createEClass(ENTITY); + createEReference(entityEClass, ENTITY__OWNED_EQUIVALENCES); + createEReference(entityEClass, ENTITY__OWNED_PROPERTY_RESTRICTIONS); createEReference(entityEClass, ENTITY__OWNED_KEYS); - structureEClass = createEClass(STRUCTURE); - createEReference(structureEClass, STRUCTURE__REF); - aspectEClass = createEClass(ASPECT); createEReference(aspectEClass, ASPECT__REF); @@ -4219,14 +4090,6 @@ public void createPackageContents() { createEOperation(scalarPropertyEClass, SCALAR_PROPERTY___GET_DOMAIN_LIST); createEOperation(scalarPropertyEClass, SCALAR_PROPERTY___GET_RANGE_LIST); - structuredPropertyEClass = createEClass(STRUCTURED_PROPERTY); - createEReference(structuredPropertyEClass, STRUCTURED_PROPERTY__REF); - createEAttribute(structuredPropertyEClass, STRUCTURED_PROPERTY__FUNCTIONAL); - createEReference(structuredPropertyEClass, STRUCTURED_PROPERTY__DOMAINS); - createEReference(structuredPropertyEClass, STRUCTURED_PROPERTY__RANGES); - createEOperation(structuredPropertyEClass, STRUCTURED_PROPERTY___GET_DOMAIN_LIST); - createEOperation(structuredPropertyEClass, STRUCTURED_PROPERTY___GET_RANGE_LIST); - relationEClass = createEClass(RELATION); createEOperation(relationEClass, RELATION___IS_INVERSE_FUNCTIONAL); createEOperation(relationEClass, RELATION___IS_SYMMETRIC); @@ -4292,10 +4155,10 @@ public void createPackageContents() { createEReference(relationInstanceEClass, RELATION_INSTANCE__SOURCES); createEReference(relationInstanceEClass, RELATION_INSTANCE__TARGETS); - structureInstanceEClass = createEClass(STRUCTURE_INSTANCE); - createEReference(structureInstanceEClass, STRUCTURE_INSTANCE__TYPE); - createEOperation(structureInstanceEClass, STRUCTURE_INSTANCE___GET_STRUCTURE); - createEOperation(structureInstanceEClass, STRUCTURE_INSTANCE___GET_TYPES); + anonymousConceptInstanceEClass = createEClass(ANONYMOUS_CONCEPT_INSTANCE); + createEReference(anonymousConceptInstanceEClass, ANONYMOUS_CONCEPT_INSTANCE__TYPE); + createEOperation(anonymousConceptInstanceEClass, ANONYMOUS_CONCEPT_INSTANCE___GET_ENTITY); + createEOperation(anonymousConceptInstanceEClass, ANONYMOUS_CONCEPT_INSTANCE___GET_TYPES); anonymousRelationInstanceEClass = createEClass(ANONYMOUS_RELATION_INSTANCE); createEReference(anonymousRelationInstanceEClass, ANONYMOUS_RELATION_INSTANCE__TARGET); @@ -4322,7 +4185,7 @@ public void createPackageContents() { propertyRestrictionAxiomEClass = createEClass(PROPERTY_RESTRICTION_AXIOM); createEReference(propertyRestrictionAxiomEClass, PROPERTY_RESTRICTION_AXIOM__PROPERTY); - createEReference(propertyRestrictionAxiomEClass, PROPERTY_RESTRICTION_AXIOM__OWNING_CLASSIFIER); + createEReference(propertyRestrictionAxiomEClass, PROPERTY_RESTRICTION_AXIOM__OWNING_ENTITY); createEReference(propertyRestrictionAxiomEClass, PROPERTY_RESTRICTION_AXIOM__OWNING_AXIOM); createEOperation(propertyRestrictionAxiomEClass, PROPERTY_RESTRICTION_AXIOM___GET_RESTRICTING_DOMAIN); createEOperation(propertyRestrictionAxiomEClass, PROPERTY_RESTRICTION_AXIOM___GET_CHARACTERIZED_TERM); @@ -4333,12 +4196,12 @@ public void createPackageContents() { createEOperation(literalEnumerationAxiomEClass, LITERAL_ENUMERATION_AXIOM___GET_ENUMERATED_SCALAR); createEOperation(literalEnumerationAxiomEClass, LITERAL_ENUMERATION_AXIOM___GET_CHARACTERIZED_TERM); - classifierEquivalenceAxiomEClass = createEClass(CLASSIFIER_EQUIVALENCE_AXIOM); - createEReference(classifierEquivalenceAxiomEClass, CLASSIFIER_EQUIVALENCE_AXIOM__SUPER_CLASSIFIERS); - createEReference(classifierEquivalenceAxiomEClass, CLASSIFIER_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS); - createEReference(classifierEquivalenceAxiomEClass, CLASSIFIER_EQUIVALENCE_AXIOM__OWNING_CLASSIFIER); - createEOperation(classifierEquivalenceAxiomEClass, CLASSIFIER_EQUIVALENCE_AXIOM___GET_SUB_CLASSIFIER); - createEOperation(classifierEquivalenceAxiomEClass, CLASSIFIER_EQUIVALENCE_AXIOM___GET_CHARACTERIZED_TERM); + entityEquivalenceAxiomEClass = createEClass(ENTITY_EQUIVALENCE_AXIOM); + createEReference(entityEquivalenceAxiomEClass, ENTITY_EQUIVALENCE_AXIOM__SUPER_ENTITIES); + createEReference(entityEquivalenceAxiomEClass, ENTITY_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS); + createEReference(entityEquivalenceAxiomEClass, ENTITY_EQUIVALENCE_AXIOM__OWNING_ENTITY); + createEOperation(entityEquivalenceAxiomEClass, ENTITY_EQUIVALENCE_AXIOM___GET_SUB_ENTITY); + createEOperation(entityEquivalenceAxiomEClass, ENTITY_EQUIVALENCE_AXIOM___GET_CHARACTERIZED_TERM); scalarEquivalenceAxiomEClass = createEClass(SCALAR_EQUIVALENCE_AXIOM); createEReference(scalarEquivalenceAxiomEClass, SCALAR_EQUIVALENCE_AXIOM__SUPER_SCALAR); @@ -4522,10 +4385,8 @@ public void initializePackageContents() { relationBaseEClass.getESuperTypes().add(this.getSpecializableTerm()); specializablePropertyEClass.getESuperTypes().add(this.getSpecializableTerm()); specializablePropertyEClass.getESuperTypes().add(this.getProperty()); - classifierEClass.getESuperTypes().add(this.getType()); scalarEClass.getESuperTypes().add(this.getType()); - entityEClass.getESuperTypes().add(this.getClassifier()); - structureEClass.getESuperTypes().add(this.getClassifier()); + entityEClass.getESuperTypes().add(this.getType()); aspectEClass.getESuperTypes().add(this.getEntity()); conceptEClass.getESuperTypes().add(this.getEntity()); relationEntityEClass.getESuperTypes().add(this.getEntity()); @@ -4534,8 +4395,6 @@ public void initializePackageContents() { semanticPropertyEClass.getESuperTypes().add(this.getProperty()); scalarPropertyEClass.getESuperTypes().add(this.getSemanticProperty()); scalarPropertyEClass.getESuperTypes().add(this.getSpecializableProperty()); - structuredPropertyEClass.getESuperTypes().add(this.getSemanticProperty()); - structuredPropertyEClass.getESuperTypes().add(this.getSpecializableProperty()); relationEClass.getESuperTypes().add(this.getSemanticProperty()); forwardRelationEClass.getESuperTypes().add(this.getRelation()); reverseRelationEClass.getESuperTypes().add(this.getRelation()); @@ -4547,14 +4406,14 @@ public void initializePackageContents() { anonymousInstanceEClass.getESuperTypes().add(this.getInstance()); conceptInstanceEClass.getESuperTypes().add(this.getNamedInstance()); relationInstanceEClass.getESuperTypes().add(this.getNamedInstance()); - structureInstanceEClass.getESuperTypes().add(this.getAnonymousInstance()); + anonymousConceptInstanceEClass.getESuperTypes().add(this.getAnonymousInstance()); anonymousRelationInstanceEClass.getESuperTypes().add(this.getAnonymousInstance()); keyAxiomEClass.getESuperTypes().add(this.getAxiom()); specializationAxiomEClass.getESuperTypes().add(this.getAxiom()); instanceEnumerationAxiomEClass.getESuperTypes().add(this.getAxiom()); propertyRestrictionAxiomEClass.getESuperTypes().add(this.getAxiom()); literalEnumerationAxiomEClass.getESuperTypes().add(this.getAxiom()); - classifierEquivalenceAxiomEClass.getESuperTypes().add(this.getAxiom()); + entityEquivalenceAxiomEClass.getESuperTypes().add(this.getAxiom()); scalarEquivalenceAxiomEClass.getESuperTypes().add(this.getAxiom()); propertyEquivalenceAxiomEClass.getESuperTypes().add(this.getAxiom()); propertyRangeRestrictionAxiomEClass.getESuperTypes().add(this.getPropertyRestrictionAxiom()); @@ -4620,7 +4479,7 @@ public void initializePackageContents() { initEClass(instanceEClass, Instance.class, "Instance", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getInstance_OwnedPropertyValues(), this.getPropertyValueAssertion(), this.getPropertyValueAssertion_OwningInstance(), "ownedPropertyValues", null, 0, -1, Instance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEOperation(getInstance__GetTypes(), this.getClassifier(), "getTypes", 0, -1, !IS_UNIQUE, IS_ORDERED); + initEOperation(getInstance__GetTypes(), this.getEntity(), "getTypes", 0, -1, !IS_UNIQUE, IS_ORDERED); initEClass(axiomEClass, Axiom.class, "Axiom", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); @@ -4733,21 +4592,16 @@ public void initializePackageContents() { initEClass(specializablePropertyEClass, SpecializableProperty.class, "SpecializableProperty", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getSpecializableProperty_OwnedEquivalences(), this.getPropertyEquivalenceAxiom(), this.getPropertyEquivalenceAxiom_OwningProperty(), "ownedEquivalences", null, 0, -1, SpecializableProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEClass(classifierEClass, Classifier.class, "Classifier", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getClassifier_OwnedEquivalences(), this.getClassifierEquivalenceAxiom(), this.getClassifierEquivalenceAxiom_OwningClassifier(), "ownedEquivalences", null, 0, -1, Classifier.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getClassifier_OwnedPropertyRestrictions(), this.getPropertyRestrictionAxiom(), this.getPropertyRestrictionAxiom_OwningClassifier(), "ownedPropertyRestrictions", null, 0, -1, Classifier.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEClass(scalarEClass, Scalar.class, "Scalar", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getScalar_Ref(), this.getScalar(), null, "ref", null, 0, 1, Scalar.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getScalar_OwnedEnumeration(), this.getLiteralEnumerationAxiom(), this.getLiteralEnumerationAxiom_OwningScalar(), "ownedEnumeration", null, 0, 1, Scalar.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getScalar_OwnedEquivalences(), this.getScalarEquivalenceAxiom(), this.getScalarEquivalenceAxiom_OwningScalar(), "ownedEquivalences", null, 0, -1, Scalar.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(entityEClass, Entity.class, "Entity", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getEntity_OwnedEquivalences(), this.getEntityEquivalenceAxiom(), this.getEntityEquivalenceAxiom_OwningEntity(), "ownedEquivalences", null, 0, -1, Entity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getEntity_OwnedPropertyRestrictions(), this.getPropertyRestrictionAxiom(), this.getPropertyRestrictionAxiom_OwningEntity(), "ownedPropertyRestrictions", null, 0, -1, Entity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getEntity_OwnedKeys(), this.getKeyAxiom(), this.getKeyAxiom_OwningEntity(), "ownedKeys", null, 0, -1, Entity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEClass(structureEClass, Structure.class, "Structure", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getStructure_Ref(), this.getStructure(), null, "ref", null, 0, 1, Structure.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEClass(aspectEClass, Aspect.class, "Aspect", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getAspect_Ref(), this.getAspect(), null, "ref", null, 0, 1, Aspect.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); @@ -4766,30 +4620,20 @@ public void initializePackageContents() { initEOperation(getSemanticProperty__IsFunctional(), theEcorePackage.getEBoolean(), "isFunctional", 0, 1, !IS_UNIQUE, IS_ORDERED); - initEOperation(getSemanticProperty__GetDomainList(), this.getClassifier(), "getDomainList", 0, -1, !IS_UNIQUE, IS_ORDERED); + initEOperation(getSemanticProperty__GetDomainList(), this.getEntity(), "getDomainList", 0, -1, !IS_UNIQUE, IS_ORDERED); initEOperation(getSemanticProperty__GetRangeList(), this.getType(), "getRangeList", 0, -1, !IS_UNIQUE, IS_ORDERED); initEClass(scalarPropertyEClass, ScalarProperty.class, "ScalarProperty", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getScalarProperty_Ref(), this.getScalarProperty(), null, "ref", null, 0, 1, ScalarProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEAttribute(getScalarProperty_Functional(), theEcorePackage.getEBoolean(), "functional", null, 0, 1, ScalarProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getScalarProperty_Domains(), this.getClassifier(), null, "domains", null, 0, -1, ScalarProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getScalarProperty_Domains(), this.getEntity(), null, "domains", null, 0, -1, ScalarProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getScalarProperty_Ranges(), this.getScalar(), null, "ranges", null, 0, -1, ScalarProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEOperation(getScalarProperty__GetDomainList(), this.getClassifier(), "getDomainList", 0, -1, !IS_UNIQUE, IS_ORDERED); + initEOperation(getScalarProperty__GetDomainList(), this.getEntity(), "getDomainList", 0, -1, !IS_UNIQUE, IS_ORDERED); initEOperation(getScalarProperty__GetRangeList(), this.getType(), "getRangeList", 0, -1, !IS_UNIQUE, IS_ORDERED); - initEClass(structuredPropertyEClass, StructuredProperty.class, "StructuredProperty", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getStructuredProperty_Ref(), this.getStructuredProperty(), null, "ref", null, 0, 1, StructuredProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEAttribute(getStructuredProperty_Functional(), theEcorePackage.getEBoolean(), "functional", null, 0, 1, StructuredProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getStructuredProperty_Domains(), this.getClassifier(), null, "domains", null, 0, -1, StructuredProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getStructuredProperty_Ranges(), this.getStructure(), null, "ranges", null, 0, -1, StructuredProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEOperation(getStructuredProperty__GetDomainList(), this.getClassifier(), "getDomainList", 0, -1, !IS_UNIQUE, IS_ORDERED); - - initEOperation(getStructuredProperty__GetRangeList(), this.getType(), "getRangeList", 0, -1, !IS_UNIQUE, IS_ORDERED); - initEClass(relationEClass, Relation.class, "Relation", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEOperation(getRelation__IsInverseFunctional(), theEcorePackage.getEBoolean(), "isInverseFunctional", 0, 1, !IS_UNIQUE, IS_ORDERED); @@ -4810,7 +4654,7 @@ public void initializePackageContents() { initEOperation(getRelation__GetInverse(), this.getRelation(), "getInverse", 0, 1, !IS_UNIQUE, IS_ORDERED); - initEOperation(getRelation__GetDomainList(), this.getClassifier(), "getDomainList", 0, -1, !IS_UNIQUE, IS_ORDERED); + initEOperation(getRelation__GetDomainList(), this.getEntity(), "getDomainList", 0, -1, !IS_UNIQUE, IS_ORDERED); initEOperation(getRelation__GetRangeList(), this.getType(), "getRangeList", 0, -1, !IS_UNIQUE, IS_ORDERED); @@ -4878,7 +4722,7 @@ public void initializePackageContents() { initEOperation(getNamedInstance__GetEntityTypes(), this.getEntity(), "getEntityTypes", 0, -1, !IS_UNIQUE, IS_ORDERED); - initEOperation(getNamedInstance__GetTypes(), this.getClassifier(), "getTypes", 0, -1, !IS_UNIQUE, IS_ORDERED); + initEOperation(getNamedInstance__GetTypes(), this.getEntity(), "getTypes", 0, -1, !IS_UNIQUE, IS_ORDERED); initEClass(anonymousInstanceEClass, AnonymousInstance.class, "AnonymousInstance", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getAnonymousInstance_OwningAssertion(), this.getPropertyValueAssertion(), this.getPropertyValueAssertion_ContainedValue(), "owningAssertion", null, 0, 1, AnonymousInstance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); @@ -4894,19 +4738,19 @@ public void initializePackageContents() { initEReference(getRelationInstance_Sources(), this.getNamedInstance(), null, "sources", null, 0, -1, RelationInstance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getRelationInstance_Targets(), this.getNamedInstance(), null, "targets", null, 0, -1, RelationInstance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEClass(structureInstanceEClass, StructureInstance.class, "StructureInstance", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getStructureInstance_Type(), this.getStructure(), null, "type", null, 0, 1, StructureInstance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEClass(anonymousConceptInstanceEClass, AnonymousConceptInstance.class, "AnonymousConceptInstance", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getAnonymousConceptInstance_Type(), this.getEntity(), null, "type", null, 0, 1, AnonymousConceptInstance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEOperation(getStructureInstance__GetStructure(), this.getStructure(), "getStructure", 0, 1, !IS_UNIQUE, IS_ORDERED); + initEOperation(getAnonymousConceptInstance__GetEntity(), this.getEntity(), "getEntity", 0, 1, !IS_UNIQUE, IS_ORDERED); - initEOperation(getStructureInstance__GetTypes(), this.getClassifier(), "getTypes", 0, -1, !IS_UNIQUE, IS_ORDERED); + initEOperation(getAnonymousConceptInstance__GetTypes(), this.getEntity(), "getTypes", 0, -1, !IS_UNIQUE, IS_ORDERED); initEClass(anonymousRelationInstanceEClass, AnonymousRelationInstance.class, "AnonymousRelationInstance", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getAnonymousRelationInstance_Target(), this.getNamedInstance(), null, "target", null, 1, 1, AnonymousRelationInstance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEOperation(getAnonymousRelationInstance__GetRelationEntity(), this.getRelationEntity(), "getRelationEntity", 0, 1, !IS_UNIQUE, IS_ORDERED); - initEOperation(getAnonymousRelationInstance__GetTypes(), this.getClassifier(), "getTypes", 0, -1, !IS_UNIQUE, IS_ORDERED); + initEOperation(getAnonymousRelationInstance__GetTypes(), this.getEntity(), "getTypes", 0, -1, !IS_UNIQUE, IS_ORDERED); initEClass(keyAxiomEClass, KeyAxiom.class, "KeyAxiom", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getKeyAxiom_Properties(), this.getProperty(), null, "properties", null, 1, -1, KeyAxiom.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); @@ -4934,12 +4778,12 @@ public void initializePackageContents() { initEClass(propertyRestrictionAxiomEClass, PropertyRestrictionAxiom.class, "PropertyRestrictionAxiom", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getPropertyRestrictionAxiom_Property(), this.getSemanticProperty(), null, "property", null, 1, 1, PropertyRestrictionAxiom.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getPropertyRestrictionAxiom_OwningClassifier(), this.getClassifier(), this.getClassifier_OwnedPropertyRestrictions(), "owningClassifier", null, 0, 1, PropertyRestrictionAxiom.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getPropertyRestrictionAxiom_OwningAxiom(), this.getClassifierEquivalenceAxiom(), this.getClassifierEquivalenceAxiom_OwnedPropertyRestrictions(), "owningAxiom", null, 0, 1, PropertyRestrictionAxiom.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getPropertyRestrictionAxiom_OwningEntity(), this.getEntity(), this.getEntity_OwnedPropertyRestrictions(), "owningEntity", null, 0, 1, PropertyRestrictionAxiom.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getPropertyRestrictionAxiom_OwningAxiom(), this.getEntityEquivalenceAxiom(), this.getEntityEquivalenceAxiom_OwnedPropertyRestrictions(), "owningAxiom", null, 0, 1, PropertyRestrictionAxiom.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEOperation(getPropertyRestrictionAxiom__GetRestrictingDomain(), this.getClassifier(), "getRestrictingDomain", 0, 1, !IS_UNIQUE, IS_ORDERED); + initEOperation(getPropertyRestrictionAxiom__GetRestrictingDomain(), this.getEntity(), "getRestrictingDomain", 0, 1, !IS_UNIQUE, IS_ORDERED); - initEOperation(getPropertyRestrictionAxiom__GetCharacterizedTerm(), this.getClassifier(), "getCharacterizedTerm", 0, 1, !IS_UNIQUE, IS_ORDERED); + initEOperation(getPropertyRestrictionAxiom__GetCharacterizedTerm(), this.getEntity(), "getCharacterizedTerm", 0, 1, !IS_UNIQUE, IS_ORDERED); initEClass(literalEnumerationAxiomEClass, LiteralEnumerationAxiom.class, "LiteralEnumerationAxiom", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getLiteralEnumerationAxiom_Literals(), this.getLiteral(), null, "literals", null, 1, -1, LiteralEnumerationAxiom.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); @@ -4949,14 +4793,14 @@ public void initializePackageContents() { initEOperation(getLiteralEnumerationAxiom__GetCharacterizedTerm(), this.getScalar(), "getCharacterizedTerm", 0, 1, !IS_UNIQUE, IS_ORDERED); - initEClass(classifierEquivalenceAxiomEClass, ClassifierEquivalenceAxiom.class, "ClassifierEquivalenceAxiom", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getClassifierEquivalenceAxiom_SuperClassifiers(), this.getClassifier(), null, "superClassifiers", null, 0, -1, ClassifierEquivalenceAxiom.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getClassifierEquivalenceAxiom_OwnedPropertyRestrictions(), this.getPropertyRestrictionAxiom(), this.getPropertyRestrictionAxiom_OwningAxiom(), "ownedPropertyRestrictions", null, 0, -1, ClassifierEquivalenceAxiom.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getClassifierEquivalenceAxiom_OwningClassifier(), this.getClassifier(), this.getClassifier_OwnedEquivalences(), "owningClassifier", null, 0, 1, ClassifierEquivalenceAxiom.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEClass(entityEquivalenceAxiomEClass, EntityEquivalenceAxiom.class, "EntityEquivalenceAxiom", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getEntityEquivalenceAxiom_SuperEntities(), this.getEntity(), null, "superEntities", null, 0, -1, EntityEquivalenceAxiom.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getEntityEquivalenceAxiom_OwnedPropertyRestrictions(), this.getPropertyRestrictionAxiom(), this.getPropertyRestrictionAxiom_OwningAxiom(), "ownedPropertyRestrictions", null, 0, -1, EntityEquivalenceAxiom.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getEntityEquivalenceAxiom_OwningEntity(), this.getEntity(), this.getEntity_OwnedEquivalences(), "owningEntity", null, 0, 1, EntityEquivalenceAxiom.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEOperation(getClassifierEquivalenceAxiom__GetSubClassifier(), this.getClassifier(), "getSubClassifier", 0, 1, !IS_UNIQUE, IS_ORDERED); + initEOperation(getEntityEquivalenceAxiom__GetSubEntity(), this.getEntity(), "getSubEntity", 0, 1, !IS_UNIQUE, IS_ORDERED); - initEOperation(getClassifierEquivalenceAxiom__GetCharacterizedTerm(), this.getClassifier(), "getCharacterizedTerm", 0, 1, !IS_UNIQUE, IS_ORDERED); + initEOperation(getEntityEquivalenceAxiom__GetCharacterizedTerm(), this.getEntity(), "getCharacterizedTerm", 0, 1, !IS_UNIQUE, IS_ORDERED); initEClass(scalarEquivalenceAxiomEClass, ScalarEquivalenceAxiom.class, "ScalarEquivalenceAxiom", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getScalarEquivalenceAxiom_SuperScalar(), this.getScalar(), null, "superScalar", null, 1, 1, ScalarEquivalenceAxiom.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); @@ -5345,12 +5189,6 @@ protected void createBikeshedAnnotations() { new String[] { "heading", "Properties" }); - addAnnotation - (classifierEClass, - source, - new String[] { - "heading", "Types" - }); addAnnotation (scalarEClass, source, @@ -5363,12 +5201,6 @@ protected void createBikeshedAnnotations() { new String[] { "heading", "Types" }); - addAnnotation - (structureEClass, - source, - new String[] { - "heading", "Types" - }); addAnnotation (aspectEClass, source, @@ -5405,12 +5237,6 @@ protected void createBikeshedAnnotations() { new String[] { "heading", "Properties" }); - addAnnotation - (structuredPropertyEClass, - source, - new String[] { - "heading", "Properties" - }); addAnnotation (relationEClass, source, @@ -5460,7 +5286,7 @@ protected void createBikeshedAnnotations() { "heading", "Instances" }); addAnnotation - (structureInstanceEClass, + (anonymousConceptInstanceEClass, source, new String[] { "heading", "Instances" @@ -5502,7 +5328,7 @@ protected void createBikeshedAnnotations() { "heading", "Axioms" }); addAnnotation - (classifierEquivalenceAxiomEClass, + (entityEquivalenceAxiomEClass, source, new String[] { "heading", "Axioms" diff --git a/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/PropertyRestrictionAxiomImpl.java b/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/PropertyRestrictionAxiomImpl.java index 5e4b85d7..5b7d915c 100644 --- a/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/PropertyRestrictionAxiomImpl.java +++ b/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/PropertyRestrictionAxiomImpl.java @@ -18,8 +18,8 @@ */ package io.opencaesar.oml.impl; -import io.opencaesar.oml.Classifier; -import io.opencaesar.oml.ClassifierEquivalenceAxiom; +import io.opencaesar.oml.Entity; +import io.opencaesar.oml.EntityEquivalenceAxiom; import io.opencaesar.oml.Member; import io.opencaesar.oml.OmlPackage; import io.opencaesar.oml.PropertyRestrictionAxiom; @@ -48,7 +48,7 @@ *

*
    *
  • {@link io.opencaesar.oml.impl.PropertyRestrictionAxiomImpl#getProperty Property}
  • - *
  • {@link io.opencaesar.oml.impl.PropertyRestrictionAxiomImpl#getOwningClassifier Owning Classifier}
  • + *
  • {@link io.opencaesar.oml.impl.PropertyRestrictionAxiomImpl#getOwningEntity Owning Entity}
  • *
  • {@link io.opencaesar.oml.impl.PropertyRestrictionAxiomImpl#getOwningAxiom Owning Axiom}
  • *
* @@ -130,9 +130,9 @@ public void setProperty(SemanticProperty newProperty) { * @generated */ @Override - public Classifier getOwningClassifier() { - if (eContainerFeatureID() != OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_CLASSIFIER) return null; - return (Classifier)eContainer(); + public Entity getOwningEntity() { + if (eContainerFeatureID() != OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_ENTITY) return null; + return (Entity)eContainer(); } /** @@ -140,9 +140,9 @@ public Classifier getOwningClassifier() { * * @generated */ - public Classifier basicGetOwningClassifier() { - if (eContainerFeatureID() != OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_CLASSIFIER) return null; - return (Classifier)eInternalContainer(); + public Entity basicGetOwningEntity() { + if (eContainerFeatureID() != OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_ENTITY) return null; + return (Entity)eInternalContainer(); } /** @@ -150,8 +150,8 @@ public Classifier basicGetOwningClassifier() { * * @generated */ - public NotificationChain basicSetOwningClassifier(Classifier newOwningClassifier, NotificationChain msgs) { - msgs = eBasicSetContainer((InternalEObject)newOwningClassifier, OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_CLASSIFIER, msgs); + public NotificationChain basicSetOwningEntity(Entity newOwningEntity, NotificationChain msgs) { + msgs = eBasicSetContainer((InternalEObject)newOwningEntity, OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_ENTITY, msgs); return msgs; } @@ -161,20 +161,20 @@ public NotificationChain basicSetOwningClassifier(Classifier newOwningClassifier * @generated */ @Override - public void setOwningClassifier(Classifier newOwningClassifier) { - if (newOwningClassifier != eInternalContainer() || (eContainerFeatureID() != OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_CLASSIFIER && newOwningClassifier != null)) { - if (EcoreUtil.isAncestor(this, newOwningClassifier)) + public void setOwningEntity(Entity newOwningEntity) { + if (newOwningEntity != eInternalContainer() || (eContainerFeatureID() != OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_ENTITY && newOwningEntity != null)) { + if (EcoreUtil.isAncestor(this, newOwningEntity)) throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); NotificationChain msgs = null; if (eInternalContainer() != null) msgs = eBasicRemoveFromContainer(msgs); - if (newOwningClassifier != null) - msgs = ((InternalEObject)newOwningClassifier).eInverseAdd(this, OmlPackage.CLASSIFIER__OWNED_PROPERTY_RESTRICTIONS, Classifier.class, msgs); - msgs = basicSetOwningClassifier(newOwningClassifier, msgs); + if (newOwningEntity != null) + msgs = ((InternalEObject)newOwningEntity).eInverseAdd(this, OmlPackage.ENTITY__OWNED_PROPERTY_RESTRICTIONS, Entity.class, msgs); + msgs = basicSetOwningEntity(newOwningEntity, msgs); if (msgs != null) msgs.dispatch(); } else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_CLASSIFIER, newOwningClassifier, newOwningClassifier)); + eNotify(new ENotificationImpl(this, Notification.SET, OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_ENTITY, newOwningEntity, newOwningEntity)); } /** @@ -183,9 +183,9 @@ else if (eNotificationRequired()) * @generated */ @Override - public ClassifierEquivalenceAxiom getOwningAxiom() { + public EntityEquivalenceAxiom getOwningAxiom() { if (eContainerFeatureID() != OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_AXIOM) return null; - return (ClassifierEquivalenceAxiom)eContainer(); + return (EntityEquivalenceAxiom)eContainer(); } /** @@ -193,9 +193,9 @@ public ClassifierEquivalenceAxiom getOwningAxiom() { * * @generated */ - public ClassifierEquivalenceAxiom basicGetOwningAxiom() { + public EntityEquivalenceAxiom basicGetOwningAxiom() { if (eContainerFeatureID() != OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_AXIOM) return null; - return (ClassifierEquivalenceAxiom)eInternalContainer(); + return (EntityEquivalenceAxiom)eInternalContainer(); } /** @@ -203,7 +203,7 @@ public ClassifierEquivalenceAxiom basicGetOwningAxiom() { * * @generated */ - public NotificationChain basicSetOwningAxiom(ClassifierEquivalenceAxiom newOwningAxiom, NotificationChain msgs) { + public NotificationChain basicSetOwningAxiom(EntityEquivalenceAxiom newOwningAxiom, NotificationChain msgs) { msgs = eBasicSetContainer((InternalEObject)newOwningAxiom, OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_AXIOM, msgs); return msgs; } @@ -214,7 +214,7 @@ public NotificationChain basicSetOwningAxiom(ClassifierEquivalenceAxiom newOwnin * @generated */ @Override - public void setOwningAxiom(ClassifierEquivalenceAxiom newOwningAxiom) { + public void setOwningAxiom(EntityEquivalenceAxiom newOwningAxiom) { if (newOwningAxiom != eInternalContainer() || (eContainerFeatureID() != OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_AXIOM && newOwningAxiom != null)) { if (EcoreUtil.isAncestor(this, newOwningAxiom)) throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); @@ -222,7 +222,7 @@ public void setOwningAxiom(ClassifierEquivalenceAxiom newOwningAxiom) { if (eInternalContainer() != null) msgs = eBasicRemoveFromContainer(msgs); if (newOwningAxiom != null) - msgs = ((InternalEObject)newOwningAxiom).eInverseAdd(this, OmlPackage.CLASSIFIER_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS, ClassifierEquivalenceAxiom.class, msgs); + msgs = ((InternalEObject)newOwningAxiom).eInverseAdd(this, OmlPackage.ENTITY_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS, EntityEquivalenceAxiom.class, msgs); msgs = basicSetOwningAxiom(newOwningAxiom, msgs); if (msgs != null) msgs.dispatch(); } @@ -236,14 +236,14 @@ else if (eNotificationRequired()) * @generated */ @Override - public Classifier getRestrictingDomain() { - ClassifierEquivalenceAxiom _owningAxiom = this.getOwningAxiom(); + public Entity getRestrictingDomain() { + EntityEquivalenceAxiom _owningAxiom = this.getOwningAxiom(); boolean _tripleNotEquals = (_owningAxiom != null); if (_tripleNotEquals) { - return this.getOwningAxiom().getSubClassifier(); + return this.getOwningAxiom().getSubEntity(); } - Member _resolve = this.getOwningClassifier().resolve(); - return ((Classifier) _resolve); + Member _resolve = this.getOwningEntity().resolve(); + return ((Entity) _resolve); } /** @@ -252,7 +252,7 @@ public Classifier getRestrictingDomain() { * @generated */ @Override - public Classifier getCharacterizedTerm() { + public Entity getCharacterizedTerm() { return this.getRestrictingDomain(); } @@ -264,14 +264,14 @@ public Classifier getCharacterizedTerm() { @Override public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { switch (featureID) { - case OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_CLASSIFIER: + case OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_ENTITY: if (eInternalContainer() != null) msgs = eBasicRemoveFromContainer(msgs); - return basicSetOwningClassifier((Classifier)otherEnd, msgs); + return basicSetOwningEntity((Entity)otherEnd, msgs); case OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_AXIOM: if (eInternalContainer() != null) msgs = eBasicRemoveFromContainer(msgs); - return basicSetOwningAxiom((ClassifierEquivalenceAxiom)otherEnd, msgs); + return basicSetOwningAxiom((EntityEquivalenceAxiom)otherEnd, msgs); } return super.eInverseAdd(otherEnd, featureID, msgs); } @@ -284,8 +284,8 @@ public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, No @Override public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { switch (featureID) { - case OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_CLASSIFIER: - return basicSetOwningClassifier(null, msgs); + case OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_ENTITY: + return basicSetOwningEntity(null, msgs); case OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_AXIOM: return basicSetOwningAxiom(null, msgs); } @@ -300,10 +300,10 @@ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, @Override public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) { switch (eContainerFeatureID()) { - case OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_CLASSIFIER: - return eInternalContainer().eInverseRemove(this, OmlPackage.CLASSIFIER__OWNED_PROPERTY_RESTRICTIONS, Classifier.class, msgs); + case OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_ENTITY: + return eInternalContainer().eInverseRemove(this, OmlPackage.ENTITY__OWNED_PROPERTY_RESTRICTIONS, Entity.class, msgs); case OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_AXIOM: - return eInternalContainer().eInverseRemove(this, OmlPackage.CLASSIFIER_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS, ClassifierEquivalenceAxiom.class, msgs); + return eInternalContainer().eInverseRemove(this, OmlPackage.ENTITY_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS, EntityEquivalenceAxiom.class, msgs); } return super.eBasicRemoveFromContainerFeature(msgs); } @@ -319,9 +319,9 @@ public Object eGet(int featureID, boolean resolve, boolean coreType) { case OmlPackage.PROPERTY_RESTRICTION_AXIOM__PROPERTY: if (resolve) return getProperty(); return basicGetProperty(); - case OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_CLASSIFIER: - if (resolve) return getOwningClassifier(); - return basicGetOwningClassifier(); + case OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_ENTITY: + if (resolve) return getOwningEntity(); + return basicGetOwningEntity(); case OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_AXIOM: if (resolve) return getOwningAxiom(); return basicGetOwningAxiom(); @@ -340,11 +340,11 @@ public void eSet(int featureID, Object newValue) { case OmlPackage.PROPERTY_RESTRICTION_AXIOM__PROPERTY: setProperty((SemanticProperty)newValue); return; - case OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_CLASSIFIER: - setOwningClassifier((Classifier)newValue); + case OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_ENTITY: + setOwningEntity((Entity)newValue); return; case OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_AXIOM: - setOwningAxiom((ClassifierEquivalenceAxiom)newValue); + setOwningAxiom((EntityEquivalenceAxiom)newValue); return; } super.eSet(featureID, newValue); @@ -361,11 +361,11 @@ public void eUnset(int featureID) { case OmlPackage.PROPERTY_RESTRICTION_AXIOM__PROPERTY: setProperty((SemanticProperty)null); return; - case OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_CLASSIFIER: - setOwningClassifier((Classifier)null); + case OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_ENTITY: + setOwningEntity((Entity)null); return; case OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_AXIOM: - setOwningAxiom((ClassifierEquivalenceAxiom)null); + setOwningAxiom((EntityEquivalenceAxiom)null); return; } super.eUnset(featureID); @@ -381,8 +381,8 @@ public boolean eIsSet(int featureID) { switch (featureID) { case OmlPackage.PROPERTY_RESTRICTION_AXIOM__PROPERTY: return property != null; - case OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_CLASSIFIER: - return basicGetOwningClassifier() != null; + case OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_ENTITY: + return basicGetOwningEntity() != null; case OmlPackage.PROPERTY_RESTRICTION_AXIOM__OWNING_AXIOM: return basicGetOwningAxiom() != null; } diff --git a/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/RelationImpl.java b/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/RelationImpl.java index bf768b26..e2ea3ead 100644 --- a/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/RelationImpl.java +++ b/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/RelationImpl.java @@ -18,7 +18,6 @@ */ package io.opencaesar.oml.impl; -import io.opencaesar.oml.Classifier; import io.opencaesar.oml.Entity; import io.opencaesar.oml.OmlPackage; import io.opencaesar.oml.Relation; @@ -172,8 +171,8 @@ public Relation getInverse() { * @generated */ @Override - public EList getDomainList() { - return ECollections.toEList(this.getDomains()); + public EList getDomainList() { + return ECollections.toEList(this.getDomains()); } /** diff --git a/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/ScalarPropertyImpl.java b/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/ScalarPropertyImpl.java index 0957f2a9..2104a7f4 100644 --- a/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/ScalarPropertyImpl.java +++ b/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/ScalarPropertyImpl.java @@ -18,7 +18,7 @@ */ package io.opencaesar.oml.impl; -import io.opencaesar.oml.Classifier; +import io.opencaesar.oml.Entity; import io.opencaesar.oml.OmlPackage; import io.opencaesar.oml.PropertyEquivalenceAxiom; import io.opencaesar.oml.Scalar; @@ -129,7 +129,7 @@ public class ScalarPropertyImpl extends SemanticPropertyImpl implements ScalarPr * @generated * @ordered */ - protected EList domains; + protected EList domains; /** * The cached value of the '{@link #getRanges() Ranges}' reference list. @@ -308,9 +308,9 @@ public void setFunctional(boolean newFunctional) { * @generated */ @Override - public EList getDomains() { + public EList getDomains() { if (domains == null) { - domains = new EObjectResolvingEList(Classifier.class, this, OmlPackage.SCALAR_PROPERTY__DOMAINS); + domains = new EObjectResolvingEList(Entity.class, this, OmlPackage.SCALAR_PROPERTY__DOMAINS); } return domains; } @@ -334,7 +334,7 @@ public EList getRanges() { * @generated */ @Override - public EList getDomainList() { + public EList getDomainList() { return this.getDomains(); } @@ -457,7 +457,7 @@ public void eSet(int featureID, Object newValue) { return; case OmlPackage.SCALAR_PROPERTY__DOMAINS: getDomains().clear(); - getDomains().addAll((Collection)newValue); + getDomains().addAll((Collection)newValue); return; case OmlPackage.SCALAR_PROPERTY__RANGES: getRanges().clear(); diff --git a/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/SemanticPropertyImpl.java b/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/SemanticPropertyImpl.java index f21eb669..a929b58b 100644 --- a/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/SemanticPropertyImpl.java +++ b/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/SemanticPropertyImpl.java @@ -18,7 +18,7 @@ */ package io.opencaesar.oml.impl; -import io.opencaesar.oml.Classifier; +import io.opencaesar.oml.Entity; import io.opencaesar.oml.OmlPackage; import io.opencaesar.oml.SemanticProperty; import io.opencaesar.oml.Type; @@ -74,7 +74,7 @@ public boolean isFunctional() { * @generated */ @Override - public EList getDomainList() { + public EList getDomainList() { // TODO: implement this method // Ensure that you remove @generated or mark it @generated NOT throw new UnsupportedOperationException(); diff --git a/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/StructureImpl.java b/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/StructureImpl.java deleted file mode 100644 index ead8df65..00000000 --- a/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/StructureImpl.java +++ /dev/null @@ -1,173 +0,0 @@ -/** - * - * Copyright 2019-2022 California Institute of Technology ("Caltech"). - * U.S. Government sponsorship acknowledged. - * - * Licensed 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 io.opencaesar.oml.impl; - -import io.opencaesar.oml.OmlPackage; -import io.opencaesar.oml.Structure; - -import org.eclipse.emf.common.notify.Notification; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -/** - * - * An implementation of the model object 'Structure'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link io.opencaesar.oml.impl.StructureImpl#getRef Ref}
  • - *
- * - * @generated - */ -public class StructureImpl extends ClassifierImpl implements Structure { - /** - * The cached value of the '{@link #getRef() Ref}' reference. - * - * - * @see #getRef() - * @generated - * @ordered - */ - protected Structure ref; - - /** - * - * - * @generated - */ - protected StructureImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return OmlPackage.Literals.STRUCTURE; - } - - /** - * - * - * @generated - */ - @Override - public Structure getRef() { - if (ref != null && ref.eIsProxy()) { - InternalEObject oldRef = (InternalEObject)ref; - ref = (Structure)eResolveProxy(oldRef); - if (ref != oldRef) { - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.RESOLVE, OmlPackage.STRUCTURE__REF, oldRef, ref)); - } - } - return ref; - } - - /** - * - * - * @generated - */ - public Structure basicGetRef() { - return ref; - } - - /** - * - * - * @generated - */ - @Override - public void setRef(Structure newRef) { - Structure oldRef = ref; - ref = newRef; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, OmlPackage.STRUCTURE__REF, oldRef, ref)); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case OmlPackage.STRUCTURE__REF: - if (resolve) return getRef(); - return basicGetRef(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case OmlPackage.STRUCTURE__REF: - setRef((Structure)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case OmlPackage.STRUCTURE__REF: - setRef((Structure)null); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case OmlPackage.STRUCTURE__REF: - return ref != null; - } - return super.eIsSet(featureID); - } - -} //StructureImpl diff --git a/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/StructuredPropertyImpl.java b/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/StructuredPropertyImpl.java deleted file mode 100644 index 6ec72711..00000000 --- a/io.opencaesar.oml/src-gen/io/opencaesar/oml/impl/StructuredPropertyImpl.java +++ /dev/null @@ -1,627 +0,0 @@ -/** - * - * Copyright 2019-2022 California Institute of Technology ("Caltech"). - * U.S. Government sponsorship acknowledged. - * - * Licensed 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 io.opencaesar.oml.impl; - -import io.opencaesar.oml.Classifier; -import io.opencaesar.oml.OmlPackage; -import io.opencaesar.oml.PropertyEquivalenceAxiom; -import io.opencaesar.oml.SpecializableProperty; -import io.opencaesar.oml.SpecializableTerm; -import io.opencaesar.oml.SpecializationAxiom; -import io.opencaesar.oml.Statement; -import io.opencaesar.oml.Structure; -import io.opencaesar.oml.StructuredProperty; -import io.opencaesar.oml.Type; -import io.opencaesar.oml.Vocabulary; -import io.opencaesar.oml.VocabularyStatement; - -import java.lang.reflect.InvocationTargetException; - -import java.util.Collection; - -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.common.util.ECollections; -import org.eclipse.emf.common.util.EList; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList; -import org.eclipse.emf.ecore.util.EObjectResolvingEList; -import org.eclipse.emf.ecore.util.EcoreUtil; -import org.eclipse.emf.ecore.util.InternalEList; - -/** - * - * An implementation of the model object 'Structured Property'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link io.opencaesar.oml.impl.StructuredPropertyImpl#getOwningVocabulary Owning Vocabulary}
  • - *
  • {@link io.opencaesar.oml.impl.StructuredPropertyImpl#getOwnedSpecializations Owned Specializations}
  • - *
  • {@link io.opencaesar.oml.impl.StructuredPropertyImpl#getOwnedEquivalences Owned Equivalences}
  • - *
  • {@link io.opencaesar.oml.impl.StructuredPropertyImpl#getRef Ref}
  • - *
  • {@link io.opencaesar.oml.impl.StructuredPropertyImpl#isFunctional Functional}
  • - *
  • {@link io.opencaesar.oml.impl.StructuredPropertyImpl#getDomains Domains}
  • - *
  • {@link io.opencaesar.oml.impl.StructuredPropertyImpl#getRanges Ranges}
  • - *
- * - * @generated - */ -public class StructuredPropertyImpl extends SemanticPropertyImpl implements StructuredProperty { - /** - * The cached value of the '{@link #getOwnedSpecializations() Owned Specializations}' containment reference list. - * - * - * @see #getOwnedSpecializations() - * @generated - * @ordered - */ - protected EList ownedSpecializations; - - /** - * The cached value of the '{@link #getOwnedEquivalences() Owned Equivalences}' containment reference list. - * - * - * @see #getOwnedEquivalences() - * @generated - * @ordered - */ - protected EList ownedEquivalences; - - /** - * The cached value of the '{@link #getRef() Ref}' reference. - * - * - * @see #getRef() - * @generated - * @ordered - */ - protected StructuredProperty ref; - - /** - * The default value of the '{@link #isFunctional() Functional}' attribute. - * - * - * @see #isFunctional() - * @generated - * @ordered - */ - protected static final boolean FUNCTIONAL_EDEFAULT = false; - - /** - * The cached value of the '{@link #isFunctional() Functional}' attribute. - * - * - * @see #isFunctional() - * @generated - * @ordered - */ - protected boolean functional = FUNCTIONAL_EDEFAULT; - - /** - * The cached value of the '{@link #getDomains() Domains}' reference list. - * - * - * @see #getDomains() - * @generated - * @ordered - */ - protected EList domains; - - /** - * The cached value of the '{@link #getRanges() Ranges}' reference list. - * - * - * @see #getRanges() - * @generated - * @ordered - */ - protected EList ranges; - - /** - * - * - * @generated - */ - protected StructuredPropertyImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return OmlPackage.Literals.STRUCTURED_PROPERTY; - } - - /** - * - * - * @generated - */ - @Override - public Vocabulary getOwningVocabulary() { - if (eContainerFeatureID() != OmlPackage.STRUCTURED_PROPERTY__OWNING_VOCABULARY) return null; - return (Vocabulary)eContainer(); - } - - /** - * - * - * @generated - */ - public Vocabulary basicGetOwningVocabulary() { - if (eContainerFeatureID() != OmlPackage.STRUCTURED_PROPERTY__OWNING_VOCABULARY) return null; - return (Vocabulary)eInternalContainer(); - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetOwningVocabulary(Vocabulary newOwningVocabulary, NotificationChain msgs) { - msgs = eBasicSetContainer((InternalEObject)newOwningVocabulary, OmlPackage.STRUCTURED_PROPERTY__OWNING_VOCABULARY, msgs); - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setOwningVocabulary(Vocabulary newOwningVocabulary) { - if (newOwningVocabulary != eInternalContainer() || (eContainerFeatureID() != OmlPackage.STRUCTURED_PROPERTY__OWNING_VOCABULARY && newOwningVocabulary != null)) { - if (EcoreUtil.isAncestor(this, newOwningVocabulary)) - throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); - NotificationChain msgs = null; - if (eInternalContainer() != null) - msgs = eBasicRemoveFromContainer(msgs); - if (newOwningVocabulary != null) - msgs = ((InternalEObject)newOwningVocabulary).eInverseAdd(this, OmlPackage.VOCABULARY__OWNED_STATEMENTS, Vocabulary.class, msgs); - msgs = basicSetOwningVocabulary(newOwningVocabulary, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, OmlPackage.STRUCTURED_PROPERTY__OWNING_VOCABULARY, newOwningVocabulary, newOwningVocabulary)); - } - - /** - * - * - * @generated - */ - @Override - public EList getOwnedSpecializations() { - if (ownedSpecializations == null) { - ownedSpecializations = new EObjectContainmentWithInverseEList(SpecializationAxiom.class, this, OmlPackage.STRUCTURED_PROPERTY__OWNED_SPECIALIZATIONS, OmlPackage.SPECIALIZATION_AXIOM__OWNING_TERM); - } - return ownedSpecializations; - } - - /** - * - * - * @generated - */ - @Override - public EList getOwnedEquivalences() { - if (ownedEquivalences == null) { - ownedEquivalences = new EObjectContainmentWithInverseEList(PropertyEquivalenceAxiom.class, this, OmlPackage.STRUCTURED_PROPERTY__OWNED_EQUIVALENCES, OmlPackage.PROPERTY_EQUIVALENCE_AXIOM__OWNING_PROPERTY); - } - return ownedEquivalences; - } - - /** - * - * - * @generated - */ - @Override - public StructuredProperty getRef() { - if (ref != null && ref.eIsProxy()) { - InternalEObject oldRef = (InternalEObject)ref; - ref = (StructuredProperty)eResolveProxy(oldRef); - if (ref != oldRef) { - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.RESOLVE, OmlPackage.STRUCTURED_PROPERTY__REF, oldRef, ref)); - } - } - return ref; - } - - /** - * - * - * @generated - */ - public StructuredProperty basicGetRef() { - return ref; - } - - /** - * - * - * @generated - */ - @Override - public void setRef(StructuredProperty newRef) { - StructuredProperty oldRef = ref; - ref = newRef; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, OmlPackage.STRUCTURED_PROPERTY__REF, oldRef, ref)); - } - - /** - * - * - * @generated - */ - @Override - public boolean isFunctional() { - return functional; - } - - /** - * - * - * @generated - */ - @Override - public void setFunctional(boolean newFunctional) { - boolean oldFunctional = functional; - functional = newFunctional; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, OmlPackage.STRUCTURED_PROPERTY__FUNCTIONAL, oldFunctional, functional)); - } - - /** - * - * - * @generated - */ - @Override - public EList getDomains() { - if (domains == null) { - domains = new EObjectResolvingEList(Classifier.class, this, OmlPackage.STRUCTURED_PROPERTY__DOMAINS); - } - return domains; - } - - /** - * - * - * @generated - */ - @Override - public EList getRanges() { - if (ranges == null) { - ranges = new EObjectResolvingEList(Structure.class, this, OmlPackage.STRUCTURED_PROPERTY__RANGES); - } - return ranges; - } - - /** - * - * - * @generated - */ - @Override - public EList getDomainList() { - return this.getDomains(); - } - - /** - * - * - * @generated - */ - @Override - public EList getRangeList() { - return ECollections.toEList(this.getRanges()); - } - - /** - * - * - * @generated - */ - @SuppressWarnings("unchecked") - @Override - public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { - switch (featureID) { - case OmlPackage.STRUCTURED_PROPERTY__OWNING_VOCABULARY: - if (eInternalContainer() != null) - msgs = eBasicRemoveFromContainer(msgs); - return basicSetOwningVocabulary((Vocabulary)otherEnd, msgs); - case OmlPackage.STRUCTURED_PROPERTY__OWNED_SPECIALIZATIONS: - return ((InternalEList)(InternalEList)getOwnedSpecializations()).basicAdd(otherEnd, msgs); - case OmlPackage.STRUCTURED_PROPERTY__OWNED_EQUIVALENCES: - return ((InternalEList)(InternalEList)getOwnedEquivalences()).basicAdd(otherEnd, msgs); - } - return super.eInverseAdd(otherEnd, featureID, msgs); - } - - /** - * - * - * @generated - */ - @Override - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { - switch (featureID) { - case OmlPackage.STRUCTURED_PROPERTY__OWNING_VOCABULARY: - return basicSetOwningVocabulary(null, msgs); - case OmlPackage.STRUCTURED_PROPERTY__OWNED_SPECIALIZATIONS: - return ((InternalEList)getOwnedSpecializations()).basicRemove(otherEnd, msgs); - case OmlPackage.STRUCTURED_PROPERTY__OWNED_EQUIVALENCES: - return ((InternalEList)getOwnedEquivalences()).basicRemove(otherEnd, msgs); - } - return super.eInverseRemove(otherEnd, featureID, msgs); - } - - /** - * - * - * @generated - */ - @Override - public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) { - switch (eContainerFeatureID()) { - case OmlPackage.STRUCTURED_PROPERTY__OWNING_VOCABULARY: - return eInternalContainer().eInverseRemove(this, OmlPackage.VOCABULARY__OWNED_STATEMENTS, Vocabulary.class, msgs); - } - return super.eBasicRemoveFromContainerFeature(msgs); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case OmlPackage.STRUCTURED_PROPERTY__OWNING_VOCABULARY: - if (resolve) return getOwningVocabulary(); - return basicGetOwningVocabulary(); - case OmlPackage.STRUCTURED_PROPERTY__OWNED_SPECIALIZATIONS: - return getOwnedSpecializations(); - case OmlPackage.STRUCTURED_PROPERTY__OWNED_EQUIVALENCES: - return getOwnedEquivalences(); - case OmlPackage.STRUCTURED_PROPERTY__REF: - if (resolve) return getRef(); - return basicGetRef(); - case OmlPackage.STRUCTURED_PROPERTY__FUNCTIONAL: - return isFunctional(); - case OmlPackage.STRUCTURED_PROPERTY__DOMAINS: - return getDomains(); - case OmlPackage.STRUCTURED_PROPERTY__RANGES: - return getRanges(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @SuppressWarnings("unchecked") - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case OmlPackage.STRUCTURED_PROPERTY__OWNING_VOCABULARY: - setOwningVocabulary((Vocabulary)newValue); - return; - case OmlPackage.STRUCTURED_PROPERTY__OWNED_SPECIALIZATIONS: - getOwnedSpecializations().clear(); - getOwnedSpecializations().addAll((Collection)newValue); - return; - case OmlPackage.STRUCTURED_PROPERTY__OWNED_EQUIVALENCES: - getOwnedEquivalences().clear(); - getOwnedEquivalences().addAll((Collection)newValue); - return; - case OmlPackage.STRUCTURED_PROPERTY__REF: - setRef((StructuredProperty)newValue); - return; - case OmlPackage.STRUCTURED_PROPERTY__FUNCTIONAL: - setFunctional((Boolean)newValue); - return; - case OmlPackage.STRUCTURED_PROPERTY__DOMAINS: - getDomains().clear(); - getDomains().addAll((Collection)newValue); - return; - case OmlPackage.STRUCTURED_PROPERTY__RANGES: - getRanges().clear(); - getRanges().addAll((Collection)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case OmlPackage.STRUCTURED_PROPERTY__OWNING_VOCABULARY: - setOwningVocabulary((Vocabulary)null); - return; - case OmlPackage.STRUCTURED_PROPERTY__OWNED_SPECIALIZATIONS: - getOwnedSpecializations().clear(); - return; - case OmlPackage.STRUCTURED_PROPERTY__OWNED_EQUIVALENCES: - getOwnedEquivalences().clear(); - return; - case OmlPackage.STRUCTURED_PROPERTY__REF: - setRef((StructuredProperty)null); - return; - case OmlPackage.STRUCTURED_PROPERTY__FUNCTIONAL: - setFunctional(FUNCTIONAL_EDEFAULT); - return; - case OmlPackage.STRUCTURED_PROPERTY__DOMAINS: - getDomains().clear(); - return; - case OmlPackage.STRUCTURED_PROPERTY__RANGES: - getRanges().clear(); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case OmlPackage.STRUCTURED_PROPERTY__OWNING_VOCABULARY: - return basicGetOwningVocabulary() != null; - case OmlPackage.STRUCTURED_PROPERTY__OWNED_SPECIALIZATIONS: - return ownedSpecializations != null && !ownedSpecializations.isEmpty(); - case OmlPackage.STRUCTURED_PROPERTY__OWNED_EQUIVALENCES: - return ownedEquivalences != null && !ownedEquivalences.isEmpty(); - case OmlPackage.STRUCTURED_PROPERTY__REF: - return ref != null; - case OmlPackage.STRUCTURED_PROPERTY__FUNCTIONAL: - return functional != FUNCTIONAL_EDEFAULT; - case OmlPackage.STRUCTURED_PROPERTY__DOMAINS: - return domains != null && !domains.isEmpty(); - case OmlPackage.STRUCTURED_PROPERTY__RANGES: - return ranges != null && !ranges.isEmpty(); - } - return super.eIsSet(featureID); - } - - /** - * - * - * @generated - */ - @Override - public int eBaseStructuralFeatureID(int derivedFeatureID, Class baseClass) { - if (baseClass == Statement.class) { - switch (derivedFeatureID) { - default: return -1; - } - } - if (baseClass == VocabularyStatement.class) { - switch (derivedFeatureID) { - case OmlPackage.STRUCTURED_PROPERTY__OWNING_VOCABULARY: return OmlPackage.VOCABULARY_STATEMENT__OWNING_VOCABULARY; - default: return -1; - } - } - if (baseClass == SpecializableTerm.class) { - switch (derivedFeatureID) { - case OmlPackage.STRUCTURED_PROPERTY__OWNED_SPECIALIZATIONS: return OmlPackage.SPECIALIZABLE_TERM__OWNED_SPECIALIZATIONS; - default: return -1; - } - } - if (baseClass == SpecializableProperty.class) { - switch (derivedFeatureID) { - case OmlPackage.STRUCTURED_PROPERTY__OWNED_EQUIVALENCES: return OmlPackage.SPECIALIZABLE_PROPERTY__OWNED_EQUIVALENCES; - default: return -1; - } - } - return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass); - } - - /** - * - * - * @generated - */ - @Override - public int eDerivedStructuralFeatureID(int baseFeatureID, Class baseClass) { - if (baseClass == Statement.class) { - switch (baseFeatureID) { - default: return -1; - } - } - if (baseClass == VocabularyStatement.class) { - switch (baseFeatureID) { - case OmlPackage.VOCABULARY_STATEMENT__OWNING_VOCABULARY: return OmlPackage.STRUCTURED_PROPERTY__OWNING_VOCABULARY; - default: return -1; - } - } - if (baseClass == SpecializableTerm.class) { - switch (baseFeatureID) { - case OmlPackage.SPECIALIZABLE_TERM__OWNED_SPECIALIZATIONS: return OmlPackage.STRUCTURED_PROPERTY__OWNED_SPECIALIZATIONS; - default: return -1; - } - } - if (baseClass == SpecializableProperty.class) { - switch (baseFeatureID) { - case OmlPackage.SPECIALIZABLE_PROPERTY__OWNED_EQUIVALENCES: return OmlPackage.STRUCTURED_PROPERTY__OWNED_EQUIVALENCES; - default: return -1; - } - } - return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass); - } - - /** - * - * - * @generated - */ - @Override - public Object eInvoke(int operationID, EList arguments) throws InvocationTargetException { - switch (operationID) { - case OmlPackage.STRUCTURED_PROPERTY___GET_DOMAIN_LIST: - return getDomainList(); - case OmlPackage.STRUCTURED_PROPERTY___GET_RANGE_LIST: - return getRangeList(); - } - return super.eInvoke(operationID, arguments); - } - - /** - * - * - * @generated - */ - @Override - public String toString() { - if (eIsProxy()) return super.toString(); - - StringBuilder result = new StringBuilder(super.toString()); - result.append(" (functional: "); - result.append(functional); - result.append(')'); - return result.toString(); - } - -} //StructuredPropertyImpl diff --git a/io.opencaesar.oml/src-gen/io/opencaesar/oml/util/OmlAdapterFactory.java b/io.opencaesar.oml/src-gen/io/opencaesar/oml/util/OmlAdapterFactory.java index 422062fe..9797c071 100644 --- a/io.opencaesar.oml/src-gen/io/opencaesar/oml/util/OmlAdapterFactory.java +++ b/io.opencaesar.oml/src-gen/io/opencaesar/oml/util/OmlAdapterFactory.java @@ -208,10 +208,6 @@ public Adapter caseSpecializableProperty(SpecializableProperty object) { return createSpecializablePropertyAdapter(); } @Override - public Adapter caseClassifier(Classifier object) { - return createClassifierAdapter(); - } - @Override public Adapter caseScalar(Scalar object) { return createScalarAdapter(); } @@ -220,10 +216,6 @@ public Adapter caseEntity(Entity object) { return createEntityAdapter(); } @Override - public Adapter caseStructure(Structure object) { - return createStructureAdapter(); - } - @Override public Adapter caseAspect(Aspect object) { return createAspectAdapter(); } @@ -248,10 +240,6 @@ public Adapter caseScalarProperty(ScalarProperty object) { return createScalarPropertyAdapter(); } @Override - public Adapter caseStructuredProperty(StructuredProperty object) { - return createStructuredPropertyAdapter(); - } - @Override public Adapter caseRelation(Relation object) { return createRelationAdapter(); } @@ -284,8 +272,8 @@ public Adapter caseRelationInstance(RelationInstance object) { return createRelationInstanceAdapter(); } @Override - public Adapter caseStructureInstance(StructureInstance object) { - return createStructureInstanceAdapter(); + public Adapter caseAnonymousConceptInstance(AnonymousConceptInstance object) { + return createAnonymousConceptInstanceAdapter(); } @Override public Adapter caseAnonymousRelationInstance(AnonymousRelationInstance object) { @@ -312,8 +300,8 @@ public Adapter caseLiteralEnumerationAxiom(LiteralEnumerationAxiom object) { return createLiteralEnumerationAxiomAdapter(); } @Override - public Adapter caseClassifierEquivalenceAxiom(ClassifierEquivalenceAxiom object) { - return createClassifierEquivalenceAxiomAdapter(); + public Adapter caseEntityEquivalenceAxiom(EntityEquivalenceAxiom object) { + return createEntityEquivalenceAxiomAdapter(); } @Override public Adapter caseScalarEquivalenceAxiom(ScalarEquivalenceAxiom object) { @@ -853,20 +841,6 @@ public Adapter createSpecializablePropertyAdapter() { return null; } - /** - * Creates a new adapter for an object of class '{@link io.opencaesar.oml.Classifier Classifier}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see io.opencaesar.oml.Classifier - * @generated - */ - public Adapter createClassifierAdapter() { - return null; - } - /** * Creates a new adapter for an object of class '{@link io.opencaesar.oml.Scalar Scalar}'. * @@ -895,20 +869,6 @@ public Adapter createEntityAdapter() { return null; } - /** - * Creates a new adapter for an object of class '{@link io.opencaesar.oml.Structure Structure}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see io.opencaesar.oml.Structure - * @generated - */ - public Adapter createStructureAdapter() { - return null; - } - /** * Creates a new adapter for an object of class '{@link io.opencaesar.oml.Aspect Aspect}'. * @@ -993,20 +953,6 @@ public Adapter createScalarPropertyAdapter() { return null; } - /** - * Creates a new adapter for an object of class '{@link io.opencaesar.oml.StructuredProperty Structured Property}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see io.opencaesar.oml.StructuredProperty - * @generated - */ - public Adapter createStructuredPropertyAdapter() { - return null; - } - /** * Creates a new adapter for an object of class '{@link io.opencaesar.oml.Relation Relation}'. * @@ -1120,16 +1066,16 @@ public Adapter createRelationInstanceAdapter() { } /** - * Creates a new adapter for an object of class '{@link io.opencaesar.oml.StructureInstance Structure Instance}'. + * Creates a new adapter for an object of class '{@link io.opencaesar.oml.AnonymousConceptInstance Anonymous Concept Instance}'. * * This default implementation returns null so that we can easily ignore cases; * it's useful to ignore a case when inheritance will catch all the cases anyway. * * @return the new adapter. - * @see io.opencaesar.oml.StructureInstance + * @see io.opencaesar.oml.AnonymousConceptInstance * @generated */ - public Adapter createStructureInstanceAdapter() { + public Adapter createAnonymousConceptInstanceAdapter() { return null; } @@ -1218,16 +1164,16 @@ public Adapter createLiteralEnumerationAxiomAdapter() { } /** - * Creates a new adapter for an object of class '{@link io.opencaesar.oml.ClassifierEquivalenceAxiom Classifier Equivalence Axiom}'. + * Creates a new adapter for an object of class '{@link io.opencaesar.oml.EntityEquivalenceAxiom Entity Equivalence Axiom}'. * * This default implementation returns null so that we can easily ignore cases; * it's useful to ignore a case when inheritance will catch all the cases anyway. * * @return the new adapter. - * @see io.opencaesar.oml.ClassifierEquivalenceAxiom + * @see io.opencaesar.oml.EntityEquivalenceAxiom * @generated */ - public Adapter createClassifierEquivalenceAxiomAdapter() { + public Adapter createEntityEquivalenceAxiomAdapter() { return null; } diff --git a/io.opencaesar.oml/src-gen/io/opencaesar/oml/util/OmlSwitch.java b/io.opencaesar.oml/src-gen/io/opencaesar/oml/util/OmlSwitch.java index dcc6ef4c..4941e1c1 100644 --- a/io.opencaesar.oml/src-gen/io/opencaesar/oml/util/OmlSwitch.java +++ b/io.opencaesar.oml/src-gen/io/opencaesar/oml/util/OmlSwitch.java @@ -375,21 +375,6 @@ protected T doSwitch(int classifierID, EObject theEObject) { if (result == null) result = defaultCase(theEObject); return result; } - case OmlPackage.CLASSIFIER: { - Classifier classifier = (Classifier)theEObject; - T result = caseClassifier(classifier); - if (result == null) result = caseType(classifier); - if (result == null) result = caseSpecializableTerm(classifier); - if (result == null) result = caseTerm(classifier); - if (result == null) result = caseVocabularyStatement(classifier); - if (result == null) result = caseVocabularyMember(classifier); - if (result == null) result = caseStatement(classifier); - if (result == null) result = caseMember(classifier); - if (result == null) result = caseIdentifiedElement(classifier); - if (result == null) result = caseElement(classifier); - if (result == null) result = defaultCase(theEObject); - return result; - } case OmlPackage.SCALAR: { Scalar scalar = (Scalar)theEObject; T result = caseScalar(scalar); @@ -408,7 +393,6 @@ protected T doSwitch(int classifierID, EObject theEObject) { case OmlPackage.ENTITY: { Entity entity = (Entity)theEObject; T result = caseEntity(entity); - if (result == null) result = caseClassifier(entity); if (result == null) result = caseType(entity); if (result == null) result = caseSpecializableTerm(entity); if (result == null) result = caseTerm(entity); @@ -421,27 +405,10 @@ protected T doSwitch(int classifierID, EObject theEObject) { if (result == null) result = defaultCase(theEObject); return result; } - case OmlPackage.STRUCTURE: { - Structure structure = (Structure)theEObject; - T result = caseStructure(structure); - if (result == null) result = caseClassifier(structure); - if (result == null) result = caseType(structure); - if (result == null) result = caseSpecializableTerm(structure); - if (result == null) result = caseTerm(structure); - if (result == null) result = caseVocabularyStatement(structure); - if (result == null) result = caseVocabularyMember(structure); - if (result == null) result = caseStatement(structure); - if (result == null) result = caseMember(structure); - if (result == null) result = caseIdentifiedElement(structure); - if (result == null) result = caseElement(structure); - if (result == null) result = defaultCase(theEObject); - return result; - } case OmlPackage.ASPECT: { Aspect aspect = (Aspect)theEObject; T result = caseAspect(aspect); if (result == null) result = caseEntity(aspect); - if (result == null) result = caseClassifier(aspect); if (result == null) result = caseType(aspect); if (result == null) result = caseSpecializableTerm(aspect); if (result == null) result = caseTerm(aspect); @@ -458,7 +425,6 @@ protected T doSwitch(int classifierID, EObject theEObject) { Concept concept = (Concept)theEObject; T result = caseConcept(concept); if (result == null) result = caseEntity(concept); - if (result == null) result = caseClassifier(concept); if (result == null) result = caseType(concept); if (result == null) result = caseSpecializableTerm(concept); if (result == null) result = caseTerm(concept); @@ -476,7 +442,6 @@ protected T doSwitch(int classifierID, EObject theEObject) { T result = caseRelationEntity(relationEntity); if (result == null) result = caseEntity(relationEntity); if (result == null) result = caseRelationBase(relationEntity); - if (result == null) result = caseClassifier(relationEntity); if (result == null) result = caseType(relationEntity); if (result == null) result = caseSpecializableTerm(relationEntity); if (result == null) result = caseTerm(relationEntity); @@ -534,23 +499,6 @@ protected T doSwitch(int classifierID, EObject theEObject) { if (result == null) result = defaultCase(theEObject); return result; } - case OmlPackage.STRUCTURED_PROPERTY: { - StructuredProperty structuredProperty = (StructuredProperty)theEObject; - T result = caseStructuredProperty(structuredProperty); - if (result == null) result = caseSemanticProperty(structuredProperty); - if (result == null) result = caseSpecializableProperty(structuredProperty); - if (result == null) result = caseProperty(structuredProperty); - if (result == null) result = caseSpecializableTerm(structuredProperty); - if (result == null) result = caseTerm(structuredProperty); - if (result == null) result = caseVocabularyStatement(structuredProperty); - if (result == null) result = caseVocabularyMember(structuredProperty); - if (result == null) result = caseStatement(structuredProperty); - if (result == null) result = caseMember(structuredProperty); - if (result == null) result = caseIdentifiedElement(structuredProperty); - if (result == null) result = caseElement(structuredProperty); - if (result == null) result = defaultCase(theEObject); - return result; - } case OmlPackage.RELATION: { Relation relation = (Relation)theEObject; T result = caseRelation(relation); @@ -660,12 +608,12 @@ protected T doSwitch(int classifierID, EObject theEObject) { if (result == null) result = defaultCase(theEObject); return result; } - case OmlPackage.STRUCTURE_INSTANCE: { - StructureInstance structureInstance = (StructureInstance)theEObject; - T result = caseStructureInstance(structureInstance); - if (result == null) result = caseAnonymousInstance(structureInstance); - if (result == null) result = caseInstance(structureInstance); - if (result == null) result = caseElement(structureInstance); + case OmlPackage.ANONYMOUS_CONCEPT_INSTANCE: { + AnonymousConceptInstance anonymousConceptInstance = (AnonymousConceptInstance)theEObject; + T result = caseAnonymousConceptInstance(anonymousConceptInstance); + if (result == null) result = caseAnonymousInstance(anonymousConceptInstance); + if (result == null) result = caseInstance(anonymousConceptInstance); + if (result == null) result = caseElement(anonymousConceptInstance); if (result == null) result = defaultCase(theEObject); return result; } @@ -718,11 +666,11 @@ protected T doSwitch(int classifierID, EObject theEObject) { if (result == null) result = defaultCase(theEObject); return result; } - case OmlPackage.CLASSIFIER_EQUIVALENCE_AXIOM: { - ClassifierEquivalenceAxiom classifierEquivalenceAxiom = (ClassifierEquivalenceAxiom)theEObject; - T result = caseClassifierEquivalenceAxiom(classifierEquivalenceAxiom); - if (result == null) result = caseAxiom(classifierEquivalenceAxiom); - if (result == null) result = caseElement(classifierEquivalenceAxiom); + case OmlPackage.ENTITY_EQUIVALENCE_AXIOM: { + EntityEquivalenceAxiom entityEquivalenceAxiom = (EntityEquivalenceAxiom)theEObject; + T result = caseEntityEquivalenceAxiom(entityEquivalenceAxiom); + if (result == null) result = caseAxiom(entityEquivalenceAxiom); + if (result == null) result = caseElement(entityEquivalenceAxiom); if (result == null) result = defaultCase(theEObject); return result; } @@ -1373,21 +1321,6 @@ public T caseSpecializableProperty(SpecializableProperty object) { return null; } - /** - * Returns the result of interpreting the object as an instance of 'Classifier'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Classifier'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseClassifier(Classifier object) { - return null; - } - /** * Returns the result of interpreting the object as an instance of 'Scalar'. * @@ -1418,21 +1351,6 @@ public T caseEntity(Entity object) { return null; } - /** - * Returns the result of interpreting the object as an instance of 'Structure'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Structure'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseStructure(Structure object) { - return null; - } - /** * Returns the result of interpreting the object as an instance of 'Aspect'. * @@ -1523,21 +1441,6 @@ public T caseScalarProperty(ScalarProperty object) { return null; } - /** - * Returns the result of interpreting the object as an instance of 'Structured Property'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Structured Property'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseStructuredProperty(StructuredProperty object) { - return null; - } - /** * Returns the result of interpreting the object as an instance of 'Relation'. * @@ -1659,17 +1562,17 @@ public T caseRelationInstance(RelationInstance object) { } /** - * Returns the result of interpreting the object as an instance of 'Structure Instance'. + * Returns the result of interpreting the object as an instance of 'Anonymous Concept Instance'. * * This implementation returns null; * returning a non-null result will terminate the switch. * * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Structure Instance'. + * @return the result of interpreting the object as an instance of 'Anonymous Concept Instance'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ - public T caseStructureInstance(StructureInstance object) { + public T caseAnonymousConceptInstance(AnonymousConceptInstance object) { return null; } @@ -1764,17 +1667,17 @@ public T caseLiteralEnumerationAxiom(LiteralEnumerationAxiom object) { } /** - * Returns the result of interpreting the object as an instance of 'Classifier Equivalence Axiom'. + * Returns the result of interpreting the object as an instance of 'Entity Equivalence Axiom'. * * This implementation returns null; * returning a non-null result will terminate the switch. * * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Classifier Equivalence Axiom'. + * @return the result of interpreting the object as an instance of 'Entity Equivalence Axiom'. * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) * @generated */ - public T caseClassifierEquivalenceAxiom(ClassifierEquivalenceAxiom object) { + public T caseEntityEquivalenceAxiom(EntityEquivalenceAxiom object) { return null; } diff --git a/io.opencaesar.oml/src-gen/io/opencaesar/oml/util/OmlValidator.java b/io.opencaesar.oml/src-gen/io/opencaesar/oml/util/OmlValidator.java index d43777a3..e7b9a369 100644 --- a/io.opencaesar.oml/src-gen/io/opencaesar/oml/util/OmlValidator.java +++ b/io.opencaesar.oml/src-gen/io/opencaesar/oml/util/OmlValidator.java @@ -185,14 +185,10 @@ protected boolean validate(int classifierID, Object value, DiagnosticChain diagn return validateRelationBase((RelationBase)value, diagnostics, context); case OmlPackage.SPECIALIZABLE_PROPERTY: return validateSpecializableProperty((SpecializableProperty)value, diagnostics, context); - case OmlPackage.CLASSIFIER: - return validateClassifier((Classifier)value, diagnostics, context); case OmlPackage.SCALAR: return validateScalar((Scalar)value, diagnostics, context); case OmlPackage.ENTITY: return validateEntity((Entity)value, diagnostics, context); - case OmlPackage.STRUCTURE: - return validateStructure((Structure)value, diagnostics, context); case OmlPackage.ASPECT: return validateAspect((Aspect)value, diagnostics, context); case OmlPackage.CONCEPT: @@ -205,8 +201,6 @@ protected boolean validate(int classifierID, Object value, DiagnosticChain diagn return validateSemanticProperty((SemanticProperty)value, diagnostics, context); case OmlPackage.SCALAR_PROPERTY: return validateScalarProperty((ScalarProperty)value, diagnostics, context); - case OmlPackage.STRUCTURED_PROPERTY: - return validateStructuredProperty((StructuredProperty)value, diagnostics, context); case OmlPackage.RELATION: return validateRelation((Relation)value, diagnostics, context); case OmlPackage.FORWARD_RELATION: @@ -223,8 +217,8 @@ protected boolean validate(int classifierID, Object value, DiagnosticChain diagn return validateConceptInstance((ConceptInstance)value, diagnostics, context); case OmlPackage.RELATION_INSTANCE: return validateRelationInstance((RelationInstance)value, diagnostics, context); - case OmlPackage.STRUCTURE_INSTANCE: - return validateStructureInstance((StructureInstance)value, diagnostics, context); + case OmlPackage.ANONYMOUS_CONCEPT_INSTANCE: + return validateAnonymousConceptInstance((AnonymousConceptInstance)value, diagnostics, context); case OmlPackage.ANONYMOUS_RELATION_INSTANCE: return validateAnonymousRelationInstance((AnonymousRelationInstance)value, diagnostics, context); case OmlPackage.KEY_AXIOM: @@ -237,8 +231,8 @@ protected boolean validate(int classifierID, Object value, DiagnosticChain diagn return validatePropertyRestrictionAxiom((PropertyRestrictionAxiom)value, diagnostics, context); case OmlPackage.LITERAL_ENUMERATION_AXIOM: return validateLiteralEnumerationAxiom((LiteralEnumerationAxiom)value, diagnostics, context); - case OmlPackage.CLASSIFIER_EQUIVALENCE_AXIOM: - return validateClassifierEquivalenceAxiom((ClassifierEquivalenceAxiom)value, diagnostics, context); + case OmlPackage.ENTITY_EQUIVALENCE_AXIOM: + return validateEntityEquivalenceAxiom((EntityEquivalenceAxiom)value, diagnostics, context); case OmlPackage.SCALAR_EQUIVALENCE_AXIOM: return validateScalarEquivalenceAxiom((ScalarEquivalenceAxiom)value, diagnostics, context); case OmlPackage.PROPERTY_EQUIVALENCE_AXIOM: @@ -905,25 +899,6 @@ public boolean validateSpecializableProperty(SpecializableProperty specializable return result; } - /** - * - * - * @generated - */ - public boolean validateClassifier(Classifier classifier, DiagnosticChain diagnostics, Map context) { - if (!validate_NoCircularContainment(classifier, diagnostics, context)) return false; - boolean result = validate_EveryMultiplicityConforms(classifier, diagnostics, context); - if (result || diagnostics != null) result &= validate_EveryDataValueConforms(classifier, diagnostics, context); - if (result || diagnostics != null) result &= validate_EveryReferenceIsContained(classifier, diagnostics, context); - if (result || diagnostics != null) result &= validate_EveryBidirectionalReferenceIsPaired(classifier, diagnostics, context); - if (result || diagnostics != null) result &= validate_EveryProxyResolves(classifier, diagnostics, context); - if (result || diagnostics != null) result &= validate_UniqueID(classifier, diagnostics, context); - if (result || diagnostics != null) result &= validate_EveryKeyUnique(classifier, diagnostics, context); - if (result || diagnostics != null) result &= validate_EveryMapEntryUnique(classifier, diagnostics, context); - if (result || diagnostics != null) result &= validateElement_extraValidate(classifier, diagnostics, context); - return result; - } - /** * * @@ -962,25 +937,6 @@ public boolean validateEntity(Entity entity, DiagnosticChain diagnostics, Map - * - * @generated - */ - public boolean validateStructure(Structure structure, DiagnosticChain diagnostics, Map context) { - if (!validate_NoCircularContainment(structure, diagnostics, context)) return false; - boolean result = validate_EveryMultiplicityConforms(structure, diagnostics, context); - if (result || diagnostics != null) result &= validate_EveryDataValueConforms(structure, diagnostics, context); - if (result || diagnostics != null) result &= validate_EveryReferenceIsContained(structure, diagnostics, context); - if (result || diagnostics != null) result &= validate_EveryBidirectionalReferenceIsPaired(structure, diagnostics, context); - if (result || diagnostics != null) result &= validate_EveryProxyResolves(structure, diagnostics, context); - if (result || diagnostics != null) result &= validate_UniqueID(structure, diagnostics, context); - if (result || diagnostics != null) result &= validate_EveryKeyUnique(structure, diagnostics, context); - if (result || diagnostics != null) result &= validate_EveryMapEntryUnique(structure, diagnostics, context); - if (result || diagnostics != null) result &= validateElement_extraValidate(structure, diagnostics, context); - return result; - } - /** * * @@ -1095,25 +1051,6 @@ public boolean validateScalarProperty(ScalarProperty scalarProperty, DiagnosticC return result; } - /** - * - * - * @generated - */ - public boolean validateStructuredProperty(StructuredProperty structuredProperty, DiagnosticChain diagnostics, Map context) { - if (!validate_NoCircularContainment(structuredProperty, diagnostics, context)) return false; - boolean result = validate_EveryMultiplicityConforms(structuredProperty, diagnostics, context); - if (result || diagnostics != null) result &= validate_EveryDataValueConforms(structuredProperty, diagnostics, context); - if (result || diagnostics != null) result &= validate_EveryReferenceIsContained(structuredProperty, diagnostics, context); - if (result || diagnostics != null) result &= validate_EveryBidirectionalReferenceIsPaired(structuredProperty, diagnostics, context); - if (result || diagnostics != null) result &= validate_EveryProxyResolves(structuredProperty, diagnostics, context); - if (result || diagnostics != null) result &= validate_UniqueID(structuredProperty, diagnostics, context); - if (result || diagnostics != null) result &= validate_EveryKeyUnique(structuredProperty, diagnostics, context); - if (result || diagnostics != null) result &= validate_EveryMapEntryUnique(structuredProperty, diagnostics, context); - if (result || diagnostics != null) result &= validateElement_extraValidate(structuredProperty, diagnostics, context); - return result; - } - /** * * @@ -1271,17 +1208,17 @@ public boolean validateRelationInstance(RelationInstance relationInstance, Diagn * * @generated */ - public boolean validateStructureInstance(StructureInstance structureInstance, DiagnosticChain diagnostics, Map context) { - if (!validate_NoCircularContainment(structureInstance, diagnostics, context)) return false; - boolean result = validate_EveryMultiplicityConforms(structureInstance, diagnostics, context); - if (result || diagnostics != null) result &= validate_EveryDataValueConforms(structureInstance, diagnostics, context); - if (result || diagnostics != null) result &= validate_EveryReferenceIsContained(structureInstance, diagnostics, context); - if (result || diagnostics != null) result &= validate_EveryBidirectionalReferenceIsPaired(structureInstance, diagnostics, context); - if (result || diagnostics != null) result &= validate_EveryProxyResolves(structureInstance, diagnostics, context); - if (result || diagnostics != null) result &= validate_UniqueID(structureInstance, diagnostics, context); - if (result || diagnostics != null) result &= validate_EveryKeyUnique(structureInstance, diagnostics, context); - if (result || diagnostics != null) result &= validate_EveryMapEntryUnique(structureInstance, diagnostics, context); - if (result || diagnostics != null) result &= validateElement_extraValidate(structureInstance, diagnostics, context); + public boolean validateAnonymousConceptInstance(AnonymousConceptInstance anonymousConceptInstance, DiagnosticChain diagnostics, Map context) { + if (!validate_NoCircularContainment(anonymousConceptInstance, diagnostics, context)) return false; + boolean result = validate_EveryMultiplicityConforms(anonymousConceptInstance, diagnostics, context); + if (result || diagnostics != null) result &= validate_EveryDataValueConforms(anonymousConceptInstance, diagnostics, context); + if (result || diagnostics != null) result &= validate_EveryReferenceIsContained(anonymousConceptInstance, diagnostics, context); + if (result || diagnostics != null) result &= validate_EveryBidirectionalReferenceIsPaired(anonymousConceptInstance, diagnostics, context); + if (result || diagnostics != null) result &= validate_EveryProxyResolves(anonymousConceptInstance, diagnostics, context); + if (result || diagnostics != null) result &= validate_UniqueID(anonymousConceptInstance, diagnostics, context); + if (result || diagnostics != null) result &= validate_EveryKeyUnique(anonymousConceptInstance, diagnostics, context); + if (result || diagnostics != null) result &= validate_EveryMapEntryUnique(anonymousConceptInstance, diagnostics, context); + if (result || diagnostics != null) result &= validateElement_extraValidate(anonymousConceptInstance, diagnostics, context); return result; } @@ -1404,17 +1341,17 @@ public boolean validateLiteralEnumerationAxiom(LiteralEnumerationAxiom literalEn * * @generated */ - public boolean validateClassifierEquivalenceAxiom(ClassifierEquivalenceAxiom classifierEquivalenceAxiom, DiagnosticChain diagnostics, Map context) { - if (!validate_NoCircularContainment(classifierEquivalenceAxiom, diagnostics, context)) return false; - boolean result = validate_EveryMultiplicityConforms(classifierEquivalenceAxiom, diagnostics, context); - if (result || diagnostics != null) result &= validate_EveryDataValueConforms(classifierEquivalenceAxiom, diagnostics, context); - if (result || diagnostics != null) result &= validate_EveryReferenceIsContained(classifierEquivalenceAxiom, diagnostics, context); - if (result || diagnostics != null) result &= validate_EveryBidirectionalReferenceIsPaired(classifierEquivalenceAxiom, diagnostics, context); - if (result || diagnostics != null) result &= validate_EveryProxyResolves(classifierEquivalenceAxiom, diagnostics, context); - if (result || diagnostics != null) result &= validate_UniqueID(classifierEquivalenceAxiom, diagnostics, context); - if (result || diagnostics != null) result &= validate_EveryKeyUnique(classifierEquivalenceAxiom, diagnostics, context); - if (result || diagnostics != null) result &= validate_EveryMapEntryUnique(classifierEquivalenceAxiom, diagnostics, context); - if (result || diagnostics != null) result &= validateElement_extraValidate(classifierEquivalenceAxiom, diagnostics, context); + public boolean validateEntityEquivalenceAxiom(EntityEquivalenceAxiom entityEquivalenceAxiom, DiagnosticChain diagnostics, Map context) { + if (!validate_NoCircularContainment(entityEquivalenceAxiom, diagnostics, context)) return false; + boolean result = validate_EveryMultiplicityConforms(entityEquivalenceAxiom, diagnostics, context); + if (result || diagnostics != null) result &= validate_EveryDataValueConforms(entityEquivalenceAxiom, diagnostics, context); + if (result || diagnostics != null) result &= validate_EveryReferenceIsContained(entityEquivalenceAxiom, diagnostics, context); + if (result || diagnostics != null) result &= validate_EveryBidirectionalReferenceIsPaired(entityEquivalenceAxiom, diagnostics, context); + if (result || diagnostics != null) result &= validate_EveryProxyResolves(entityEquivalenceAxiom, diagnostics, context); + if (result || diagnostics != null) result &= validate_UniqueID(entityEquivalenceAxiom, diagnostics, context); + if (result || diagnostics != null) result &= validate_EveryKeyUnique(entityEquivalenceAxiom, diagnostics, context); + if (result || diagnostics != null) result &= validate_EveryMapEntryUnique(entityEquivalenceAxiom, diagnostics, context); + if (result || diagnostics != null) result &= validateElement_extraValidate(entityEquivalenceAxiom, diagnostics, context); return result; } diff --git a/io.opencaesar.oml/src/io/opencaesar/oml/Oml.xcore b/io.opencaesar.oml/src/io/opencaesar/oml/Oml.xcore index 9f0ce165..29811daa 100644 --- a/io.opencaesar.oml/src/io/opencaesar/oml/Oml.xcore +++ b/io.opencaesar.oml/src/io/opencaesar/oml/Oml.xcore @@ -199,8 +199,8 @@ class Import extends Element { } /* - * Instance is an element that represents a instance of one or more [=classifiers=]. - * It can assert a set of values for those classifiers' [=properties=]. + * Instance is an element that represents a instance of one or more [=Entities=]. + * It can assert a set of values for those entities' [=properties=]. */ @Bikeshed(heading="Instances") abstract class Instance extends Element { @@ -211,7 +211,7 @@ abstract class Instance extends Element { /* * Gets the instance's types */ - op Classifier[] getTypes() + op Entity[] getTypes() } /* @@ -679,23 +679,6 @@ abstract class SpecializableProperty extends SpecializableTerm, Property { // Types //////////////////////////////////////// -/* - * Classifier is a [=type=] that classifies a set of [=instances=] and characterizes them with [=properties=] - * (where it becomes a domain of these properties). it can also own a set of [=PropertyRestrictionAxioms=] as well as - * set of [=ClassifierEquivalenceAxioms=]. - */ -@Bikeshed(heading="Types") -abstract class Classifier extends Type { - /* - * The set of classifier equivalence axioms of this classifier - */ - contains ClassifierEquivalenceAxiom[*] ownedEquivalences opposite owningClassifier - /* - * The set of property restriction axioms of this classifier - */ - contains PropertyRestrictionAxiom[*] ownedPropertyRestrictions opposite owningClassifier -} - /* * Scalar is a primitive [=type=] that represents a set of [=literals=]. Some scalars are considered standard (see below). * @@ -768,32 +751,26 @@ class Scalar extends Type { contains ScalarEquivalenceAxiom[*] ownedEquivalences opposite owningScalar } -//////////////////////////////////////// -// Classifiers -//////////////////////////////////////// - /* - * Entity is a [=classifier=] whose instances are [=NamedInstances=]. It can also specify a set of [=KeyAxioms=]. + * Entity is a structured [=type=] that represent a set of [=Instances=]. it can specify a set of [=PropertyRestrictionAxioms=], + * set of [=EntityEquivalenceAxioms=], and a set of [=KeyAxioms=]. */ @Bikeshed(heading="Types") -abstract class Entity extends Classifier { +abstract class Entity extends Type { + /* + * The set of entity equivalence axioms of this entity + */ + contains EntityEquivalenceAxiom[*] ownedEquivalences opposite owningEntity + /* + * The set of property restriction axioms of this entity + */ + contains PropertyRestrictionAxiom[*] ownedPropertyRestrictions opposite owningEntity /* * The unique keys of this entity */ contains KeyAxiom[*] ownedKeys opposite owningEntity } -/* - * Structure is a [=classifier=] whose [=instances=] are anonymous and assignable as values to [=StructuredProperties=]. - */ -@Bikeshed(heading="Types") -class Structure extends Classifier { - /* - * A ref to another structure - */ - refers Structure ref -} - //////////////////////////////////////// // Entities //////////////////////////////////////// @@ -861,7 +838,7 @@ class AnnotationProperty extends SpecializableProperty { } /* - * SemanticProperty is a [=property=] with DL semantics that relates a [=classifier=] acting as its + * SemanticProperty is a [=property=] with DL semantics that relates a [=entity=] acting as its * domain to a [=type=] acting as its range. */ @Bikeshed(heading="Properties") @@ -873,7 +850,7 @@ abstract class SemanticProperty extends Property { /* * Gets the domains of this property */ - op Classifier[] getDomainList() + op Entity[] getDomainList() /* * Gets the ranges of this property */ @@ -898,45 +875,15 @@ class ScalarProperty extends SemanticProperty, SpecializableProperty { */ boolean functional /* - * The classifier that is the domain of this property + * The entity that is the domain of this property */ - refers Classifier[*] domains + refers Entity[*] domains /* * The scalar that is the range of this property */ refers Scalar[*] ranges - op Classifier[] getDomainList() { - domains - } - op Type[] getRangeList() { - ranges.toEList - } -} - -/* - * StructuredProperty is a [=SemanticProperty=] whose range is a [=Structure=]. It can specialize other [=StructuredProperties=]. - */ -@Bikeshed(heading="Properties") -class StructuredProperty extends SemanticProperty, SpecializableProperty { - /* - * A ref to another structured property - */ - refers StructuredProperty ref - /* - * Whether this property is functional (has a max of one value per instance) - */ - boolean functional - /* - * The classifiers that are the domains of this property - */ - refers Classifier[*] domains - /* - * The structures that are the range of this property - */ - refers Structure[*] ranges - - op Classifier[] getDomainList() { + op Entity[] getDomainList() { domains } op Type[] getRangeList() { @@ -987,7 +934,7 @@ abstract class Relation extends SemanticProperty { */ op Relation[?] getInverse() - op Classifier[] getDomainList() { + op Entity[] getDomainList() { getDomains().toEList } op Type[] getRangeList() { @@ -1137,7 +1084,7 @@ abstract class NamedInstance extends DescriptionStatement, Instance { return ownedTypes.map[^type] } - op Classifier[] getTypes() { + op Entity[] getTypes() { return ownedTypes.map[^type] } } @@ -1206,33 +1153,30 @@ class RelationInstance extends NamedInstance { //////////////////////////////////////// /* - * StructureInstance is an [=AnonymousInstance=] that can be typed by a [=Structure=]. + * AnonymousConceptInstance is an [=AnonymousInstance=] that is typed by a [=Concept=] or an [=Aspect=]. */ @Bikeshed(heading="Instances") -class StructureInstance extends AnonymousInstance { +class AnonymousConceptInstance extends AnonymousInstance { /* * The type of this instance */ - refers Structure[?] ^type + refers Entity[?] ^type - op Structure getStructure() { + op Entity getEntity() { if (^type !== null) return ^type else { var property = getIsValueOfProperty() - if (property instanceof StructuredProperty) { - if (!property.ranges.isEmpty) - property.ranges.get(0) - else - null + if (property instanceof Relation) { + property.ranges.head } } } - op Classifier[] getTypes() { - var structure = getStructure() - if (structure !== null) - return structure.singletonEList() + op Entity[] getTypes() { + var entity = getEntity() + if (entity !== null) + return entity.singletonEList() else return ECollections.emptyEList } @@ -1265,7 +1209,7 @@ class AnonymousRelationInstance extends AnonymousInstance { } } - op Classifier[] getTypes() { + op Entity[] getTypes() { var entity = getRelationEntity() if (entity !== null) return entity.singletonEList() @@ -1355,8 +1299,8 @@ class InstanceEnumerationAxiom extends Axiom { } /* - * PropertyRestrictionAxiom is an [=Axiom=] specified on a [=Classifier=] that places some restriction on the value of a [=SemanticProperty=] - * in the context of the classifier. + * PropertyRestrictionAxiom is an [=Axiom=] specified on a [=Entity=] that places some restriction on the value of a [=SemanticProperty=] + * in the context of the entity. */ @Bikeshed(heading="Axioms") abstract class PropertyRestrictionAxiom extends Axiom { @@ -1365,24 +1309,24 @@ abstract class PropertyRestrictionAxiom extends Axiom { */ refers SemanticProperty[1] property /* - * The owning classifier specified by this axiom + * The owning entity specified by this axiom */ - container Classifier[?] owningClassifier opposite ownedPropertyRestrictions + container Entity[?] owningEntity opposite ownedPropertyRestrictions /* - * The owning classifier equivalence axiom specified by this axiom + * The owning entity equivalence axiom specified by this axiom */ - container ClassifierEquivalenceAxiom[?] owningAxiom opposite ownedPropertyRestrictions + container EntityEquivalenceAxiom[?] owningAxiom opposite ownedPropertyRestrictions /* * Gets the restricting domain of the given property restriction axiom */ - op Classifier getRestrictingDomain() { + op Entity getRestrictingDomain() { if (owningAxiom !== null) { - return owningAxiom.subClassifier + return owningAxiom.subEntity } - return owningClassifier.resolve() as Classifier + return owningEntity.resolve() as Entity } - op Classifier getCharacterizedTerm() { + op Entity getCharacterizedTerm() { getRestrictingDomain() } } @@ -1413,35 +1357,35 @@ class LiteralEnumerationAxiom extends Axiom { } /* - * ClassifierEquivalenceAxiom is an [=Axiom=] specified on a subject [=Classifier=] that states that it is equivalent to the intersection - * of [=Classifiers=] and/or [=PropertyRestrictionAxioms=]. This axiom implies that the [=classifiers=] are super types of the subject classifier. + * EntityEquivalenceAxiom is an [=Axiom=] specified on a subject [=Entity=] that states that it is equivalent to the intersection + * of [=Entities=] and/or [=PropertyRestrictionAxioms=]. This axiom implies that the [=entities=] are super types of the subject entity. * It also implies that when an instance is classified by this intersection, then it follows that it is also classified by the - * subject classifier. Conversely, when an instance is classified by the subject classifier, then it follows that it is also classified + * subject entity. Conversely, when an instance is classified by the subject entity, then it follows that it is also classified * by the intersection. In other words, this axiom enables bi-directional (or two-way) inferencing. */ @Bikeshed(heading="Axioms") -class ClassifierEquivalenceAxiom extends Axiom { +class EntityEquivalenceAxiom extends Axiom { /* - * The super classifiers specified by this axiom + * The super entity specified by this axiom */ - refers Classifier[*] superClassifiers + refers Entity[*] superEntities /* * The property restrictions specified by this axiom */ contains PropertyRestrictionAxiom[*] ownedPropertyRestrictions opposite owningAxiom /* - * The owning classifier specified by this axiom + * The owning entity specified by this axiom */ - container Classifier[?] owningClassifier opposite ownedEquivalences + container Entity[?] owningEntity opposite ownedEquivalences /* - * Gets the sub classifier of this axiom + * Gets the sub entity of this axiom */ - op Classifier getSubClassifier() { - return owningClassifier.resolve() as Classifier + op Entity getSubEntity() { + return owningEntity.resolve() as Entity } - op Classifier getCharacterizedTerm() { - getSubClassifier() + op Entity getCharacterizedTerm() { + getSubEntity() } } @@ -1555,7 +1499,7 @@ class PropertyEquivalenceAxiom extends Axiom { /* * PropertyRangeRestrictionAxiom is a [=PropertyRestrictionAxiom=] that restricts the range of a [=property=] to * a [=type=] that specializes the original range. This restrictions may apply to `all` or to `some` values of the property - * that have the restricting [=classifier=] as a domain. + * that have the restricting [=Entity=] as a domain. */ @Bikeshed(heading="Axioms") class PropertyRangeRestrictionAxiom extends PropertyRestrictionAxiom { @@ -1572,7 +1516,7 @@ class PropertyRangeRestrictionAxiom extends PropertyRestrictionAxiom { /* * PropertyCardinalityRestrictionAxiom is a [=PropertyRestrictionAxiom=] that restricts the cardinality of a [=property=] * to an exact value, a minimum value or a maximum value. This restrictions can apply either to all values of the property - * in the restricting [=classifier=], or only to those values classified by a specific subtype of the range. + * in the restricting [=Entity=], or only to those values classified by a specific subtype of the range. */ @Bikeshed(heading="Axioms") class PropertyCardinalityRestrictionAxiom extends PropertyRestrictionAxiom { diff --git a/io.opencaesar.oml/src/io/opencaesar/oml/util/OmlBuilder.java b/io.opencaesar.oml/src/io/opencaesar/oml/util/OmlBuilder.java index 09c1000d..0bc162d6 100644 --- a/io.opencaesar.oml/src/io/opencaesar/oml/util/OmlBuilder.java +++ b/io.opencaesar.oml/src/io/opencaesar/oml/util/OmlBuilder.java @@ -39,6 +39,7 @@ import io.opencaesar.oml.Annotation; import io.opencaesar.oml.AnnotationProperty; +import io.opencaesar.oml.AnonymousConceptInstance; import io.opencaesar.oml.AnonymousInstance; import io.opencaesar.oml.AnonymousRelationInstance; import io.opencaesar.oml.Argument; @@ -47,8 +48,6 @@ import io.opencaesar.oml.BuiltIn; import io.opencaesar.oml.BuiltInPredicate; import io.opencaesar.oml.CardinalityRestrictionKind; -import io.opencaesar.oml.Classifier; -import io.opencaesar.oml.ClassifierEquivalenceAxiom; import io.opencaesar.oml.Concept; import io.opencaesar.oml.ConceptInstance; import io.opencaesar.oml.DecimalLiteral; @@ -58,6 +57,7 @@ import io.opencaesar.oml.DoubleLiteral; import io.opencaesar.oml.Element; import io.opencaesar.oml.Entity; +import io.opencaesar.oml.EntityEquivalenceAxiom; import io.opencaesar.oml.ForwardRelation; import io.opencaesar.oml.IdentifiedElement; import io.opencaesar.oml.Import; @@ -92,9 +92,6 @@ import io.opencaesar.oml.ScalarEquivalenceAxiom; import io.opencaesar.oml.ScalarProperty; import io.opencaesar.oml.SpecializationAxiom; -import io.opencaesar.oml.Structure; -import io.opencaesar.oml.StructureInstance; -import io.opencaesar.oml.StructuredProperty; import io.opencaesar.oml.TypeAssertion; import io.opencaesar.oml.TypePredicate; import io.opencaesar.oml.UnreifiedRelation; @@ -515,20 +512,6 @@ public RelationEntity addRelationEntity(Vocabulary vocabulary, String name, List return relationEntity; } - // Structure - - /** - * Creates a new structure and adds it to the given vocabulary - * - * @param vocabulary the context vocabulary - * @param name the name of the new structure - * @return a new structure that is added to the given vocabulary - */ - public Structure addStructure(Vocabulary vocabulary, String name) { - final Structure structure = OmlWrite.addStructure(vocabulary, name); - return structure; - } - // AnnotationProperty /** @@ -550,7 +533,7 @@ public AnnotationProperty addAnnotationProperty(Vocabulary vocabulary, String na * * @param vocabulary the context vocabulary * @param name the name of the new scalar property - * @param domainIris the iris of the domain classifiers + * @param domainIris the iris of the domain entities * @param rangeIris the iris of the range scalars * @param functional whether the scalar property is functional * @return a new scalar property that is added to the given vocabulary @@ -568,7 +551,7 @@ public ScalarProperty addScalarProperty(Vocabulary vocabulary, String name, * * @param vocabulary the context vocabulary * @param propertyIri the iri of the scalar property - * @param domainIri the iri of a domain classifier + * @param domainIri the iri of a domain entity * @param rangeIri the iri of a range scalar * @param functional whether the scalar property is functional (can be null) */ @@ -580,7 +563,7 @@ public void setScalarProperty(Vocabulary vocabulary, String propertyIri, property = (ScalarProperty) OmlWrite.getOrAddRef(vocabulary, property); } if (domainIri != null) { - property.getDomains().add(resolve(Classifier.class, vocabulary, domainIri)); + property.getDomains().add(resolve(Entity.class, vocabulary, domainIri)); } if (rangeIri != null) { property.getRanges().add(resolve(Scalar.class, vocabulary, rangeIri)); @@ -591,54 +574,6 @@ public void setScalarProperty(Vocabulary vocabulary, String propertyIri, }); } - // StructuredProperty - - /** - * Creates a new structured property and adds it to the given vocabulary - * - * @param vocabulary the context vocabulary - * @param name the name of the new structured property - * @param domainIris the iris of the domain classifiers - * @param rangeIris the iris of the range structures - * @param functional whether the structured property is functional - * @return a new structured property that is added to the given vocabulary - */ - public StructuredProperty addStructuredProperty(Vocabulary vocabulary, String name, - List domainIris, List rangeIris, boolean functional) { - final StructuredProperty property = OmlWrite.addStructuredProperty(vocabulary, name, Collections.emptyList(), Collections.emptyList(), functional); - setCrossReferences(vocabulary, property, OmlPackage.Literals.STRUCTURED_PROPERTY__DOMAINS, domainIris); - setCrossReferences(vocabulary, property, OmlPackage.Literals.STRUCTURED_PROPERTY__RANGES, rangeIris); - return property; - } - - /** - * Sets structured property details in the given vocabulary - * - * @param vocabulary the context vocabulary - * @param propertyIri the iri of the structured property - * @param domainIri the iri of a domain classifiers - * @param rangeIri the iri of a range structures - * @param functional whether the structured property is functional - */ - public void setStructuredProperty(Vocabulary vocabulary, String propertyIri, - String domainIri, String rangeIri, Boolean functional) { - defer.add(() -> { - StructuredProperty property = resolve(StructuredProperty.class, vocabulary, propertyIri); - if (property.getOntology() != vocabulary) { - property = (StructuredProperty) OmlWrite.getOrAddRef(vocabulary, property); - } - if (domainIri != null) { - property.getDomains().add(resolve(Classifier.class, vocabulary, domainIri)); - } - if (rangeIri != null) { - property.getRanges().add(resolve(Structure.class, vocabulary, rangeIri)); - } - if (functional != null) { - property.setFunctional(functional); - } - }); - } - // Scalar /** @@ -791,18 +726,18 @@ public BuiltIn addBuiltIn(Vocabulary vocabulary, String name) { return builtIn; } - // StructureInstance + // AnonymousConceptInstance /** - * Creates a structure instance and adds it to the given ontology + * Creates a entity instance and adds it to the given ontology * * @param ontology the context ontology - * @param structureIri the iri of a structure that is the type of the structure instance - * @return a structure instance that is added to the given ontology + * @param entityIri the iri of a entity that is the type of the entity instance + * @return a entity instance that is added to the given ontology */ - public StructureInstance createStructureInstance(Ontology ontology, String structureIri) { - final StructureInstance instance = OmlWrite.createStructureInstance(ontology, null); - setCrossReference(ontology, instance, OmlPackage.Literals.STRUCTURE_INSTANCE__TYPE, structureIri); + public AnonymousConceptInstance createAnonymousConceptInstance(Ontology ontology, String entityIri) { + final AnonymousConceptInstance instance = OmlWrite.createAnonymousConceptInstance(ontology, null); + setCrossReference(ontology, instance, OmlPackage.Literals.ANONYMOUS_CONCEPT_INSTANCE__TYPE, entityIri); return instance; } @@ -909,20 +844,20 @@ public SpecializationAxiom addSpecializationAxiom(Vocabulary vocabulary, String return axiom; } - // ClassifierEquivalenceAxiom + // EntityEquivalenceAxiom /** - * Creates a classifier equivalence axiom between the sub classifier and super classifiers and adds it to the given vocabulary + * Creates a entity equivalence axiom between the sub entity and super entities and adds it to the given vocabulary * * @param vocabulary the context vocabulary - * @param subClassifierIri the given iri of sub classifier - * @param superClassifierIris the given iris of super classifiers - * @return a classifier equivalence axiom that is added to the vocabulary - */ - public ClassifierEquivalenceAxiom addClassifierEquivalenceAxiom(Vocabulary vocabulary, String subClassifierIri, List superClassifierIris) { - final ClassifierEquivalenceAxiom axiom = OmlWrite.addClassifierEquivalenceAxiom(vocabulary, null, Collections.emptyList()); - setCrossReferences(vocabulary, axiom, OmlPackage.Literals.CLASSIFIER_EQUIVALENCE_AXIOM__SUPER_CLASSIFIERS, superClassifierIris); - setContainmentReference(vocabulary, subClassifierIri, OmlPackage.Literals.CLASSIFIER__OWNED_EQUIVALENCES, axiom); + * @param subEntityIri the given iri of sub entity + * @param superEntityIris the given iris of super entities + * @return a entity equivalence axiom that is added to the vocabulary + */ + public EntityEquivalenceAxiom addEntityEquivalenceAxiom(Vocabulary vocabulary, String subEntityIri, List superEntityIris) { + final EntityEquivalenceAxiom axiom = OmlWrite.addEntityEquivalenceAxiom(vocabulary, null, Collections.emptyList()); + setCrossReferences(vocabulary, axiom, OmlPackage.Literals.ENTITY_EQUIVALENCE_AXIOM__SUPER_ENTITIES, superEntityIris); + setContainmentReference(vocabulary, subEntityIri, OmlPackage.Literals.ENTITY__OWNED_EQUIVALENCES, axiom); return axiom; } @@ -976,7 +911,7 @@ public PropertyEquivalenceAxiom addPropertyEquivalenceAxiom(Vocabulary vocabular * Creates a property range restriction axiom and adds it to the given vocabulary * * @param vocabulary the context vocabulary - * @param owner the owner (either a String representing the iri of the owning classifier, or the owning classifier equivalence axiom object) + * @param owner the owner (either a String representing the iri of the owning entity, or the owning entity equivalence axiom object) * @param propertyIri the iri of the restricted property * @param rangeIri the iri of the restricted range * @param restrictionKind the kind of the restriction @@ -987,9 +922,9 @@ public PropertyRangeRestrictionAxiom addPropertyRangeRestrictionAxiom(Vocabulary setCrossReference(vocabulary, axiom, OmlPackage.Literals.PROPERTY_RESTRICTION_AXIOM__PROPERTY, propertyIri); setCrossReference(vocabulary, axiom, OmlPackage.Literals.PROPERTY_RANGE_RESTRICTION_AXIOM__RANGE, rangeIri); if (owner instanceof String) { - setContainmentReference(vocabulary, (String)owner, OmlPackage.Literals.CLASSIFIER__OWNED_PROPERTY_RESTRICTIONS, axiom); - } else if (owner instanceof ClassifierEquivalenceAxiom) { - ((ClassifierEquivalenceAxiom)owner).getOwnedPropertyRestrictions().add(axiom); + setContainmentReference(vocabulary, (String)owner, OmlPackage.Literals.ENTITY__OWNED_PROPERTY_RESTRICTIONS, axiom); + } else if (owner instanceof EntityEquivalenceAxiom) { + ((EntityEquivalenceAxiom)owner).getOwnedPropertyRestrictions().add(axiom); } return axiom; } @@ -1000,7 +935,7 @@ public PropertyRangeRestrictionAxiom addPropertyRangeRestrictionAxiom(Vocabulary * Creates a property cardinality restriction axiom and adds it to the given vocabulary * * @param vocabulary the context vocabulary - * @param owner the owner (either a String representing the iri of the owning classifier, or the owning classifier equivalence axiom object) + * @param owner the owner (either a String representing the iri of the owning entity, or the owning entity equivalence axiom object) * @param propertyIri the iri of the restricted property * @param cardinality the restricted cardinality * @param rangeIri the iri of the restricted range (optional) @@ -1012,9 +947,9 @@ public PropertyCardinalityRestrictionAxiom addPropertyCardinalityRestrictionAxio setCrossReference(vocabulary, axiom, OmlPackage.Literals.PROPERTY_RESTRICTION_AXIOM__PROPERTY, propertyIri); setCrossReference(vocabulary, axiom, OmlPackage.Literals.PROPERTY_CARDINALITY_RESTRICTION_AXIOM__RANGE, rangeIri); if (owner instanceof String) { - setContainmentReference(vocabulary, (String)owner, OmlPackage.Literals.CLASSIFIER__OWNED_PROPERTY_RESTRICTIONS, axiom); - } else if (owner instanceof ClassifierEquivalenceAxiom) { - ((ClassifierEquivalenceAxiom)owner).getOwnedPropertyRestrictions().add(axiom); + setContainmentReference(vocabulary, (String)owner, OmlPackage.Literals.ENTITY__OWNED_PROPERTY_RESTRICTIONS, axiom); + } else if (owner instanceof EntityEquivalenceAxiom) { + ((EntityEquivalenceAxiom)owner).getOwnedPropertyRestrictions().add(axiom); } return axiom; } @@ -1025,7 +960,7 @@ public PropertyCardinalityRestrictionAxiom addPropertyCardinalityRestrictionAxio * Creates a property value restriction axiom for a scalar property and adds it to the given vocabulary * * @param vocabulary the context vocabulary - * @param owner the owner (either a String representing the iri of the owning classifier, or the owning classifier equivalence axiom object) + * @param owner the owner (either a String representing the iri of the owning entity, or the owning entity equivalence axiom object) * @param propertyIri the iri of the restricted scalar property * @param literal the (literal) value of the restriction * @return a property value restriction axiom that is added to the given vocabulary @@ -1034,19 +969,19 @@ public PropertyValueRestrictionAxiom addPropertyValueRestrictionAxiom(Vocabulary final PropertyValueRestrictionAxiom axiom = OmlWrite.addPropertyValueRestrictionAxiom(vocabulary, null, null, literal); setCrossReference(vocabulary, axiom, OmlPackage.Literals.PROPERTY_RESTRICTION_AXIOM__PROPERTY, propertyIri); if (owner instanceof String) { - setContainmentReference(vocabulary, (String)owner, OmlPackage.Literals.CLASSIFIER__OWNED_PROPERTY_RESTRICTIONS, axiom); - } else if (owner instanceof ClassifierEquivalenceAxiom) { - ((ClassifierEquivalenceAxiom)owner).getOwnedPropertyRestrictions().add(axiom); + setContainmentReference(vocabulary, (String)owner, OmlPackage.Literals.ENTITY__OWNED_PROPERTY_RESTRICTIONS, axiom); + } else if (owner instanceof EntityEquivalenceAxiom) { + ((EntityEquivalenceAxiom)owner).getOwnedPropertyRestrictions().add(axiom); } return axiom; } /** - * Creates a property value restriction axiom for a structured property and adds it to the given vocabulary + * Creates a property value restriction axiom for a property and adds it to the given vocabulary * * @param vocabulary the context vocabulary - * @param owner the owner (either a String representing the iri of the owning classifier, or the owning classifier equivalence axiom object) - * @param propertyIri the iri of the restricted structured property + * @param owner the owner (either a String representing the iri of the owning entity, or the owning entity equivalence axiom object) + * @param propertyIri the iri of the restricted property * @param containedValue the contained value of the restriction * @return a property value restriction axiom that is added to the given vocabulary */ @@ -1054,9 +989,9 @@ public PropertyValueRestrictionAxiom addPropertyValueRestrictionAxiom(Vocabulary final PropertyValueRestrictionAxiom axiom = OmlWrite.addPropertyValueRestrictionAxiom(vocabulary, null, null, containedValue); setCrossReference(vocabulary, axiom, OmlPackage.Literals.PROPERTY_RESTRICTION_AXIOM__PROPERTY, propertyIri); if (owner instanceof String) { - setContainmentReference(vocabulary, (String)owner, OmlPackage.Literals.CLASSIFIER__OWNED_PROPERTY_RESTRICTIONS, axiom); - } else if (owner instanceof ClassifierEquivalenceAxiom) { - ((ClassifierEquivalenceAxiom)owner).getOwnedPropertyRestrictions().add(axiom); + setContainmentReference(vocabulary, (String)owner, OmlPackage.Literals.ENTITY__OWNED_PROPERTY_RESTRICTIONS, axiom); + } else if (owner instanceof EntityEquivalenceAxiom) { + ((EntityEquivalenceAxiom)owner).getOwnedPropertyRestrictions().add(axiom); } return axiom; } @@ -1065,7 +1000,7 @@ public PropertyValueRestrictionAxiom addPropertyValueRestrictionAxiom(Vocabulary * Creates a property value restriction axiom for a relation and adds it to the given vocabulary * * @param vocabulary the context vocabulary - * @param owner the owner (either a String representing the iri of the owning classifier, or the owning classifier equivalence axiom object) + * @param owner the owner (either a String representing the iri of the owning entity, or the owning entity equivalence axiom object) * @param relationIri the iri of the restricted relation * @param referencedValueIri the Iri of a referenced value of the restriction * @return a property value restriction axiom that is added to the given vocabulary @@ -1075,9 +1010,9 @@ public PropertyValueRestrictionAxiom addPropertyValueRestrictionAxiom(Vocabulary setCrossReference(vocabulary, axiom, OmlPackage.Literals.PROPERTY_VALUE_RESTRICTION_AXIOM__REFERENCED_VALUE, referencedValueIri); setCrossReference(vocabulary, axiom, OmlPackage.Literals.PROPERTY_RESTRICTION_AXIOM__PROPERTY, relationIri); if (owner instanceof String) { - setContainmentReference(vocabulary, (String)owner, OmlPackage.Literals.CLASSIFIER__OWNED_PROPERTY_RESTRICTIONS, axiom); - } else if (owner instanceof ClassifierEquivalenceAxiom) { - ((ClassifierEquivalenceAxiom)owner).getOwnedPropertyRestrictions().add(axiom); + setContainmentReference(vocabulary, (String)owner, OmlPackage.Literals.ENTITY__OWNED_PROPERTY_RESTRICTIONS, axiom); + } else if (owner instanceof EntityEquivalenceAxiom) { + ((EntityEquivalenceAxiom)owner).getOwnedPropertyRestrictions().add(axiom); } return axiom; } @@ -1086,7 +1021,7 @@ public PropertyValueRestrictionAxiom addPropertyValueRestrictionAxiom(Vocabulary * Creates a property value restriction axiom for a forward relation and adds it to the given vocabulary * * @param vocabulary the context vocabulary - * @param owner the owner (either a String representing the iri of the owning classifier, or the owning classifier equivalence axiom object) + * @param owner the owner (either a String representing the iri of the owning entity, or the owning entity equivalence axiom object) * @param relationEntityIri the iri of the relation entity that owns the restricted forward relation * @param containedValue the contained value of the restriction * @return a property value restriction axiom that is added to the given vocabulary @@ -1095,9 +1030,9 @@ public PropertyValueRestrictionAxiom addForwardRelationValueRestrictionAxiom(Voc final PropertyValueRestrictionAxiom axiom = OmlWrite.addPropertyValueRestrictionAxiom(vocabulary, null, null, containedValue); defer.add(() -> axiom.setProperty(resolve(RelationEntity.class, vocabulary, relationEntityIri).getForwardRelation())); if (owner instanceof String) { - setContainmentReference(vocabulary, (String)owner, OmlPackage.Literals.CLASSIFIER__OWNED_PROPERTY_RESTRICTIONS, axiom); - } else if (owner instanceof ClassifierEquivalenceAxiom) { - ((ClassifierEquivalenceAxiom)owner).getOwnedPropertyRestrictions().add(axiom); + setContainmentReference(vocabulary, (String)owner, OmlPackage.Literals.ENTITY__OWNED_PROPERTY_RESTRICTIONS, axiom); + } else if (owner instanceof EntityEquivalenceAxiom) { + ((EntityEquivalenceAxiom)owner).getOwnedPropertyRestrictions().add(axiom); } return axiom; } @@ -1106,7 +1041,7 @@ public PropertyValueRestrictionAxiom addForwardRelationValueRestrictionAxiom(Voc * Creates a property value restriction axiom for a reverse relation and adds it to the given vocabulary * * @param vocabulary the context vocabulary - * @param owner the owner (either a String representing the iri of the owning classifier, or the owning classifier equivalence axiom object) + * @param owner the owner (either a String representing the iri of the owning entity, or the owning entity equivalence axiom object) * @param relationBaseri the iri of the relation base that owns the restricted reverse relation * @param containedValue the contained value of the restriction * @return a property value restriction axiom that is added to the given vocabulary @@ -1115,9 +1050,9 @@ public PropertyValueRestrictionAxiom addReverseRelationValueRestrictionAxiom(Voc final PropertyValueRestrictionAxiom axiom = OmlWrite.addPropertyValueRestrictionAxiom(vocabulary, null, null, containedValue); defer.add(() -> axiom.setProperty(resolve(RelationBase.class, vocabulary, relationBaseri).getReverseRelation())); if (owner instanceof String) { - setContainmentReference(vocabulary, (String)owner, OmlPackage.Literals.CLASSIFIER__OWNED_PROPERTY_RESTRICTIONS, axiom); - } else if (owner instanceof ClassifierEquivalenceAxiom) { - ((ClassifierEquivalenceAxiom)owner).getOwnedPropertyRestrictions().add(axiom); + setContainmentReference(vocabulary, (String)owner, OmlPackage.Literals.ENTITY__OWNED_PROPERTY_RESTRICTIONS, axiom); + } else if (owner instanceof EntityEquivalenceAxiom) { + ((EntityEquivalenceAxiom)owner).getOwnedPropertyRestrictions().add(axiom); } return axiom; } @@ -1128,7 +1063,7 @@ public PropertyValueRestrictionAxiom addReverseRelationValueRestrictionAxiom(Voc * Creates a self restriction axiom on a relation and adds it to the given vocabulary * * @param vocabulary the context vocabulary - * @param owner the given restricting owner (classifier or classifier equivalence axiom) + * @param owner the given restricting owner (entity or entity equivalence axiom) * @param relationIri the iri of the restricted relation * @return a property value restriction axiom that is added to the given vocabulary */ @@ -1136,9 +1071,9 @@ public PropertySelfRestrictionAxiom addPropertySelfRestrictionAxiom(Vocabulary v final PropertySelfRestrictionAxiom axiom = OmlWrite.addPropertySelfRestrictionAxiom(vocabulary, null, null); setCrossReference(vocabulary, axiom, OmlPackage.Literals.PROPERTY_RESTRICTION_AXIOM__PROPERTY, relationIri); if (owner instanceof String) { - setContainmentReference(vocabulary, (String)owner, OmlPackage.Literals.CLASSIFIER__OWNED_PROPERTY_RESTRICTIONS, axiom); - } else if (owner instanceof ClassifierEquivalenceAxiom) { - ((ClassifierEquivalenceAxiom)owner).getOwnedPropertyRestrictions().add(axiom); + setContainmentReference(vocabulary, (String)owner, OmlPackage.Literals.ENTITY__OWNED_PROPERTY_RESTRICTIONS, axiom); + } else if (owner instanceof EntityEquivalenceAxiom) { + ((EntityEquivalenceAxiom)owner).getOwnedPropertyRestrictions().add(axiom); } return axiom; } @@ -1237,7 +1172,7 @@ public PropertyValueAssertion addPropertyValueAssertion(Ontology ontology, Objec * * @param ontology the context ontology * @param owner either an anonymous instance or the iri of a named instance - * @param propertyIri the iri of the structured property + * @param propertyIri the iri of the property * @param containedValues the asserted contained values of the property * @return a property value assertion that is added to the given description */ diff --git a/io.opencaesar.oml/src/io/opencaesar/oml/util/OmlConstants.java b/io.opencaesar.oml/src/io/opencaesar/oml/util/OmlConstants.java index 16a27c35..08adb34f 100644 --- a/io.opencaesar.oml/src/io/opencaesar/oml/util/OmlConstants.java +++ b/io.opencaesar.oml/src/io/opencaesar/oml/util/OmlConstants.java @@ -161,11 +161,6 @@ public interface OmlConstants { */ public static final String RelationEntity = OML_NS + "RelationEntity"; - /** - * The oml:Structure IRI - */ - public static final String Structure = OML_NS + "Structure"; - /** * The oml:Scalar IRI */ @@ -196,11 +191,6 @@ public interface OmlConstants { */ public static final String ScalarProperty = OML_NS + "ScalarProperty"; - /** - * The oml:StructuredProperty IRI - */ - public static final String StructuredProperty = OML_NS + "StructuredProperty"; - /** * The oml:Rule IRI */ @@ -217,9 +207,9 @@ public interface OmlConstants { public static final String RelationInstance = OML_NS + "RelationInstance"; /** - * The oml:StructureInstance IRI + * The oml:AnonymousConceptInstance IRI */ - public static final String StructureInstance = OML_NS + "StructureInstance"; + public static final String AnonymousConceptInstance = OML_NS + "AnonymousConceptInstance"; /** * The oml:AnonymousRelationInstance IRI diff --git a/io.opencaesar.oml/src/io/opencaesar/oml/util/OmlIndex.java b/io.opencaesar.oml/src/io/opencaesar/oml/util/OmlIndex.java index 7013a3a6..0d86818b 100644 --- a/io.opencaesar.oml/src/io/opencaesar/oml/util/OmlIndex.java +++ b/io.opencaesar.oml/src/io/opencaesar/oml/util/OmlIndex.java @@ -34,16 +34,16 @@ import io.opencaesar.oml.Annotation; import io.opencaesar.oml.AnnotationProperty; +import io.opencaesar.oml.AnonymousConceptInstance; import io.opencaesar.oml.AnonymousRelationInstance; import io.opencaesar.oml.Argument; import io.opencaesar.oml.Aspect; import io.opencaesar.oml.BuiltIn; import io.opencaesar.oml.BuiltInPredicate; -import io.opencaesar.oml.Classifier; -import io.opencaesar.oml.ClassifierEquivalenceAxiom; import io.opencaesar.oml.Concept; import io.opencaesar.oml.ConceptInstance; import io.opencaesar.oml.Entity; +import io.opencaesar.oml.EntityEquivalenceAxiom; import io.opencaesar.oml.InstanceEnumerationAxiom; import io.opencaesar.oml.KeyAxiom; import io.opencaesar.oml.Member; @@ -69,9 +69,6 @@ import io.opencaesar.oml.ScalarProperty; import io.opencaesar.oml.SemanticProperty; import io.opencaesar.oml.SpecializationAxiom; -import io.opencaesar.oml.Structure; -import io.opencaesar.oml.StructureInstance; -import io.opencaesar.oml.StructuredProperty; import io.opencaesar.oml.Term; import io.opencaesar.oml.Type; import io.opencaesar.oml.TypeAssertion; @@ -309,25 +306,25 @@ public static Set findRelationBasesWithTarget(Entity target) { // ScalarProperty /** - * Finds scalar properties referencing the given classifier as domain + * Finds scalar properties referencing the given entity as domain * - * @param domain The referenced classifier + * @param domain The referenced entity * @param scope The scope of the search (can be null) * @return A set of referencing scalar properties */ - public static Set findScalarPropertiesWithDomain(Classifier domain, Set scope) { + public static Set findScalarPropertiesWithDomain(Entity domain, Set scope) { return findInverseReferencers(domain, OmlPackage.Literals.SCALAR_PROPERTY__DOMAINS, ScalarProperty.class, scope); } /** - * Finds scalar properties referencing the given classifier as domain + * Finds scalar properties referencing the given entity as domain * - * @param domain The referenced classifier + * @param domain The referenced entity * @return A set of referencing scalar properties - * @deprecated As of 2.5.0. Use {{@link #findScalarPropertiesWithDomain(Classifier, Set)} instead + * @deprecated As of 2.5.0. Use {{@link #findScalarPropertiesWithDomain(Entity, Set)} instead */ @Deprecated - public static Set findScalarPropertiesWithDomain(Classifier domain) { + public static Set findScalarPropertiesWithDomain(Entity domain) { return findScalarPropertiesWithDomain(domain, null); } @@ -354,77 +351,29 @@ public static Set findScalarPropertiesWithRange( Scalar range) { return findScalarPropertiesWithRange(range, null); } - // StructuredProperty + // AnonymousConceptInstance /** - * Finds structured properties referencing the given classifier as domain + * Finds anonymous concept instances referencing the given entity as type * - * @param domain The referenced classifier + * @param type The referenced entity * @param scope The scope of the search (can be null) - * @return A set of referencing scalar properties - */ - public static Set findStructuredPropertiesWithDomain(Classifier domain, Set scope) { - return findInverseReferencers(domain, OmlPackage.Literals.STRUCTURED_PROPERTY__DOMAINS, StructuredProperty.class, scope); - } - - /** - * Finds structured properties referencing the given classifier as domain - * - * @param domain The referenced classifier - * @return A set of referencing scalar properties - * @deprecated As of 2.5.0. Use {{@link #findStructuredPropertiesWithDomain(Classifier, Set)} instead - */ - @Deprecated - public static Set findStructuredPropertiesWithDomain(Classifier domain) { - return findStructuredPropertiesWithDomain(domain, null); - } - - /** - * Finds structured properties referencing the given structure as range - * - * @param range The referenced structure - * @param scope The scope of the search (can be null) - * @return A set of referencing structured properties - */ - public static Set findStructuredPropertiesWithRange(Structure range, Set scope) { - return findInverseReferencers(range, OmlPackage.Literals.STRUCTURED_PROPERTY__RANGES, StructuredProperty.class, scope); - } - - /** - * Finds structured properties referencing the given structure as range - * - * @param range The referenced structure - * @return A set of referencing structured properties - * @deprecated As of 2.5.0. Use {{@link #findStructuredPropertiesWithRange(Structure, Set)} instead - */ - @Deprecated - public static Set findStructuredPropertiesWithRange(Structure range) { - return findStructuredPropertiesWithRange(range, null); - } - - // StructureInstance - - /** - * Finds structure instances referencing the given structure as type - * - * @param type The referenced structure - * @param scope The scope of the search (can be null) - * @return A set of referencing structure instances + * @return A set of referencing anonymous concept instances */ - public static Set findStructureInstancesWithType(Structure type, Set scope) { - return findInverseReferencers(type, OmlPackage.Literals.STRUCTURE_INSTANCE__TYPE, StructureInstance.class, scope); + public static Set findAnonymousConceptInstancesWithType(Entity type, Set scope) { + return findInverseReferencers(type, OmlPackage.Literals.ANONYMOUS_CONCEPT_INSTANCE__TYPE, AnonymousConceptInstance.class, scope); } /** - * Finds structure instances referencing the given structure as type + * Finds anonymous concept instances referencing the given entity as type * - * @param type The referenced structure - * @return A set of referencing structure instances - * @deprecated As of 2.5.0. Use {{@link #findStructureInstancesWithType(Structure, Set)} instead + * @param type The referenced entity + * @return A set of referencing anonymous concept instances + * @deprecated As of 2.5.0. Use {{@link #findAnonymousConceptInstancesWithType(Entity, Set)} instead */ @Deprecated - public static Set findStructureInstancesWithType(Structure type) { - return findStructureInstancesWithType(type, null); + public static Set findAnonymousConceptInstancesWithType(Entity type) { + return findAnonymousConceptInstancesWithType(type, null); } // AnonymousRelationInstance @@ -575,31 +524,6 @@ public static Set findRelationEntitiesWithRef(RelationEntity ent return findRelationEntitiesWithRef(entity, null); } - // Structure - - /** - * Finds structure referencing the given structure - * - * @param structure The referenced structure - * @param scope The scope of the search (can be null) - * @return A set of referencing structures - */ - public static Set findStructuresWithRef(Structure structure, Set scope) { - return findInverseReferencers(structure, OmlPackage.Literals.STRUCTURE__REF, Structure.class, scope); - } - - /** - * Finds structure referencing the given structure - * - * @param structure The referenced structure - * @return A set of referencing structures - * @deprecated As of 2.5.0. Use {{@link #findStructuresWithRef(Structure, Set)} instead - */ - @Deprecated - public static Set findStructuresWithRef(Structure structure) { - return findStructuresWithRef(structure, null); - } - // AnnotationProperty /** @@ -650,31 +574,6 @@ public static Set findScalarPropertiesWithRef(ScalarProperty pro return findScalarPropertiesWithRef(property, null); } - // StructuredProperty - - /** - * Finds structured property referencing the given structured property - * - * @param property The referenced structured property - * @param scope The scope of the search (can be null) - * @return A set of referencing structured properties - */ - public static Set findStructuredPropertiesWithRef(StructuredProperty property, Set scope) { - return findInverseReferencers(property, OmlPackage.Literals.STRUCTURED_PROPERTY__REF, StructuredProperty.class, scope); - } - - /** - * Finds structured property referencing the given structured property - * - * @param property The referenced structured property - * @return A set of referencing structured properties - * @deprecated As of 2.5.0. Use {{@link #findStructuredPropertiesWithRef(StructuredProperty, Set)} instead - */ - @Deprecated - public static Set findStructuredPropertiesWithRef(StructuredProperty property) { - return findStructuredPropertiesWithRef(property, null); - } - // Scalar /** @@ -850,29 +749,29 @@ public static Set findSpecializationAxiomsWithSuperTerm(Ter return findSpecializationAxiomsWithSuperTerm(term, null); } - // ClassifierEquivalenceAxiom + // EntityEquivalenceAxiom /** - * Finds classifier equivalence axioms referencing the given classifier + * Finds entity equivalence axioms referencing the given entity * - * @param classifier The referenced classifier + * @param entity The referenced entity * @param scope The scope of the search (can be null) - * @return A set of referencing classifier equivalence axioms + * @return A set of referencing entity equivalence axioms */ - public static Set findClassifierEquivalenceAxiomsWithSuperClassifier(Classifier classifier, Set scope) { - return findInverseReferencers(classifier, OmlPackage.Literals.CLASSIFIER_EQUIVALENCE_AXIOM__SUPER_CLASSIFIERS, ClassifierEquivalenceAxiom.class, scope); + public static Set findEntityEquivalenceAxiomsWithSuperEntity(Entity entity, Set scope) { + return findInverseReferencers(entity, OmlPackage.Literals.ENTITY_EQUIVALENCE_AXIOM__SUPER_ENTITIES, EntityEquivalenceAxiom.class, scope); } /** - * Finds classifier equivalence axioms referencing the given classifier + * Finds entity equivalence axioms referencing the given entity * - * @param classifier The referenced classifier - * @return A set of referencing classifier equivalence axioms - * @deprecated As of 2.5.0. Use {{@link #findClassifierEquivalenceAxiomsWithSuperClassifier(Classifier, Set)} instead + * @param entity The referenced entity + * @return A set of referencing entity equivalence axioms + * @deprecated As of 2.5.0. Use {{@link #findEntityEquivalenceAxiomsWithSuperEntity(Entity, Set)} instead */ @Deprecated - public static Set findClassifierEquivalenceAxiomsWithSuperClassifier(Classifier classifier) { - return findClassifierEquivalenceAxiomsWithSuperClassifier(classifier, null); + public static Set findEntityEquivalenceAxiomsWithSuperEntity(Entity entity) { + return findEntityEquivalenceAxiomsWithSuperEntity(entity, null); } // ScalarEquivalenceAxiom diff --git a/io.opencaesar.oml/src/io/opencaesar/oml/util/OmlRead.java b/io.opencaesar.oml/src/io/opencaesar/oml/util/OmlRead.java index 00bd8a07..997aec37 100644 --- a/io.opencaesar.oml/src/io/opencaesar/oml/util/OmlRead.java +++ b/io.opencaesar.oml/src/io/opencaesar/oml/util/OmlRead.java @@ -45,9 +45,9 @@ import io.opencaesar.oml.AnonymousInstance; import io.opencaesar.oml.Assertion; import io.opencaesar.oml.Axiom; -import io.opencaesar.oml.Classifier; import io.opencaesar.oml.Description; import io.opencaesar.oml.Element; +import io.opencaesar.oml.Entity; import io.opencaesar.oml.ForwardRelation; import io.opencaesar.oml.IdentifiedElement; import io.opencaesar.oml.Import; @@ -822,8 +822,8 @@ public static Member getAnnotationReferencedValue(IdentifiedElement element, Ann public static List getSuperTerms(Term term) { var supers = new ArrayList(); supers.addAll(getSpecializationSuperTerms(term)); - if (term instanceof Classifier) { - supers.addAll(getEquivalenceSuperClassifiers((Classifier)term)); + if (term instanceof Entity) { + supers.addAll(getEquivalenceSuperEntities((Entity)term)); } else if (term instanceof Scalar) { supers.addAll(getEquivalenceSuperScalars((Scalar)term)); } else if (term instanceof Property) { @@ -866,14 +866,14 @@ public static List getSpecializationSuperTerms(Term term) { } /** - * Gets the equivalence super classifiers of the given classifier + * Gets the equivalence super entities of the given entity * - * @param classifier the given classifier - * @return a list of equivalence super classifiers of the given classifier + * @param entity the given entity + * @return a list of equivalence super entities of the given entity */ - public static List getEquivalenceSuperClassifiers(Classifier classifier) { - return classifier.getOwnedEquivalences().stream() - .flatMap(i -> i.getSuperClassifiers().stream()) + public static List getEquivalenceSuperEntities(Entity entity) { + return entity.getOwnedEquivalences().stream() + .flatMap(i -> i.getSuperEntities().stream()) .collect(Collectors.toList()); } @@ -903,7 +903,7 @@ public static List getEquivalenceSuperProperties(Property property) { .collect(Collectors.toList())); } else if (property instanceof ForwardRelation) { var entity = ((ForwardRelation)property).getRelationEntity(); - supers.addAll(getEquivalenceSuperClassifiers(entity).stream() + supers.addAll(getEquivalenceSuperEntities(entity).stream() .filter(i -> i instanceof RelationEntity) .map(i -> (RelationEntity)i) .filter(i -> i.getForwardRelation() != null) @@ -912,7 +912,7 @@ public static List getEquivalenceSuperProperties(Property property) { } else if (property instanceof ReverseRelation) { var base = ((ReverseRelation)property).getRelationBase(); if (base instanceof RelationEntity) { - supers.addAll(getEquivalenceSuperClassifiers((RelationEntity)base).stream() + supers.addAll(getEquivalenceSuperEntities((RelationEntity)base).stream() .filter(i -> i instanceof RelationEntity) .map(i -> (RelationEntity)i) .filter(i -> i.getReverseRelation() != null) @@ -1055,7 +1055,7 @@ public static Literal getPropertyLiteralValue(Instance instance, SemanticPropert * * @param instance The given instance * @param property the given property - * @return a structure instance representing the property's contained value + * @return an anonymous instance representing the property's contained value */ public static AnonymousInstance getPropertyContainedValue(Instance instance, SemanticProperty property) { return getPropertyValues(instance, property).stream() @@ -1086,8 +1086,8 @@ public static NamedInstance getPropertyReferencedValue(Instance instance, Semant * @param instance the given instance * @return a list of types of the given element */ - public static List getTypes(Instance instance) { - var types = new ArrayList(); + public static List getTypes(Instance instance) { + var types = new ArrayList(); if (instance instanceof AnonymousInstance) { types.addAll(instance.getTypes()); } else if (instance instanceof NamedInstance) { diff --git a/io.opencaesar.oml/src/io/opencaesar/oml/util/OmlSearch.java b/io.opencaesar.oml/src/io/opencaesar/oml/util/OmlSearch.java index bd5df6f7..a37c86c9 100644 --- a/io.opencaesar.oml/src/io/opencaesar/oml/util/OmlSearch.java +++ b/io.opencaesar.oml/src/io/opencaesar/oml/util/OmlSearch.java @@ -34,12 +34,11 @@ import io.opencaesar.oml.Aspect; import io.opencaesar.oml.Assertion; import io.opencaesar.oml.Axiom; -import io.opencaesar.oml.Classifier; -import io.opencaesar.oml.ClassifierEquivalenceAxiom; import io.opencaesar.oml.Concept; import io.opencaesar.oml.ConceptInstance; import io.opencaesar.oml.Element; import io.opencaesar.oml.Entity; +import io.opencaesar.oml.EntityEquivalenceAxiom; import io.opencaesar.oml.ForwardRelation; import io.opencaesar.oml.IdentifiedElement; import io.opencaesar.oml.Instance; @@ -66,8 +65,6 @@ import io.opencaesar.oml.SpecializableProperty; import io.opencaesar.oml.SpecializableTerm; import io.opencaesar.oml.SpecializationAxiom; -import io.opencaesar.oml.Structure; -import io.opencaesar.oml.StructuredProperty; import io.opencaesar.oml.Term; import io.opencaesar.oml.Type; import io.opencaesar.oml.TypeAssertion; @@ -101,14 +98,10 @@ public static Set findRefs(Member member, Set scope) { refs.addAll(findConceptsWithRef((Concept)member, scope)); } else if (member instanceof RelationEntity) { refs.addAll(findRelationEntitiesWithRef((RelationEntity)member, scope)); - } else if (member instanceof Structure) { - refs.addAll(findStructuresWithRef((Structure)member, scope)); } else if (member instanceof Scalar) { refs.addAll(findScalarsWithRef((Scalar)member, scope)); } else if (member instanceof Relation) { refs.addAll(findUnreifiedRelationsWithRef((Relation)member, scope)); - } else if (member instanceof StructuredProperty) { - refs.addAll(findStructuredPropertiesWithRef((StructuredProperty)member, scope)); } else if (member instanceof ScalarProperty) { refs.addAll(findScalarPropertiesWithRef((ScalarProperty)member, scope)); } else if (member instanceof Rule) { @@ -278,11 +271,9 @@ public static Set findAxioms(Term term, Set scope) { if (term instanceof SpecializableTerm){ axioms.addAll(findSpecializationAxiomsWithSubTerm(((SpecializableTerm)term), scope)); } - if (term instanceof Classifier) { - axioms.addAll(findClassifierEquivalenceAxiomsWithSubClassifier(((Classifier)term), scope)); - axioms.addAll(findPropertyRestrictionAxioms(((Classifier)term), scope)); - } if (term instanceof Entity) { + axioms.addAll(findEntityEquivalenceAxiomsWithSubEntity(((Entity)term), scope)); + axioms.addAll(findPropertyRestrictionAxioms(((Entity)term), scope)); axioms.addAll(findKeyAxioms(((Entity)term), scope)); } if (term instanceof Concept) { @@ -407,33 +398,33 @@ public static Set findLiteralEnumerationAxioms(Scalar s } /** - * Find property restriction axioms that are defined on the given classifier + * Find property restriction axioms that are defined on the given entity * - * @param classifier the given classifier + * @param entity the given entity * @param scope The scope of the search (can be null) - * @return a set of restriction axioms that are defined on the given classifier + * @return a set of restriction axioms that are defined on the given entity */ - public static Set findPropertyRestrictionAxioms(Classifier classifier, Set scope) { + public static Set findPropertyRestrictionAxioms(Entity entity, Set scope) { final Set axioms = new LinkedHashSet<>(); - axioms.addAll(classifier.getOwnedPropertyRestrictions()); - axioms.addAll(findRefs(classifier, scope).stream() - .filter(i -> i instanceof Classifier) - .map(i -> (Classifier)i) + axioms.addAll(entity.getOwnedPropertyRestrictions()); + axioms.addAll(findRefs(entity, scope).stream() + .filter(i -> i instanceof Entity) + .map(i -> (Entity)i) .flatMap(r -> r.getOwnedPropertyRestrictions().stream()) .collect(Collectors.toCollection(LinkedHashSet::new))); return axioms; } /** - * Find property restriction axioms that are defined on the given classifier + * Find property restriction axioms that are defined on the given entity * - * @param classifier the given classifier - * @return a set of restriction axioms that are defined on the given classifier - * @deprecated As of 2.5.0. Use {{@link #findPropertyRestrictionAxioms(Classifier, Set)} instead + * @param entity the given entity + * @return a set of restriction axioms that are defined on the given entity + * @deprecated As of 2.5.0. Use {{@link #findPropertyRestrictionAxioms(Entity, Set)} instead */ @Deprecated - public static Set findPropertyRestrictionAxioms(Classifier classifier) { - return findPropertyRestrictionAxioms(classifier, null); + public static Set findPropertyRestrictionAxioms(Entity entity) { + return findPropertyRestrictionAxioms(entity, null); } //-----Beginning-Of-Specialization-and-Equivalence-Axioms----------------- @@ -471,33 +462,33 @@ public static Set findSpecializationAxiomsWithSubTerm(Term } /** - * Finds classifier equivalence axioms that have the given classifier as a sub + * Finds entity equivalence axioms that have the given entity as a sub * - * @param classifier the given classifier + * @param entity the given entity * @param scope The scope of the search (can be null) - * @return a set of classifier equivalence axioms that have the given classifier as a sub + * @return a set of entity equivalence axioms that have the given entity as a sub */ - public static Set findClassifierEquivalenceAxiomsWithSubClassifier(Classifier classifier, Set scope) { - final Set axioms = new LinkedHashSet<>(); - axioms.addAll(classifier.getOwnedEquivalences()); - axioms.addAll(findRefs(classifier, scope).stream() - .filter(i -> i instanceof Classifier) - .map(i -> (Classifier)i) + public static Set findEntityEquivalenceAxiomsWithSubEntity(Entity entity, Set scope) { + final Set axioms = new LinkedHashSet<>(); + axioms.addAll(entity.getOwnedEquivalences()); + axioms.addAll(findRefs(entity, scope).stream() + .filter(i -> i instanceof Entity) + .map(i -> (Entity)i) .flatMap(r -> r.getOwnedEquivalences().stream()) .collect(Collectors.toCollection(LinkedHashSet::new))); return axioms; } /** - * Finds classifier equivalence axioms that have the given classifier as a sub + * Finds entity equivalence axioms that have the given entity as a sub * - * @param classifier the given classifier - * @return a set of classifier equivalence axioms that have the given classifier as a sub - * @deprecated As of 2.5.0. Use {{@link #findClassifierEquivalenceAxiomsWithSubClassifier(Classifier, Set)} instead + * @param entity the given entity + * @return a set of entity equivalence axioms that have the given entity as a sub + * @deprecated As of 2.5.0. Use {{@link #findEntityEquivalenceAxiomsWithSubEntity(Entity, Set)} instead */ @Deprecated - public static Set findClassifierEquivalenceAxiomsWithSubClassifier(Classifier classifier) { - return findClassifierEquivalenceAxiomsWithSubClassifier(classifier, null); + public static Set findEntityEquivalenceAxiomsWithSubEntity(Entity entity) { + return findEntityEquivalenceAxiomsWithSubEntity(entity, null); } /** @@ -572,9 +563,9 @@ public static Set findPropertyEquivalenceAxiomsWithSub public static Set findSuperTerms(Term term, Set scope) { final Set supers = new LinkedHashSet<>(); supers.addAll(findSpecializationSuperTerms(term, scope)); - if (term instanceof Classifier) { - supers.addAll(findEquivalenceSuperClassifiers((Classifier)term, scope)); - supers.addAll(findEquivalentClassifiers((Classifier)term, scope)); + if (term instanceof Entity) { + supers.addAll(findEquivalenceSuperEntitys((Entity)term, scope)); + supers.addAll(findEquivalentEntitys((Entity)term, scope)); } else if (term instanceof Scalar) { supers.addAll(findEquivalenceSuperScalars((Scalar)term, scope)); supers.addAll(findEquivalentScalars((Scalar)term, scope)); @@ -606,9 +597,9 @@ public static Set findSuperTerms(Term term) { public static Set findSubTerms(Term term, Set scope) { final Set subs = new LinkedHashSet<>(); subs.addAll(findSpecializationSubTerms(term, scope)); - if (term instanceof Classifier) { - subs.addAll(findEquivalenceSubClassifiers((Classifier)term, scope)); - subs.addAll(findEquivalentClassifiers((Classifier)term, scope)); + if (term instanceof Entity) { + subs.addAll(findEquivalenceSubEntitys((Entity)term, scope)); + subs.addAll(findEquivalentEntitys((Entity)term, scope)); } else if (term instanceof Scalar) { subs.addAll(findEquivalenceSubScalars((Scalar)term, scope)); subs.addAll(findEquivalentScalars((Scalar)term, scope)); @@ -796,53 +787,53 @@ public static Set findSpecializationSubTerms(Term term) { } /** - * Finds classifiers that are the direct equivalence super of a given classifier + * Finds entities that are the direct equivalence super of a given entity * - * @param classifier the given classifier + * @param entity the given entity * @param scope The scope of the search (can be null) - * @return a set of classifier that are the direct equivalence super of the given classifier + * @return a set of entity that are the direct equivalence super of the given entity */ - public static Set findEquivalenceSuperClassifiers(Classifier classifier, Set scope) { - return findClassifierEquivalenceAxiomsWithSubClassifier(classifier, scope).stream() - .flatMap(i -> i.getSuperClassifiers().stream()) + public static Set findEquivalenceSuperEntitys(Entity entity, Set scope) { + return findEntityEquivalenceAxiomsWithSubEntity(entity, scope).stream() + .flatMap(i -> i.getSuperEntities().stream()) .collect(Collectors.toCollection(LinkedHashSet::new)); } /** - * Finds classifiers that are the direct equivalence super of a given classifier + * Finds entities that are the direct equivalence super of a given entity * - * @param classifier the given classifier - * @return a set of classifier that are the direct equivalence super of the given classifier - * @deprecated As of 2.5.0. Use {{@link #findEquivalenceSuperClassifiers(Classifier, Set)} instead + * @param entity the given entity + * @return a set of entity that are the direct equivalence super of the given entity + * @deprecated As of 2.5.0. Use {{@link #findEquivalenceSuperEntitys(Entity, Set)} instead */ @Deprecated - public static Set findEquivalenceSuperClassifiers(Classifier classifier) { - return findEquivalenceSuperClassifiers(classifier, null); + public static Set findEquivalenceSuperEntitys(Entity entity) { + return findEquivalenceSuperEntitys(entity, null); } /** - * Finds classifiers that are the direct equivalence sub of a given classifier + * Finds entities that are the direct equivalence sub of a given entity * - * @param classifier the given classifier + * @param entity the given entity * @param scope The scope of the search (can be null) - * @return a set of classifier that are the direct equivalence sub of the given classifier + * @return a set of entity that are the direct equivalence sub of the given entity */ - public static Set findEquivalenceSubClassifiers(Classifier classifier, Set scope) { - return findClassifierEquivalenceAxiomsWithSuperClassifier(classifier, scope).stream() - .map(i -> i.getSubClassifier()) + public static Set findEquivalenceSubEntitys(Entity entity, Set scope) { + return findEntityEquivalenceAxiomsWithSuperEntity(entity, scope).stream() + .map(i -> i.getSubEntity()) .collect(Collectors.toCollection(LinkedHashSet::new)); } /** - * Finds classifiers that are the direct equivalence sub of a given classifier + * Finds entities that are the direct equivalence sub of a given entity * - * @param classifier the given classifier - * @return a set of classifier that are the direct equivalence sub of the given classifier - * @deprecated As of 2.5.0. Use {{@link #findEquivalenceSubClassifiers(Classifier, Set)} instead + * @param entity the given entity + * @return a set of entity that are the direct equivalence sub of the given entity + * @deprecated As of 2.5.0. Use {{@link #findEquivalenceSubEntitys(Entity, Set)} instead */ @Deprecated - public static Set findEquivalenceSubClassifiers(Classifier classifier) { - return findEquivalenceSubClassifiers(classifier, null); + public static Set findEquivalenceSubEntitys(Entity entity) { + return findEquivalenceSubEntitys(entity, null); } /** @@ -850,7 +841,7 @@ public static Set findEquivalenceSubClassifiers(Classifier classifie * * @param scalar the given scalar * @param scope The scope of the search (can be null) - * @return a set of classifier that are the direct equivalence super of the given classifier + * @return a set of entity that are the direct equivalence super of the given entity */ public static Set findEquivalenceSuperScalars(Scalar scalar, Set scope) { return findScalarEquivalenceAxiomsWithSubScalar(scalar, scope).stream() @@ -862,7 +853,7 @@ public static Set findEquivalenceSuperScalars(Scalar scalar, Set)} instead */ @Deprecated @@ -909,7 +900,7 @@ public static Set findEquivalenceSuperProperties(Property property, Se .collect(Collectors.toCollection(LinkedHashSet::new))); if (property instanceof ForwardRelation) { var entity = ((ForwardRelation)property).getRelationEntity(); - supers.addAll(findEquivalenceSuperClassifiers(entity, scope).stream() + supers.addAll(findEquivalenceSuperEntitys(entity, scope).stream() .filter(i -> i instanceof RelationEntity) .map(i -> (RelationEntity)i) .filter(i -> i.getForwardRelation() != null) @@ -918,7 +909,7 @@ public static Set findEquivalenceSuperProperties(Property property, Se } else if (property instanceof ReverseRelation) { var base = ((ReverseRelation)property).getRelationBase(); if (base instanceof RelationEntity) { - supers.addAll(findEquivalenceSuperClassifiers((RelationEntity)base, scope).stream() + supers.addAll(findEquivalenceSuperEntitys((RelationEntity)base, scope).stream() .filter(i -> i instanceof RelationEntity) .map(i -> (RelationEntity)i) .filter(i -> i.getReverseRelation() != null) @@ -962,7 +953,7 @@ public static Set findEquivalenceSubProperties(Property property, Set< .collect(Collectors.toCollection(LinkedHashSet::new))); if (property instanceof ForwardRelation) { var entity = ((ForwardRelation)property).getRelationEntity(); - subs.addAll(findEquivalenceSubClassifiers(entity, scope).stream() + subs.addAll(findEquivalenceSubEntitys(entity, scope).stream() .filter(i -> i instanceof RelationEntity) .map(i -> (RelationEntity)i) .filter(i -> i.getForwardRelation() != null) @@ -971,7 +962,7 @@ public static Set findEquivalenceSubProperties(Property property, Set< } else if (property instanceof ReverseRelation) { var base = ((ReverseRelation)property).getRelationBase(); if (base instanceof RelationEntity) { - subs.addAll(findEquivalenceSubClassifiers((RelationEntity)base, scope).stream() + subs.addAll(findEquivalenceSubEntitys((RelationEntity)base, scope).stream() .filter(i -> i instanceof RelationEntity) .map(i -> (RelationEntity)i) .filter(i -> i.getReverseRelation() != null) @@ -1002,37 +993,37 @@ public static Set findEquivalenceSubProperties(Property property) { } /** - * Finds classifiers that are the direct equivalent to a given classifier + * Finds entities that are the direct equivalent to a given entity * - * @param classifier the given classifier + * @param entity the given entity * @param scope The scope of the search (can be null) - * @return a set of classifier that are the direct equivalents of the given classifier + * @return a set of entity that are the direct equivalents of the given entity */ - public static Set findEquivalentClassifiers(Classifier classifier, Set scope) { - final Set equivalents = new LinkedHashSet<>(); - equivalents.addAll(findClassifierEquivalenceAxiomsWithSubClassifier(classifier, scope).stream() + public static Set findEquivalentEntitys(Entity entity, Set scope) { + final Set equivalents = new LinkedHashSet<>(); + equivalents.addAll(findEntityEquivalenceAxiomsWithSubEntity(entity, scope).stream() .filter(i -> i.getOwnedPropertyRestrictions().size() == 0) - .filter(i -> i.getSuperClassifiers().size() == 1) - .map(i -> i.getSuperClassifiers().get(0)) + .filter(i -> i.getSuperEntities().size() == 1) + .map(i -> i.getSuperEntities().get(0)) .collect(Collectors.toCollection(LinkedHashSet::new))); - equivalents.addAll(findClassifierEquivalenceAxiomsWithSuperClassifier(classifier, scope).stream() + equivalents.addAll(findEntityEquivalenceAxiomsWithSuperEntity(entity, scope).stream() .filter(i -> i.getOwnedPropertyRestrictions().size() == 0) - .filter(i -> i.getSuperClassifiers().size() == 1) - .map(i -> i.getSubClassifier()) + .filter(i -> i.getSuperEntities().size() == 1) + .map(i -> i.getSubEntity()) .collect(Collectors.toCollection(LinkedHashSet::new))); return equivalents; } /** - * Finds classifiers that are the direct equivalent to a given classifier + * Finds entities that are the direct equivalent to a given entity * - * @param classifier the given classifier - * @return a set of classifier that are the direct equivalents of the given classifier - * @deprecated As of 2.5.0. Use {{@link #findEquivalentClassifiers(Classifier, Set)} instead + * @param entity the given entity + * @return a set of entity that are the direct equivalents of the given entity + * @deprecated As of 2.5.0. Use {{@link #findEquivalentEntitys(Entity, Set)} instead */ @Deprecated - public static Set findEquivalentClassifiers(Classifier classifier) { - return findEquivalentClassifiers(classifier, null); + public static Set findEquivalentEntitys(Entity entity) { + return findEquivalentEntitys(entity, null); } /** @@ -1176,31 +1167,28 @@ public static Set findTargetRelations(Entity entity) { } /** - * Finds semantic properties referencing the given classifier as domain + * Finds semantic properties referencing the given entity as domain * - * @param domain The referenced classifier + * @param domain The referenced entity * @param scope The scope of the search (can be null) * @return A set of referencing semantic properties */ - public static Set findSemanticPropertiesWithDomain(Classifier domain, Set scope) { + public static Set findSemanticPropertiesWithDomain(Entity domain, Set scope) { var properties = new LinkedHashSet(); properties.addAll(findScalarPropertiesWithDomain(domain, scope)); - properties.addAll(findStructuredPropertiesWithDomain(domain, scope)); - if (domain instanceof Entity) { - properties.addAll(findSourceRelations((Entity)domain, scope)); - } + properties.addAll(findSourceRelations((Entity)domain, scope)); return properties; } /** - * Finds semantic properties referencing the given classifier as domain + * Finds semantic properties referencing the given entity as domain * - * @param domain The referenced classifier + * @param domain The referenced entity * @return A set of referencing semantic properties - * @deprecated As of 2.5.0. Use {{@link #findSemanticPropertiesWithDomain(Classifier, Set)} instead + * @deprecated As of 2.5.0. Use {{@link #findSemanticPropertiesWithDomain(Entity, Set)} instead */ @Deprecated - public static Set findSemanticPropertiesWithDomain(Classifier domain) { + public static Set findSemanticPropertiesWithDomain(Entity domain) { return findSemanticPropertiesWithDomain(domain, null); } @@ -1215,8 +1203,6 @@ public static Set findSemanticPropertiesWithRange(Type range, var properties = new LinkedHashSet(); if (range instanceof Scalar) { properties.addAll(findScalarPropertiesWithRange((Scalar)range, scope)); - } else if (range instanceof Structure) { - properties.addAll(findStructuredPropertiesWithRange((Structure)range, scope)); } else if (range instanceof Entity) { properties.addAll(findTargetRelations((Entity)range, scope)); } @@ -1242,8 +1228,8 @@ public static Set findSemanticPropertiesWithRange(Type range) * @param scope The scope of the search (can be null) * @return A set of domains for the given semantic property */ - public static Set findDomains(SemanticProperty property, Set scope) { - var domains = new LinkedHashSet(); + public static Set findDomains(SemanticProperty property, Set scope) { + var domains = new LinkedHashSet(); domains.addAll(property.getDomainList()); domains.addAll(findRefs(property, scope).stream() .map(i -> (SemanticProperty)i) @@ -1260,7 +1246,7 @@ public static Set findDomains(SemanticProperty property, Set)} instead */ @Deprecated - public static Set findDomains(SemanticProperty property) { + public static Set findDomains(SemanticProperty property) { return findDomains(property, null); } @@ -1271,7 +1257,7 @@ public static Set findDomains(SemanticProperty property) { * @param scope The scope of the search (can be null) * @return A set of domains for the given semantic property */ - public static Set findAllDomains(SemanticProperty property, Set scope) { + public static Set findAllDomains(SemanticProperty property, Set scope) { return findAllSuperTerms(property, true, scope).stream() .map(i -> (SemanticProperty)i) .flatMap(i -> findDomains(i, scope).stream()) @@ -1286,7 +1272,7 @@ public static Set findAllDomains(SemanticProperty property, Set)} instead */ @Deprecated - public static Set findAllDomains(SemanticProperty property) { + public static Set findAllDomains(SemanticProperty property) { return findAllDomains(property, null); } @@ -1891,7 +1877,7 @@ public static Literal findPropertyLiteralValue(Instance instance, SemanticProper * @param instance the given instance * @param property the given semantic property * @param scope The scope of the search (can be null) - * @return a contained value of the given structured property on the given instance + * @return a contained value of the given semantic property on the given instance */ public static AnonymousInstance findPropertyContainedValue(Instance instance, SemanticProperty property, Set scope) { return findPropertyValues(instance, property, scope).stream() @@ -1906,8 +1892,8 @@ public static AnonymousInstance findPropertyContainedValue(Instance instance, Se * * @param instance the given instance * @param property the given semantic property - * @return a contained value of the given structured property on the given instance - * @deprecated As of 2.5.0. Use {{@link #findPropertyContainedValue(Instance, StructuredProperty, Set)} instead + * @return a contained value of the given semantic property on the given instance + * @deprecated As of 2.5.0. Use {{@link #findPropertyContainedValue(Instance, SemanticProperty, Set)} instead */ @Deprecated public static AnonymousInstance findPropertyContainedValue(Instance instance, SemanticProperty property) { @@ -1944,14 +1930,14 @@ public static NamedInstance findPropertyReferencedValue(Instance instance, Seman } /** - * Finds classifiers that are direct types of the given instance + * Finds entities that are direct types of the given instance * * @param instance the given instance * @param scope The scope of the search (can be null) - * @return a set of classifiers that are direcf types of the given instance + * @return a set of entities that are direcf types of the given instance */ - public static Set findTypes(Instance instance, Set scope) { - Set types = new LinkedHashSet<>(); + public static Set findTypes(Instance instance, Set scope) { + Set types = new LinkedHashSet<>(); if (instance instanceof AnonymousInstance) { types.addAll(instance.getTypes()); } else if (instance instanceof NamedInstance) { @@ -1963,42 +1949,42 @@ public static Set findTypes(Instance instance, Set scope) } /** - * Finds classifiers that are direct types of the given instance + * Finds entities that are direct types of the given instance * * @param instance the given instance - * @return a set of classifiers that are direcf types of the given instance + * @return a set of entities that are direcf types of the given instance * @deprecated As of 2.5.0. Use {{@link #findTypes(Instance, Set)} instead */ @Deprecated - public static Set findTypes(Instance instance) { + public static Set findTypes(Instance instance) { return findTypes(instance, null); } /** - * Finds classifiers that are direct or indirect types of the given instance + * Finds entities that are direct or indirect types of the given instance * * @param instance the given instance * @param scope The scope of the search (can be null) - * @return a set of classifiers that are direct or indirect types of the given instance + * @return a set of entities that are direct or indirect types of the given instance */ - public static Set findAllTypes(Instance instance, Set scope) { + public static Set findAllTypes(Instance instance, Set scope) { return findTypes(instance, scope).stream() .flatMap(t -> findAllSuperTerms(t, true, scope).stream()) - .filter(t -> t instanceof Classifier) - .map(t -> (Classifier)t) + .filter(t -> t instanceof Entity) + .map(t -> (Entity)t) .distinct() .collect(Collectors.toCollection(LinkedHashSet::new)); } /** - * Finds classifiers that are direct or indirect types of the given instance + * Finds entities that are direct or indirect types of the given instance * * @param instance the given instance - * @return a set of classifiers that are direct or indirect types of the given instance + * @return a set of entities that are direct or indirect types of the given instance * @deprecated As of 2.5.0. Use {{@link #findAllTypes(Instance, Set)} instead */ @Deprecated - public static Set findAllTypes(Instance instance) { + public static Set findAllTypes(Instance instance) { return findAllTypes(instance, null); } @@ -2010,7 +1996,7 @@ public static Set findAllTypes(Instance instance) { * @param scope The scope of the search (can be null) * @return true if the given instance is typed directly by the given type; otherwise false */ - public static boolean findIsTypeOf(Instance instance, Classifier type, Set scope) { + public static boolean findIsTypeOf(Instance instance, Entity type, Set scope) { return findTypes(instance, scope).stream() .filter(t -> t == type) .findFirst().isPresent(); @@ -2022,10 +2008,10 @@ public static boolean findIsTypeOf(Instance instance, Classifier type, Set)} instead + * @deprecated As of 2.5.0. Use {{@link #findIsTypeOf(Instance, Entity, Set)} instead */ @Deprecated - public static boolean findIsTypeOf(Instance instance, Classifier type) { + public static boolean findIsTypeOf(Instance instance, Entity type) { return findIsTypeOf(instance, type, null); } @@ -2037,7 +2023,7 @@ public static boolean findIsTypeOf(Instance instance, Classifier type) { * @param scope The scope of the search (can be null) * @return true if the given instance is typed directly or transitively by the given type; otherwise false */ - public static boolean findIsKindOf(Instance instance, Classifier type, Set scope) { + public static boolean findIsKindOf(Instance instance, Entity type, Set scope) { return findTypes(instance, scope).stream() .filter(t -> findIsSubTermOf(t, type, scope)) .findFirst().isPresent(); @@ -2049,10 +2035,10 @@ public static boolean findIsKindOf(Instance instance, Classifier type, Set)} instead + * @deprecated As of 2.5.0. Use {{@link #findIsKindOf(Instance, Entity, Set)} instead */ @Deprecated - public static boolean findIsKindOf(Instance instance, Classifier type) { + public static boolean findIsKindOf(Instance instance, Entity type) { return findIsKindOf(instance, type, null); } @@ -2063,20 +2049,16 @@ public static boolean findIsKindOf(Instance instance, Classifier type) { * @param scope The scope of the search (can be null) * @return a set of instances that have the given type as their direct type */ - public static Set findInstancesOfType(Classifier type, Set scope) { + public static Set findInstancesOfType(Entity type, Set scope) { Set instances = new HashSet<>(); - if (type instanceof Structure) { - instances.addAll(findStructureInstancesWithType((Structure)type, scope)); - } else if (type instanceof Entity) { - instances.addAll(findTypeAssertionsWithType((Entity)type, scope).stream() - .map(i -> i.getSubject()) - .collect(Collectors.toCollection(LinkedHashSet::new))); - if (type instanceof RelationEntity) { - instances.addAll(findAnonymousRelationInstanceOfType((RelationEntity)type, scope)); - } - } - + instances.addAll(findTypeAssertionsWithType((Entity)type, scope).stream() + .map(i -> i.getSubject()) + .collect(Collectors.toCollection(LinkedHashSet::new))); + if (type instanceof RelationEntity) { + instances.addAll(findAnonymousRelationInstanceOfType((RelationEntity)type, scope)); + } + return instances; } @@ -2085,10 +2067,10 @@ public static Set findInstancesOfType(Classifier type, Set s * * @param type the given type * @return a set of instances that have the given type as their direct type - * @deprecated As of 2.5.0. Use {{@link #findInstancesOfType(Classifier, Set)} instead + * @deprecated As of 2.5.0. Use {{@link #findInstancesOfType(Entity, Set)} instead */ @Deprecated - public static Set findInstancesOfType(Classifier type) { + public static Set findInstancesOfType(Entity type) { return findInstancesOfType(type, null); } @@ -2099,9 +2081,9 @@ public static Set findInstancesOfType(Classifier type) { * @param scope The scope of the search (can be null) * @return a set of instances that have the given type as their direct or transitive type */ - public static Set findInstancesOfKind(Classifier type, Set scope) { + public static Set findInstancesOfKind(Entity type, Set scope) { return findAllSubTerms(type, true, scope).stream() - .map(t -> (Classifier)t) + .map(t -> (Entity)t) .flatMap(t -> findInstancesOfType(t, scope).stream()) .collect(Collectors.toCollection(LinkedHashSet::new)); } @@ -2111,10 +2093,10 @@ public static Set findInstancesOfKind(Classifier type, Set s * * @param type the given type * @return a set of instances that have the given type as their direct or transitive type - * @deprecated As of 2.5.0. Use {{@link #findInstancesOfKind(Classifier, Set)} instead + * @deprecated As of 2.5.0. Use {{@link #findInstancesOfKind(Entity, Set)} instead */ @Deprecated - public static Set findInstancesOfKind(Classifier type) { + public static Set findInstancesOfKind(Entity type) { return findInstancesOfKind(type, null); } diff --git a/io.opencaesar.oml/src/io/opencaesar/oml/util/OmlValidator2.java b/io.opencaesar.oml/src/io/opencaesar/oml/util/OmlValidator2.java index ff5afa06..617cb4cb 100644 --- a/io.opencaesar.oml/src/io/opencaesar/oml/util/OmlValidator2.java +++ b/io.opencaesar.oml/src/io/opencaesar/oml/util/OmlValidator2.java @@ -40,18 +40,18 @@ import org.eclipse.emf.ecore.resource.Resource; import io.opencaesar.oml.AnnotationProperty; +import io.opencaesar.oml.AnonymousConceptInstance; import io.opencaesar.oml.AnonymousInstance; import io.opencaesar.oml.AnonymousRelationInstance; import io.opencaesar.oml.Argument; import io.opencaesar.oml.Aspect; -import io.opencaesar.oml.Classifier; -import io.opencaesar.oml.ClassifierEquivalenceAxiom; import io.opencaesar.oml.Concept; import io.opencaesar.oml.ConceptInstance; import io.opencaesar.oml.Description; import io.opencaesar.oml.DescriptionBundle; import io.opencaesar.oml.Element; import io.opencaesar.oml.Entity; +import io.opencaesar.oml.EntityEquivalenceAxiom; import io.opencaesar.oml.ForwardRelation; import io.opencaesar.oml.Import; import io.opencaesar.oml.ImportKind; @@ -82,9 +82,6 @@ import io.opencaesar.oml.ScalarProperty; import io.opencaesar.oml.SemanticProperty; import io.opencaesar.oml.SpecializationAxiom; -import io.opencaesar.oml.Structure; -import io.opencaesar.oml.StructureInstance; -import io.opencaesar.oml.StructuredProperty; import io.opencaesar.oml.Term; import io.opencaesar.oml.Type; import io.opencaesar.oml.TypeAssertion; @@ -112,9 +109,9 @@ public final class OmlValidator2 { private static final String CACHE = "ValidationCache"; private class Cache { - private Map> propertyToDomains = new HashMap<>(); + private Map> propertyToDomains = new HashMap<>(); private Map> propertyToRanges = new HashMap<>(); - private Map, Set> classifierToSupers = new HashMap<>(); + private Map, Set> entityToSupers = new HashMap<>(); private Map> scalarToSupers = new HashMap<>(); private Map, Set> scalarToLiterals = new HashMap<>(); @@ -122,8 +119,8 @@ private class Cache { public Cache(Set scope) { this.scope = scope; } - public Set getDomains(SemanticProperty property) { - Set domains = propertyToDomains.get(property); + public Set getDomains(SemanticProperty property) { + Set domains = propertyToDomains.get(property); if (domains == null) { propertyToDomains.put(property, domains = OmlSearch.findAllDomains(property, scope)); } @@ -136,11 +133,11 @@ public Set getRanges(SemanticProperty property) { } return ranges; } - public Set getAllTypes(Instance instance) { - final Set types = OmlSearch.findTypes(instance, scope); - Set supers = classifierToSupers.get(types); + public Set getAllTypes(Instance instance) { + final Set types = OmlSearch.findTypes(instance, scope); + Set supers = entityToSupers.get(types); if (supers == null) { - classifierToSupers.put(types, supers = OmlSearch.findAllTypes(instance, scope)); + entityToSupers.put(types, supers = OmlSearch.findAllTypes(instance, scope)); } return supers; } @@ -421,7 +418,7 @@ boolean validateImportURI(Import object, DiagnosticChain diagnostics, Map context) { final Cache cache = (Cache) context.get(CACHE); - final Classifier restrictingDomain = object.getRestrictingDomain(); + final Entity restrictingDomain = object.getRestrictingDomain(); final SemanticProperty property = object.getProperty(); - final Set domainTypes = (property!=null) ? OmlSearch.findAllDomains(property, cache.scope) : Collections.emptySet(); + final Set domainTypes = (property!=null) ? OmlSearch.findAllDomains(property, cache.scope) : Collections.emptySet(); if (restrictingDomain != null && !domainTypes.isEmpty()) { final Collection allSuperTerms = OmlSearch.findAllSuperTerms(restrictingDomain, true, cache.scope); allSuperTerms.retainAll(domainTypes); @@ -522,16 +519,6 @@ boolean validatePropertyValueRestrictionAxiomValue(PropertyValueRestrictionAxiom "The literal is not in the range of scalar property "+property.getAbbreviatedIri(), OmlPackage.Literals.PROPERTY_VALUE_RESTRICTION_AXIOM__LITERAL_VALUE); } - } else if (property instanceof StructuredProperty) { - if (object.getContainedValue() == null) { - return report(Diagnostic.WARNING, diagnostics, object, - "A structure instance is expected as the restricted value of property "+property.getAbbreviatedIri(), - OmlPackage.Literals.PROPERTY_RESTRICTION_AXIOM__PROPERTY); - } else if (!OmlSearch.findAllRanges(property, cache.scope).stream().allMatch(t -> OmlSearch.findIsKindOf(object.getContainedValue(), (Structure)t, cache.scope))) { - return report(Diagnostic.WARNING, diagnostics, object, - "The instance is not in the range of structured property "+property.getAbbreviatedIri(), - OmlPackage.Literals.PROPERTY_VALUE_RESTRICTION_AXIOM__CONTAINED_VALUE); - } } else if (property instanceof Relation) { if (object.getReferencedValue() != null) { if (!OmlSearch.findAllRanges(property, cache.scope).stream().allMatch(t -> OmlSearch.findIsKindOf(object.getReferencedValue(), (Entity)t, cache.scope))) { @@ -607,40 +594,40 @@ boolean validateSpecializationAxiomSpecializedTermKind(SpecializationAxiom objec return true; } - // ClassifierEquivalenceAxiom + // EntityEquivalenceAxiom /** - * Checks if a classifier equivalence axiom is not between compatible classifier kinds + * Checks if a entity equivalence axiom is not between compatible entity kinds * - * @param object The classifier equivalence axiom to check + * @param object The entity equivalence axiom to check * @param diagnostics The validation diagnostics * @param context The object-to-object context map * @return True if the rules is satisfied; False otherwise */ - boolean validateClassifierEquivalenceAxiom(ClassifierEquivalenceAxiom object, DiagnosticChain diagnostics, Map context) { - final List superClassifiers = object.getSuperClassifiers(); - final Classifier subClassifier = object.getSubClassifier(); - if (superClassifiers.contains(subClassifier)) { + boolean validateEntityEquivalenceAxiom(EntityEquivalenceAxiom object, DiagnosticChain diagnostics, Map context) { + final List superEntities = object.getSuperEntities(); + final Entity subEntity = object.getSubEntity(); + if (superEntities.contains(subEntity)) { return report(Diagnostic.WARNING, diagnostics, object, - "Classifier "+subClassifier.getAbbreviatedIri()+" specializes itself", - OmlPackage.Literals.CLASSIFIER_EQUIVALENCE_AXIOM__SUPER_CLASSIFIERS); + "Entity "+subEntity.getAbbreviatedIri()+" specializes itself", + OmlPackage.Literals.ENTITY_EQUIVALENCE_AXIOM__SUPER_ENTITIES); } - if (superClassifiers.size() == 1) { - if (!superClassifiers.get(0).eIsProxy()) { - if (!(superClassifiers.get(0).eClass() == subClassifier.eClass())) { + if (superEntities.size() == 1) { + if (!superEntities.get(0).eIsProxy()) { + if (!(superEntities.get(0).eClass() == subEntity.eClass())) { return report(Diagnostic.ERROR, diagnostics, object, - "Classifier "+superClassifiers.get(0).getAbbreviatedIri()+" cannot be specialized by "+subClassifier.getAbbreviatedIri()+"", - OmlPackage.Literals.CLASSIFIER_EQUIVALENCE_AXIOM__SUPER_CLASSIFIERS); + "Entity "+superEntities.get(0).getAbbreviatedIri()+" cannot be specialized by "+subEntity.getAbbreviatedIri()+"", + OmlPackage.Literals.ENTITY_EQUIVALENCE_AXIOM__SUPER_ENTITIES); } } } else { - for(Classifier superClassifier : superClassifiers) { - if (!superClassifier.eIsProxy()) { - if (!(superClassifier.eClass() == subClassifier.eClass() || - subClassifier instanceof Entity && superClassifier instanceof Aspect)) { + for(Entity superEntity : superEntities) { + if (!superEntity.eIsProxy()) { + if (!(superEntity.eClass() == subEntity.eClass() || + subEntity instanceof Entity && superEntity instanceof Aspect)) { return report(Diagnostic.ERROR, diagnostics, object, - "Classifier "+superClassifier.getAbbreviatedIri()+" cannot be specialized by "+subClassifier.getAbbreviatedIri()+"", - OmlPackage.Literals.CLASSIFIER_EQUIVALENCE_AXIOM__SUPER_CLASSIFIERS); + "Entity "+superEntity.getAbbreviatedIri()+" cannot be specialized by "+subEntity.getAbbreviatedIri()+"", + OmlPackage.Literals.ENTITY_EQUIVALENCE_AXIOM__SUPER_ENTITIES); } } } @@ -754,7 +741,7 @@ boolean validateScalarEquivalenceAxioms(ScalarEquivalenceAxiom object, Diagnosti return true; } - // Classifier Predicate + // Entity Predicate /** * Checks if a type predicate references an invalid type in a rule's consequent @@ -766,9 +753,9 @@ boolean validateScalarEquivalenceAxioms(ScalarEquivalenceAxiom object, Diagnosti */ boolean validateTypePredicateAsConsequent(TypePredicate object, DiagnosticChain diagnostics, Map context) { if (object.getConsequentRule() != null) { - if (object.getType() instanceof Structure) { + if (object.getType() instanceof Entity) { return report(Diagnostic.ERROR, diagnostics, object, - "Structure "+object.getType().getAbbreviatedIri()+" cannot be used as a consequent predicate", + "Entity "+object.getType().getAbbreviatedIri()+" cannot be used as a consequent predicate", OmlPackage.Literals.TYPE_PREDICATE__TYPE); } else if (object.getType() instanceof Scalar) { return report(Diagnostic.ERROR, diagnostics, object, @@ -779,25 +766,6 @@ boolean validateTypePredicateAsConsequent(TypePredicate object, DiagnosticChain return true; } - // Property Predicate - - /** - * Checks if a property predicate references invalid properties is in a rule's consequent - * - * @param object The property predicate to check - * @param diagnostics The validation diagnostics - * @param context The object-to-object context map - * @return True if the rules is satisfied; False otherwise - */ - boolean validatePropertyPredicateAsConsequent(PropertyPredicate object, DiagnosticChain diagnostics, Map context) { - if (object.getConsequentRule() != null && object.getProperty() instanceof StructuredProperty) { - return report(Diagnostic.ERROR, diagnostics, object, - "Structured property "+object.getProperty().getAbbreviatedIri()+" cannot be used as a consequent predicate", - OmlPackage.Literals.PROPERTY_PREDICATE__PROPERTY); - } - return true; - } - // Argument /** @@ -952,9 +920,9 @@ boolean validatePropertyValueRestrictionSubject(PropertyValueAssertion object, D final SemanticProperty property = object.getProperty(); final Instance theSubject = object.getSubject(); - final Set domains = cache.getDomains(property); + final Set domains = cache.getDomains(property); - final Set allTypes = cache.getAllTypes(theSubject); + final Set allTypes = cache.getAllTypes(theSubject); if (!domains.stream().allMatch(d -> allTypes.contains(d))) { return report(Diagnostic.WARNING, diagnostics, object, @@ -993,14 +961,14 @@ boolean validatePropertyValueRestrictionObject(PropertyValueAssertion object, Di // check if the object's type is asserted to be in the property's ranges if (theObject instanceof NamedInstance) { NamedInstance instance = ((NamedInstance)theObject); - final Set allTypes = cache.getAllTypes(instance); + final Set allTypes = cache.getAllTypes(instance); if (!ranges.stream().allMatch(d -> allTypes.contains(d))) { return report(Diagnostic.WARNING, diagnostics, object, instance.getAbbreviatedIri()+" is not asserted to be in the range of "+property.getAbbreviatedIri(), OmlPackage.Literals.PROPERTY_VALUE_ASSERTION__REFERENCED_VALUE); } } else if (theObject instanceof AnonymousInstance) { - final Set allTypes = cache.getAllTypes((Instance)theObject); + final Set allTypes = cache.getAllTypes((Instance)theObject); if (!ranges.stream().allMatch(d -> allTypes.contains(d))) { return report(Diagnostic.WARNING, diagnostics, object, "The object of the assertion is not asserted to be in the range of "+property.getAbbreviatedIri(), @@ -1177,14 +1145,14 @@ else if (object.getTargets().isEmpty()) { } /** - * Checks if the structure instance has a type + * Checks if the anonymous concept instance has a type * @return True if the member is deprecated; False otherwise */ - boolean validateStructureInstanceType(StructureInstance object, DiagnosticChain diagnostics, Map context) { - if (object.getStructure() == null) { + boolean validateAnonymousConceptInstanceType(AnonymousConceptInstance object, DiagnosticChain diagnostics, Map context) { + if (object.getEntity() == null) { return report(Diagnostic.ERROR, diagnostics, object, - "Structure instance needs to specify a type", - OmlPackage.Literals.STRUCTURE_INSTANCE__TYPE); + "Anonymous concept instance needs to specify a type", + OmlPackage.Literals.ANONYMOUS_CONCEPT_INSTANCE__TYPE); } return true; } diff --git a/io.opencaesar.oml/src/io/opencaesar/oml/util/OmlWrite.java b/io.opencaesar.oml/src/io/opencaesar/oml/util/OmlWrite.java index fff47bc5..29cd012a 100644 --- a/io.opencaesar.oml/src/io/opencaesar/oml/util/OmlWrite.java +++ b/io.opencaesar.oml/src/io/opencaesar/oml/util/OmlWrite.java @@ -27,6 +27,7 @@ import io.opencaesar.oml.Annotation; import io.opencaesar.oml.AnnotationProperty; +import io.opencaesar.oml.AnonymousConceptInstance; import io.opencaesar.oml.AnonymousInstance; import io.opencaesar.oml.AnonymousRelationInstance; import io.opencaesar.oml.Argument; @@ -35,8 +36,6 @@ import io.opencaesar.oml.BuiltIn; import io.opencaesar.oml.BuiltInPredicate; import io.opencaesar.oml.CardinalityRestrictionKind; -import io.opencaesar.oml.Classifier; -import io.opencaesar.oml.ClassifierEquivalenceAxiom; import io.opencaesar.oml.Concept; import io.opencaesar.oml.ConceptInstance; import io.opencaesar.oml.DecimalLiteral; @@ -47,6 +46,7 @@ import io.opencaesar.oml.DoubleLiteral; import io.opencaesar.oml.Element; import io.opencaesar.oml.Entity; +import io.opencaesar.oml.EntityEquivalenceAxiom; import io.opencaesar.oml.ForwardRelation; import io.opencaesar.oml.IdentifiedElement; import io.opencaesar.oml.Import; @@ -87,9 +87,6 @@ import io.opencaesar.oml.SpecializableProperty; import io.opencaesar.oml.SpecializableTerm; import io.opencaesar.oml.SpecializationAxiom; -import io.opencaesar.oml.Structure; -import io.opencaesar.oml.StructureInstance; -import io.opencaesar.oml.StructuredProperty; import io.opencaesar.oml.Term; import io.opencaesar.oml.Type; import io.opencaesar.oml.TypeAssertion; @@ -414,22 +411,6 @@ public static RelationEntity addRelationEntity(Vocabulary vocabulary, String nam return relation; } - // Structure - - /** - * Creates a new structure and adds it to the given vocabulary - * - * @param vocabulary the context vocabulary - * @param name the name of the new structure - * @return a new structure that is added to the given vocabulary - */ - public static Structure addStructure(Vocabulary vocabulary, String name) { - final Structure structure = create(Structure.class); - structure.setName(name); - vocabulary.getOwnedStatements().add(structure); - return structure; - } - // AnnotationProperty /** @@ -453,13 +434,13 @@ public static AnnotationProperty addAnnotationProperty(Vocabulary vocabulary, St * * @param vocabulary the context vocabulary * @param name the name of the new scalar property - * @param domains the given list of domain classifiers + * @param domains the given list of domain entities * @param ranges the given list of range scalars * @param functional whether the scalar property is functional * @return a new scalar property that is added to the given vocabulary */ public static ScalarProperty addScalarProperty(Vocabulary vocabulary, String name, - List domains, List ranges, boolean functional) { + List domains, List ranges, boolean functional) { final ScalarProperty property = create(ScalarProperty.class); property.setName(name); property.setFunctional(functional); @@ -469,29 +450,6 @@ public static ScalarProperty addScalarProperty(Vocabulary vocabulary, String nam return property; } - // StructuredProperty - - /** - * Creates a new structured property and adds it to the given vocabulary - * - * @param vocabulary the context vocabulary - * @param name the name of the new structured property - * @param domains the given list of domain classifiers - * @param ranges the given list of target structures - * @param functional whether the structured property is functional - * @return a new structured property that is added to the given vocabulary - */ - public static StructuredProperty addStructuredProperty(Vocabulary vocabulary, String name, - List domains, List ranges, boolean functional) { - final StructuredProperty property = create(StructuredProperty.class); - property.setName(name); - property.setFunctional(functional); - setCrossReferences(vocabulary, property, OmlPackage.Literals.STRUCTURED_PROPERTY__DOMAINS, domains); - setCrossReferences(vocabulary, property, OmlPackage.Literals.STRUCTURED_PROPERTY__RANGES, ranges); - vocabulary.getOwnedStatements().add(property); - return property; - } - // Scalar /** @@ -612,18 +570,18 @@ public static BuiltIn addBuiltIn(Vocabulary vocabulary, String name) { return builtIn; } - // StructureInstance + // AnonymousConceptInstance /** - * Creates a structure instance and adds it to the given ontology + * Creates a entity instance and adds it to the given ontology * * @param ontology the context ontology - * @param structure the given structure that is the type of the structure instance - * @return a structure instance that is added to the given ontology + * @param entity the given entity that is the type of the entity instance + * @return a entity instance that is added to the given ontology */ - public static StructureInstance createStructureInstance(Ontology ontology, Structure structure) { - final StructureInstance instance = create(StructureInstance.class); - setCrossReference(ontology, instance, OmlPackage.Literals.STRUCTURE_INSTANCE__TYPE, structure); + public static AnonymousConceptInstance createAnonymousConceptInstance(Ontology ontology, Entity entity) { + final AnonymousConceptInstance instance = create(AnonymousConceptInstance.class); + setCrossReference(ontology, instance, OmlPackage.Literals.ANONYMOUS_CONCEPT_INSTANCE__TYPE, entity); return instance; } @@ -700,10 +658,6 @@ protected static T createRef(T member) { final var ref = create(RelationEntity.class); ref.setRef((RelationEntity)member); return (T) ref; - } else if (member instanceof Structure) { - final var ref = create(Structure.class); - ref.setRef((Structure)member); - return (T) ref; } else if (member instanceof Scalar) { final var ref = create(Scalar.class); ref.setRef((Scalar)member); @@ -716,10 +670,6 @@ protected static T createRef(T member) { final var ref = create(ScalarProperty.class); ref.setRef((ScalarProperty)member); return (T) ref; - } else if (member instanceof StructuredProperty) { - final var ref = create(StructuredProperty.class); - ref.setRef((StructuredProperty)member); - return (T) ref; } else if (member instanceof Relation) { final var ref = create(UnreifiedRelation.class); ref.setRef((Relation)member); @@ -820,20 +770,20 @@ public static SpecializationAxiom addSpecializationAxiom(Vocabulary vocabulary, return axiom; } - // ClassifierEquivalenceAxiom + // EntityEquivalenceAxiom /** - * Creates a classifier equivalence axiom between the sub classifier and super classifiers and adds it to the given vocabulary + * Creates a entity equivalence axiom between the sub entity and super entities and adds it to the given vocabulary * * @param vocabulary the context vocabulary - * @param subClassifier the given sub classifier - * @param superClassifiers the given super classifiers - * @return a classifier equivalence axiom that is added to the vocabulary - */ - public static ClassifierEquivalenceAxiom addClassifierEquivalenceAxiom(Vocabulary vocabulary, Classifier subClassifier, List superClassifiers) { - final ClassifierEquivalenceAxiom axiom = create(ClassifierEquivalenceAxiom.class); - setCrossReferences(vocabulary, axiom, OmlPackage.Literals.CLASSIFIER_EQUIVALENCE_AXIOM__SUPER_CLASSIFIERS, superClassifiers); - setContainmentReference(vocabulary, subClassifier, OmlPackage.Literals.CLASSIFIER__OWNED_EQUIVALENCES, axiom); + * @param subEntity the given sub entity + * @param superEntities the given super entities + * @return a entity equivalence axiom that is added to the vocabulary + */ + public static EntityEquivalenceAxiom addEntityEquivalenceAxiom(Vocabulary vocabulary, Entity subEntity, List superEntities) { + final EntityEquivalenceAxiom axiom = create(EntityEquivalenceAxiom.class); + setCrossReferences(vocabulary, axiom, OmlPackage.Literals.ENTITY_EQUIVALENCE_AXIOM__SUPER_ENTITIES, superEntities); + setContainmentReference(vocabulary, subEntity, OmlPackage.Literals.ENTITY__OWNED_EQUIVALENCES, axiom); return axiom; } @@ -896,7 +846,7 @@ public static PropertyEquivalenceAxiom addPropertyEquivalenceAxiom(Vocabulary vo * Creates a property range restriction axiom and adds it to the given vocabulary * * @param vocabulary the context vocabulary - * @param owner the given restricting owner (classifier or classifier equivalence axiom) + * @param owner the given restricting owner (entity or entity equivalence axiom) * @param property the given semantic property * @param range given restricted range * @param restrictionKind the kind of the restriction @@ -907,10 +857,10 @@ public static PropertyRangeRestrictionAxiom addPropertyRangeRestrictionAxiom(Voc axiom.setKind(restrictionKind); setCrossReference(vocabulary, axiom, OmlPackage.Literals.PROPERTY_RESTRICTION_AXIOM__PROPERTY, property); setCrossReference(vocabulary, axiom, OmlPackage.Literals.PROPERTY_RANGE_RESTRICTION_AXIOM__RANGE, range); - if (owner instanceof Classifier) { - setContainmentReference(vocabulary, (Classifier)owner, OmlPackage.Literals.CLASSIFIER__OWNED_PROPERTY_RESTRICTIONS, axiom); - } else if (owner instanceof ClassifierEquivalenceAxiom) { - setContainmentReference(vocabulary, (ClassifierEquivalenceAxiom)owner, OmlPackage.Literals.CLASSIFIER_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS, axiom); + if (owner instanceof Entity) { + setContainmentReference(vocabulary, (Entity)owner, OmlPackage.Literals.ENTITY__OWNED_PROPERTY_RESTRICTIONS, axiom); + } else if (owner instanceof EntityEquivalenceAxiom) { + setContainmentReference(vocabulary, (EntityEquivalenceAxiom)owner, OmlPackage.Literals.ENTITY_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS, axiom); } return axiom; } @@ -921,7 +871,7 @@ public static PropertyRangeRestrictionAxiom addPropertyRangeRestrictionAxiom(Voc * Creates a property cardinality restriction axiom and adds it to the given vocabulary * * @param vocabulary the context vocabulary - * @param owner the given restricting owner (classifier or classifier equivalence axiom) + * @param owner the given restricting owner (entity or entity equivalence axiom) * @param property the given semantic property * @param cardinality the restricted cardinality * @param range given restricted range @@ -934,10 +884,10 @@ public static PropertyCardinalityRestrictionAxiom addPropertyCardinalityRestrict axiom.setCardinality(cardinality); setCrossReference(vocabulary, axiom, OmlPackage.Literals.PROPERTY_RESTRICTION_AXIOM__PROPERTY, property); setCrossReference(vocabulary, axiom, OmlPackage.Literals.PROPERTY_CARDINALITY_RESTRICTION_AXIOM__RANGE, range); - if (owner instanceof Classifier) { - setContainmentReference(vocabulary, (Classifier)owner, OmlPackage.Literals.CLASSIFIER__OWNED_PROPERTY_RESTRICTIONS, axiom); - } else if (owner instanceof ClassifierEquivalenceAxiom) { - setContainmentReference(vocabulary, (ClassifierEquivalenceAxiom)owner, OmlPackage.Literals.CLASSIFIER_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS, axiom); + if (owner instanceof Entity) { + setContainmentReference(vocabulary, (Entity)owner, OmlPackage.Literals.ENTITY__OWNED_PROPERTY_RESTRICTIONS, axiom); + } else if (owner instanceof EntityEquivalenceAxiom) { + setContainmentReference(vocabulary, (EntityEquivalenceAxiom)owner, OmlPackage.Literals.ENTITY_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS, axiom); } return axiom; } @@ -948,7 +898,7 @@ public static PropertyCardinalityRestrictionAxiom addPropertyCardinalityRestrict * Creates a property value restriction axiom on a scalar property and adds it to the given vocabulary * * @param vocabulary the context vocabulary - * @param owner the given restricting owner (classifier or classifier equivalence axiom) + * @param owner the given restricting owner (entity or entity equivalence axiom) * @param property the given semantic property * @param value the restricted literal value * @return a property value restriction axiom that is added to the given vocabulary @@ -957,31 +907,31 @@ public static PropertyValueRestrictionAxiom addPropertyValueRestrictionAxiom(Voc final PropertyValueRestrictionAxiom axiom = create(PropertyValueRestrictionAxiom.class); axiom.setLiteralValue(value); setCrossReference(vocabulary, axiom, OmlPackage.Literals.PROPERTY_RESTRICTION_AXIOM__PROPERTY, property); - if (owner instanceof Classifier) { - setContainmentReference(vocabulary, (Classifier)owner, OmlPackage.Literals.CLASSIFIER__OWNED_PROPERTY_RESTRICTIONS, axiom); - } else if (owner instanceof ClassifierEquivalenceAxiom) { - setContainmentReference(vocabulary, (ClassifierEquivalenceAxiom)owner, OmlPackage.Literals.CLASSIFIER_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS, axiom); + if (owner instanceof Entity) { + setContainmentReference(vocabulary, (Entity)owner, OmlPackage.Literals.ENTITY__OWNED_PROPERTY_RESTRICTIONS, axiom); + } else if (owner instanceof EntityEquivalenceAxiom) { + setContainmentReference(vocabulary, (EntityEquivalenceAxiom)owner, OmlPackage.Literals.ENTITY_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS, axiom); } return axiom; } /** - * Creates a property value restriction axiom on a structured property and adds it to the given vocabulary + * Creates a property value restriction axiom on a property and adds it to the given vocabulary * * @param vocabulary the context vocabulary - * @param owner the given restricting owner (classifier or classifier equivalence axiom) + * @param owner the given restricting owner (entity or entity equivalence axiom) * @param property the given semantic property - * @param value the restricted structure instance value + * @param value the restricted entity instance value * @return a property value restriction axiom that is added to the given vocabulary */ public static PropertyValueRestrictionAxiom addPropertyValueRestrictionAxiom(Vocabulary vocabulary, Element owner, SemanticProperty property, AnonymousInstance value) { final PropertyValueRestrictionAxiom axiom = create(PropertyValueRestrictionAxiom.class); axiom.setContainedValue(value); setCrossReference(vocabulary, axiom, OmlPackage.Literals.PROPERTY_RESTRICTION_AXIOM__PROPERTY, property); - if (owner instanceof Classifier) { - setContainmentReference(vocabulary, (Classifier)owner, OmlPackage.Literals.CLASSIFIER__OWNED_PROPERTY_RESTRICTIONS, axiom); - } else if (owner instanceof ClassifierEquivalenceAxiom) { - setContainmentReference(vocabulary, (ClassifierEquivalenceAxiom)owner, OmlPackage.Literals.CLASSIFIER_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS, axiom); + if (owner instanceof Entity) { + setContainmentReference(vocabulary, (Entity)owner, OmlPackage.Literals.ENTITY__OWNED_PROPERTY_RESTRICTIONS, axiom); + } else if (owner instanceof EntityEquivalenceAxiom) { + setContainmentReference(vocabulary, (EntityEquivalenceAxiom)owner, OmlPackage.Literals.ENTITY_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS, axiom); } return axiom; } @@ -990,7 +940,7 @@ public static PropertyValueRestrictionAxiom addPropertyValueRestrictionAxiom(Voc * Creates a value restriction axiom on a relation and adds it to the given vocabulary * * @param vocabulary the context vocabulary - * @param owner the given restricting owner (classifier or classifier equivalence axiom) + * @param owner the given restricting owner (entity or entity equivalence axiom) * @param property the given semantic property * @param value the restricted named instance value * @return a property value restriction axiom that is added to the given vocabulary @@ -999,10 +949,10 @@ public static PropertyValueRestrictionAxiom addPropertyValueRestrictionAxiom(Voc final PropertyValueRestrictionAxiom axiom = create(PropertyValueRestrictionAxiom.class); axiom.setReferencedValue(value); setCrossReference(vocabulary, axiom, OmlPackage.Literals.PROPERTY_RESTRICTION_AXIOM__PROPERTY, property); - if (owner instanceof Classifier) { - setContainmentReference(vocabulary, (Classifier)owner, OmlPackage.Literals.CLASSIFIER__OWNED_PROPERTY_RESTRICTIONS, axiom); - } else if (owner instanceof ClassifierEquivalenceAxiom) { - setContainmentReference(vocabulary, (ClassifierEquivalenceAxiom)owner, OmlPackage.Literals.CLASSIFIER_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS, axiom); + if (owner instanceof Entity) { + setContainmentReference(vocabulary, (Entity)owner, OmlPackage.Literals.ENTITY__OWNED_PROPERTY_RESTRICTIONS, axiom); + } else if (owner instanceof EntityEquivalenceAxiom) { + setContainmentReference(vocabulary, (EntityEquivalenceAxiom)owner, OmlPackage.Literals.ENTITY_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS, axiom); } return axiom; } @@ -1013,17 +963,17 @@ public static PropertyValueRestrictionAxiom addPropertyValueRestrictionAxiom(Voc * Creates a self restriction axiom on a relation and adds it to the given vocabulary * * @param vocabulary the context vocabulary - * @param owner the given restricting owner (classifier or classifier equivalence axiom) + * @param owner the given restricting owner (entity or entity equivalence axiom) * @param relation the given relation * @return a property value restriction axiom that is added to the given vocabulary */ public static PropertySelfRestrictionAxiom addPropertySelfRestrictionAxiom(Vocabulary vocabulary, Element owner, Relation relation) { final PropertySelfRestrictionAxiom axiom = create(PropertySelfRestrictionAxiom.class); setCrossReference(vocabulary, axiom, OmlPackage.Literals.PROPERTY_RESTRICTION_AXIOM__PROPERTY, relation); - if (owner instanceof Classifier) { - setContainmentReference(vocabulary, (Classifier)owner, OmlPackage.Literals.CLASSIFIER__OWNED_PROPERTY_RESTRICTIONS, axiom); - } else if (owner instanceof ClassifierEquivalenceAxiom) { - setContainmentReference(vocabulary, (ClassifierEquivalenceAxiom)owner, OmlPackage.Literals.CLASSIFIER_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS, axiom); + if (owner instanceof Entity) { + setContainmentReference(vocabulary, (Entity)owner, OmlPackage.Literals.ENTITY__OWNED_PROPERTY_RESTRICTIONS, axiom); + } else if (owner instanceof EntityEquivalenceAxiom) { + setContainmentReference(vocabulary, (EntityEquivalenceAxiom)owner, OmlPackage.Literals.ENTITY_EQUIVALENCE_AXIOM__OWNED_PROPERTY_RESTRICTIONS, axiom); } return axiom; } @@ -1118,7 +1068,6 @@ public static PropertyValueAssertion addPropertyValueAssertion(Ontology ontology /** * Creates a property value assertion for anonymous instances and adds it to the given ontology. * - * If a structure instance is given, then the property must be a structured property * If an anonymous relation instance is given then the property must be a relation owned by a relation entity * * @param ontology the context ontology diff --git a/pom.xml b/pom.xml index 4366697a..ac56b6fe 100644 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 io.opencaesar.oml - 2.7.3 + 2.8.0 io.opencaesar.oml.parent pom diff --git a/version.txt b/version.txt index e2bdf6e4..6533b668 100644 --- a/version.txt +++ b/version.txt @@ -1 +1 @@ -2.7.3 \ No newline at end of file +2.8.0 \ No newline at end of file