Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'extraplugins')
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.diagram.common/diagrams/serviceInterface/serviceinterface.xml9
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile.validation/plugin.xml153
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/model/SoaML.ecore85
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/model/SoaMLProfile.profile.notation223
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/model/SoaMLProfile.profile.uml46
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Agent.java3
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Attachment.java2
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Capability.java2
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Catalog.java2
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Categorization.java2
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Collaboration.java10
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/CollaborationUse.java35
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Consumer.java2
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Expose.java2
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/FreeFormDescriptor.java2
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/FreeFormValue.java2
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/MessageType.java24
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Milestone.java31
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/MotivationRealization.java2
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/NodeDescriptor.java2
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Participant.java11
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Port.java6
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Property.java10
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Provider.java2
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Request.java9
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Service.java12
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/ServiceChannel.java30
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/ServiceContract.java33
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/ServiceInterface.java42
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/ServicesArchitecture.java33
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/SoaMLPackage.java73
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/AgentImpl.java2
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/AttachmentImpl.java2
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/CapabilityImpl.java2
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/CatalogImpl.java2
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/CategorizationImpl.java2
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/CategoryImpl.java2
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/CategoryValueImpl.java2
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/CollaborationImpl.java16
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/CollaborationUseImpl.java16
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ConsumerImpl.java2
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ExposeImpl.java2
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/FreeFormDescriptorImpl.java2
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/FreeFormValueImpl.java2
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/MessageTypeImpl.java2
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/MilestoneImpl.java30
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/MotivationElementImpl.java2
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/MotivationRealizationImpl.java2
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/NodeDescriptorImpl.java2
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ParticipantImpl.java2
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/PortImpl.java2
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/PropertyImpl.java16
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ProviderImpl.java2
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/RequestImpl.java2
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ServiceChannelImpl.java2
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ServiceContractImpl.java2
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ServiceImpl.java2
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ServiceInterfaceImpl.java63
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ServicesArchitectureImpl.java16
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/SoaMLPackageImpl.java158
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/util/SoaMLSwitch.java2
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/AgentValidator.java17
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/AttachmentValidator.java21
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/CapabilityValidator.java18
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/CatalogValidator.java18
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/CategorizationValidator.java19
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/CategoryValidator.java17
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/CategoryValueValidator.java17
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/CollaborationUseValidator.java20
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/CollaborationValidator.java20
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/ConsumerValidator.java20
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/ExposeValidator.java19
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/FreeFormDescriptorValidator.java19
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/FreeFormValueValidator.java19
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/MessageTypeValidator.java23
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/MilestoneValidator.java26
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/MotivationElementValidator.java17
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/MotivationRealizationValidator.java19
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/NodeDescriptorValidator.java19
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/ParticipantValidator.java18
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/PortValidator.java20
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/PropertyValidator.java20
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/ProviderValidator.java20
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/RequestValidator.java19
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/ServiceChannelValidator.java19
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/ServiceContractValidator.java17
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/ServiceInterfaceValidator.java20
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/ServiceValidator.java19
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/ServicesArchitectureValidator.java17
-rw-r--r--extraplugins/soaml/org.eclipse.papyrus.soaml.profile/text/description.txt121
90 files changed, 1205 insertions, 714 deletions
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.diagram.common/diagrams/serviceInterface/serviceinterface.xml b/extraplugins/soaml/org.eclipse.papyrus.soaml.diagram.common/diagrams/serviceInterface/serviceinterface.xml
index 5e99c455989..c1c56fbea25 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.diagram.common/diagrams/serviceInterface/serviceinterface.xml
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.diagram.common/diagrams/serviceInterface/serviceinterface.xml
@@ -16,14 +16,7 @@
</stereotypesToApply>
</postAction>
</aspectTool>
- <aspectTool description="Create an ServiceInterface" iconpath="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/Interface.gif"
- id="clazz.tool.interface_1423842626741" name="ServiceInterface (Interface)" refToolId="clazz.tool.interface">
- <postAction id="org.eclipse.papyrus.applystereotypeactionprovider">
- <stereotypesToApply>
- <stereotype stereotypeName="SoaML::ServiceInterface"/>
- </stereotypesToApply>
- </postAction>
- </aspectTool>
+
<aspectTool description="Create a new Consumer" iconpath="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/Class.gif"
id="clazz.tool.class_1423842688319" name="Consumer (Class)" refToolId="clazz.tool.class">
<postAction id="org.eclipse.papyrus.applystereotypeactionprovider">
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile.validation/plugin.xml b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile.validation/plugin.xml
index e97cb262253..a36078981c6 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile.validation/plugin.xml
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile.validation/plugin.xml
@@ -13,7 +13,7 @@
<message>MessageType cannot contain ownedOperation</message><![CDATA[if self.base_Class<>null
then self.base_Class.ownedOperation->size()=0
else
- if self.base_DataType<>null
+ if self.base_DataType<>null
then self.base_DataType.ownedOperation->size()=0
else self.base_Signal<>null implies true endif
endif]]></constraint>
@@ -27,36 +27,45 @@ endif]]></constraint>
endif)
endif]]></constraint>
<constraint id="SoaML.ServiceContract.RoleType" isEnabledByDefault="true" lang="OCLpivot" mode="Batch" name="RoleType" severity="ERROR" statusCode="1">
- <message>role type of ServiceContract must be a ServiceInterface or UML Interface or Class stereotyped as Provider or Consumer.</message><![CDATA[ self.base_Collaboration.role-> notEmpty() implies self.base_Collaboration.role-> forAll(role|
- role.type.oclIsTypeOf(UML::Interface)
- or
- (role.type.oclIsTypeOf(UML::Class) and
- (role.type.oclIsTypeOf(UML::Class) implies (role.type.getAppliedStereotypes()->select(s|s.name='Provider')->size()>0
- and role.type.getAppliedStereotypes()->select(s|s.name='Consumer') ->size()>0
- )
- or role.type.getAppliedStereotypes()->select(s| s.name='ServiceInterface') ->size()>0
- ))) ]]></constraint>
+ <message>role type of ServiceContract must be a ServiceInterface or UML Interface or Class stereotyped as Provider or Consumer.</message><![CDATA[
+let isComposit : Boolean= self.base_Collaboration.ownedConnector->isEmpty()
+ and self.base_Collaboration.getAllAttributes()
+->select(oclIsTypeOf(UML::CollaborationUse))->notEmpty(),
+isSimple :Boolean= self.base_Collaboration.getAllAttributes()
+->select(oclIsTypeOf(UML::CollaborationUse))->isEmpty()
+in self.base_Collaboration.role-> notEmpty() implies
+isSimple and self.base_Collaboration.role-> forAll(role|
+role.type.oclIsTypeOf(UML::Interface))
+or
+isComposit and self.base_Collaboration.role->forAll(role|
+role.type.oclIsTypeOf(UML::Interface) or
+(role.type.oclIsTypeOf(UML::Class) and
+(role.type.oclIsTypeOf(UML::Class) implies(role.type.getAppliedStereotypes()
+->select(s|s.name='Provider' or s.name='Consumer'
+or s.name='ServiceInterface') ->size()=1))))
+]]></constraint>
<constraint id="SoaML.ServiceContract.AttachedBehaviorCompatibility" isEnabledByDefault="true" lang="OCLpivot" mode="Batch" name="AttachedBehaviorCompatibility" severity="ERROR" statusCode="1">
- <message>Attached behavior should be compatible with the parts of the ServiceContract</message><![CDATA[ self.base_Collaboration.ownedBehavior->size()>0 implies (
- self.base_Collaboration.ownedBehavior->asOrderedSet()->first().oclIsTypeOf(UML::Interaction) implies
- let attachedInteraction=self.base_Collaboration.ownedBehavior->asOrderedSet()->first().oclAsType(UML::Interaction),
- lifelines=self.base_Collaboration.ownedBehavior->asOrderedSet()->first().oclAsType(UML::Interaction).lifeline,
- messages= self.base_Collaboration.ownedBehavior->asOrderedSet()->first().oclAsType(UML::Interaction).message,
- messOccuSpec=self.base_Collaboration.ownedBehavior->asOrderedSet()->first().oclAsType(UML::Interaction).fragment
- ->select(f|f.oclIsTypeOf(MessageOccurrenceSpecification)) in
- lifelines->size()>0 implies lifelines->forAll(l| self.base_Collaboration.role -> includes(l.oclAsType(UML::Lifeline).represents) )
- and
- messages->size()>0 implies messages
- --signature of messages should be one of the operations or signal of the corresponding Service Declaration
- ->forAll(m|m.signature.oclIsTypeOf(Operation) implies
- m.receiveEvent->asOrderedSet()->first().oclAsType(MessageOccurrenceSpecification).covered->asOrderedSet()
- ->first().oclAsType(Sequence)->asOrderedSet()->first().oclAsType(Lifeline).represents.type.oclAsType(Classifier).ownedElement->select(oclIsTypeOf(Operation))
- ->includes(m.signature.oclAsType(Operation)) and
- m.signature.oclIsTypeOf(Signal) implies
- m.sendEvent->asOrderedSet()->first().oclAsType(MessageOccurrenceSpecification).covered->asOrderedSet()
- ->first().oclAsType(Sequence)->asOrderedSet()->first().oclAsType(Lifeline).represents.type.oclAsType(Classifier).ownedElement->select(oclIsTypeOf(Signal))
- ->includes(m.signature.oclAsType(Signal)
- )) ) ]]></constraint>
+ <message>Attached behavior should be compatible with the parts of the ServiceContract</message><![CDATA[ self.base_Collaboration.ownedBehavior->size()>0 implies (
+ self.base_Collaboration.ownedBehavior->asOrderedSet()->first().oclIsTypeOf(UML::Interaction) implies
+ let attachedInteraction=self.base_Collaboration.ownedBehavior->asOrderedSet()->first().oclAsType(UML::Interaction),
+ lifelines=self.base_Collaboration.ownedBehavior->asOrderedSet()->first().oclAsType(UML::Interaction).lifeline,
+ messages= self.base_Collaboration.ownedBehavior->asOrderedSet()->first().oclAsType(UML::Interaction).message,
+ messOccuSpec=self.base_Collaboration.ownedBehavior->asOrderedSet()->first().oclAsType(UML::Interaction).fragment
+ ->select(f|f.oclIsTypeOf(MessageOccurrenceSpecification)) in
+ lifelines->size()>0 implies lifelines->forAll(l| self.base_Collaboration.role -> includes(l.oclAsType(UML::Lifeline).represents) )
+ and
+ messages->size()>0 implies messages
+ --->select(m|m.messageSort=MessageSort::asynchCall)
+ --signature of messages should be one of the operations or signal of the corresponding Service Declaration
+ ->forAll(m|m.signature.oclIsTypeOf(Operation) implies
+ m.receiveEvent.oclAsType(MessageOccurrenceSpecification).covered->flatten()->asOrderedSet()
+ ->first().oclAsType(Lifeline).represents.type.oclAsType(Classifier).ownedElement->select(oclIsTypeOf(Operation))
+ ->includes(m.signature.oclAsType(Operation)) and
+ m.signature.oclIsTypeOf(Signal) implies
+ m.sendEvent->asOrderedSet()->first().oclAsType(MessageOccurrenceSpecification).covered->asOrderedSet()
+ ->first().oclAsType(Sequence)->asOrderedSet()->first().oclAsType(Lifeline).represents.type.oclAsType(Classifier).ownedElement
+ ->select(oclIsTypeOf(Signal))->includes(m.signature.oclAsType(Signal)
+ )) )]]></constraint>
<constraint id="SoaML.Request.requestType" isEnabledByDefault="true" lang="OCLpivot" mode="Batch" name="requestType" severity="ERROR" statusCode="1">
<message>The type of a Request must be a ServiceInterface, an Interface, a provider or a consumer</message><![CDATA[ let portType: Type= base_Port.type in
portType.getAppliedStereotypes()->select(s|s.name='ServiceInterface' or s.name='Consumer')->size()=1 or portType.oclIsTypeOf(Interface) ]]></constraint>
@@ -70,15 +79,9 @@ Usage.allInstances()->select(r|r.client->includes(self.base_Class))->size()=0]]>
portsSet->size()>0 implies
portsSet->forAll(p|p.getAppliedStereotypes()->select(s|s.name='Request' or s.name='Service')->size()=1 )]]></constraint>
<constraint id="SoaML.ServiceInterface.partsTypesOfServiceInterface" isEnabledByDefault="true" lang="OCLpivot" mode="Batch" name="partsTypesOfServiceInterface" severity="ERROR" statusCode="1">
- <message>All parts of a ServiceInterface must be typed by the Interfaces realized or used by the ServiceInterface</message><![CDATA[if self.base_Interface.oclIsUndefined()
-then self.base_Class.ownedAttribute->forAll(a|self.base_Class.getAllUsedInterfaces()->includes(a.type) or
- self.base_Class.allRealizedInterfaces()->includes(a.type)
-)
-else
- self.base_Interface.ownedAttribute->forAll(a|self.base_Interface.getAllUsedInterfaces()->includes(a.type) or
- self.base_Interface.allRealizedInterfaces()->includes(a.type)
- )
-endif]]></constraint>
+ <message>All parts of a ServiceInterface must be typed by the Interfaces realized or used by the ServiceInterface</message><![CDATA[self.base_Class.ownedAttribute->forAll(a|self.base_Class.getAllUsedInterfaces()->includes(a.type) or
+ self.base_Class.allRealizedInterfaces()->includes(a.type))
+]]></constraint>
<constraint id="SoaML.ServicesArchitecture.participantsRoleCompatibility" isEnabledByDefault="true" lang="OCLpivot" mode="Batch" name="participantsRoleCompatibility" severity="ERROR" statusCode="1">
<message>Each participant satisfying roles in a ServicesArchitecture shall have a port for each role binding attached to that participant.</message><![CDATA[let properties : Set (UML::ConnectableElement) = self.base_Collaboration.role,
collBUses: Set(UML::Element)= self.base_Collaboration.collaborationUse in
@@ -100,7 +103,7 @@ or(portTypesOfSupplier.oclAsType(Classifier).getAllAttributes()->includesAll(cli
<message>The parts of a ServicesArchitecture must be typed by a Participant or capability</message><![CDATA[let properties : Set (UML::ConnectableElement) = self.base_Collaboration.role,
collBUses: Set(UML::Element)= self.base_Collaboration.collaborationUse in
properties->notEmpty() implies
-properties-> forAll(p|p.type->exists(p|p.getAppliedStereotypes()->select(s|s.name='Participant' or s.name='Capability' or s.name='Agent')->size()=1) )
+properties-> forAll(p|p.type->exists(p|p.getAppliedStereotypes()->select(s|s.name='Participant' or s.name='Capability' or s.name='Agent' )->size()=1) )
]]></constraint>
<constraint id="SoaML.CollaborationUse.RoleBindingClientSupplierCompatibility" isEnabledByDefault="true" lang="OCLpivot" mode="Batch" name="RoleBindingClientSupplierCompatibility" severity="ERROR" statusCode="1">
<message>If the CollaborationUse has isStrict=true, then the parts must be compatible with the roles they are bound to. </message><![CDATA[--only in case of defining Contract collaboratinUse inside the ServiceInterface
@@ -166,26 +169,24 @@ true]]></constraint>
</constraintProvider>
</extension>
<extension point="org.eclipse.emf.validation.constraintBindings">
- <clientContext id="PortClientContext">
- <selector class="org.eclipse.papyrus.soaml.profile.validation.selectors.PortClientSelector"/>
+ <clientContext id="CollaborationUseClientContext">
+ <selector class="org.eclipse.papyrus.soaml.profile.validation.selectors.CollaborationUseClientSelector"/>
</clientContext>
- <binding context="PortClientContext">
- <constraint ref="org.eclipse.papyrus.soaml.profile.validation.SoaML.Port.connectorRequired"/>
+ <binding context="CollaborationUseClientContext">
+ <constraint ref="org.eclipse.papyrus.soaml.profile.validation.SoaML.CollaborationUse.RoleBindingClientSupplierCompatibility"/>
</binding>
- <clientContext id="RequestClientContext">
- <selector class="org.eclipse.papyrus.soaml.profile.validation.selectors.RequestClientSelector"/>
+ <clientContext id="ServiceInterfaceClientContext">
+ <selector class="org.eclipse.papyrus.soaml.profile.validation.selectors.ServiceInterfaceClientSelector"/>
</clientContext>
- <binding context="RequestClientContext">
- <constraint ref="org.eclipse.papyrus.soaml.profile.validation.SoaML.Request.requestType"/>
- <constraint ref="org.eclipse.papyrus.soaml.profile.validation.SoaML.Request.isConjugatedTrue"/>
+ <binding context="ServiceInterfaceClientContext">
+ <constraint ref="org.eclipse.papyrus.soaml.profile.validation.SoaML.ServiceInterface.partsTypesOfServiceInterface"/>
</binding>
- <clientContext id="MessageTypeClientContext">
- <selector class="org.eclipse.papyrus.soaml.profile.validation.selectors.MessageTypeClientSelector"/>
+ <clientContext id="ServicesArchitectureClientContext">
+ <selector class="org.eclipse.papyrus.soaml.profile.validation.selectors.ServicesArchitectureClientSelector"/>
</clientContext>
- <binding context="MessageTypeClientContext">
- <constraint ref="org.eclipse.papyrus.soaml.profile.validation.SoaML.MessageType.noOwnedBehaviors"/>
- <constraint ref="org.eclipse.papyrus.soaml.profile.validation.SoaML.MessageType.noOwnedOperations"/>
- <constraint ref="org.eclipse.papyrus.soaml.profile.validation.SoaML.MessageType.publicAttributes"/>
+ <binding context="ServicesArchitectureClientContext">
+ <constraint ref="org.eclipse.papyrus.soaml.profile.validation.SoaML.ServicesArchitecture.participantsRoleCompatibility"/>
+ <constraint ref="org.eclipse.papyrus.soaml.profile.validation.SoaML.ServicesArchitecture.partsTypes"/>
</binding>
<clientContext id="AgentClientContext">
<selector class="org.eclipse.papyrus.soaml.profile.validation.selectors.AgentClientSelector"/>
@@ -200,12 +201,13 @@ true]]></constraint>
<constraint ref="org.eclipse.papyrus.soaml.profile.validation.SoaML.Service.serviceType"/>
<constraint ref="org.eclipse.papyrus.soaml.profile.validation.SoaML.Service.isConjugatedFalse"/>
</binding>
- <clientContext id="ServicesArchitectureClientContext">
- <selector class="org.eclipse.papyrus.soaml.profile.validation.selectors.ServicesArchitectureClientSelector"/>
+ <clientContext id="MessageTypeClientContext">
+ <selector class="org.eclipse.papyrus.soaml.profile.validation.selectors.MessageTypeClientSelector"/>
</clientContext>
- <binding context="ServicesArchitectureClientContext">
- <constraint ref="org.eclipse.papyrus.soaml.profile.validation.SoaML.ServicesArchitecture.participantsRoleCompatibility"/>
- <constraint ref="org.eclipse.papyrus.soaml.profile.validation.SoaML.ServicesArchitecture.partsTypes"/>
+ <binding context="MessageTypeClientContext">
+ <constraint ref="org.eclipse.papyrus.soaml.profile.validation.SoaML.MessageType.noOwnedBehaviors"/>
+ <constraint ref="org.eclipse.papyrus.soaml.profile.validation.SoaML.MessageType.noOwnedOperations"/>
+ <constraint ref="org.eclipse.papyrus.soaml.profile.validation.SoaML.MessageType.publicAttributes"/>
</binding>
<clientContext id="ServiceChannelClientContext">
<selector class="org.eclipse.papyrus.soaml.profile.validation.selectors.ServiceChannelClientSelector"/>
@@ -215,6 +217,13 @@ true]]></constraint>
<constraint ref="org.eclipse.papyrus.soaml.profile.validation.SoaML.ServiceChannel.serviceChannelEndTypes"/>
<constraint ref="org.eclipse.papyrus.soaml.profile.validation.SoaML.ServiceChannel.Compatibility"/>
</binding>
+ <clientContext id="ParticipantClientContext">
+ <selector class="org.eclipse.papyrus.soaml.profile.validation.selectors.ParticipantClientSelector"/>
+ </clientContext>
+ <binding context="ParticipantClientContext">
+ <constraint ref="org.eclipse.papyrus.soaml.profile.validation.SoaML.Participant.noRealizedUsedInterface"/>
+ <constraint ref="org.eclipse.papyrus.soaml.profile.validation.SoaML.Participant.portTypes"/>
+ </binding>
<clientContext id="ServiceContractClientContext">
<selector class="org.eclipse.papyrus.soaml.profile.validation.selectors.ServiceContractClientSelector"/>
</clientContext>
@@ -222,24 +231,18 @@ true]]></constraint>
<constraint ref="org.eclipse.papyrus.soaml.profile.validation.SoaML.ServiceContract.RoleType"/>
<constraint ref="org.eclipse.papyrus.soaml.profile.validation.SoaML.ServiceContract.AttachedBehaviorCompatibility"/>
</binding>
- <clientContext id="ServiceInterfaceClientContext">
- <selector class="org.eclipse.papyrus.soaml.profile.validation.selectors.ServiceInterfaceClientSelector"/>
- </clientContext>
- <binding context="ServiceInterfaceClientContext">
- <constraint ref="org.eclipse.papyrus.soaml.profile.validation.SoaML.ServiceInterface.partsTypesOfServiceInterface"/>
- </binding>
- <clientContext id="CollaborationUseClientContext">
- <selector class="org.eclipse.papyrus.soaml.profile.validation.selectors.CollaborationUseClientSelector"/>
+ <clientContext id="PortClientContext">
+ <selector class="org.eclipse.papyrus.soaml.profile.validation.selectors.PortClientSelector"/>
</clientContext>
- <binding context="CollaborationUseClientContext">
- <constraint ref="org.eclipse.papyrus.soaml.profile.validation.SoaML.CollaborationUse.RoleBindingClientSupplierCompatibility"/>
+ <binding context="PortClientContext">
+ <constraint ref="org.eclipse.papyrus.soaml.profile.validation.SoaML.Port.connectorRequired"/>
</binding>
- <clientContext id="ParticipantClientContext">
- <selector class="org.eclipse.papyrus.soaml.profile.validation.selectors.ParticipantClientSelector"/>
+ <clientContext id="RequestClientContext">
+ <selector class="org.eclipse.papyrus.soaml.profile.validation.selectors.RequestClientSelector"/>
</clientContext>
- <binding context="ParticipantClientContext">
- <constraint ref="org.eclipse.papyrus.soaml.profile.validation.SoaML.Participant.noRealizedUsedInterface"/>
- <constraint ref="org.eclipse.papyrus.soaml.profile.validation.SoaML.Participant.portTypes"/>
+ <binding context="RequestClientContext">
+ <constraint ref="org.eclipse.papyrus.soaml.profile.validation.SoaML.Request.requestType"/>
+ <constraint ref="org.eclipse.papyrus.soaml.profile.validation.SoaML.Request.isConjugatedTrue"/>
</binding>
</extension>
</plugin>
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/model/SoaML.ecore b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/model/SoaML.ecore
index 90d95acd61b..11579d93987 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/model/SoaML.ecore
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/model/SoaML.ecore
@@ -3,8 +3,8 @@
xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="SoaML" nsURI="http://Papyrus/SoaML/1" nsPrefix="SoaML">
<eClassifiers xsi:type="ecore:EClass" name="Agent" eSuperTypes="#//Participant">
<eOperations name="isActive" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
- <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="base_Class.isActive"/>
+ <eAnnotations source="http://www.eclipse.org/uml2/1.1.0/GenModel">
+ <details key="body" value="base_Class.isActive"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -24,8 +24,8 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Participant">
<eOperations name="noRealizedUsedInterface" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
- <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Realization.allInstances()->select(r|r.client->includes(self.base_Class))->size()=0 and &#xD;&#xA;Usage.allInstances()->select(r|r.client->includes(self.base_Class))->size()=0"/>
+ <eAnnotations source="http://www.eclipse.org/uml2/1.1.0/GenModel">
+ <details key="body" value="Realization.allInstances()->select(r|r.client->includes(self.base_Class))->size()=0 and &#xD;&#xA;Usage.allInstances()->select(r|r.client->includes(self.base_Class))->size()=0"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -43,8 +43,8 @@
</eParameters>
</eOperations>
<eOperations name="portTypes" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
- <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value=" let portsSet: OrderedSet(UML::Port)= self.base_Class.ownedPort() in&#xD;&#xA; portsSet->size()>0 implies &#xD;&#xA; portsSet->forAll(p|p.getAppliedStereotypes()->select(s|s.name='Request' or s.name='Service')->size()=1 )"/>
+ <eAnnotations source="http://www.eclipse.org/uml2/1.1.0/GenModel">
+ <details key="body" value=" let portsSet: OrderedSet(UML::Port)= self.base_Class.ownedPort() in&#xD;&#xA; portsSet->size()>0 implies &#xD;&#xA; portsSet->forAll(p|p.getAppliedStereotypes()->select(s|s.name='Request' or s.name='Service')->size()=1 )"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -84,8 +84,8 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="MessageType">
<eOperations name="noOwnedBehaviors" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
- <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="self.base_Class&lt;>null implies self.base_Class.ownedBehavior->size()=0"/>
+ <eAnnotations source="http://www.eclipse.org/uml2/1.1.0/GenModel">
+ <details key="body" value="self.base_Class&lt;>null implies self.base_Class.ownedBehavior->size()=0"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -103,8 +103,8 @@
</eParameters>
</eOperations>
<eOperations name="noOwnedOperations" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
- <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="if self.base_Class&lt;>null &#xD;&#xA;then self.base_Class.ownedOperation->size()=0 &#xD;&#xA;else&#xD;&#xA;&#x9; if self.base_DataType&lt;>null &#xD;&#xA;&#x9; then self.base_DataType.ownedOperation->size()=0&#xD;&#xA;&#x9; else self.base_Signal&lt;>null implies true endif &#xD;&#xA;endif"/>
+ <eAnnotations source="http://www.eclipse.org/uml2/1.1.0/GenModel">
+ <details key="body" value="if self.base_Class&lt;>null &#xD;&#xA;then self.base_Class.ownedOperation->size()=0 &#xD;&#xA;else&#xD;&#xA;&#x9; if self.base_DataType&lt;>null &#xD;&#xA;&#x9; then self.base_DataType.ownedOperation->size()=0&#xD;&#xA;&#x9; else self.base_Signal&lt;>null implies true endif &#xD;&#xA;endif"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -122,8 +122,8 @@
</eParameters>
</eOperations>
<eOperations name="publicAttributes" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
- <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="if self.base_Class&lt;>null then self.base_Class.attribute->size()>0 implies self.base_Class.attribute->forAll (a|a.visibility=UML::VisibilityKind::public)&#xD;&#xA; else &#xD;&#xA;&#x9; (if self.base_DataType&lt;>null then &#xD;&#xA;&#x9;&#x9; &#x9;self.base_DataType.attribute->size()>0 implies self.base_DataType.attribute->forAll(a|a.visibility=UML::VisibilityKind::public)&#xD;&#xA; &#x9;&#x9;else &#xD;&#xA; &#x9;&#x9;&#x9;self.base_Signal.attribute->size()>0 implies self.base_Signal.attribute-> forAll (a|a.visibility=UML::VisibilityKind::public)&#xD;&#xA;&#x9;&#x9;endif)&#xD;&#xA; endif"/>
+ <eAnnotations source="http://www.eclipse.org/uml2/1.1.0/GenModel">
+ <details key="body" value="if self.base_Class&lt;>null then self.base_Class.attribute->size()>0 implies self.base_Class.attribute->forAll (a|a.visibility=UML::VisibilityKind::public)&#xD;&#xA; else &#xD;&#xA;&#x9; (if self.base_DataType&lt;>null then &#xD;&#xA;&#x9;&#x9; &#x9;self.base_DataType.attribute->size()>0 implies self.base_DataType.attribute->forAll(a|a.visibility=UML::VisibilityKind::public)&#xD;&#xA; &#x9;&#x9;else &#xD;&#xA; &#x9;&#x9;&#x9;self.base_Signal.attribute->size()>0 implies self.base_Signal.attribute-> forAll (a|a.visibility=UML::VisibilityKind::public)&#xD;&#xA;&#x9;&#x9;endif)&#xD;&#xA; endif"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -171,8 +171,8 @@
<eClassifiers xsi:type="ecore:EClass" name="CategoryValue" eSuperTypes="#//FreeFormValue"/>
<eClassifiers xsi:type="ecore:EClass" name="ServiceContract" eSuperTypes="#//Collaboration">
<eOperations name="RoleType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
- <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value=" self.base_Collaboration.role-> notEmpty() implies self.base_Collaboration.role-> forAll(role|&#xD;&#xA;&#x9;&#x9;role.type.oclIsTypeOf(UML::Interface) &#xD;&#xA;&#x9;or &#xD;&#xA;&#x9;&#x9;(role.type.oclIsTypeOf(UML::Class)&#x9;and &#xD;&#xA;&#x9;&#x9;(role.type.oclIsTypeOf(UML::Class) implies (role.type.getAppliedStereotypes()->select(s|s.name='Provider')->size()>0 &#xD;&#xA;&#x9;&#x9;&#x9;and role.type.getAppliedStereotypes()->select(s|s.name='Consumer') ->size()>0&#xD;&#xA;&#x9;&#x9;)&#xD;&#xA;&#x9;&#x9;&#x9;or role.type.getAppliedStereotypes()->select(s| s.name='ServiceInterface') ->size()>0&#xD;&#xA;&#x9;&#x9;))) "/>
+ <eAnnotations source="http://www.eclipse.org/uml2/1.1.0/GenModel">
+ <details key="body" value=" &#xD;&#xA;let isComposit : Boolean= self.base_Collaboration.ownedConnector->isEmpty()&#xD;&#xA; and self.base_Collaboration.getAllAttributes()&#xD;&#xA;->collect(oclAsType(UML::CollaborationUse))->notEmpty(),&#xD;&#xA;isSimple :Boolean= self.base_Collaboration.getAllAttributes()&#xD;&#xA;->collect(oclAsType(UML::CollaborationUse))->isEmpty()&#xD;&#xA;in self.base_Collaboration.role-> notEmpty() implies &#xD;&#xA;isSimple and self.base_Collaboration.role-> forAll(role|&#xD;&#xA;role.type.oclIsTypeOf(UML::Interface))&#xD;&#xA;or&#xD;&#xA;isComposit and self.base_Collaboration.role->forAll(role|&#xD;&#xA;role.type.oclIsTypeOf(UML::Interface) or&#xD;&#xA;(role.type.oclIsTypeOf(UML::Class)&#x9;and&#xD;&#xA;(role.type.oclIsTypeOf(UML::Class) implies(role.type.getAppliedStereotypes()&#xD;&#xA;->select(s|s.name='Provider' or s.name='Consumer' &#xD;&#xA;or s.name='ServiceInterface') ->size()=1))))&#xD;&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -190,8 +190,8 @@
</eParameters>
</eOperations>
<eOperations name="AttachedBehaviorCompatibility" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
- <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value=" self.base_Collaboration.ownedBehavior->size()=1 implies&#xD;&#xA;&#x9;self.base_Collaboration.ownedBehavior->asOrderedSet()->first().oclIsTypeOf(UML::Interaction) implies&#xD;&#xA;&#x9;&#x9;let attachedInteraction=self.base_Collaboration.ownedBehavior->asOrderedSet()->first().oclAsType(UML::Interaction),&#xD;&#xA;&#x9;&#x9;lifelines=self.base_Collaboration.ownedBehavior->asOrderedSet()->first().oclAsType(UML::Interaction).lifeline,&#xD;&#xA;&#x9;&#x9;messages= self.base_Collaboration.ownedBehavior->asOrderedSet()->first().oclAsType(UML::Interaction).message,&#xD;&#xA;&#x9;&#x9;messOccuSpec=self.base_Collaboration.ownedBehavior->asOrderedSet()->first().oclAsType(UML::Interaction).fragment&#xD;&#xA;&#x9;&#x9;->select(f|f.oclIsTypeOf(MessageOccurrenceSpecification)) in &#xD;&#xA;&#x9;&#x9;lifelines->size()>0 implies lifelines->forAll(l| self.base_Collaboration.role -> includes(l.oclAsType(UML::Lifeline).represents) ) &#xD;&#xA;&#x9;&#x9;and &#xD;&#xA;&#x9;&#x9;messages->size()>0 implies messages->select(m|m.messageSort=MessageSort::asynchCall) &#xD;&#xA;&#x9;&#x9;--signature of messages should be one of the operations or signal of the corresponding Service Declaration&#xD;&#xA;&#x9;&#x9;->forAll(m|m.signature.oclIsTypeOf(Operation) implies &#xD;&#xA;&#x9;&#x9;&#x9;m.receiveEvent->asOrderedSet()->first().oclAsType(MessageOccurrenceSpecification).covered->asOrderedSet()&#xD;&#xA;&#x9;&#x9;&#x9;->first().oclAsType(Sequence)->asOrderedSet()->first().oclAsType(Lifeline).represents.type.oclAsType(Classifier).ownedElement->select(oclIsTypeOf(Operation))&#xD;&#xA;&#x9;&#x9;&#x9;->includes(m.signature.oclAsType(Operation)) and &#xD;&#xA;&#x9;&#x9;&#x9;&#x9;m.signature.oclIsTypeOf(Signal) implies &#xD;&#xA;&#x9;&#x9;&#x9;&#x9;m.sendEvent->asOrderedSet()->first().oclAsType(MessageOccurrenceSpecification).covered->asOrderedSet()&#xD;&#xA;&#x9;&#x9;&#x9;&#x9;->first().oclAsType(Sequence)->asOrderedSet()->first().oclAsType(Lifeline).represents.type.oclAsType(Classifier).ownedElement->select(oclIsTypeOf(Signal))&#xD;&#xA;&#x9;&#x9;&#x9;->includes(m.signature.oclAsType(Signal)&#xD;&#xA;&#x9;&#x9;&#x9;)) "/>
+ <eAnnotations source="http://www.eclipse.org/uml2/1.1.0/GenModel">
+ <details key="body" value=" self.base_Collaboration.ownedBehavior->size()>0 implies (&#xD;&#xA;&#x9;self.base_Collaboration.ownedBehavior->asOrderedSet()->first().oclIsTypeOf(UML::Interaction) implies&#xD;&#xA;&#x9;&#x9;let attachedInteraction=self.base_Collaboration.ownedBehavior->asOrderedSet()->first().oclAsType(UML::Interaction),&#xD;&#xA;&#x9;&#x9;lifelines=self.base_Collaboration.ownedBehavior->asOrderedSet()->first().oclAsType(UML::Interaction).lifeline,&#xD;&#xA;&#x9;&#x9;messages= self.base_Collaboration.ownedBehavior->asOrderedSet()->first().oclAsType(UML::Interaction).message,&#xD;&#xA;&#x9;&#x9;messOccuSpec=self.base_Collaboration.ownedBehavior->asOrderedSet()->first().oclAsType(UML::Interaction).fragment&#xD;&#xA;&#x9;&#x9;->select(f|f.oclIsTypeOf(MessageOccurrenceSpecification)) in &#xD;&#xA;&#x9;&#x9;lifelines->size()>0 implies lifelines->forAll(l| self.base_Collaboration.role -> includes(l.oclAsType(UML::Lifeline).represents) ) &#xD;&#xA;&#x9;&#x9;and &#xD;&#xA;&#x9;&#x9;messages->size()>0 implies messages&#xD;&#xA;&#x9;&#x9;--->select(m|m.messageSort=MessageSort::asynchCall) &#xD;&#xA;&#x9;&#x9;--signature of messages should be one of the operations or signal of the corresponding Service Declaration&#xD;&#xA;&#x9;&#x9;->forAll(m|m.signature.oclIsTypeOf(Operation) implies &#xD;&#xA;&#x9;&#x9;&#x9;m.receiveEvent.oclAsType(MessageOccurrenceSpecification).covered->flatten()->asOrderedSet()&#xD;&#xA;&#x9;&#x9;&#x9;->first().oclAsType(Lifeline).represents.type.oclAsType(Classifier).ownedElement->select(oclIsTypeOf(Operation))&#xD;&#xA;&#x9;&#x9;&#x9;->includes(m.signature.oclAsType(Operation)) and &#xD;&#xA;&#x9;&#x9;&#x9;&#x9;m.signature.oclIsTypeOf(Signal) implies &#xD;&#xA;&#x9;&#x9;&#x9;&#x9;m.sendEvent->asOrderedSet()->first().oclAsType(MessageOccurrenceSpecification).covered->asOrderedSet()&#xD;&#xA;&#x9;&#x9;&#x9;&#x9;->first().oclAsType(Sequence)->asOrderedSet()->first().oclAsType(Lifeline).represents.type.oclAsType(Classifier).ownedElement&#xD;&#xA;&#x9;&#x9;&#x9;&#x9;->select(oclIsTypeOf(Signal))->includes(m.signature.oclAsType(Signal)&#xD;&#xA;&#x9;&#x9;&#x9;)) )"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -211,8 +211,8 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Request">
<eOperations name="requestType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
- <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value=" let portType: Type= base_Port.type in&#xD;&#xA; portType.getAppliedStereotypes()->select(s|s.name='ServiceInterface' or s.name='Consumer')->size()=1 or portType.oclIsTypeOf(Interface) "/>
+ <eAnnotations source="http://www.eclipse.org/uml2/1.1.0/GenModel">
+ <details key="body" value=" let portType: Type= base_Port.type in&#xD;&#xA; portType.getAppliedStereotypes()->select(s|s.name='ServiceInterface' or s.name='Consumer')->size()=1 or portType.oclIsTypeOf(Interface) "/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -230,8 +230,8 @@
</eParameters>
</eOperations>
<eOperations name="isConjugatedTrue" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
- <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="base_Port.isConjugated"/>
+ <eAnnotations source="http://www.eclipse.org/uml2/1.1.0/GenModel">
+ <details key="body" value="base_Port.isConjugated"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -275,8 +275,8 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ServiceInterface">
<eOperations name="partsTypesOfServiceInterface" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
- <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="if self.base_Interface.oclIsUndefined()&#xD;&#xA;then self.base_Class.ownedAttribute->forAll(a|self.base_Class.getAllUsedInterfaces()->includes(a.type) or &#xD;&#xA;&#x9;self.base_Class.allRealizedInterfaces()->includes(a.type)&#xD;&#xA;)&#xD;&#xA;else &#xD;&#xA;&#x9;self.base_Interface.ownedAttribute->forAll(a|self.base_Interface.getAllUsedInterfaces()->includes(a.type) or &#x9;&#xD;&#xA;&#x9;&#x9;self.base_Interface.allRealizedInterfaces()->includes(a.type)&#xD;&#xA;&#x9;)&#xD;&#xA;endif"/>
+ <eAnnotations source="http://www.eclipse.org/uml2/1.1.0/GenModel">
+ <details key="body" value="self.base_Class.ownedAttribute->forAll(a|self.base_Class.getAllUsedInterfaces()->includes(a.type) or &#xD;&#xA;&#x9;self.base_Class.allRealizedInterfaces()->includes(a.type))&#xD;&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -293,15 +293,13 @@
</eGenericType>
</eParameters>
</eOperations>
- <eStructuralFeatures xsi:type="ecore:EReference" name="base_Interface" ordered="false"
- eType="ecore:EClass ../../org.eclipse.uml2.uml/model/UML.ecore#//Interface"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="base_Class" ordered="false"
eType="ecore:EClass ../../org.eclipse.uml2.uml/model/UML.ecore#//Class"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ServicesArchitecture" eSuperTypes="#//Collaboration">
<eOperations name="participantsRoleCompatibility" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
- <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="let properties : Set (UML::ConnectableElement) = self.base_Collaboration.role,&#xD;&#xA;collBUses: Set(UML::Element)= self.base_Collaboration.collaborationUse in&#xD;&#xA;collBUses->notEmpty() implies &#xD;&#xA;-- Each participant satisfying roles in a ServicesArchitecture shall have a port for each role binding attached to that participant. &#xD;&#xA;--This port shall have a type compliant with the type of the role used in the ServiceContract.&#xD;&#xA;collBUses.oclAsType(UML::CollaborationUse).roleBinding-> forAll(rb| let &#xD;&#xA;&#x9;portTypesOfSupplier=&#x9;rb.oclAsType(UML::Dependency).supplier->select(s|s.oclIsTypeOf(UML::Property))->select(s|s.oclAsType(UML::Property).type.oclIsTypeOf(Class))->collect(oclAsType(UML::Property).type.oclAsType(Class).getAllAttributes())->select(att|att.oclIsTypeOf(UML::Port))->collect(oclAsType(UML::Port).type) , clientType=rb.oclAsType(UML::Dependency).client->select(s|s.oclIsTypeOf(UML::Property))->collect(t:UML::NamedElement|t.oclAsType(UML::Property).type)->asOrderedSet()->first()in &#x9;&#xD;&#xA;portTypesOfSupplier->includes(clientType)--1. The role correspond to a port type on the supplier.&#xD;&#xA;--2. the supplier has a port type that specializes the type of the role.&#xD;&#xA;or(clientType.oclAsType(Classifier).generalization.general->closure(general)->includes(portTypesOfSupplier)) &#xD;&#xA;--3. the supplier has a port type that realizes the type of the role.&#xD;&#xA;or(clientType.oclAsType(Classifier).getRelationships().oclAsType(UML::Realization)->includes(portTypesOfSupplier)) &#xD;&#xA;--4. the supplier has a port type that contains at least the ownedAttributes and ownedOperations of the role.&#xD;&#xA;or(portTypesOfSupplier.oclAsType(Classifier).getAllAttributes()->includesAll(clientType.oclAsType(Classifier).getAllAttributes()) &#xD;&#xA;&#x9;and portTypesOfSupplier.oclAsType(Classifier).getAllOperations()->includesAll(clientType.oclAsType(Classifier).getAllOperations())&#xD;&#xA;) )"/>
+ <eAnnotations source="http://www.eclipse.org/uml2/1.1.0/GenModel">
+ <details key="body" value="let properties : Set (UML::ConnectableElement) = self.base_Collaboration.role,&#xD;&#xA;collBUses: Set(UML::Element)= self.base_Collaboration.collaborationUse in&#xD;&#xA;collBUses->notEmpty() implies &#xD;&#xA;-- Each participant satisfying roles in a ServicesArchitecture shall have a port for each role binding attached to that participant. &#xD;&#xA;--This port shall have a type compliant with the type of the role used in the ServiceContract.&#xD;&#xA;collBUses.oclAsType(UML::CollaborationUse).roleBinding-> forAll(rb| let &#xD;&#xA;&#x9;portTypesOfSupplier=&#x9;rb.oclAsType(UML::Dependency).supplier->select(s|s.oclIsTypeOf(UML::Property))->select(s|s.oclAsType(UML::Property).type.oclIsTypeOf(Class))->collect(oclAsType(UML::Property).type.oclAsType(Class).getAllAttributes())->select(att|att.oclIsTypeOf(UML::Port))->collect(oclAsType(UML::Port).type) , clientType=rb.oclAsType(UML::Dependency).client->select(s|s.oclIsTypeOf(UML::Property))->collect(t:UML::NamedElement|t.oclAsType(UML::Property).type)->asOrderedSet()->first()in &#x9;&#xD;&#xA;portTypesOfSupplier->includes(clientType)--1. The role correspond to a port type on the supplier.&#xD;&#xA;--2. the supplier has a port type that specializes the type of the role.&#xD;&#xA;or(clientType.oclAsType(Classifier).generalization.general->closure(general)->includes(portTypesOfSupplier)) &#xD;&#xA;--3. the supplier has a port type that realizes the type of the role.&#xD;&#xA;or(clientType.oclAsType(Classifier).getRelationships().oclAsType(UML::Realization)->includes(portTypesOfSupplier)) &#xD;&#xA;--4. the supplier has a port type that contains at least the ownedAttributes and ownedOperations of the role.&#xD;&#xA;or(portTypesOfSupplier.oclAsType(Classifier).getAllAttributes()->includesAll(clientType.oclAsType(Classifier).getAllAttributes()) &#xD;&#xA;&#x9;and portTypesOfSupplier.oclAsType(Classifier).getAllOperations()->includesAll(clientType.oclAsType(Classifier).getAllOperations())&#xD;&#xA;) )"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -319,8 +317,8 @@
</eParameters>
</eOperations>
<eOperations name="partsTypes" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
- <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="let properties : Set (UML::ConnectableElement) = self.base_Collaboration.role,&#xD;&#xA;collBUses: Set(UML::Element)= self.base_Collaboration.collaborationUse in&#xD;&#xA;properties->notEmpty() implies &#xD;&#xA;properties-> forAll(p|p.type->exists(p|p.getAppliedStereotypes()->select(s|s.name='Participant' or s.name='Capability')->size()=1) )&#xD;&#xA;"/>
+ <eAnnotations source="http://www.eclipse.org/uml2/1.1.0/GenModel">
+ <details key="body" value="let properties : Set (UML::ConnectableElement) = self.base_Collaboration.role,&#xD;&#xA;collBUses: Set(UML::Element)= self.base_Collaboration.collaborationUse in&#xD;&#xA;properties->notEmpty() implies &#xD;&#xA;properties-> forAll(p|p.type->exists(p|p.getAppliedStereotypes()->select(s|s.name='Participant' or s.name='Capability' or s.name='Agent' )->size()=1) )&#xD;&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -337,6 +335,9 @@
</eGenericType>
</eParameters>
</eOperations>
+ <eOperations name="getIcon" ordered="false" lowerBound="1">
+ <eParameters name="image" ordered="false" lowerBound="1" eType="ecore:EClass ../../org.eclipse.uml2.uml/model/UML.ecore#//Image"/>
+ </eOperations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Attachment">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="encoding" ordered="false"
@@ -348,8 +349,8 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="CollaborationUse">
<eOperations name="RoleBindingClientSupplierCompatibility" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
- <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="--only in case of defining Contract collaboratinUse inside the ServiceInterface&#xD;&#xA;--If the CollaborationUse has isStrict=true, then the parts must be compatible with the roles they are bound to.&#xD;&#xA;self.isStrict=true and self.base_CollaborationUse.owner.oclIsTypeOf(Classifier) &#xD;&#xA;and self.base_CollaborationUse.type.oclAsType(UML::Collaboration).getAppliedStereotypes()->select(s|s.name='ServiceContract')->size()=1 implies&#xD;&#xA;--For parts to be compatible with a role, one of the following must be true:&#xD;&#xA;--1. The role and part have the same type.&#xD;&#xA;self.base_CollaborationUse.roleBinding-> forAll(rb|&#xD;&#xA;&#x9;(let supplierType =(rb.oclAsType(UML::Dependency).supplier->select(s|s.oclIsTypeOf(UML::Property))->select(s|s.oclAsType(UML::Property).type.oclIsTypeOf(Class))&#xD;&#xA;&#x9;->collect(oclAsType(UML::Property).type ->asOrderedSet()->first())),&#xD;&#xA;&#x9;clientType= (rb.oclAsType(UML::Dependency).client->select(s|s.oclIsTypeOf(UML::Property))->collect(t:UML::NamedElement|t.oclAsType(UML::Property).type)->asOrderedSet()->first())in (&#xD;&#xA;&#x9;supplierType= clientType&#xD;&#xA;--2. The part (the supplier) has a type that specializes the type of the role.&#xD;&#xA;or(clientType.oclAsType(Classifier).generalization.general->closure(general)->includes(supplierType)) &#xD;&#xA;--3. The part has a type that realizes the type of the role.&#xD;&#xA;or(clientType.oclAsType(Classifier).getRelationships().oclAsType(UML::Realization)->includes(supplierType)) &#xD;&#xA;--4. The part has a type that contains at least the ownedAttributes and ownedOperations of the role. In general this is a&#xD;&#xA;--special case of item 3 where the part has an Interface type that realizes another Interface.&#xD;&#xA;or(supplierType.oclAsType(Classifier).getAllAttributes()->includesAll(clientType.oclAsType(Classifier).getAllAttributes()) &#xD;&#xA;&#x9;and supplierType.oclAsType(Classifier).getAllOperations()->includesAll(clientType.oclAsType(Classifier).getAllOperations())&#xD;&#xA;) )&#xD;&#xA;--5. The type of each role in a service contract shall have a uses dependency to the type of all roles that role is connected to.&#xD;&#xA;)&#xD;&#xA;)"/>
+ <eAnnotations source="http://www.eclipse.org/uml2/1.1.0/GenModel">
+ <details key="body" value="--only in case of defining Contract collaboratinUse inside the ServiceInterface&#xD;&#xA;--If the CollaborationUse has isStrict=true, then the parts must be compatible with the roles they are bound to.&#xD;&#xA;self.isStrict=true and self.base_CollaborationUse.owner.oclIsTypeOf(Classifier) &#xD;&#xA;and self.base_CollaborationUse.type.oclAsType(UML::Collaboration).getAppliedStereotypes()->select(s|s.name='ServiceContract')->size()=1 implies&#xD;&#xA;--For parts to be compatible with a role, one of the following must be true:&#xD;&#xA;--1. The role and part have the same type.&#xD;&#xA;self.base_CollaborationUse.roleBinding-> forAll(rb|&#xD;&#xA;&#x9;(let supplierType =(rb.oclAsType(UML::Dependency).supplier->select(s|s.oclIsTypeOf(UML::Property))->select(s|s.oclAsType(UML::Property).type.oclIsTypeOf(Class))&#xD;&#xA;&#x9;->collect(oclAsType(UML::Property).type ->asOrderedSet()->first())),&#xD;&#xA;&#x9;clientType= (rb.oclAsType(UML::Dependency).client->select(s|s.oclIsTypeOf(UML::Property))->collect(t:UML::NamedElement|t.oclAsType(UML::Property).type)->asOrderedSet()->first())in (&#xD;&#xA;&#x9;supplierType= clientType&#xD;&#xA;--2. The part (the supplier) has a type that specializes the type of the role.&#xD;&#xA;or(clientType.oclAsType(Classifier).generalization.general->closure(general)->includes(supplierType)) &#xD;&#xA;--3. The part has a type that realizes the type of the role.&#xD;&#xA;or(clientType.oclAsType(Classifier).getRelationships().oclAsType(UML::Realization)->includes(supplierType)) &#xD;&#xA;--4. The part has a type that contains at least the ownedAttributes and ownedOperations of the role. In general this is a&#xD;&#xA;--special case of item 3 where the part has an Interface type that realizes another Interface.&#xD;&#xA;or(supplierType.oclAsType(Classifier).getAllAttributes()->includesAll(clientType.oclAsType(Classifier).getAllAttributes()) &#xD;&#xA;&#x9;and supplierType.oclAsType(Classifier).getAllOperations()->includesAll(clientType.oclAsType(Classifier).getAllOperations())&#xD;&#xA;) )&#xD;&#xA;--5. The type of each role in a service contract shall have a uses dependency to the type of all roles that role is connected to.&#xD;&#xA;)&#xD;&#xA;)"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -373,8 +374,8 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ServiceChannel">
<eOperations name="Onlybinaryconnectorsallowed" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
- <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="self.base_Connector.end->size() = 2 &#xD;&#xA;--and self.base_Connector.end->forAll(e|e.oclIsTypeOf(UML::Port)) "/>
+ <eAnnotations source="http://www.eclipse.org/uml2/1.1.0/GenModel">
+ <details key="body" value="self.base_Connector.end->size() = 2 &#xD;&#xA;--and self.base_Connector.end->forAll(e|e.oclIsTypeOf(UML::Port)) "/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -392,8 +393,8 @@
</eParameters>
</eOperations>
<eOperations name="serviceChannelEndTypes" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
- <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="let portsSet: OrderedSet(UML::ConnectorEnd)= self.base_Connector.end ->select(e|e.oclIsTypeOf(UML::Port)) in&#xD;&#xA; portsSet->size()>0 implies &#xD;&#xA; portsSet->forAll(p|p.getAppliedStereotypes()->select(s|s.name='Request' or s.name='Service')->size()=1 )&#xD;&#xA;"/>
+ <eAnnotations source="http://www.eclipse.org/uml2/1.1.0/GenModel">
+ <details key="body" value="let portsSet: OrderedSet(UML::ConnectorEnd)= self.base_Connector.end ->select(e|e.oclIsTypeOf(UML::Port)) in&#xD;&#xA; portsSet->size()>0 implies &#xD;&#xA; portsSet->forAll(p|p.getAppliedStereotypes()->select(s|s.name='Request' or s.name='Service')->size()=1 )&#xD;&#xA;"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -411,8 +412,8 @@
</eParameters>
</eOperations>
<eOperations name="Compatibility" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
- <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="let &#xD;&#xA; requestTypeClassifier: UML::Classifier=self.base_Connector.end->select(p|p.oclIsTypeOf(UML::Port) and &#x9;oclIsTypeOf(SoaML::Request))&#xD;&#xA; -> select(p|p.oclAsType(UML::Port).type.oclIsTypeOf(Classifier))->first().oclAsType(UML::Port).type.oclAsType(Classifier),&#xD;&#xA; serviceTypeClassifier: UML::Classifier=self.base_Connector.end->select(p|p.oclIsTypeOf(UML::Port) and oclIsTypeOf(SoaML::Service))&#xD;&#xA; ->select(p|p.oclAsType(UML::Port).type.oclIsTypeOf(Classifier))->first().oclAsType(UML::Port).type.oclAsType(Classifier) in &#xD;&#xA;--The Request and Service connected by a ServiceChannel must be compatible&#xD;&#xA; --1. The Request and Service have the same type, either an Interface or ServiceInterface.&#xD;&#xA;not requestTypeClassifier.oclIsUndefined() and not serviceTypeClassifier.oclIsUndefined() implies requestTypeClassifier=serviceTypeClassifier or&#xD;&#xA; --2. The type of the Service is a specialization or realization of the type of the Request. --2 implies 1&#xD;&#xA;serviceTypeClassifier.Generalization.general->closure(general)-> includes(requestTypeClassifier) or&#xD;&#xA; requestTypeClassifier.allUsedInterfaces()->includes(serviceTypeClassifier) or&#xD;&#xA; --3. The Request and Service have compatible needs and capabilities respectively. This means the Service must provide an &#xD;&#xA;--Operation for every Operation used through the Request, the Request must provide an Operation for every Operation used &#xD;&#xA;--through the Service, and the protocols for how the capabilities are compatible between the Request and Service. &#xD;&#xA;(requestTypeClassifier.allUsedInterfaces().getAllOperations()->includesAll(serviceTypeClassifier.allRealizedInterfaces().getAllOperations() )and &#xD;&#xA;&#x9;requestTypeClassifier.allRealizedInterfaces().getAllOperations()-> includesAll(serviceTypeClassifier.allUsedInterfaces().getAllOperations()))"/>
+ <eAnnotations source="http://www.eclipse.org/uml2/1.1.0/GenModel">
+ <details key="body" value="let &#xD;&#xA; requestTypeClassifier: UML::Classifier=self.base_Connector.end->select(p|p.oclIsTypeOf(UML::Port) and &#x9;oclIsTypeOf(SoaML::Request))&#xD;&#xA; -> select(p|p.oclAsType(UML::Port).type.oclIsTypeOf(Classifier))->first().oclAsType(UML::Port).type.oclAsType(Classifier),&#xD;&#xA; serviceTypeClassifier: UML::Classifier=self.base_Connector.end->select(p|p.oclIsTypeOf(UML::Port) and oclIsTypeOf(SoaML::Service))&#xD;&#xA; ->select(p|p.oclAsType(UML::Port).type.oclIsTypeOf(Classifier))->first().oclAsType(UML::Port).type.oclAsType(Classifier) in &#xD;&#xA;--The Request and Service connected by a ServiceChannel must be compatible&#xD;&#xA; --1. The Request and Service have the same type, either an Interface or ServiceInterface.&#xD;&#xA;not requestTypeClassifier.oclIsUndefined() and not serviceTypeClassifier.oclIsUndefined() implies requestTypeClassifier=serviceTypeClassifier or&#xD;&#xA; --2. The type of the Service is a specialization or realization of the type of the Request. --2 implies 1&#xD;&#xA;serviceTypeClassifier.Generalization.general->closure(general)-> includes(requestTypeClassifier) or&#xD;&#xA; requestTypeClassifier.allUsedInterfaces()->includes(serviceTypeClassifier) or&#xD;&#xA; --3. The Request and Service have compatible needs and capabilities respectively. This means the Service must provide an &#xD;&#xA;--Operation for every Operation used through the Request, the Request must provide an Operation for every Operation used &#xD;&#xA;--through the Service, and the protocols for how the capabilities are compatible between the Request and Service. &#xD;&#xA;(requestTypeClassifier.allUsedInterfaces().getAllOperations()->includesAll(serviceTypeClassifier.allRealizedInterfaces().getAllOperations() )and &#xD;&#xA;&#x9;requestTypeClassifier.allRealizedInterfaces().getAllOperations()-> includesAll(serviceTypeClassifier.allUsedInterfaces().getAllOperations()))"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -434,8 +435,8 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Service">
<eOperations name="serviceType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
- <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value=" if base_Port.type.oclIsUndefined() then false else&#xD;&#xA; let portType: Type= base_Port.type in&#xD;&#xA; portType.getAppliedStereotypes()->select(s|s.name='ServiceInterface' or s.name='Provider' )->size()=1 or portType.oclIsTypeOf(Interface)&#xD;&#xA; endif "/>
+ <eAnnotations source="http://www.eclipse.org/uml2/1.1.0/GenModel">
+ <details key="body" value=" if base_Port.type.oclIsUndefined() then false else&#xD;&#xA; let portType: Type= base_Port.type in&#xD;&#xA; portType.getAppliedStereotypes()->select(s|s.name='ServiceInterface' or s.name='Provider' )->size()=1 or portType.oclIsTypeOf(Interface)&#xD;&#xA; endif "/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -453,8 +454,8 @@
</eParameters>
</eOperations>
<eOperations name="isConjugatedFalse" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
- <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value=" &#xD;&#xA; not base_Port.isConjugated"/>
+ <eAnnotations source="http://www.eclipse.org/uml2/1.1.0/GenModel">
+ <details key="body" value=" &#xD;&#xA; not base_Port.isConjugated"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -476,8 +477,8 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Port">
<eOperations name="connectorRequired" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
- <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="--self.connectorRequired=true implies self.base_Port.owner.&#xD;&#xA;true"/>
+ <eAnnotations source="http://www.eclipse.org/uml2/1.1.0/GenModel">
+ <details key="body" value="--self.connectorRequired=true implies self.base_Port.owner.&#xD;&#xA;true"/>
</eAnnotations>
<eParameters name="diagnostics" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDiagnosticChain">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/model/SoaMLProfile.profile.notation b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/model/SoaMLProfile.profile.notation
index 34bffcbaed5..45cd0483b14 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/model/SoaMLProfile.profile.notation
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/model/SoaMLProfile.profile.notation
@@ -257,11 +257,11 @@
</children>
<children xmi:type="notation:Shape" xmi:id="_p8IHEKX8EeSyVbgMGJ_UVQ" type="1014">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_7IMOELadEeSBk8ZDbVpaMQ" source="Stereotype_Annotation">
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_7IMOEbadEeSBk8ZDbVpaMQ" key="StereotypeWithQualifiedNameList" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_7IM1ILadEeSBk8ZDbVpaMQ" key="StereotypeList" value="PapyrusDSMLValidationRule::ValidationRule"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_7IM1IbadEeSBk8ZDbVpaMQ" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_7IM1IradEeSBk8ZDbVpaMQ" key="PropStereoDisplay" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_7INcMLadEeSBk8ZDbVpaMQ" key="StereotypePropertyLocation" value="Compartment"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HgkiQAtcEeWt7Z_B2GM5YA" key="StereotypeWithQualifiedNameList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HgkiQQtcEeWt7Z_B2GM5YA" key="StereotypeList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HgkiQgtcEeWt7Z_B2GM5YA" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HgkiQwtcEeWt7Z_B2GM5YA" key="PropStereoDisplay" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HgkiRAtcEeWt7Z_B2GM5YA" key="StereotypePropertyLocation" value="Compartment"/>
</eAnnotations>
<children xmi:type="notation:DecorationNode" xmi:id="_p8IuIKX8EeSyVbgMGJ_UVQ" type="1015"/>
<children xmi:type="notation:DecorationNode" xmi:id="_p8JVMKX8EeSyVbgMGJ_UVQ" type="5063"/>
@@ -270,11 +270,11 @@
</children>
<children xmi:type="notation:Shape" xmi:id="_IKkmMKX-EeSyVbgMGJ_UVQ" type="1014">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_0snRwLadEeSBk8ZDbVpaMQ" source="Stereotype_Annotation">
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_0snRwbadEeSBk8ZDbVpaMQ" key="StereotypeWithQualifiedNameList" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_0sn40LadEeSBk8ZDbVpaMQ" key="StereotypeList" value="PapyrusDSMLValidationRule::ValidationRule"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_0sn40badEeSBk8ZDbVpaMQ" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_0sof4LadEeSBk8ZDbVpaMQ" key="PropStereoDisplay" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_0sof4badEeSBk8ZDbVpaMQ" key="StereotypePropertyLocation" value="Compartment"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HgpawAtcEeWt7Z_B2GM5YA" key="StereotypeWithQualifiedNameList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HgpawQtcEeWt7Z_B2GM5YA" key="StereotypeList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HgpawgtcEeWt7Z_B2GM5YA" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HgpawwtcEeWt7Z_B2GM5YA" key="PropStereoDisplay" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HgpaxAtcEeWt7Z_B2GM5YA" key="StereotypePropertyLocation" value="Compartment"/>
</eAnnotations>
<children xmi:type="notation:DecorationNode" xmi:id="_IKlNQKX-EeSyVbgMGJ_UVQ" type="1015"/>
<children xmi:type="notation:DecorationNode" xmi:id="_IKlNQaX-EeSyVbgMGJ_UVQ" type="5063"/>
@@ -283,11 +283,11 @@
</children>
<children xmi:type="notation:Shape" xmi:id="_pZpEEKYHEeSyVbgMGJ_UVQ" type="1014">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_y03tALadEeSBk8ZDbVpaMQ" source="Stereotype_Annotation">
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_y04UELadEeSBk8ZDbVpaMQ" key="StereotypeWithQualifiedNameList" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_y047ILadEeSBk8ZDbVpaMQ" key="StereotypeList" value="PapyrusDSMLValidationRule::ValidationRule"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_y047IbadEeSBk8ZDbVpaMQ" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_y05iMLadEeSBk8ZDbVpaMQ" key="PropStereoDisplay" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_y05iMbadEeSBk8ZDbVpaMQ" key="StereotypePropertyLocation" value="Compartment"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HgtsMAtcEeWt7Z_B2GM5YA" key="StereotypeWithQualifiedNameList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HgtsMQtcEeWt7Z_B2GM5YA" key="StereotypeList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HguTQAtcEeWt7Z_B2GM5YA" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HguTQQtcEeWt7Z_B2GM5YA" key="PropStereoDisplay" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HguTQgtcEeWt7Z_B2GM5YA" key="StereotypePropertyLocation" value="Compartment"/>
</eAnnotations>
<children xmi:type="notation:DecorationNode" xmi:id="_pZqSMKYHEeSyVbgMGJ_UVQ" type="1015"/>
<children xmi:type="notation:DecorationNode" xmi:id="_pZqSMaYHEeSyVbgMGJ_UVQ" type="5063"/>
@@ -296,11 +296,11 @@
</children>
<children xmi:type="notation:Shape" xmi:id="_QEPiQKYsEeS49ZHKZ2knEA" type="1014">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_5Jys4LaLEeSBk8ZDbVpaMQ" source="Stereotype_Annotation">
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_5Jys4baLEeSBk8ZDbVpaMQ" key="StereotypeWithQualifiedNameList" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_5JzT8LaLEeSBk8ZDbVpaMQ" key="StereotypeList" value="PapyrusDSMLValidationRule::ValidationRule"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_5JzT8baLEeSBk8ZDbVpaMQ" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_5JzT8raLEeSBk8ZDbVpaMQ" key="PropStereoDisplay" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_5JzT87aLEeSBk8ZDbVpaMQ" key="StereotypePropertyLocation" value="Compartment"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HgyksAtcEeWt7Z_B2GM5YA" key="StereotypeWithQualifiedNameList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HgyksQtcEeWt7Z_B2GM5YA" key="StereotypeList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HgyksgtcEeWt7Z_B2GM5YA" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HgykswtcEeWt7Z_B2GM5YA" key="PropStereoDisplay" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HgzLwAtcEeWt7Z_B2GM5YA" key="StereotypePropertyLocation" value="Compartment"/>
</eAnnotations>
<children xmi:type="notation:DecorationNode" xmi:id="_QEQwYKYsEeS49ZHKZ2knEA" type="1015"/>
<children xmi:type="notation:DecorationNode" xmi:id="_QEQwYaYsEeS49ZHKZ2knEA" type="5063"/>
@@ -309,11 +309,11 @@
</children>
<children xmi:type="notation:Shape" xmi:id="_QYRBwKY9EeSpr8ht2uoOkw" type="1014">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_5MvOALadEeSBk8ZDbVpaMQ" source="Stereotype_Annotation">
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_5Mv1ELadEeSBk8ZDbVpaMQ" key="StereotypeWithQualifiedNameList" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_5Mv1EbadEeSBk8ZDbVpaMQ" key="StereotypeList" value="PapyrusDSMLValidationRule::ValidationRule"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_5Mv1EradEeSBk8ZDbVpaMQ" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_5MwcILadEeSBk8ZDbVpaMQ" key="PropStereoDisplay" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_5MwcIbadEeSBk8ZDbVpaMQ" key="StereotypePropertyLocation" value="Compartment"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Hg3dMAtcEeWt7Z_B2GM5YA" key="StereotypeWithQualifiedNameList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Hg3dMQtcEeWt7Z_B2GM5YA" key="StereotypeList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Hg3dMgtcEeWt7Z_B2GM5YA" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Hg3dMwtcEeWt7Z_B2GM5YA" key="PropStereoDisplay" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Hg3dNAtcEeWt7Z_B2GM5YA" key="StereotypePropertyLocation" value="Compartment"/>
</eAnnotations>
<children xmi:type="notation:DecorationNode" xmi:id="_QYUFEKY9EeSpr8ht2uoOkw" type="1015"/>
<children xmi:type="notation:DecorationNode" xmi:id="_QYUsIKY9EeSpr8ht2uoOkw" type="5063"/>
@@ -332,18 +332,6 @@
<element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_tanzEKcAEeSrk7bGRySKyg" x="186" y="63"/>
</children>
- <children xmi:type="notation:Shape" xmi:id="_sNw3AKcDEeSBFrJi24CP7w" type="1031">
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_sN1IcKcDEeSBFrJi24CP7w" source="Stereotype_Annotation">
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_sN1vgKcDEeSBFrJi24CP7w" key="StereotypeWithQualifiedNameList" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_sN1vgacDEeSBFrJi24CP7w" key="StereotypeList" value="StandardProfile::Metaclass"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_sN2WkKcDEeSBFrJi24CP7w" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_sN2WkacDEeSBFrJi24CP7w" key="PropStereoDisplay" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_sN2WkqcDEeSBFrJi24CP7w" key="StereotypePropertyLocation" value="Compartment"/>
- </eAnnotations>
- <children xmi:type="notation:DecorationNode" xmi:id="_sNyFIKcDEeSBFrJi24CP7w" type="1084"/>
- <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Interface"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sNysMKcDEeSBFrJi24CP7w" x="274" y="-313"/>
- </children>
<children xmi:type="notation:Shape" xmi:id="_sN3ksKcDEeSBFrJi24CP7w" type="1031">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_sN6A8KcDEeSBFrJi24CP7w" source="Stereotype_Annotation">
<details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_sN6oAKcDEeSBFrJi24CP7w" key="StereotypeWithQualifiedNameList" value=""/>
@@ -354,15 +342,15 @@
</eAnnotations>
<children xmi:type="notation:DecorationNode" xmi:id="_sN4LwKcDEeSBFrJi24CP7w" type="1084"/>
<element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sN4y0KcDEeSBFrJi24CP7w" x="123" y="-311"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sN4y0KcDEeSBFrJi24CP7w" x="170" y="-307"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_xlS-UKexEeScGqpAk9QH7A" type="1014">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_x9NFMLadEeSBk8ZDbVpaMQ" source="Stereotype_Annotation">
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_x9NsQLadEeSBk8ZDbVpaMQ" key="StereotypeWithQualifiedNameList" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_x9OTULadEeSBk8ZDbVpaMQ" key="StereotypeList" value="PapyrusDSMLValidationRule::ValidationRule"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_x9OTUbadEeSBk8ZDbVpaMQ" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_x9O6YLadEeSBk8ZDbVpaMQ" key="PropStereoDisplay" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_x9O6YbadEeSBk8ZDbVpaMQ" key="StereotypePropertyLocation" value="Compartment"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Hg88wAtcEeWt7Z_B2GM5YA" key="StereotypeWithQualifiedNameList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Hg88wQtcEeWt7Z_B2GM5YA" key="StereotypeList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Hg88wgtcEeWt7Z_B2GM5YA" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Hg88wwtcEeWt7Z_B2GM5YA" key="PropStereoDisplay" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Hg88xAtcEeWt7Z_B2GM5YA" key="StereotypePropertyLocation" value="Compartment"/>
</eAnnotations>
<children xmi:type="notation:DecorationNode" xmi:id="_xlTlYKexEeScGqpAk9QH7A" type="1015"/>
<children xmi:type="notation:DecorationNode" xmi:id="_xlTlYaexEeScGqpAk9QH7A" type="5063"/>
@@ -371,11 +359,11 @@
</children>
<children xmi:type="notation:Shape" xmi:id="_ADXbUKe7EeSS1b7ZnN9lfQ" type="1014">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_zoNOcLadEeSBk8ZDbVpaMQ" source="Stereotype_Annotation">
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_zoN1gLadEeSBk8ZDbVpaMQ" key="StereotypeWithQualifiedNameList" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_zoOckLadEeSBk8ZDbVpaMQ" key="StereotypeList" value="PapyrusDSMLValidationRule::ValidationRule"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_zoOckbadEeSBk8ZDbVpaMQ" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_zoPDoLadEeSBk8ZDbVpaMQ" key="PropStereoDisplay" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_zoPDobadEeSBk8ZDbVpaMQ" key="StereotypePropertyLocation" value="Compartment"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhB1QAtcEeWt7Z_B2GM5YA" key="StereotypeWithQualifiedNameList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhB1QQtcEeWt7Z_B2GM5YA" key="StereotypeList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhB1QgtcEeWt7Z_B2GM5YA" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhB1QwtcEeWt7Z_B2GM5YA" key="PropStereoDisplay" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhB1RAtcEeWt7Z_B2GM5YA" key="StereotypePropertyLocation" value="Compartment"/>
</eAnnotations>
<children xmi:type="notation:DecorationNode" xmi:id="_ADZQgKe7EeSS1b7ZnN9lfQ" type="1015"/>
<children xmi:type="notation:DecorationNode" xmi:id="_ADZQgae7EeSS1b7ZnN9lfQ" type="5063"/>
@@ -384,11 +372,11 @@
</children>
<children xmi:type="notation:Shape" xmi:id="_T-0X8KfNEeST-v5ZDF0kWg" type="1014">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_vgi1gLadEeSBk8ZDbVpaMQ" source="Stereotype_Annotation">
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_vgjckLadEeSBk8ZDbVpaMQ" key="StereotypeWithQualifiedNameList" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_vgjckbadEeSBk8ZDbVpaMQ" key="StereotypeList" value="PapyrusDSMLValidationRule::ValidationRule"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_vgjckradEeSBk8ZDbVpaMQ" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_vgjck7adEeSBk8ZDbVpaMQ" key="PropStereoDisplay" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_vgkDoLadEeSBk8ZDbVpaMQ" key="StereotypePropertyLocation" value="Compartment"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhGGsAtcEeWt7Z_B2GM5YA" key="StereotypeWithQualifiedNameList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhGGsQtcEeWt7Z_B2GM5YA" key="StereotypeList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhGGsgtcEeWt7Z_B2GM5YA" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhGGswtcEeWt7Z_B2GM5YA" key="PropStereoDisplay" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhGGtAtcEeWt7Z_B2GM5YA" key="StereotypePropertyLocation" value="Compartment"/>
</eAnnotations>
<children xmi:type="notation:DecorationNode" xmi:id="_T-1mEKfNEeST-v5ZDF0kWg" type="1015"/>
<children xmi:type="notation:DecorationNode" xmi:id="_T-2NIKfNEeST-v5ZDF0kWg" type="5063"/>
@@ -397,11 +385,11 @@
</children>
<children xmi:type="notation:Shape" xmi:id="_VLipwKfNEeST-v5ZDF0kWg" type="1014">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_wmqwELadEeSBk8ZDbVpaMQ" source="Stereotype_Annotation">
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_wmrXILadEeSBk8ZDbVpaMQ" key="StereotypeWithQualifiedNameList" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_wmrXIbadEeSBk8ZDbVpaMQ" key="StereotypeList" value="PapyrusDSMLValidationRule::ValidationRule"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_wmrXIradEeSBk8ZDbVpaMQ" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_wmr-MLadEeSBk8ZDbVpaMQ" key="PropStereoDisplay" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_wmr-MbadEeSBk8ZDbVpaMQ" key="StereotypePropertyLocation" value="Compartment"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhK_MAtcEeWt7Z_B2GM5YA" key="StereotypeWithQualifiedNameList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhK_MQtcEeWt7Z_B2GM5YA" key="StereotypeList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhK_MgtcEeWt7Z_B2GM5YA" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhK_MwtcEeWt7Z_B2GM5YA" key="PropStereoDisplay" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhK_NAtcEeWt7Z_B2GM5YA" key="StereotypePropertyLocation" value="Compartment"/>
</eAnnotations>
<children xmi:type="notation:DecorationNode" xmi:id="_VLj34KfNEeST-v5ZDF0kWg" type="1015"/>
<children xmi:type="notation:DecorationNode" xmi:id="_VLke8KfNEeST-v5ZDF0kWg" type="5063"/>
@@ -410,11 +398,11 @@
</children>
<children xmi:type="notation:Shape" xmi:id="_mwp_4Kr6EeSzWoL50MoSpQ" type="1014">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_uFpk0LadEeSBk8ZDbVpaMQ" source="Stereotype_Annotation">
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_uFpk0badEeSBk8ZDbVpaMQ" key="StereotypeWithQualifiedNameList" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_uFpk0radEeSBk8ZDbVpaMQ" key="StereotypeList" value="PapyrusDSMLValidationRule::ValidationRule"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_uFpk07adEeSBk8ZDbVpaMQ" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_uFpk1LadEeSBk8ZDbVpaMQ" key="PropStereoDisplay" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_uFqL4LadEeSBk8ZDbVpaMQ" key="StereotypePropertyLocation" value="Compartment"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhP3sAtcEeWt7Z_B2GM5YA" key="StereotypeWithQualifiedNameList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhP3sQtcEeWt7Z_B2GM5YA" key="StereotypeList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhP3sgtcEeWt7Z_B2GM5YA" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhP3swtcEeWt7Z_B2GM5YA" key="PropStereoDisplay" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhP3tAtcEeWt7Z_B2GM5YA" key="StereotypePropertyLocation" value="Compartment"/>
</eAnnotations>
<children xmi:type="notation:DecorationNode" xmi:id="_mwqm8Kr6EeSzWoL50MoSpQ" type="1015"/>
<children xmi:type="notation:DecorationNode" xmi:id="_mwqm8ar6EeSzWoL50MoSpQ" type="5063"/>
@@ -423,11 +411,11 @@
</children>
<children xmi:type="notation:Shape" xmi:id="_r3QDsK0SEeSlTMA1djG_jg" type="1014">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_3PpPMLadEeSBk8ZDbVpaMQ" source="Stereotype_Annotation">
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_3Pp2QLadEeSBk8ZDbVpaMQ" key="StereotypeWithQualifiedNameList" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_3Pp2QbadEeSBk8ZDbVpaMQ" key="StereotypeList" value="PapyrusDSMLValidationRule::ValidationRule"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_3PqdULadEeSBk8ZDbVpaMQ" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_3PqdUbadEeSBk8ZDbVpaMQ" key="PropStereoDisplay" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_3PqdUradEeSBk8ZDbVpaMQ" key="StereotypePropertyLocation" value="Compartment"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhUwMAtcEeWt7Z_B2GM5YA" key="StereotypeWithQualifiedNameList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhUwMQtcEeWt7Z_B2GM5YA" key="StereotypeList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhUwMgtcEeWt7Z_B2GM5YA" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhUwMwtcEeWt7Z_B2GM5YA" key="PropStereoDisplay" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhUwNAtcEeWt7Z_B2GM5YA" key="StereotypePropertyLocation" value="Compartment"/>
</eAnnotations>
<children xmi:type="notation:DecorationNode" xmi:id="_r3QqwK0SEeSlTMA1djG_jg" type="1015"/>
<children xmi:type="notation:DecorationNode" xmi:id="_r3Qqwa0SEeSlTMA1djG_jg" type="5063"/>
@@ -500,18 +488,11 @@
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_MY2U0Ke8EeSS1b7ZnN9lfQ" id="(0.5,0.012987012987012988)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_MY274Ke8EeSS1b7ZnN9lfQ" id="(0.56,0.92)"/>
</edges>
- <edges xmi:type="notation:Connector" xmi:id="_t8d0gKcDEeSBFrJi24CP7w" type="1013" source="_obdpcAD7EeO_SKgrbXd_6g" target="_sNw3AKcDEeSBFrJi24CP7w">
- <styles xmi:type="notation:FontStyle" xmi:id="_t8d0gacDEeSBFrJi24CP7w"/>
- <element xmi:type="uml:Extension" href="SoaMLProfile.profile.uml#_t8SOUKcDEeSBFrJi24CP7w"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_t8d0gqcDEeSBFrJi24CP7w" points="[22, -50, -40, 89]$[62, -151, 0, -12]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_oG4L8ar6EeSzWoL50MoSpQ" id="(0.55,0.0)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_t8m-cKcDEeSBFrJi24CP7w" id="(0.32,1.0)"/>
- </edges>
<edges xmi:type="notation:Connector" xmi:id="_ufzLEKcDEeSBFrJi24CP7w" type="1013" source="_obdpcAD7EeO_SKgrbXd_6g" target="_sN3ksKcDEeSBFrJi24CP7w">
<styles xmi:type="notation:FontStyle" xmi:id="_ufzLEacDEeSBFrJi24CP7w"/>
<element xmi:type="uml:Extension" href="SoaMLProfile.profile.uml#_ufrPQKcDEeSBFrJi24CP7w"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ufzLEqcDEeSBFrJi24CP7w" points="[-33, -50, 57, 75]$[-40, -121, 50, 4]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_xLi_oKcDEeSBFrJi24CP7w" id="(0.51,0.0)"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_xLi_oKcDEeSBFrJi24CP7w" id="(0.5046728971962616,0.0)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_xLi_oacDEeSBFrJi24CP7w" id="(0.91,1.0)"/>
</edges>
<edges xmi:type="notation:Connector" xmi:id="_yjfE4KexEeScGqpAk9QH7A" type="8500" source="_xlS-UKexEeScGqpAk9QH7A" target="_nQiucAD7EeO_SKgrbXd_6g">
@@ -649,11 +630,11 @@
</children>
<children xmi:type="notation:Shape" xmi:id="_yq6fkKVhEeSXLM3PPnJI_A" type="1014">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-tF4MLadEeSBk8ZDbVpaMQ" source="Stereotype_Annotation">
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-tF4MbadEeSBk8ZDbVpaMQ" key="StereotypeWithQualifiedNameList" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-tGfQLadEeSBk8ZDbVpaMQ" key="StereotypeList" value="PapyrusDSMLValidationRule::ValidationRule"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-tGfQbadEeSBk8ZDbVpaMQ" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-tGfQradEeSBk8ZDbVpaMQ" key="PropStereoDisplay" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-tHGULadEeSBk8ZDbVpaMQ" key="StereotypePropertyLocation" value="Compartment"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhZosAtcEeWt7Z_B2GM5YA" key="StereotypeWithQualifiedNameList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhZosQtcEeWt7Z_B2GM5YA" key="StereotypeList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhaPwAtcEeWt7Z_B2GM5YA" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhaPwQtcEeWt7Z_B2GM5YA" key="PropStereoDisplay" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhaPwgtcEeWt7Z_B2GM5YA" key="StereotypePropertyLocation" value="Compartment"/>
</eAnnotations>
<children xmi:type="notation:DecorationNode" xmi:id="_yq7GoKVhEeSXLM3PPnJI_A" type="1015"/>
<children xmi:type="notation:DecorationNode" xmi:id="_yq7GoaVhEeSXLM3PPnJI_A" type="5063"/>
@@ -662,11 +643,11 @@
</children>
<children xmi:type="notation:Shape" xmi:id="_UVqJoKVnEeSXLM3PPnJI_A" type="1014">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_9xRwMLadEeSBk8ZDbVpaMQ" source="Stereotype_Annotation">
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_9xSXQLadEeSBk8ZDbVpaMQ" key="StereotypeWithQualifiedNameList" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_9xSXQbadEeSBk8ZDbVpaMQ" key="StereotypeList" value="PapyrusDSMLValidationRule::ValidationRule"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_9xSXQradEeSBk8ZDbVpaMQ" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_9xS-ULadEeSBk8ZDbVpaMQ" key="PropStereoDisplay" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_9xS-UbadEeSBk8ZDbVpaMQ" key="StereotypePropertyLocation" value="Compartment"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Hhg9cAtcEeWt7Z_B2GM5YA" key="StereotypeWithQualifiedNameList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Hhg9cQtcEeWt7Z_B2GM5YA" key="StereotypeList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Hhg9cgtcEeWt7Z_B2GM5YA" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Hhg9cwtcEeWt7Z_B2GM5YA" key="PropStereoDisplay" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Hhg9dAtcEeWt7Z_B2GM5YA" key="StereotypePropertyLocation" value="Compartment"/>
</eAnnotations>
<children xmi:type="notation:DecorationNode" xmi:id="_UVrXwKVnEeSXLM3PPnJI_A" type="1015"/>
<children xmi:type="notation:DecorationNode" xmi:id="_UVrXwaVnEeSXLM3PPnJI_A" type="5063"/>
@@ -675,11 +656,11 @@
</children>
<children xmi:type="notation:Shape" xmi:id="_ObEAMKV3EeSyVbgMGJ_UVQ" type="1014">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_84mbwLadEeSBk8ZDbVpaMQ" source="Stereotype_Annotation">
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_84mbwbadEeSBk8ZDbVpaMQ" key="StereotypeWithQualifiedNameList" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_84nC0LadEeSBk8ZDbVpaMQ" key="StereotypeList" value="PapyrusDSMLValidationRule::ValidationRule"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_84nC0badEeSBk8ZDbVpaMQ" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_84np4LadEeSBk8ZDbVpaMQ" key="PropStereoDisplay" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_84np4badEeSBk8ZDbVpaMQ" key="StereotypePropertyLocation" value="Compartment"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhnEEAtcEeWt7Z_B2GM5YA" key="StereotypeWithQualifiedNameList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhnEEQtcEeWt7Z_B2GM5YA" key="StereotypeList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhnEEgtcEeWt7Z_B2GM5YA" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhnEEwtcEeWt7Z_B2GM5YA" key="PropStereoDisplay" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhnEFAtcEeWt7Z_B2GM5YA" key="StereotypePropertyLocation" value="Compartment"/>
</eAnnotations>
<children xmi:type="notation:DecorationNode" xmi:id="_ObQNcKV3EeSyVbgMGJ_UVQ" type="1015"/>
<children xmi:type="notation:DecorationNode" xmi:id="_ObQ0gKV3EeSyVbgMGJ_UVQ" type="5063"/>
@@ -916,11 +897,11 @@
</children>
<children xmi:type="notation:Shape" xmi:id="_Av7v4KYaEeSseIkCe_35AA" type="1014">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_A6QTULaeEeSBk8ZDbVpaMQ" source="Stereotype_Annotation">
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_A6Q6YLaeEeSBk8ZDbVpaMQ" key="StereotypeWithQualifiedNameList" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_A6RhcLaeEeSBk8ZDbVpaMQ" key="StereotypeList" value="PapyrusDSMLValidationRule::ValidationRule"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_A6RhcbaeEeSBk8ZDbVpaMQ" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_A6RhcraeEeSBk8ZDbVpaMQ" key="PropStereoDisplay" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_A6SIgLaeEeSBk8ZDbVpaMQ" key="StereotypePropertyLocation" value="Compartment"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhrVgAtcEeWt7Z_B2GM5YA" key="StereotypeWithQualifiedNameList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhrVgQtcEeWt7Z_B2GM5YA" key="StereotypeList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhrVggtcEeWt7Z_B2GM5YA" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhrVgwtcEeWt7Z_B2GM5YA" key="PropStereoDisplay" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhrVhAtcEeWt7Z_B2GM5YA" key="StereotypePropertyLocation" value="Compartment"/>
</eAnnotations>
<children xmi:type="notation:DecorationNode" xmi:id="_Av8-AKYaEeSseIkCe_35AA" type="1015"/>
<children xmi:type="notation:DecorationNode" xmi:id="_Av8-AaYaEeSseIkCe_35AA" type="5063"/>
@@ -953,11 +934,11 @@
</children>
<children xmi:type="notation:Shape" xmi:id="_0msPQKuBEeS67dn1jOrjhg" type="1014">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_CEM98LaeEeSBk8ZDbVpaMQ" source="Stereotype_Annotation">
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_CENlALaeEeSBk8ZDbVpaMQ" key="StereotypeWithQualifiedNameList" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_CENlAbaeEeSBk8ZDbVpaMQ" key="StereotypeList" value="PapyrusDSMLValidationRule::ValidationRule"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_CEOMELaeEeSBk8ZDbVpaMQ" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_CEOMEbaeEeSBk8ZDbVpaMQ" key="PropStereoDisplay" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_CEOMEraeEeSBk8ZDbVpaMQ" key="StereotypePropertyLocation" value="Compartment"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Hhu_4AtcEeWt7Z_B2GM5YA" key="StereotypeWithQualifiedNameList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Hhu_4QtcEeWt7Z_B2GM5YA" key="StereotypeList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Hhu_4gtcEeWt7Z_B2GM5YA" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Hhu_4wtcEeWt7Z_B2GM5YA" key="PropStereoDisplay" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Hhvm8AtcEeWt7Z_B2GM5YA" key="StereotypePropertyLocation" value="Compartment"/>
</eAnnotations>
<children xmi:type="notation:DecorationNode" xmi:id="_0murgKuBEeS67dn1jOrjhg" type="1015"/>
<children xmi:type="notation:DecorationNode" xmi:id="_0mvSkKuBEeS67dn1jOrjhg" type="5063"/>
@@ -966,24 +947,24 @@
</children>
<children xmi:type="notation:Shape" xmi:id="_8LoDYK0NEeSlTMA1djG_jg" type="1014">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_EI1IILaeEeSBk8ZDbVpaMQ" source="Stereotype_Annotation">
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_EI1IIbaeEeSBk8ZDbVpaMQ" key="StereotypeWithQualifiedNameList" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_EI1vMLaeEeSBk8ZDbVpaMQ" key="StereotypeList" value="PapyrusDSMLValidationRule::ValidationRule"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_EI1vMbaeEeSBk8ZDbVpaMQ" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_EI1vMraeEeSBk8ZDbVpaMQ" key="PropStereoDisplay" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_EI2WQLaeEeSBk8ZDbVpaMQ" key="StereotypePropertyLocation" value="Compartment"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhyqQAtcEeWt7Z_B2GM5YA" key="StereotypeWithQualifiedNameList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhyqQQtcEeWt7Z_B2GM5YA" key="StereotypeList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhyqQgtcEeWt7Z_B2GM5YA" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhyqQwtcEeWt7Z_B2GM5YA" key="PropStereoDisplay" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HhyqRAtcEeWt7Z_B2GM5YA" key="StereotypePropertyLocation" value="Compartment"/>
</eAnnotations>
<children xmi:type="notation:DecorationNode" xmi:id="_8LpRgK0NEeSlTMA1djG_jg" type="1015"/>
<children xmi:type="notation:DecorationNode" xmi:id="_8LpRga0NEeSlTMA1djG_jg" type="5063"/>
<element xmi:type="uml:Constraint" href="SoaMLProfile.profile.uml#_8JzecK0NEeSlTMA1djG_jg"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8LoDYa0NEeSlTMA1djG_jg" x="600" y="-171"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8LoDYa0NEeSlTMA1djG_jg" x="608" y="-178"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_1lNdIK0aEeSlTMA1djG_jg" type="1014">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_FjqHYLaeEeSBk8ZDbVpaMQ" source="Stereotype_Annotation">
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_FjqucLaeEeSBk8ZDbVpaMQ" key="StereotypeWithQualifiedNameList" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_FjqucbaeEeSBk8ZDbVpaMQ" key="StereotypeList" value="PapyrusDSMLValidationRule::ValidationRule"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_FjrVgLaeEeSBk8ZDbVpaMQ" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_FjrVgbaeEeSBk8ZDbVpaMQ" key="PropStereoDisplay" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_FjrVgraeEeSBk8ZDbVpaMQ" key="StereotypePropertyLocation" value="Compartment"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Hh2UoAtcEeWt7Z_B2GM5YA" key="StereotypeWithQualifiedNameList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Hh2UoQtcEeWt7Z_B2GM5YA" key="StereotypeList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Hh2UogtcEeWt7Z_B2GM5YA" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Hh2UowtcEeWt7Z_B2GM5YA" key="PropStereoDisplay" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Hh2UpAtcEeWt7Z_B2GM5YA" key="StereotypePropertyLocation" value="Compartment"/>
</eAnnotations>
<children xmi:type="notation:DecorationNode" xmi:id="_1lOEMK0aEeSlTMA1djG_jg" type="1015"/>
<children xmi:type="notation:DecorationNode" xmi:id="_1lOEMa0aEeSlTMA1djG_jg" type="5063"/>
@@ -992,16 +973,16 @@
</children>
<children xmi:type="notation:Shape" xmi:id="_hxpFcLHPEeS8wqq-i9d2rg" type="1014">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_DSadgLaeEeSBk8ZDbVpaMQ" source="Stereotype_Annotation">
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_DSbEkLaeEeSBk8ZDbVpaMQ" key="StereotypeWithQualifiedNameList" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_DSbEkbaeEeSBk8ZDbVpaMQ" key="StereotypeList" value="PapyrusDSMLValidationRule::ValidationRule"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_DSbroLaeEeSBk8ZDbVpaMQ" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_DSbrobaeEeSBk8ZDbVpaMQ" key="PropStereoDisplay" value=""/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_DSbroraeEeSBk8ZDbVpaMQ" key="StereotypePropertyLocation" value="Compartment"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Hh5_AAtcEeWt7Z_B2GM5YA" key="StereotypeWithQualifiedNameList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Hh5_AQtcEeWt7Z_B2GM5YA" key="StereotypeList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Hh5_AgtcEeWt7Z_B2GM5YA" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Hh5_AwtcEeWt7Z_B2GM5YA" key="PropStereoDisplay" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Hh5_BAtcEeWt7Z_B2GM5YA" key="StereotypePropertyLocation" value="Compartment"/>
</eAnnotations>
<children xmi:type="notation:DecorationNode" xmi:id="_hxpsgLHPEeS8wqq-i9d2rg" type="1015"/>
<children xmi:type="notation:DecorationNode" xmi:id="_hxpsgbHPEeS8wqq-i9d2rg" type="5063"/>
<element xmi:type="uml:Constraint" href="SoaMLProfile.profile.uml#_hxXYoLHPEeS8wqq-i9d2rg"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_hxpFcbHPEeS8wqq-i9d2rg" x="604" y="64"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_hxpFcbHPEeS8wqq-i9d2rg" x="582" y="232"/>
</children>
<styles xmi:type="notation:DiagramStyle" xmi:id="_LT_SEQD9EeO_SKgrbXd_6g"/>
<element xmi:type="uml:Profile" href="SoaMLProfile.profile.uml#SoaML"/>
@@ -1071,7 +1052,7 @@
<styles xmi:type="notation:FontStyle" xmi:id="_81mNca0NEeSlTMA1djG_jg"/>
<element xsi:nil="true"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_81mNcq0NEeSlTMA1djG_jg" points="[0, 0, 120, -62]$[-124, -82, -4, -144]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_81s7IK0NEeSlTMA1djG_jg" id="(0.0,0.21982758620689655)"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_81s7IK0NEeSlTMA1djG_jg" id="(0.0,0.21774193548387097)"/>
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_2_drEK0OEeSlTMA1djG_jg" id="(1.0,0.06779661016949153)"/>
</edges>
<edges xmi:type="notation:Connector" xmi:id="_2Tth4K0aEeSlTMA1djG_jg" type="8500" source="_1lNdIK0aEeSlTMA1djG_jg" target="_t5tv8AD9EeO_SKgrbXd_6g">
@@ -1085,8 +1066,8 @@
<styles xmi:type="notation:FontStyle" xmi:id="_ik5uYbHPEeS8wqq-i9d2rg"/>
<element xsi:nil="true"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ik5uYrHPEeS8wqq-i9d2rg" points="[0, 0, 64, 14]$[-56, -221, 8, -207]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ik9_0LHPEeS8wqq-i9d2rg" id="(0.0,0.03389830508474576)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_i_gmwLHPEeS8wqq-i9d2rg" id="(1.0,0.3285528031290743)"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ik9_0LHPEeS8wqq-i9d2rg" id="(0.0,0.033185840707964605)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_i_gmwLHPEeS8wqq-i9d2rg" id="(0.9382716049382716,0.5554106910039114)"/>
</edges>
</notation:Diagram>
<notation:Diagram xmi:id="_FjfdoAD-EeO_SKgrbXd_6g" type="PapyrusUMLProfileDiagram" name="CategorizationDiagram" measurementUnit="Pixel">
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/model/SoaMLProfile.profile.uml b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/model/SoaMLProfile.profile.uml
index a3b621ff653..8fb250c1196 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/model/SoaMLProfile.profile.uml
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/model/SoaMLProfile.profile.uml
@@ -18894,15 +18894,23 @@ endif</body>
<ownedRule xmi:type="uml:Constraint" xmi:id="_8JzecK0NEeSlTMA1djG_jg" name="RoleType">
<specification xmi:type="uml:OpaqueExpression" xmi:id="_SamYQK0UEeSlTMA1djG_jg">
<language>OCL</language>
- <body> self.base_Collaboration.role-> notEmpty() implies self.base_Collaboration.role-> forAll(role|&#xD;
- role.type.oclIsTypeOf(UML::Interface) &#xD;
- or &#xD;
- (role.type.oclIsTypeOf(UML::Class) and &#xD;
- (role.type.oclIsTypeOf(UML::Class) implies (role.type.getAppliedStereotypes()->select(s|s.name='Provider')->size()>0 &#xD;
- and role.type.getAppliedStereotypes()->select(s|s.name='Consumer') ->size()>0&#xD;
- )&#xD;
- or role.type.getAppliedStereotypes()->select(s| s.name='ServiceInterface') ->size()>0&#xD;
- ))) </body>
+ <body> &#xD;
+let isComposit : Boolean= self.base_Collaboration.ownedConnector->isEmpty()&#xD;
+ and self.base_Collaboration.getAllAttributes()&#xD;
+->select(oclIsTypeOf(UML::CollaborationUse))->notEmpty(),&#xD;
+isSimple :Boolean= self.base_Collaboration.getAllAttributes()&#xD;
+->select(oclIsTypeOf(UML::CollaborationUse))->isEmpty()&#xD;
+in self.base_Collaboration.role-> notEmpty() implies &#xD;
+isSimple and self.base_Collaboration.role-> forAll(role|&#xD;
+role.type.oclIsTypeOf(UML::Interface))&#xD;
+or&#xD;
+isComposit and self.base_Collaboration.role->forAll(role|&#xD;
+role.type.oclIsTypeOf(UML::Interface) or&#xD;
+(role.type.oclIsTypeOf(UML::Class) and&#xD;
+(role.type.oclIsTypeOf(UML::Class) implies(role.type.getAppliedStereotypes()&#xD;
+->select(s|s.name='Provider' or s.name='Consumer' &#xD;
+or s.name='ServiceInterface') ->size()=1))))&#xD;
+</body>
</specification>
</ownedRule>
<ownedRule xmi:type="uml:Constraint" xmi:id="_hxXYoLHPEeS8wqq-i9d2rg" name="AttachedBehaviorCompatibility">
@@ -19073,22 +19081,11 @@ Usage.allInstances()->select(r|r.client->includes(self.base_Class))->size()=0</b
<ownedRule xmi:type="uml:Constraint" xmi:id="_mwXE8Kr6EeSzWoL50MoSpQ" name="partsTypesOfServiceInterface">
<specification xmi:type="uml:OpaqueExpression" xmi:id="_cf-k0Kr7EeSzWoL50MoSpQ">
<language>OCL</language>
- <body>if self.base_Interface.oclIsUndefined()&#xD;
-then self.base_Class.ownedAttribute->forAll(a|self.base_Class.getAllUsedInterfaces()->includes(a.type) or &#xD;
- self.base_Class.allRealizedInterfaces()->includes(a.type)&#xD;
-)&#xD;
-else &#xD;
- self.base_Interface.ownedAttribute->forAll(a|self.base_Interface.getAllUsedInterfaces()->includes(a.type) or &#xD;
- self.base_Interface.allRealizedInterfaces()->includes(a.type)&#xD;
- )&#xD;
-endif</body>
+ <body>self.base_Class.ownedAttribute->forAll(a|self.base_Class.getAllUsedInterfaces()->includes(a.type) or &#xD;
+ self.base_Class.allRealizedInterfaces()->includes(a.type))&#xD;
+</body>
</specification>
</ownedRule>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_t8PLAKcDEeSBFrJi24CP7w" name="base_Interface" association="_t8SOUKcDEeSBFrJi24CP7w">
- <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Interface"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_GYK5sKeZEeS-eMdtOM54rg"/>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_GYMH0KeZEeS-eMdtOM54rg" value="1"/>
- </ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_ufqBIKcDEeSBFrJi24CP7w" name="base_Class" association="_ufrPQKcDEeSBFrJi24CP7w">
<type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_HXVQoKeZEeS-eMdtOM54rg"/>
@@ -19321,9 +19318,6 @@ true</body>
<packagedElement xmi:type="uml:Extension" xmi:id="_uRRuQKcAEeSrk7bGRySKyg" name="Participant_Class" memberEnd="_uRRuQacAEeSrk7bGRySKyg _uRQgIKcAEeSrk7bGRySKyg">
<ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_uRRuQacAEeSrk7bGRySKyg" name="extension_Participant" type="SoaML-Participant" aggregation="composite" association="_uRRuQKcAEeSrk7bGRySKyg"/>
</packagedElement>
- <packagedElement xmi:type="uml:Extension" xmi:id="_t8SOUKcDEeSBFrJi24CP7w" name="ServiceInterface_Interface" memberEnd="_t8SOUacDEeSBFrJi24CP7w _t8PLAKcDEeSBFrJi24CP7w">
- <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_t8SOUacDEeSBFrJi24CP7w" name="extension_ServiceInterface" type="SoaML-ServiceInterface" aggregation="composite" association="_t8SOUKcDEeSBFrJi24CP7w"/>
- </packagedElement>
<packagedElement xmi:type="uml:Extension" xmi:id="_ufrPQKcDEeSBFrJi24CP7w" name="ServiceInterface_Class" memberEnd="_ufrPQacDEeSBFrJi24CP7w _ufqBIKcDEeSBFrJi24CP7w">
<ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_ufrPQacDEeSBFrJi24CP7w" name="extension_ServiceInterface" type="SoaML-ServiceInterface" aggregation="composite" association="_ufrPQKcDEeSBFrJi24CP7w"/>
</packagedElement>
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Agent.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Agent.java
index f5aec7c0b6d..0024fd80a59 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Agent.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Agent.java
@@ -31,11 +31,10 @@ public interface Agent extends Participant {
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
- * base_Class.isActive
* @param diagnostics The chain of diagnostics to which problems are to be appended.
* @param context The cache of context-specific information.
* <!-- end-model-doc -->
- * @model
+ * @model annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='base_Class.isActive'"
* @generated
*/
boolean isActive(DiagnosticChain diagnostics, Map<Object, Object> context);
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Attachment.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Attachment.java
index 910744ae2f3..fba4715af54 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Attachment.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Attachment.java
@@ -22,12 +22,12 @@ import org.eclipse.uml2.uml.Property;
*
* <p>
* The following features are supported:
+ * </p>
* <ul>
* <li>{@link SoaML.Attachment#getEncoding <em>Encoding</em>}</li>
* <li>{@link SoaML.Attachment#getBase_Property <em>Base Property</em>}</li>
* <li>{@link SoaML.Attachment#getMimetype <em>Mimetype</em>}</li>
* </ul>
- * </p>
*
* @see SoaML.SoaMLPackage#getAttachment()
* @model
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Capability.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Capability.java
index a4a5e5e036f..2b9fed171c9 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Capability.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Capability.java
@@ -20,10 +20,10 @@ import org.eclipse.emf.ecore.EObject;
*
* <p>
* The following features are supported:
+ * </p>
* <ul>
* <li>{@link SoaML.Capability#getBase_Class <em>Base Class</em>}</li>
* </ul>
- * </p>
*
* @see SoaML.SoaMLPackage#getCapability()
* @model
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Catalog.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Catalog.java
index 20305a6a505..2cf65e7dc5c 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Catalog.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Catalog.java
@@ -19,10 +19,10 @@ package SoaML;
*
* <p>
* The following features are supported:
+ * </p>
* <ul>
* <li>{@link SoaML.Catalog#getBase_Package <em>Base Package</em>}</li>
* </ul>
- * </p>
*
* @see SoaML.SoaMLPackage#getCatalog()
* @model
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Categorization.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Categorization.java
index 91f6d60195d..73d6942b662 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Categorization.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Categorization.java
@@ -22,10 +22,10 @@ import org.eclipse.uml2.uml.Dependency;
*
* <p>
* The following features are supported:
+ * </p>
* <ul>
* <li>{@link SoaML.Categorization#getBase_Dependency <em>Base Dependency</em>}</li>
* </ul>
- * </p>
*
* @see SoaML.SoaMLPackage#getCategorization()
* @model
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Collaboration.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Collaboration.java
index 8c85325e3f1..75b07e5cd16 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Collaboration.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Collaboration.java
@@ -20,11 +20,11 @@ import org.eclipse.emf.ecore.EObject;
*
* <p>
* The following features are supported:
+ * </p>
* <ul>
* <li>{@link SoaML.Collaboration#getBase_Collaboration <em>Base Collaboration</em>}</li>
- * <li>{@link SoaML.Collaboration#isStrict <em>Is Strict</em>}</li>
+ * <li>{@link SoaML.Collaboration#isIsStrict <em>Is Strict</em>}</li>
* </ul>
- * </p>
*
* @see SoaML.SoaMLPackage#getCollaboration()
* @model
@@ -72,14 +72,14 @@ public interface Collaboration extends EObject {
* @model default="true" dataType="org.eclipse.uml2.types.Boolean" required="true" ordered="false"
* @generated
*/
- boolean isStrict();
+ boolean isIsStrict();
/**
- * Sets the value of the '{@link SoaML.Collaboration#isStrict <em>Is Strict</em>}' attribute.
+ * Sets the value of the '{@link SoaML.Collaboration#isIsStrict <em>Is Strict</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Is Strict</em>' attribute.
- * @see #isStrict()
+ * @see #isIsStrict()
* @generated
*/
void setIsStrict(boolean value);
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/CollaborationUse.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/CollaborationUse.java
index 155308ce5f6..77fe1d94bac 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/CollaborationUse.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/CollaborationUse.java
@@ -22,11 +22,11 @@ import org.eclipse.emf.ecore.EObject;
*
* <p>
* The following features are supported:
+ * </p>
* <ul>
* <li>{@link SoaML.CollaborationUse#getBase_CollaborationUse <em>Base Collaboration Use</em>}</li>
- * <li>{@link SoaML.CollaborationUse#isStrict <em>Is Strict</em>}</li>
+ * <li>{@link SoaML.CollaborationUse#isIsStrict <em>Is Strict</em>}</li>
* </ul>
- * </p>
*
* @see SoaML.SoaMLPackage#getCollaborationUse()
* @model
@@ -73,14 +73,14 @@ public interface CollaborationUse extends EObject {
* @model dataType="org.eclipse.uml2.types.Boolean" required="true" ordered="false"
* @generated
*/
- boolean isStrict();
+ boolean isIsStrict();
/**
- * Sets the value of the '{@link SoaML.CollaborationUse#isStrict <em>Is Strict</em>}' attribute.
+ * Sets the value of the '{@link SoaML.CollaborationUse#isIsStrict <em>Is Strict</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Is Strict</em>' attribute.
- * @see #isStrict()
+ * @see #isIsStrict()
* @generated
*/
void setIsStrict(boolean value);
@@ -89,33 +89,10 @@ public interface CollaborationUse extends EObject {
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
- * --only in case of defining Contract collaboratinUse inside the ServiceInterface
- * --If the CollaborationUse has isStrict=true, then the parts must be compatible with the roles they are bound to.
- * self.isStrict=true and self.base_CollaborationUse.owner.oclIsTypeOf(Classifier)
- * and self.base_CollaborationUse.type.oclAsType(UML::Collaboration).getAppliedStereotypes()->select(s|s.name='ServiceContract')->size()=1 implies
- * --For parts to be compatible with a role, one of the following must be true:
- * --1. The role and part have the same type.
- * self.base_CollaborationUse.roleBinding-> forAll(rb|
- * (let supplierType =(rb.oclAsType(UML::Dependency).supplier->select(s|s.oclIsTypeOf(UML::Property))->select(s|s.oclAsType(UML::Property).type.oclIsTypeOf(Class))
- * ->collect(oclAsType(UML::Property).type ->asOrderedSet()->first())),
- * clientType= (rb.oclAsType(UML::Dependency).client->select(s|s.oclIsTypeOf(UML::Property))->collect(t:UML::NamedElement|t.oclAsType(UML::Property).type)->asOrderedSet()->first())in (
- * supplierType= clientType
- * --2. The part (the supplier) has a type that specializes the type of the role.
- * or(clientType.oclAsType(Classifier).generalization.general->closure(general)->includes(supplierType))
- * --3. The part has a type that realizes the type of the role.
- * or(clientType.oclAsType(Classifier).getRelationships().oclAsType(UML::Realization)->includes(supplierType))
- * --4. The part has a type that contains at least the ownedAttributes and ownedOperations of the role. In general this is a
- * --special case of item 3 where the part has an Interface type that realizes another Interface.
- * or(supplierType.oclAsType(Classifier).getAllAttributes()->includesAll(clientType.oclAsType(Classifier).getAllAttributes())
- * and supplierType.oclAsType(Classifier).getAllOperations()->includesAll(clientType.oclAsType(Classifier).getAllOperations())
- * ) )
- * --5. The type of each role in a service contract shall have a uses dependency to the type of all roles that role is connected to.
- * )
- * )
* @param diagnostics The chain of diagnostics to which problems are to be appended.
* @param context The cache of context-specific information.
* <!-- end-model-doc -->
- * @model
+ * @model annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='--only in case of defining Contract collaboratinUse inside the ServiceInterface\r\n--If the CollaborationUse has isStrict=true, then the parts must be compatible with the roles they are bound to.\r\nself.isStrict=true and self.base_CollaborationUse.owner.oclIsTypeOf(Classifier) \r\nand self.base_CollaborationUse.type.oclAsType(UML::Collaboration).getAppliedStereotypes()->select(s|s.name=\'ServiceContract\')->size()=1 implies\r\n--For parts to be compatible with a role, one of the following must be true:\r\n--1. The role and part have the same type.\r\nself.base_CollaborationUse.roleBinding-> forAll(rb|\r\n\t(let supplierType =(rb.oclAsType(UML::Dependency).supplier->select(s|s.oclIsTypeOf(UML::Property))->select(s|s.oclAsType(UML::Property).type.oclIsTypeOf(Class))\r\n\t->collect(oclAsType(UML::Property).type ->asOrderedSet()->first())),\r\n\tclientType= (rb.oclAsType(UML::Dependency).client->select(s|s.oclIsTypeOf(UML::Property))->collect(t:UML::NamedElement|t.oclAsType(UML::Property).type)->asOrderedSet()->first())in (\r\n\tsupplierType= clientType\r\n--2. The part (the supplier) has a type that specializes the type of the role.\r\nor(clientType.oclAsType(Classifier).generalization.general->closure(general)->includes(supplierType)) \r\n--3. The part has a type that realizes the type of the role.\r\nor(clientType.oclAsType(Classifier).getRelationships().oclAsType(UML::Realization)->includes(supplierType)) \r\n--4. The part has a type that contains at least the ownedAttributes and ownedOperations of the role. In general this is a\r\n--special case of item 3 where the part has an Interface type that realizes another Interface.\r\nor(supplierType.oclAsType(Classifier).getAllAttributes()->includesAll(clientType.oclAsType(Classifier).getAllAttributes()) \r\n\tand supplierType.oclAsType(Classifier).getAllOperations()->includesAll(clientType.oclAsType(Classifier).getAllOperations())\r\n) )\r\n--5. The type of each role in a service contract shall have a uses dependency to the type of all roles that role is connected to.\r\n)\r\n)'"
* @generated
*/
boolean RoleBindingClientSupplierCompatibility(DiagnosticChain diagnostics, Map<Object, Object> context);
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Consumer.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Consumer.java
index 000b2efd9e7..c62116988c9 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Consumer.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Consumer.java
@@ -22,11 +22,11 @@ import org.eclipse.uml2.uml.Interface;
*
* <p>
* The following features are supported:
+ * </p>
* <ul>
* <li>{@link SoaML.Consumer#getBase_Interface <em>Base Interface</em>}</li>
* <li>{@link SoaML.Consumer#getBase_Class <em>Base Class</em>}</li>
* </ul>
- * </p>
*
* @see SoaML.SoaMLPackage#getConsumer()
* @model
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Expose.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Expose.java
index 727e4b23aec..161e8aef2a9 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Expose.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Expose.java
@@ -22,10 +22,10 @@ import org.eclipse.uml2.uml.Dependency;
*
* <p>
* The following features are supported:
+ * </p>
* <ul>
* <li>{@link SoaML.Expose#getBase_Dependency <em>Base Dependency</em>}</li>
* </ul>
- * </p>
*
* @see SoaML.SoaMLPackage#getExpose()
* @model
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/FreeFormDescriptor.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/FreeFormDescriptor.java
index 79b95baec51..63999d16e59 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/FreeFormDescriptor.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/FreeFormDescriptor.java
@@ -22,10 +22,10 @@ import org.eclipse.uml2.uml.Property;
*
* <p>
* The following features are supported:
+ * </p>
* <ul>
* <li>{@link SoaML.FreeFormDescriptor#getBase_Property <em>Base Property</em>}</li>
* </ul>
- * </p>
*
* @see SoaML.SoaMLPackage#getFreeFormDescriptor()
* @model
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/FreeFormValue.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/FreeFormValue.java
index f4453632068..26ff6920fae 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/FreeFormValue.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/FreeFormValue.java
@@ -22,10 +22,10 @@ import org.eclipse.uml2.uml.ValueSpecification;
*
* <p>
* The following features are supported:
+ * </p>
* <ul>
* <li>{@link SoaML.FreeFormValue#getBase_ValueSpecification <em>Base Value Specification</em>}</li>
* </ul>
- * </p>
*
* @see SoaML.SoaMLPackage#getFreeFormValue()
* @model
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/MessageType.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/MessageType.java
index ac46fa8feae..6b4df004950 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/MessageType.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/MessageType.java
@@ -25,13 +25,13 @@ import org.eclipse.uml2.uml.Signal;
*
* <p>
* The following features are supported:
+ * </p>
* <ul>
* <li>{@link SoaML.MessageType#getBase_Signal <em>Base Signal</em>}</li>
* <li>{@link SoaML.MessageType#getEncoding <em>Encoding</em>}</li>
* <li>{@link SoaML.MessageType#getBase_Class <em>Base Class</em>}</li>
* <li>{@link SoaML.MessageType#getBase_DataType <em>Base Data Type</em>}</li>
* </ul>
- * </p>
*
* @see SoaML.SoaMLPackage#getMessageType()
* @model
@@ -146,11 +146,10 @@ public interface MessageType extends EObject {
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
- * self.base_Class<>null implies self.base_Class.ownedBehavior->size()=0
* @param diagnostics The chain of diagnostics to which problems are to be appended.
* @param context The cache of context-specific information.
* <!-- end-model-doc -->
- * @model
+ * @model annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='self.base_Class<>null implies self.base_Class.ownedBehavior->size()=0'"
* @generated
*/
boolean noOwnedBehaviors(DiagnosticChain diagnostics, Map<Object, Object> context);
@@ -159,17 +158,10 @@ public interface MessageType extends EObject {
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
- * if self.base_Class<>null
- * then self.base_Class.ownedOperation->size()=0
- * else
- * if self.base_DataType<>null
- * then self.base_DataType.ownedOperation->size()=0
- * else self.base_Signal<>null implies true endif
- * endif
* @param diagnostics The chain of diagnostics to which problems are to be appended.
* @param context The cache of context-specific information.
* <!-- end-model-doc -->
- * @model
+ * @model annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='if self.base_Class<>null \r\nthen self.base_Class.ownedOperation->size()=0 \r\nelse\r\n\t if self.base_DataType<>null \r\n\t then self.base_DataType.ownedOperation->size()=0\r\n\t else self.base_Signal<>null implies true endif \r\nendif'"
* @generated
*/
boolean noOwnedOperations(DiagnosticChain diagnostics, Map<Object, Object> context);
@@ -178,18 +170,10 @@ public interface MessageType extends EObject {
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
- * if self.base_Class<>null then self.base_Class.attribute->size()>0 implies self.base_Class.attribute->forAll (a|a.visibility=UML::VisibilityKind::public)
- * else
- * (if self.base_DataType<>null then
- * self.base_DataType.attribute->size()>0 implies self.base_DataType.attribute->forAll(a|a.visibility=UML::VisibilityKind::public)
- * else
- * self.base_Signal.attribute->size()>0 implies self.base_Signal.attribute-> forAll (a|a.visibility=UML::VisibilityKind::public)
- * endif)
- * endif
* @param diagnostics The chain of diagnostics to which problems are to be appended.
* @param context The cache of context-specific information.
* <!-- end-model-doc -->
- * @model
+ * @model annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='if self.base_Class<>null then self.base_Class.attribute->size()>0 implies self.base_Class.attribute->forAll (a|a.visibility=UML::VisibilityKind::public)\r\n else \r\n\t (if self.base_DataType<>null then \r\n\t\t \tself.base_DataType.attribute->size()>0 implies self.base_DataType.attribute->forAll(a|a.visibility=UML::VisibilityKind::public)\r\n \t\telse \r\n \t\t\tself.base_Signal.attribute->size()>0 implies self.base_Signal.attribute-> forAll (a|a.visibility=UML::VisibilityKind::public)\r\n\t\tendif)\r\n endif'"
* @generated
*/
boolean publicAttributes(DiagnosticChain diagnostics, Map<Object, Object> context);
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Milestone.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Milestone.java
index 215b418955d..29bffa4f72e 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Milestone.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Milestone.java
@@ -12,13 +12,10 @@
package SoaML;
import org.eclipse.emf.common.util.EList;
-
-import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.uml2.uml.Comment;
import org.eclipse.uml2.uml.Signal;
-import org.eclipse.uml2.uml.Type;
import org.eclipse.uml2.uml.ValueSpecification;
/**
@@ -28,13 +25,13 @@ import org.eclipse.uml2.uml.ValueSpecification;
*
* <p>
* The following features are supported:
+ * </p>
* <ul>
* <li>{@link SoaML.Milestone#getSignal <em>Signal</em>}</li>
* <li>{@link SoaML.Milestone#getProgress <em>Progress</em>}</li>
* <li>{@link SoaML.Milestone#getValue <em>Value</em>}</li>
* <li>{@link SoaML.Milestone#getBase_Comment <em>Base Comment</em>}</li>
* </ul>
- * </p>
*
* @see SoaML.SoaMLPackage#getMilestone()
* @model
@@ -110,32 +107,6 @@ public interface Milestone extends EObject {
EList<ValueSpecification> getValue();
/**
- * Retrieves the first {@link org.eclipse.uml2.uml.ValueSpecification} with the specified '<em><b>Name</b></em>', and '<em><b>Type</b></em>' from the '<em><b>Value</b></em>' reference list.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @param name The '<em><b>Name</b></em>' of the {@link org.eclipse.uml2.uml.ValueSpecification} to retrieve, or <code>null</code>.
- * @param type The '<em><b>Type</b></em>' of the {@link org.eclipse.uml2.uml.ValueSpecification} to retrieve, or <code>null</code>.
- * @return The first {@link org.eclipse.uml2.uml.ValueSpecification} with the specified '<em><b>Name</b></em>', and '<em><b>Type</b></em>', or <code>null</code>.
- * @see #getValue()
- * @generated
- */
- ValueSpecification getValue(String name, Type type);
-
- /**
- * Retrieves the first {@link org.eclipse.uml2.uml.ValueSpecification} with the specified '<em><b>Name</b></em>', and '<em><b>Type</b></em>' from the '<em><b>Value</b></em>' reference list.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @param name The '<em><b>Name</b></em>' of the {@link org.eclipse.uml2.uml.ValueSpecification} to retrieve, or <code>null</code>.
- * @param type The '<em><b>Type</b></em>' of the {@link org.eclipse.uml2.uml.ValueSpecification} to retrieve, or <code>null</code>.
- * @param ignoreCase Whether to ignore case in {@link java.lang.String} comparisons.
- * @param eClass The Ecore class of the {@link org.eclipse.uml2.uml.ValueSpecification} to retrieve, or <code>null</code>.
- * @return The first {@link org.eclipse.uml2.uml.ValueSpecification} with the specified '<em><b>Name</b></em>', and '<em><b>Type</b></em>', or <code>null</code>.
- * @see #getValue()
- * @generated
- */
- ValueSpecification getValue(String name, Type type, boolean ignoreCase, EClass eClass);
-
- /**
* Returns the value of the '<em><b>Base Comment</b></em>' reference.
* <!-- begin-user-doc -->
* <p>
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/MotivationRealization.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/MotivationRealization.java
index dc999c144cb..c8c0a082eb8 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/MotivationRealization.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/MotivationRealization.java
@@ -22,10 +22,10 @@ import org.eclipse.uml2.uml.Realization;
*
* <p>
* The following features are supported:
+ * </p>
* <ul>
* <li>{@link SoaML.MotivationRealization#getBase_Realization <em>Base Realization</em>}</li>
* </ul>
- * </p>
*
* @see SoaML.SoaMLPackage#getMotivationRealization()
* @model
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/NodeDescriptor.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/NodeDescriptor.java
index d74d888971b..74cd36fe69c 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/NodeDescriptor.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/NodeDescriptor.java
@@ -22,10 +22,10 @@ import org.eclipse.uml2.uml.Artifact;
*
* <p>
* The following features are supported:
+ * </p>
* <ul>
* <li>{@link SoaML.NodeDescriptor#getBase_Artifact <em>Base Artifact</em>}</li>
* </ul>
- * </p>
*
* @see SoaML.SoaMLPackage#getNodeDescriptor()
* @model
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Participant.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Participant.java
index c535b24063c..8a1c11f1ee3 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Participant.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Participant.java
@@ -22,10 +22,10 @@ import org.eclipse.emf.ecore.EObject;
*
* <p>
* The following features are supported:
+ * </p>
* <ul>
* <li>{@link SoaML.Participant#getBase_Class <em>Base Class</em>}</li>
* </ul>
- * </p>
*
* @see SoaML.SoaMLPackage#getParticipant()
* @model
@@ -62,12 +62,10 @@ public interface Participant extends EObject {
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
- * Realization.allInstances()->select(r|r.client->includes(self.base_Class))->size()=0 and
- * Usage.allInstances()->select(r|r.client->includes(self.base_Class))->size()=0
* @param diagnostics The chain of diagnostics to which problems are to be appended.
* @param context The cache of context-specific information.
* <!-- end-model-doc -->
- * @model
+ * @model annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='Realization.allInstances()->select(r|r.client->includes(self.base_Class))->size()=0 and \r\nUsage.allInstances()->select(r|r.client->includes(self.base_Class))->size()=0'"
* @generated
*/
boolean noRealizedUsedInterface(DiagnosticChain diagnostics, Map<Object, Object> context);
@@ -76,13 +74,10 @@ public interface Participant extends EObject {
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
- * let portsSet: OrderedSet(UML::Port)= self.base_Class.ownedPort() in
- * portsSet->size()>0 implies
- * portsSet->forAll(p|p.getAppliedStereotypes()->select(s|s.name='Request' or s.name='Service')->size()=1 )
* @param diagnostics The chain of diagnostics to which problems are to be appended.
* @param context The cache of context-specific information.
* <!-- end-model-doc -->
- * @model
+ * @model annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body=' let portsSet: OrderedSet(UML::Port)= self.base_Class.ownedPort() in\r\n portsSet->size()>0 implies \r\n portsSet->forAll(p|p.getAppliedStereotypes()->select(s|s.name=\'Request\' or s.name=\'Service\')->size()=1 )'"
* @generated
*/
boolean portTypes(DiagnosticChain diagnostics, Map<Object, Object> context);
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Port.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Port.java
index e1bddb6eb6b..80be4d9823f 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Port.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Port.java
@@ -22,11 +22,11 @@ import org.eclipse.emf.ecore.EObject;
*
* <p>
* The following features are supported:
+ * </p>
* <ul>
* <li>{@link SoaML.Port#getBase_Port <em>Base Port</em>}</li>
* <li>{@link SoaML.Port#isConnectorRequired <em>Connector Required</em>}</li>
* </ul>
- * </p>
*
* @see SoaML.SoaMLPackage#getPort()
* @model
@@ -90,12 +90,10 @@ public interface Port extends EObject {
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
- * --self.connectorRequired=true implies self.base_Port.owner.
- * true
* @param diagnostics The chain of diagnostics to which problems are to be appended.
* @param context The cache of context-specific information.
* <!-- end-model-doc -->
- * @model
+ * @model annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='--self.connectorRequired=true implies self.base_Port.owner.\r\ntrue'"
* @generated
*/
boolean connectorRequired(DiagnosticChain diagnostics, Map<Object, Object> context);
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Property.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Property.java
index e884f859919..177110dd2ce 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Property.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Property.java
@@ -20,11 +20,11 @@ import org.eclipse.emf.ecore.EObject;
*
* <p>
* The following features are supported:
+ * </p>
* <ul>
- * <li>{@link SoaML.Property#isID <em>Is ID</em>}</li>
+ * <li>{@link SoaML.Property#isIsID <em>Is ID</em>}</li>
* <li>{@link SoaML.Property#getBase_Property <em>Base Property</em>}</li>
* </ul>
- * </p>
*
* @see SoaML.SoaMLPackage#getProperty()
* @model
@@ -46,14 +46,14 @@ public interface Property extends EObject {
* @model default="false" dataType="org.eclipse.uml2.types.Boolean" required="true" ordered="false"
* @generated
*/
- boolean isID();
+ boolean isIsID();
/**
- * Sets the value of the '{@link SoaML.Property#isID <em>Is ID</em>}' attribute.
+ * Sets the value of the '{@link SoaML.Property#isIsID <em>Is ID</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Is ID</em>' attribute.
- * @see #isID()
+ * @see #isIsID()
* @generated
*/
void setIsID(boolean value);
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Provider.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Provider.java
index bc4aa08bbf5..0cc30db8765 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Provider.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Provider.java
@@ -22,11 +22,11 @@ import org.eclipse.uml2.uml.Interface;
*
* <p>
* The following features are supported:
+ * </p>
* <ul>
* <li>{@link SoaML.Provider#getBase_Class <em>Base Class</em>}</li>
* <li>{@link SoaML.Provider#getBase_Interface <em>Base Interface</em>}</li>
* </ul>
- * </p>
*
* @see SoaML.SoaMLPackage#getProvider()
* @model
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Request.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Request.java
index a5f5d4fe768..3ad5f86c75e 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Request.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Request.java
@@ -24,10 +24,10 @@ import org.eclipse.uml2.uml.Port;
*
* <p>
* The following features are supported:
+ * </p>
* <ul>
* <li>{@link SoaML.Request#getBase_Port <em>Base Port</em>}</li>
* </ul>
- * </p>
*
* @see SoaML.SoaMLPackage#getRequest()
* @model
@@ -64,12 +64,10 @@ public interface Request extends EObject {
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
- * let portType: Type= base_Port.type in
- * portType.getAppliedStereotypes()->select(s|s.name='ServiceInterface' or s.name='Consumer')->size()=1 or portType.oclIsTypeOf(Interface)
* @param diagnostics The chain of diagnostics to which problems are to be appended.
* @param context The cache of context-specific information.
* <!-- end-model-doc -->
- * @model
+ * @model annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body=' let portType: Type= base_Port.type in\r\n portType.getAppliedStereotypes()->select(s|s.name=\'ServiceInterface\' or s.name=\'Consumer\')->size()=1 or portType.oclIsTypeOf(Interface) '"
* @generated
*/
boolean requestType(DiagnosticChain diagnostics, Map<Object, Object> context);
@@ -78,11 +76,10 @@ public interface Request extends EObject {
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
- * base_Port.isConjugated
* @param diagnostics The chain of diagnostics to which problems are to be appended.
* @param context The cache of context-specific information.
* <!-- end-model-doc -->
- * @model
+ * @model annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='base_Port.isConjugated'"
* @generated
*/
boolean isConjugatedTrue(DiagnosticChain diagnostics, Map<Object, Object> context);
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Service.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Service.java
index a30bdfa7822..fad93056dbf 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Service.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/Service.java
@@ -24,10 +24,10 @@ import org.eclipse.uml2.uml.Port;
*
* <p>
* The following features are supported:
+ * </p>
* <ul>
* <li>{@link SoaML.Service#getBase_Port <em>Base Port</em>}</li>
* </ul>
- * </p>
*
* @see SoaML.SoaMLPackage#getService()
* @model
@@ -64,14 +64,10 @@ public interface Service extends EObject {
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
- * if base_Port.type.oclIsUndefined() then false else
- * let portType: Type= base_Port.type in
- * portType.getAppliedStereotypes()->select(s|s.name='ServiceInterface' or s.name='Provider' )->size()=1 or portType.oclIsTypeOf(Interface)
- * endif
* @param diagnostics The chain of diagnostics to which problems are to be appended.
* @param context The cache of context-specific information.
* <!-- end-model-doc -->
- * @model
+ * @model annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body=' if base_Port.type.oclIsUndefined() then false else\r\n let portType: Type= base_Port.type in\r\n portType.getAppliedStereotypes()->select(s|s.name=\'ServiceInterface\' or s.name=\'Provider\' )->size()=1 or portType.oclIsTypeOf(Interface)\r\n endif '"
* @generated
*/
boolean serviceType(DiagnosticChain diagnostics, Map<Object, Object> context);
@@ -80,12 +76,10 @@ public interface Service extends EObject {
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
- *
- * not base_Port.isConjugated
* @param diagnostics The chain of diagnostics to which problems are to be appended.
* @param context The cache of context-specific information.
* <!-- end-model-doc -->
- * @model
+ * @model annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body=' \r\n not base_Port.isConjugated'"
* @generated
*/
boolean isConjugatedFalse(DiagnosticChain diagnostics, Map<Object, Object> context);
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/ServiceChannel.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/ServiceChannel.java
index c5d28a0cde8..27f96e5aea2 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/ServiceChannel.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/ServiceChannel.java
@@ -24,10 +24,10 @@ import org.eclipse.uml2.uml.Connector;
*
* <p>
* The following features are supported:
+ * </p>
* <ul>
* <li>{@link SoaML.ServiceChannel#getBase_Connector <em>Base Connector</em>}</li>
* </ul>
- * </p>
*
* @see SoaML.SoaMLPackage#getServiceChannel()
* @model
@@ -64,12 +64,10 @@ public interface ServiceChannel extends EObject {
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
- * self.base_Connector.end->size() = 2
- * --and self.base_Connector.end->forAll(e|e.oclIsTypeOf(UML::Port))
* @param diagnostics The chain of diagnostics to which problems are to be appended.
* @param context The cache of context-specific information.
* <!-- end-model-doc -->
- * @model
+ * @model annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='self.base_Connector.end->size() = 2 \r\n--and self.base_Connector.end->forAll(e|e.oclIsTypeOf(UML::Port)) '"
* @generated
*/
boolean Onlybinaryconnectorsallowed(DiagnosticChain diagnostics, Map<Object, Object> context);
@@ -78,14 +76,10 @@ public interface ServiceChannel extends EObject {
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
- * let portsSet: OrderedSet(UML::ConnectorEnd)= self.base_Connector.end ->select(e|e.oclIsTypeOf(UML::Port)) in
- * portsSet->size()>0 implies
- * portsSet->forAll(p|p.getAppliedStereotypes()->select(s|s.name='Request' or s.name='Service')->size()=1 )
- *
* @param diagnostics The chain of diagnostics to which problems are to be appended.
* @param context The cache of context-specific information.
* <!-- end-model-doc -->
- * @model
+ * @model annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='let portsSet: OrderedSet(UML::ConnectorEnd)= self.base_Connector.end ->select(e|e.oclIsTypeOf(UML::Port)) in\r\n portsSet->size()>0 implies \r\n portsSet->forAll(p|p.getAppliedStereotypes()->select(s|s.name=\'Request\' or s.name=\'Service\')->size()=1 )\r\n'"
* @generated
*/
boolean serviceChannelEndTypes(DiagnosticChain diagnostics, Map<Object, Object> context);
@@ -94,26 +88,10 @@ public interface ServiceChannel extends EObject {
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
- * let
- * requestTypeClassifier: UML::Classifier=self.base_Connector.end->select(p|p.oclIsTypeOf(UML::Port) and oclIsTypeOf(SoaML::Request))
- * -> select(p|p.oclAsType(UML::Port).type.oclIsTypeOf(Classifier))->first().oclAsType(UML::Port).type.oclAsType(Classifier),
- * serviceTypeClassifier: UML::Classifier=self.base_Connector.end->select(p|p.oclIsTypeOf(UML::Port) and oclIsTypeOf(SoaML::Service))
- * ->select(p|p.oclAsType(UML::Port).type.oclIsTypeOf(Classifier))->first().oclAsType(UML::Port).type.oclAsType(Classifier) in
- * --The Request and Service connected by a ServiceChannel must be compatible
- * --1. The Request and Service have the same type, either an Interface or ServiceInterface.
- * not requestTypeClassifier.oclIsUndefined() and not serviceTypeClassifier.oclIsUndefined() implies requestTypeClassifier=serviceTypeClassifier or
- * --2. The type of the Service is a specialization or realization of the type of the Request. --2 implies 1
- * serviceTypeClassifier.Generalization.general->closure(general)-> includes(requestTypeClassifier) or
- * requestTypeClassifier.allUsedInterfaces()->includes(serviceTypeClassifier) or
- * --3. The Request and Service have compatible needs and capabilities respectively. This means the Service must provide an
- * --Operation for every Operation used through the Request, the Request must provide an Operation for every Operation used
- * --through the Service, and the protocols for how the capabilities are compatible between the Request and Service.
- * (requestTypeClassifier.allUsedInterfaces().getAllOperations()->includesAll(serviceTypeClassifier.allRealizedInterfaces().getAllOperations() )and
- * requestTypeClassifier.allRealizedInterfaces().getAllOperations()-> includesAll(serviceTypeClassifier.allUsedInterfaces().getAllOperations()))
* @param diagnostics The chain of diagnostics to which problems are to be appended.
* @param context The cache of context-specific information.
* <!-- end-model-doc -->
- * @model
+ * @model annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='let \r\n requestTypeClassifier: UML::Classifier=self.base_Connector.end->select(p|p.oclIsTypeOf(UML::Port) and \toclIsTypeOf(SoaML::Request))\r\n -> select(p|p.oclAsType(UML::Port).type.oclIsTypeOf(Classifier))->first().oclAsType(UML::Port).type.oclAsType(Classifier),\r\n serviceTypeClassifier: UML::Classifier=self.base_Connector.end->select(p|p.oclIsTypeOf(UML::Port) and oclIsTypeOf(SoaML::Service))\r\n ->select(p|p.oclAsType(UML::Port).type.oclIsTypeOf(Classifier))->first().oclAsType(UML::Port).type.oclAsType(Classifier) in \r\n--The Request and Service connected by a ServiceChannel must be compatible\r\n --1. The Request and Service have the same type, either an Interface or ServiceInterface.\r\nnot requestTypeClassifier.oclIsUndefined() and not serviceTypeClassifier.oclIsUndefined() implies requestTypeClassifier=serviceTypeClassifier or\r\n --2. The type of the Service is a specialization or realization of the type of the Request. --2 implies 1\r\nserviceTypeClassifier.Generalization.general->closure(general)-> includes(requestTypeClassifier) or\r\n requestTypeClassifier.allUsedInterfaces()->includes(serviceTypeClassifier) or\r\n --3. The Request and Service have compatible needs and capabilities respectively. This means the Service must provide an \r\n--Operation for every Operation used through the Request, the Request must provide an Operation for every Operation used \r\n--through the Service, and the protocols for how the capabilities are compatible between the Request and Service. \r\n(requestTypeClassifier.allUsedInterfaces().getAllOperations()->includesAll(serviceTypeClassifier.allRealizedInterfaces().getAllOperations() )and \r\n\trequestTypeClassifier.allRealizedInterfaces().getAllOperations()-> includesAll(serviceTypeClassifier.allUsedInterfaces().getAllOperations()))'"
* @generated
*/
boolean Compatibility(DiagnosticChain diagnostics, Map<Object, Object> context);
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/ServiceContract.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/ServiceContract.java
index 31b492e6e54..644e29c851d 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/ServiceContract.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/ServiceContract.java
@@ -31,19 +31,10 @@ public interface ServiceContract extends Collaboration {
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
- * self.base_Collaboration.role-> notEmpty() implies self.base_Collaboration.role-> forAll(role|
- * role.type.oclIsTypeOf(UML::Interface)
- * or
- * (role.type.oclIsTypeOf(UML::Class) and
- * (role.type.oclIsTypeOf(UML::Class) implies (role.type.getAppliedStereotypes()->select(s|s.name='Provider')->size()>0
- * and role.type.getAppliedStereotypes()->select(s|s.name='Consumer') ->size()>0
- * )
- * or role.type.getAppliedStereotypes()->select(s| s.name='ServiceInterface') ->size()>0
- * )))
* @param diagnostics The chain of diagnostics to which problems are to be appended.
* @param context The cache of context-specific information.
* <!-- end-model-doc -->
- * @model
+ * @model annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body=' \r\nlet isComposit : Boolean= self.base_Collaboration.ownedConnector->isEmpty()\r\n and self.base_Collaboration.getAllAttributes()\r\n->collect(oclAsType(UML::CollaborationUse))->notEmpty(),\r\nisSimple :Boolean= self.base_Collaboration.getAllAttributes()\r\n->collect(oclAsType(UML::CollaborationUse))->isEmpty()\r\nin self.base_Collaboration.role-> notEmpty() implies \r\nisSimple and self.base_Collaboration.role-> forAll(role|\r\nrole.type.oclIsTypeOf(UML::Interface))\r\nor\r\nisComposit and self.base_Collaboration.role->forAll(role|\r\nrole.type.oclIsTypeOf(UML::Interface) or\r\n(role.type.oclIsTypeOf(UML::Class)\tand\r\n(role.type.oclIsTypeOf(UML::Class) implies(role.type.getAppliedStereotypes()\r\n->select(s|s.name=\'Provider\' or s.name=\'Consumer\' \r\nor s.name=\'ServiceInterface\') ->size()=1))))\r\n'"
* @generated
*/
boolean RoleType(DiagnosticChain diagnostics, Map<Object, Object> context);
@@ -52,30 +43,10 @@ public interface ServiceContract extends Collaboration {
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
- * self.base_Collaboration.ownedBehavior->size()=1 implies
- * self.base_Collaboration.ownedBehavior->asOrderedSet()->first().oclIsTypeOf(UML::Interaction) implies
- * let attachedInteraction=self.base_Collaboration.ownedBehavior->asOrderedSet()->first().oclAsType(UML::Interaction),
- * lifelines=self.base_Collaboration.ownedBehavior->asOrderedSet()->first().oclAsType(UML::Interaction).lifeline,
- * messages= self.base_Collaboration.ownedBehavior->asOrderedSet()->first().oclAsType(UML::Interaction).message,
- * messOccuSpec=self.base_Collaboration.ownedBehavior->asOrderedSet()->first().oclAsType(UML::Interaction).fragment
- * ->select(f|f.oclIsTypeOf(MessageOccurrenceSpecification)) in
- * lifelines->size()>0 implies lifelines->forAll(l| self.base_Collaboration.role -> includes(l.oclAsType(UML::Lifeline).represents) )
- * and
- * messages->size()>0 implies messages->select(m|m.messageSort=MessageSort::asynchCall)
- * --signature of messages should be one of the operations or signal of the corresponding Service Declaration
- * ->forAll(m|m.signature.oclIsTypeOf(Operation) implies
- * m.receiveEvent->asOrderedSet()->first().oclAsType(MessageOccurrenceSpecification).covered->asOrderedSet()
- * ->first().oclAsType(Sequence)->asOrderedSet()->first().oclAsType(Lifeline).represents.type.oclAsType(Classifier).ownedElement->select(oclIsTypeOf(Operation))
- * ->includes(m.signature.oclAsType(Operation)) and
- * m.signature.oclIsTypeOf(Signal) implies
- * m.sendEvent->asOrderedSet()->first().oclAsType(MessageOccurrenceSpecification).covered->asOrderedSet()
- * ->first().oclAsType(Sequence)->asOrderedSet()->first().oclAsType(Lifeline).represents.type.oclAsType(Classifier).ownedElement->select(oclIsTypeOf(Signal))
- * ->includes(m.signature.oclAsType(Signal)
- * ))
* @param diagnostics The chain of diagnostics to which problems are to be appended.
* @param context The cache of context-specific information.
* <!-- end-model-doc -->
- * @model
+ * @model annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body=' self.base_Collaboration.ownedBehavior->size()>0 implies (\r\n\tself.base_Collaboration.ownedBehavior->asOrderedSet()->first().oclIsTypeOf(UML::Interaction) implies\r\n\t\tlet attachedInteraction=self.base_Collaboration.ownedBehavior->asOrderedSet()->first().oclAsType(UML::Interaction),\r\n\t\tlifelines=self.base_Collaboration.ownedBehavior->asOrderedSet()->first().oclAsType(UML::Interaction).lifeline,\r\n\t\tmessages= self.base_Collaboration.ownedBehavior->asOrderedSet()->first().oclAsType(UML::Interaction).message,\r\n\t\tmessOccuSpec=self.base_Collaboration.ownedBehavior->asOrderedSet()->first().oclAsType(UML::Interaction).fragment\r\n\t\t->select(f|f.oclIsTypeOf(MessageOccurrenceSpecification)) in \r\n\t\tlifelines->size()>0 implies lifelines->forAll(l| self.base_Collaboration.role -> includes(l.oclAsType(UML::Lifeline).represents) ) \r\n\t\tand \r\n\t\tmessages->size()>0 implies messages\r\n\t\t--->select(m|m.messageSort=MessageSort::asynchCall) \r\n\t\t--signature of messages should be one of the operations or signal of the corresponding Service Declaration\r\n\t\t->forAll(m|m.signature.oclIsTypeOf(Operation) implies \r\n\t\t\tm.receiveEvent.oclAsType(MessageOccurrenceSpecification).covered->flatten()->asOrderedSet()\r\n\t\t\t->first().oclAsType(Lifeline).represents.type.oclAsType(Classifier).ownedElement->select(oclIsTypeOf(Operation))\r\n\t\t\t->includes(m.signature.oclAsType(Operation)) and \r\n\t\t\t\tm.signature.oclIsTypeOf(Signal) implies \r\n\t\t\t\tm.sendEvent->asOrderedSet()->first().oclAsType(MessageOccurrenceSpecification).covered->asOrderedSet()\r\n\t\t\t\t->first().oclAsType(Sequence)->asOrderedSet()->first().oclAsType(Lifeline).represents.type.oclAsType(Classifier).ownedElement\r\n\t\t\t\t->select(oclIsTypeOf(Signal))->includes(m.signature.oclAsType(Signal)\r\n\t\t\t)) )'"
* @generated
*/
boolean AttachedBehaviorCompatibility(DiagnosticChain diagnostics, Map<Object, Object> context);
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/ServiceInterface.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/ServiceInterface.java
index 841ff65c980..7c05e17285e 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/ServiceInterface.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/ServiceInterface.java
@@ -15,8 +15,6 @@ import java.util.Map;
import org.eclipse.emf.common.util.DiagnosticChain;
import org.eclipse.emf.ecore.EObject;
-import org.eclipse.uml2.uml.Interface;
-
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Service Interface</b></em>'.
@@ -24,11 +22,10 @@ import org.eclipse.uml2.uml.Interface;
*
* <p>
* The following features are supported:
+ * </p>
* <ul>
- * <li>{@link SoaML.ServiceInterface#getBase_Interface <em>Base Interface</em>}</li>
* <li>{@link SoaML.ServiceInterface#getBase_Class <em>Base Class</em>}</li>
* </ul>
- * </p>
*
* @see SoaML.SoaMLPackage#getServiceInterface()
* @model
@@ -65,47 +62,12 @@ public interface ServiceInterface extends EObject {
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
- * if self.base_Interface.oclIsUndefined()
- * then self.base_Class.ownedAttribute->forAll(a|self.base_Class.getAllUsedInterfaces()->includes(a.type) or
- * self.base_Class.allRealizedInterfaces()->includes(a.type)
- * )
- * else
- * self.base_Interface.ownedAttribute->forAll(a|self.base_Interface.getAllUsedInterfaces()->includes(a.type) or
- * self.base_Interface.allRealizedInterfaces()->includes(a.type)
- * )
- * endif
* @param diagnostics The chain of diagnostics to which problems are to be appended.
* @param context The cache of context-specific information.
* <!-- end-model-doc -->
- * @model
+ * @model annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='self.base_Class.ownedAttribute->forAll(a|self.base_Class.getAllUsedInterfaces()->includes(a.type) or \r\n\tself.base_Class.allRealizedInterfaces()->includes(a.type))\r\n'"
* @generated
*/
boolean partsTypesOfServiceInterface(DiagnosticChain diagnostics, Map<Object, Object> context);
- /**
- * Returns the value of the '<em><b>Base Interface</b></em>' reference.
- * <!-- begin-user-doc -->
- * <p>
- * If the meaning of the '<em>Base Interface</em>' reference isn't clear,
- * there really should be more of a description here...
- * </p>
- * <!-- end-user-doc -->
- * @return the value of the '<em>Base Interface</em>' reference.
- * @see #setBase_Interface(Interface)
- * @see SoaML.SoaMLPackage#getServiceInterface_Base_Interface()
- * @model ordered="false"
- * @generated
- */
- Interface getBase_Interface();
-
- /**
- * Sets the value of the '{@link SoaML.ServiceInterface#getBase_Interface <em>Base Interface</em>}' reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @param value the new value of the '<em>Base Interface</em>' reference.
- * @see #getBase_Interface()
- * @generated
- */
- void setBase_Interface(Interface value);
-
} // ServiceInterface
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/ServicesArchitecture.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/ServicesArchitecture.java
index 404bf8c1676..0d891c6b0da 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/ServicesArchitecture.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/ServicesArchitecture.java
@@ -33,26 +33,10 @@ public interface ServicesArchitecture extends Collaboration {
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
- * let properties : Set (UML::ConnectableElement) = self.base_Collaboration.role,
- * collBUses: Set(UML::Element)= self.base_Collaboration.collaborationUse in
- * collBUses->notEmpty() implies
- * -- Each participant satisfying roles in a ServicesArchitecture shall have a port for each role binding attached to that participant.
- * --This port shall have a type compliant with the type of the role used in the ServiceContract.
- * collBUses.oclAsType(UML::CollaborationUse).roleBinding-> forAll(rb| let
- * portTypesOfSupplier= rb.oclAsType(UML::Dependency).supplier->select(s|s.oclIsTypeOf(UML::Property))->select(s|s.oclAsType(UML::Property).type.oclIsTypeOf(Class))->collect(oclAsType(UML::Property).type.oclAsType(Class).getAllAttributes())->select(att|att.oclIsTypeOf(UML::Port))->collect(oclAsType(UML::Port).type) , clientType=rb.oclAsType(UML::Dependency).client->select(s|s.oclIsTypeOf(UML::Property))->collect(t:UML::NamedElement|t.oclAsType(UML::Property).type)->asOrderedSet()->first()in
- * portTypesOfSupplier->includes(clientType)--1. The role correspond to a port type on the supplier.
- * --2. the supplier has a port type that specializes the type of the role.
- * or(clientType.oclAsType(Classifier).generalization.general->closure(general)->includes(portTypesOfSupplier))
- * --3. the supplier has a port type that realizes the type of the role.
- * or(clientType.oclAsType(Classifier).getRelationships().oclAsType(UML::Realization)->includes(portTypesOfSupplier))
- * --4. the supplier has a port type that contains at least the ownedAttributes and ownedOperations of the role.
- * or(portTypesOfSupplier.oclAsType(Classifier).getAllAttributes()->includesAll(clientType.oclAsType(Classifier).getAllAttributes())
- * and portTypesOfSupplier.oclAsType(Classifier).getAllOperations()->includesAll(clientType.oclAsType(Classifier).getAllOperations())
- * ) )
* @param diagnostics The chain of diagnostics to which problems are to be appended.
* @param context The cache of context-specific information.
* <!-- end-model-doc -->
- * @model
+ * @model annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='let properties : Set (UML::ConnectableElement) = self.base_Collaboration.role,\r\ncollBUses: Set(UML::Element)= self.base_Collaboration.collaborationUse in\r\ncollBUses->notEmpty() implies \r\n-- Each participant satisfying roles in a ServicesArchitecture shall have a port for each role binding attached to that participant. \r\n--This port shall have a type compliant with the type of the role used in the ServiceContract.\r\ncollBUses.oclAsType(UML::CollaborationUse).roleBinding-> forAll(rb| let \r\n\tportTypesOfSupplier=\trb.oclAsType(UML::Dependency).supplier->select(s|s.oclIsTypeOf(UML::Property))->select(s|s.oclAsType(UML::Property).type.oclIsTypeOf(Class))->collect(oclAsType(UML::Property).type.oclAsType(Class).getAllAttributes())->select(att|att.oclIsTypeOf(UML::Port))->collect(oclAsType(UML::Port).type) , clientType=rb.oclAsType(UML::Dependency).client->select(s|s.oclIsTypeOf(UML::Property))->collect(t:UML::NamedElement|t.oclAsType(UML::Property).type)->asOrderedSet()->first()in \t\r\nportTypesOfSupplier->includes(clientType)--1. The role correspond to a port type on the supplier.\r\n--2. the supplier has a port type that specializes the type of the role.\r\nor(clientType.oclAsType(Classifier).generalization.general->closure(general)->includes(portTypesOfSupplier)) \r\n--3. the supplier has a port type that realizes the type of the role.\r\nor(clientType.oclAsType(Classifier).getRelationships().oclAsType(UML::Realization)->includes(portTypesOfSupplier)) \r\n--4. the supplier has a port type that contains at least the ownedAttributes and ownedOperations of the role.\r\nor(portTypesOfSupplier.oclAsType(Classifier).getAllAttributes()->includesAll(clientType.oclAsType(Classifier).getAllAttributes()) \r\n\tand portTypesOfSupplier.oclAsType(Classifier).getAllOperations()->includesAll(clientType.oclAsType(Classifier).getAllOperations())\r\n) )'"
* @generated
*/
boolean participantsRoleCompatibility(DiagnosticChain diagnostics, Map<Object, Object> context);
@@ -61,17 +45,20 @@ public interface ServicesArchitecture extends Collaboration {
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* <!-- begin-model-doc -->
- * let properties : Set (UML::ConnectableElement) = self.base_Collaboration.role,
- * collBUses: Set(UML::Element)= self.base_Collaboration.collaborationUse in
- * properties->notEmpty() implies
- * properties-> forAll(p|p.type->exists(p|p.getAppliedStereotypes()->select(s|s.name='Participant' or s.name='Capability')->size()=1) )
- *
* @param diagnostics The chain of diagnostics to which problems are to be appended.
* @param context The cache of context-specific information.
* <!-- end-model-doc -->
- * @model
+ * @model annotation="http://www.eclipse.org/uml2/1.1.0/GenModel body='let properties : Set (UML::ConnectableElement) = self.base_Collaboration.role,\r\ncollBUses: Set(UML::Element)= self.base_Collaboration.collaborationUse in\r\nproperties->notEmpty() implies \r\nproperties-> forAll(p|p.type->exists(p|p.getAppliedStereotypes()->select(s|s.name=\'Participant\' or s.name=\'Capability\' or s.name=\'Agent\' )->size()=1) )\r\n'"
* @generated
*/
boolean partsTypes(DiagnosticChain diagnostics, Map<Object, Object> context);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model imageRequired="true" imageOrdered="false"
+ * @generated
+ */
+ void getIcon(Image image);
} // ServicesArchitecture
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/SoaMLPackage.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/SoaMLPackage.java
index 6ed842892da..fa3c71367a1 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/SoaMLPackage.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/SoaMLPackage.java
@@ -978,22 +978,13 @@ public interface SoaMLPackage extends EPackage {
int SERVICE_INTERFACE = 19;
/**
- * The feature id for the '<em><b>Base Interface</b></em>' reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- * @ordered
- */
- int SERVICE_INTERFACE__BASE_INTERFACE = 0;
-
- /**
* The feature id for the '<em><b>Base Class</b></em>' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int SERVICE_INTERFACE__BASE_CLASS = 1;
+ int SERVICE_INTERFACE__BASE_CLASS = 0;
/**
* The number of structural features of the '<em>Service Interface</em>' class.
@@ -1002,7 +993,7 @@ public interface SoaMLPackage extends EPackage {
* @generated
* @ordered
*/
- int SERVICE_INTERFACE_FEATURE_COUNT = 2;
+ int SERVICE_INTERFACE_FEATURE_COUNT = 1;
/**
* The operation id for the '<em>Parts Types Of Service Interface</em>' operation.
@@ -1078,13 +1069,22 @@ public interface SoaMLPackage extends EPackage {
int SERVICES_ARCHITECTURE___PARTS_TYPES__DIAGNOSTICCHAIN_MAP = COLLABORATION_OPERATION_COUNT + 1;
/**
+ * The operation id for the '<em>Get Icon</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SERVICES_ARCHITECTURE___GET_ICON__IMAGE = COLLABORATION_OPERATION_COUNT + 2;
+
+ /**
* The number of operations of the '<em>Services Architecture</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int SERVICES_ARCHITECTURE_OPERATION_COUNT = COLLABORATION_OPERATION_COUNT + 2;
+ int SERVICES_ARCHITECTURE_OPERATION_COUNT = COLLABORATION_OPERATION_COUNT + 3;
/**
* The meta object id for the '{@link SoaML.impl.AttachmentImpl <em>Attachment</em>}' class.
@@ -1537,11 +1537,11 @@ public interface SoaMLPackage extends EPackage {
EReference getCollaboration_Base_Collaboration();
/**
- * Returns the meta object for the attribute '{@link SoaML.Collaboration#isStrict <em>Is Strict</em>}'.
+ * Returns the meta object for the attribute '{@link SoaML.Collaboration#isIsStrict <em>Is Strict</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the attribute '<em>Is Strict</em>'.
- * @see SoaML.Collaboration#isStrict()
+ * @see SoaML.Collaboration#isIsStrict()
* @see #getCollaboration()
* @generated
*/
@@ -2029,17 +2029,6 @@ public interface SoaMLPackage extends EPackage {
EOperation getServiceInterface__PartsTypesOfServiceInterface__DiagnosticChain_Map();
/**
- * Returns the meta object for the reference '{@link SoaML.ServiceInterface#getBase_Interface <em>Base Interface</em>}'.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return the meta object for the reference '<em>Base Interface</em>'.
- * @see SoaML.ServiceInterface#getBase_Interface()
- * @see #getServiceInterface()
- * @generated
- */
- EReference getServiceInterface_Base_Interface();
-
- /**
* Returns the meta object for class '{@link SoaML.ServicesArchitecture <em>Services Architecture</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -2070,6 +2059,16 @@ public interface SoaMLPackage extends EPackage {
EOperation getServicesArchitecture__PartsTypes__DiagnosticChain_Map();
/**
+ * Returns the meta object for the '{@link SoaML.ServicesArchitecture#getIcon(org.eclipse.uml2.uml.Image) <em>Get Icon</em>}' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the '<em>Get Icon</em>' operation.
+ * @see SoaML.ServicesArchitecture#getIcon(org.eclipse.uml2.uml.Image)
+ * @generated
+ */
+ EOperation getServicesArchitecture__GetIcon__Image();
+
+ /**
* Returns the meta object for class '{@link SoaML.Attachment <em>Attachment</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -2134,11 +2133,11 @@ public interface SoaMLPackage extends EPackage {
EReference getCollaborationUse_Base_CollaborationUse();
/**
- * Returns the meta object for the attribute '{@link SoaML.CollaborationUse#isStrict <em>Is Strict</em>}'.
+ * Returns the meta object for the attribute '{@link SoaML.CollaborationUse#isIsStrict <em>Is Strict</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the attribute '<em>Is Strict</em>'.
- * @see SoaML.CollaborationUse#isStrict()
+ * @see SoaML.CollaborationUse#isIsStrict()
* @see #getCollaborationUse()
* @generated
*/
@@ -2299,11 +2298,11 @@ public interface SoaMLPackage extends EPackage {
EClass getProperty();
/**
- * Returns the meta object for the attribute '{@link SoaML.Property#isID <em>Is ID</em>}'.
+ * Returns the meta object for the attribute '{@link SoaML.Property#isIsID <em>Is ID</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the attribute '<em>Is ID</em>'.
- * @see SoaML.Property#isID()
+ * @see SoaML.Property#isIsID()
* @see #getProperty()
* @generated
*/
@@ -2845,14 +2844,6 @@ public interface SoaMLPackage extends EPackage {
EOperation SERVICE_INTERFACE___PARTS_TYPES_OF_SERVICE_INTERFACE__DIAGNOSTICCHAIN_MAP = eINSTANCE.getServiceInterface__PartsTypesOfServiceInterface__DiagnosticChain_Map();
/**
- * The meta object literal for the '<em><b>Base Interface</b></em>' reference feature.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- EReference SERVICE_INTERFACE__BASE_INTERFACE = eINSTANCE.getServiceInterface_Base_Interface();
-
- /**
* The meta object literal for the '{@link SoaML.impl.ServicesArchitectureImpl <em>Services Architecture</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -2879,6 +2870,14 @@ public interface SoaMLPackage extends EPackage {
EOperation SERVICES_ARCHITECTURE___PARTS_TYPES__DIAGNOSTICCHAIN_MAP = eINSTANCE.getServicesArchitecture__PartsTypes__DiagnosticChain_Map();
/**
+ * The meta object literal for the '<em><b>Get Icon</b></em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EOperation SERVICES_ARCHITECTURE___GET_ICON__IMAGE = eINSTANCE.getServicesArchitecture__GetIcon__Image();
+
+ /**
* The meta object literal for the '{@link SoaML.impl.AttachmentImpl <em>Attachment</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/AgentImpl.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/AgentImpl.java
index 33add5c877a..c2249245139 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/AgentImpl.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/AgentImpl.java
@@ -29,8 +29,6 @@ import org.eclipse.emf.ecore.util.EObjectValidator;
* <!-- begin-user-doc -->
* An implementation of the model object '<em><b>Agent</b></em>'.
* <!-- end-user-doc -->
- * <p>
- * </p>
*
* @generated
*/
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/AttachmentImpl.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/AttachmentImpl.java
index ec608413bfc..6fc0c2eda09 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/AttachmentImpl.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/AttachmentImpl.java
@@ -30,12 +30,12 @@ import org.eclipse.uml2.uml.Property;
* <!-- end-user-doc -->
* <p>
* The following features are implemented:
+ * </p>
* <ul>
* <li>{@link SoaML.impl.AttachmentImpl#getEncoding <em>Encoding</em>}</li>
* <li>{@link SoaML.impl.AttachmentImpl#getBase_Property <em>Base Property</em>}</li>
* <li>{@link SoaML.impl.AttachmentImpl#getMimetype <em>Mimetype</em>}</li>
* </ul>
- * </p>
*
* @generated
*/
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/CapabilityImpl.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/CapabilityImpl.java
index be6c07fd3ad..9481ecf30e2 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/CapabilityImpl.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/CapabilityImpl.java
@@ -28,10 +28,10 @@ import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
* <!-- end-user-doc -->
* <p>
* The following features are implemented:
+ * </p>
* <ul>
* <li>{@link SoaML.impl.CapabilityImpl#getBase_Class <em>Base Class</em>}</li>
* </ul>
- * </p>
*
* @generated
*/
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/CatalogImpl.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/CatalogImpl.java
index ec9b8a44658..fef9c1b3198 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/CatalogImpl.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/CatalogImpl.java
@@ -27,10 +27,10 @@ import org.eclipse.emf.ecore.impl.ENotificationImpl;
* <!-- end-user-doc -->
* <p>
* The following features are implemented:
+ * </p>
* <ul>
* <li>{@link SoaML.impl.CatalogImpl#getBase_Package <em>Base Package</em>}</li>
* </ul>
- * </p>
*
* @generated
*/
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/CategorizationImpl.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/CategorizationImpl.java
index 4f4797b75d4..95f32d40c94 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/CategorizationImpl.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/CategorizationImpl.java
@@ -30,10 +30,10 @@ import org.eclipse.uml2.uml.Dependency;
* <!-- end-user-doc -->
* <p>
* The following features are implemented:
+ * </p>
* <ul>
* <li>{@link SoaML.impl.CategorizationImpl#getBase_Dependency <em>Base Dependency</em>}</li>
* </ul>
- * </p>
*
* @generated
*/
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/CategoryImpl.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/CategoryImpl.java
index e1ad308d683..379438171bb 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/CategoryImpl.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/CategoryImpl.java
@@ -20,8 +20,6 @@ import org.eclipse.emf.ecore.EClass;
* <!-- begin-user-doc -->
* An implementation of the model object '<em><b>Category</b></em>'.
* <!-- end-user-doc -->
- * <p>
- * </p>
*
* @generated
*/
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/CategoryValueImpl.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/CategoryValueImpl.java
index 359e73c6d0a..605c8f0babe 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/CategoryValueImpl.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/CategoryValueImpl.java
@@ -20,8 +20,6 @@ import org.eclipse.emf.ecore.EClass;
* <!-- begin-user-doc -->
* An implementation of the model object '<em><b>Category Value</b></em>'.
* <!-- end-user-doc -->
- * <p>
- * </p>
*
* @generated
*/
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/CollaborationImpl.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/CollaborationImpl.java
index 1f238c75448..6bd1d917777 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/CollaborationImpl.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/CollaborationImpl.java
@@ -28,11 +28,11 @@ import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
* <!-- end-user-doc -->
* <p>
* The following features are implemented:
+ * </p>
* <ul>
* <li>{@link SoaML.impl.CollaborationImpl#getBase_Collaboration <em>Base Collaboration</em>}</li>
- * <li>{@link SoaML.impl.CollaborationImpl#isStrict <em>Is Strict</em>}</li>
+ * <li>{@link SoaML.impl.CollaborationImpl#isIsStrict <em>Is Strict</em>}</li>
* </ul>
- * </p>
*
* @generated
*/
@@ -48,20 +48,20 @@ public class CollaborationImpl extends MinimalEObjectImpl.Container implements C
protected org.eclipse.uml2.uml.Collaboration base_Collaboration;
/**
- * The default value of the '{@link #isStrict() <em>Is Strict</em>}' attribute.
+ * The default value of the '{@link #isIsStrict() <em>Is Strict</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @see #isStrict()
+ * @see #isIsStrict()
* @generated
* @ordered
*/
protected static final boolean IS_STRICT_EDEFAULT = true;
/**
- * The cached value of the '{@link #isStrict() <em>Is Strict</em>}' attribute.
+ * The cached value of the '{@link #isIsStrict() <em>Is Strict</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @see #isStrict()
+ * @see #isIsStrict()
* @generated
* @ordered
*/
@@ -129,7 +129,7 @@ public class CollaborationImpl extends MinimalEObjectImpl.Container implements C
* <!-- end-user-doc -->
* @generated
*/
- public boolean isStrict() {
+ public boolean isIsStrict() {
return isStrict;
}
@@ -157,7 +157,7 @@ public class CollaborationImpl extends MinimalEObjectImpl.Container implements C
if (resolve) return getBase_Collaboration();
return basicGetBase_Collaboration();
case SoaMLPackage.COLLABORATION__IS_STRICT:
- return isStrict();
+ return isIsStrict();
}
return super.eGet(featureID, resolve, coreType);
}
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/CollaborationUseImpl.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/CollaborationUseImpl.java
index 82969707163..1a74bce5bf3 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/CollaborationUseImpl.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/CollaborationUseImpl.java
@@ -37,11 +37,11 @@ import org.eclipse.emf.ecore.util.EObjectValidator;
* <!-- end-user-doc -->
* <p>
* The following features are implemented:
+ * </p>
* <ul>
* <li>{@link SoaML.impl.CollaborationUseImpl#getBase_CollaborationUse <em>Base Collaboration Use</em>}</li>
- * <li>{@link SoaML.impl.CollaborationUseImpl#isStrict <em>Is Strict</em>}</li>
+ * <li>{@link SoaML.impl.CollaborationUseImpl#isIsStrict <em>Is Strict</em>}</li>
* </ul>
- * </p>
*
* @generated
*/
@@ -57,20 +57,20 @@ public class CollaborationUseImpl extends MinimalEObjectImpl.Container implement
protected org.eclipse.uml2.uml.CollaborationUse base_CollaborationUse;
/**
- * The default value of the '{@link #isStrict() <em>Is Strict</em>}' attribute.
+ * The default value of the '{@link #isIsStrict() <em>Is Strict</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @see #isStrict()
+ * @see #isIsStrict()
* @generated
* @ordered
*/
protected static final boolean IS_STRICT_EDEFAULT = false;
/**
- * The cached value of the '{@link #isStrict() <em>Is Strict</em>}' attribute.
+ * The cached value of the '{@link #isIsStrict() <em>Is Strict</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @see #isStrict()
+ * @see #isIsStrict()
* @generated
* @ordered
*/
@@ -138,7 +138,7 @@ public class CollaborationUseImpl extends MinimalEObjectImpl.Container implement
* <!-- end-user-doc -->
* @generated
*/
- public boolean isStrict() {
+ public boolean isIsStrict() {
return isStrict;
}
@@ -191,7 +191,7 @@ public class CollaborationUseImpl extends MinimalEObjectImpl.Container implement
if (resolve) return getBase_CollaborationUse();
return basicGetBase_CollaborationUse();
case SoaMLPackage.COLLABORATION_USE__IS_STRICT:
- return isStrict();
+ return isIsStrict();
}
return super.eGet(featureID, resolve, coreType);
}
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ConsumerImpl.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ConsumerImpl.java
index 547f0493ea3..1defccf5720 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ConsumerImpl.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ConsumerImpl.java
@@ -30,11 +30,11 @@ import org.eclipse.uml2.uml.Interface;
* <!-- end-user-doc -->
* <p>
* The following features are implemented:
+ * </p>
* <ul>
* <li>{@link SoaML.impl.ConsumerImpl#getBase_Interface <em>Base Interface</em>}</li>
* <li>{@link SoaML.impl.ConsumerImpl#getBase_Class <em>Base Class</em>}</li>
* </ul>
- * </p>
*
* @generated
*/
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ExposeImpl.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ExposeImpl.java
index d5b38326c9d..62554075372 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ExposeImpl.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ExposeImpl.java
@@ -30,10 +30,10 @@ import org.eclipse.uml2.uml.Dependency;
* <!-- end-user-doc -->
* <p>
* The following features are implemented:
+ * </p>
* <ul>
* <li>{@link SoaML.impl.ExposeImpl#getBase_Dependency <em>Base Dependency</em>}</li>
* </ul>
- * </p>
*
* @generated
*/
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/FreeFormDescriptorImpl.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/FreeFormDescriptorImpl.java
index d71b6292501..78109c762e7 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/FreeFormDescriptorImpl.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/FreeFormDescriptorImpl.java
@@ -30,10 +30,10 @@ import org.eclipse.uml2.uml.Property;
* <!-- end-user-doc -->
* <p>
* The following features are implemented:
+ * </p>
* <ul>
* <li>{@link SoaML.impl.FreeFormDescriptorImpl#getBase_Property <em>Base Property</em>}</li>
* </ul>
- * </p>
*
* @generated
*/
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/FreeFormValueImpl.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/FreeFormValueImpl.java
index 821d28f2643..b717ca6db19 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/FreeFormValueImpl.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/FreeFormValueImpl.java
@@ -30,10 +30,10 @@ import org.eclipse.uml2.uml.ValueSpecification;
* <!-- end-user-doc -->
* <p>
* The following features are implemented:
+ * </p>
* <ul>
* <li>{@link SoaML.impl.FreeFormValueImpl#getBase_ValueSpecification <em>Base Value Specification</em>}</li>
* </ul>
- * </p>
*
* @generated
*/
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/MessageTypeImpl.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/MessageTypeImpl.java
index e50f1b65429..0227de670b1 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/MessageTypeImpl.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/MessageTypeImpl.java
@@ -40,13 +40,13 @@ import org.eclipse.uml2.uml.Signal;
* <!-- end-user-doc -->
* <p>
* The following features are implemented:
+ * </p>
* <ul>
* <li>{@link SoaML.impl.MessageTypeImpl#getBase_Signal <em>Base Signal</em>}</li>
* <li>{@link SoaML.impl.MessageTypeImpl#getEncoding <em>Encoding</em>}</li>
* <li>{@link SoaML.impl.MessageTypeImpl#getBase_Class <em>Base Class</em>}</li>
* <li>{@link SoaML.impl.MessageTypeImpl#getBase_DataType <em>Base Data Type</em>}</li>
* </ul>
- * </p>
*
* @generated
*/
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/MilestoneImpl.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/MilestoneImpl.java
index c1a4d8e72c9..ae036ba63cd 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/MilestoneImpl.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/MilestoneImpl.java
@@ -30,7 +30,6 @@ import org.eclipse.emf.ecore.util.EObjectResolvingEList;
import org.eclipse.uml2.uml.Comment;
import org.eclipse.uml2.uml.Signal;
-import org.eclipse.uml2.uml.Type;
import org.eclipse.uml2.uml.ValueSpecification;
/**
@@ -39,13 +38,13 @@ import org.eclipse.uml2.uml.ValueSpecification;
* <!-- end-user-doc -->
* <p>
* The following features are implemented:
+ * </p>
* <ul>
* <li>{@link SoaML.impl.MilestoneImpl#getSignal <em>Signal</em>}</li>
* <li>{@link SoaML.impl.MilestoneImpl#getProgress <em>Progress</em>}</li>
* <li>{@link SoaML.impl.MilestoneImpl#getValue <em>Value</em>}</li>
* <li>{@link SoaML.impl.MilestoneImpl#getBase_Comment <em>Base Comment</em>}</li>
* </ul>
- * </p>
*
* @generated
*/
@@ -195,33 +194,6 @@ public class MilestoneImpl extends MinimalEObjectImpl.Container implements Miles
* <!-- end-user-doc -->
* @generated
*/
- public ValueSpecification getValue(String name, Type type) {
- return getValue(name, type, false, null);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public ValueSpecification getValue(String name, Type type, boolean ignoreCase, EClass eClass) {
- valueLoop: for (ValueSpecification value : getValue()) {
- if (eClass != null && !eClass.isInstance(value))
- continue valueLoop;
- if (name != null && !(ignoreCase ? name.equalsIgnoreCase(value.getName()) : name.equals(value.getName())))
- continue valueLoop;
- if (type != null && !type.equals(value.getType()))
- continue valueLoop;
- return value;
- }
- return null;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
public Comment getBase_Comment() {
if (base_Comment != null && base_Comment.eIsProxy()) {
InternalEObject oldBase_Comment = (InternalEObject)base_Comment;
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/MotivationElementImpl.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/MotivationElementImpl.java
index e76af8ad290..bd0091bb7d6 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/MotivationElementImpl.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/MotivationElementImpl.java
@@ -22,8 +22,6 @@ import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
* <!-- begin-user-doc -->
* An implementation of the model object '<em><b>Motivation Element</b></em>'.
* <!-- end-user-doc -->
- * <p>
- * </p>
*
* @generated
*/
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/MotivationRealizationImpl.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/MotivationRealizationImpl.java
index e651648bc1f..bf0e54b96b1 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/MotivationRealizationImpl.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/MotivationRealizationImpl.java
@@ -30,10 +30,10 @@ import org.eclipse.uml2.uml.Realization;
* <!-- end-user-doc -->
* <p>
* The following features are implemented:
+ * </p>
* <ul>
* <li>{@link SoaML.impl.MotivationRealizationImpl#getBase_Realization <em>Base Realization</em>}</li>
* </ul>
- * </p>
*
* @generated
*/
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/NodeDescriptorImpl.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/NodeDescriptorImpl.java
index 0c088c0af51..4576e5a504f 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/NodeDescriptorImpl.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/NodeDescriptorImpl.java
@@ -30,10 +30,10 @@ import org.eclipse.uml2.uml.Artifact;
* <!-- end-user-doc -->
* <p>
* The following features are implemented:
+ * </p>
* <ul>
* <li>{@link SoaML.impl.NodeDescriptorImpl#getBase_Artifact <em>Base Artifact</em>}</li>
* </ul>
- * </p>
*
* @generated
*/
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ParticipantImpl.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ParticipantImpl.java
index 6947ab7e078..beefd864134 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ParticipantImpl.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ParticipantImpl.java
@@ -37,10 +37,10 @@ import org.eclipse.emf.ecore.util.EObjectValidator;
* <!-- end-user-doc -->
* <p>
* The following features are implemented:
+ * </p>
* <ul>
* <li>{@link SoaML.impl.ParticipantImpl#getBase_Class <em>Base Class</em>}</li>
* </ul>
- * </p>
*
* @generated
*/
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/PortImpl.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/PortImpl.java
index c48eccce1df..996b899fc4e 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/PortImpl.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/PortImpl.java
@@ -37,11 +37,11 @@ import org.eclipse.emf.ecore.util.EObjectValidator;
* <!-- end-user-doc -->
* <p>
* The following features are implemented:
+ * </p>
* <ul>
* <li>{@link SoaML.impl.PortImpl#getBase_Port <em>Base Port</em>}</li>
* <li>{@link SoaML.impl.PortImpl#isConnectorRequired <em>Connector Required</em>}</li>
* </ul>
- * </p>
*
* @generated
*/
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/PropertyImpl.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/PropertyImpl.java
index 65c0d8a3eff..45d600f69a3 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/PropertyImpl.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/PropertyImpl.java
@@ -25,30 +25,30 @@ import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
* <!-- end-user-doc -->
* <p>
* The following features are implemented:
+ * </p>
* <ul>
- * <li>{@link SoaML.impl.PropertyImpl#isID <em>Is ID</em>}</li>
+ * <li>{@link SoaML.impl.PropertyImpl#isIsID <em>Is ID</em>}</li>
* <li>{@link SoaML.impl.PropertyImpl#getBase_Property <em>Base Property</em>}</li>
* </ul>
- * </p>
*
* @generated
*/
public class PropertyImpl extends MinimalEObjectImpl.Container implements Property {
/**
- * The default value of the '{@link #isID() <em>Is ID</em>}' attribute.
+ * The default value of the '{@link #isIsID() <em>Is ID</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @see #isID()
+ * @see #isIsID()
* @generated
* @ordered
*/
protected static final boolean IS_ID_EDEFAULT = false;
/**
- * The cached value of the '{@link #isID() <em>Is ID</em>}' attribute.
+ * The cached value of the '{@link #isIsID() <em>Is ID</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @see #isID()
+ * @see #isIsID()
* @generated
* @ordered
*/
@@ -88,7 +88,7 @@ public class PropertyImpl extends MinimalEObjectImpl.Container implements Proper
* <!-- end-user-doc -->
* @generated
*/
- public boolean isID() {
+ public boolean isIsID() {
return isID;
}
@@ -151,7 +151,7 @@ public class PropertyImpl extends MinimalEObjectImpl.Container implements Proper
public Object eGet(int featureID, boolean resolve, boolean coreType) {
switch (featureID) {
case SoaMLPackage.PROPERTY__IS_ID:
- return isID();
+ return isIsID();
case SoaMLPackage.PROPERTY__BASE_PROPERTY:
if (resolve) return getBase_Property();
return basicGetBase_Property();
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ProviderImpl.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ProviderImpl.java
index bdc281fc419..2f1f798f3d0 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ProviderImpl.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ProviderImpl.java
@@ -30,11 +30,11 @@ import org.eclipse.uml2.uml.Interface;
* <!-- end-user-doc -->
* <p>
* The following features are implemented:
+ * </p>
* <ul>
* <li>{@link SoaML.impl.ProviderImpl#getBase_Class <em>Base Class</em>}</li>
* <li>{@link SoaML.impl.ProviderImpl#getBase_Interface <em>Base Interface</em>}</li>
* </ul>
- * </p>
*
* @generated
*/
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/RequestImpl.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/RequestImpl.java
index b64316cc89a..7e73a39b0bc 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/RequestImpl.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/RequestImpl.java
@@ -39,10 +39,10 @@ import org.eclipse.uml2.uml.Port;
* <!-- end-user-doc -->
* <p>
* The following features are implemented:
+ * </p>
* <ul>
* <li>{@link SoaML.impl.RequestImpl#getBase_Port <em>Base Port</em>}</li>
* </ul>
- * </p>
*
* @generated
*/
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ServiceChannelImpl.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ServiceChannelImpl.java
index 13aefd69c16..c168ef50dcc 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ServiceChannelImpl.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ServiceChannelImpl.java
@@ -39,10 +39,10 @@ import org.eclipse.uml2.uml.Connector;
* <!-- end-user-doc -->
* <p>
* The following features are implemented:
+ * </p>
* <ul>
* <li>{@link SoaML.impl.ServiceChannelImpl#getBase_Connector <em>Base Connector</em>}</li>
* </ul>
- * </p>
*
* @generated
*/
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ServiceContractImpl.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ServiceContractImpl.java
index b84673b37ce..55895effe0f 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ServiceContractImpl.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ServiceContractImpl.java
@@ -29,8 +29,6 @@ import org.eclipse.emf.ecore.util.EObjectValidator;
* <!-- begin-user-doc -->
* An implementation of the model object '<em><b>Service Contract</b></em>'.
* <!-- end-user-doc -->
- * <p>
- * </p>
*
* @generated
*/
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ServiceImpl.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ServiceImpl.java
index 6809adeea50..33d58e2d212 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ServiceImpl.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ServiceImpl.java
@@ -39,10 +39,10 @@ import org.eclipse.uml2.uml.Port;
* <!-- end-user-doc -->
* <p>
* The following features are implemented:
+ * </p>
* <ul>
* <li>{@link SoaML.impl.ServiceImpl#getBase_Port <em>Base Port</em>}</li>
* </ul>
- * </p>
*
* @generated
*/
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ServiceInterfaceImpl.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ServiceInterfaceImpl.java
index 29cdb274ccb..7084a27421c 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ServiceInterfaceImpl.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ServiceInterfaceImpl.java
@@ -31,7 +31,6 @@ import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
import org.eclipse.emf.ecore.plugin.EcorePlugin;
import org.eclipse.emf.ecore.util.EObjectValidator;
-import org.eclipse.uml2.uml.Interface;
/**
* <!-- begin-user-doc -->
@@ -39,26 +38,15 @@ import org.eclipse.uml2.uml.Interface;
* <!-- end-user-doc -->
* <p>
* The following features are implemented:
+ * </p>
* <ul>
- * <li>{@link SoaML.impl.ServiceInterfaceImpl#getBase_Interface <em>Base Interface</em>}</li>
* <li>{@link SoaML.impl.ServiceInterfaceImpl#getBase_Class <em>Base Class</em>}</li>
* </ul>
- * </p>
*
* @generated
*/
public class ServiceInterfaceImpl extends MinimalEObjectImpl.Container implements ServiceInterface {
/**
- * The cached value of the '{@link #getBase_Interface() <em>Base Interface</em>}' reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getBase_Interface()
- * @generated
- * @ordered
- */
- protected Interface base_Interface;
-
- /**
* The cached value of the '{@link #getBase_Class() <em>Base Class</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -155,50 +143,9 @@ public class ServiceInterfaceImpl extends MinimalEObjectImpl.Container implement
* <!-- end-user-doc -->
* @generated
*/
- public Interface getBase_Interface() {
- if (base_Interface != null && base_Interface.eIsProxy()) {
- InternalEObject oldBase_Interface = (InternalEObject)base_Interface;
- base_Interface = (Interface)eResolveProxy(oldBase_Interface);
- if (base_Interface != oldBase_Interface) {
- if (eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.RESOLVE, SoaMLPackage.SERVICE_INTERFACE__BASE_INTERFACE, oldBase_Interface, base_Interface));
- }
- }
- return base_Interface;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public Interface basicGetBase_Interface() {
- return base_Interface;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public void setBase_Interface(Interface newBase_Interface) {
- Interface oldBase_Interface = base_Interface;
- base_Interface = newBase_Interface;
- if (eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.SET, SoaMLPackage.SERVICE_INTERFACE__BASE_INTERFACE, oldBase_Interface, base_Interface));
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
@Override
public Object eGet(int featureID, boolean resolve, boolean coreType) {
switch (featureID) {
- case SoaMLPackage.SERVICE_INTERFACE__BASE_INTERFACE:
- if (resolve) return getBase_Interface();
- return basicGetBase_Interface();
case SoaMLPackage.SERVICE_INTERFACE__BASE_CLASS:
if (resolve) return getBase_Class();
return basicGetBase_Class();
@@ -214,9 +161,6 @@ public class ServiceInterfaceImpl extends MinimalEObjectImpl.Container implement
@Override
public void eSet(int featureID, Object newValue) {
switch (featureID) {
- case SoaMLPackage.SERVICE_INTERFACE__BASE_INTERFACE:
- setBase_Interface((Interface)newValue);
- return;
case SoaMLPackage.SERVICE_INTERFACE__BASE_CLASS:
setBase_Class((org.eclipse.uml2.uml.Class)newValue);
return;
@@ -232,9 +176,6 @@ public class ServiceInterfaceImpl extends MinimalEObjectImpl.Container implement
@Override
public void eUnset(int featureID) {
switch (featureID) {
- case SoaMLPackage.SERVICE_INTERFACE__BASE_INTERFACE:
- setBase_Interface((Interface)null);
- return;
case SoaMLPackage.SERVICE_INTERFACE__BASE_CLASS:
setBase_Class((org.eclipse.uml2.uml.Class)null);
return;
@@ -250,8 +191,6 @@ public class ServiceInterfaceImpl extends MinimalEObjectImpl.Container implement
@Override
public boolean eIsSet(int featureID) {
switch (featureID) {
- case SoaMLPackage.SERVICE_INTERFACE__BASE_INTERFACE:
- return base_Interface != null;
case SoaMLPackage.SERVICE_INTERFACE__BASE_CLASS:
return base_Class != null;
}
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ServicesArchitectureImpl.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ServicesArchitectureImpl.java
index 3bc09dad7fc..4cf71b5a92a 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ServicesArchitectureImpl.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/ServicesArchitectureImpl.java
@@ -31,8 +31,6 @@ import org.eclipse.uml2.uml.Image;
* <!-- begin-user-doc -->
* An implementation of the model object '<em><b>Services Architecture</b></em>'.
* <!-- end-user-doc -->
- * <p>
- * </p>
*
* @generated
*/
@@ -111,6 +109,17 @@ public class ServicesArchitectureImpl extends CollaborationImpl implements Servi
* <!-- end-user-doc -->
* @generated
*/
+ public void getIcon(Image image) {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
@Override
@SuppressWarnings("unchecked")
public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
@@ -119,6 +128,9 @@ public class ServicesArchitectureImpl extends CollaborationImpl implements Servi
return participantsRoleCompatibility((DiagnosticChain)arguments.get(0), (Map<Object, Object>)arguments.get(1));
case SoaMLPackage.SERVICES_ARCHITECTURE___PARTS_TYPES__DIAGNOSTICCHAIN_MAP:
return partsTypes((DiagnosticChain)arguments.get(0), (Map<Object, Object>)arguments.get(1));
+ case SoaMLPackage.SERVICES_ARCHITECTURE___GET_ICON__IMAGE:
+ getIcon((Image)arguments.get(0));
+ return null;
}
return super.eInvoke(operationID, arguments);
}
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/SoaMLPackageImpl.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/SoaMLPackageImpl.java
index 7ea32c69c53..68c7ddd2b9a 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/SoaMLPackageImpl.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/impl/SoaMLPackageImpl.java
@@ -816,7 +816,7 @@ public class SoaMLPackageImpl extends EPackageImpl implements SoaMLPackage {
* @generated
*/
public EReference getServiceInterface_Base_Class() {
- return (EReference)serviceInterfaceEClass.getEStructuralFeatures().get(1);
+ return (EReference)serviceInterfaceEClass.getEStructuralFeatures().get(0);
}
/**
@@ -833,8 +833,8 @@ public class SoaMLPackageImpl extends EPackageImpl implements SoaMLPackage {
* <!-- end-user-doc -->
* @generated
*/
- public EReference getServiceInterface_Base_Interface() {
- return (EReference)serviceInterfaceEClass.getEStructuralFeatures().get(0);
+ public EClass getServicesArchitecture() {
+ return servicesArchitectureEClass;
}
/**
@@ -842,8 +842,8 @@ public class SoaMLPackageImpl extends EPackageImpl implements SoaMLPackage {
* <!-- end-user-doc -->
* @generated
*/
- public EClass getServicesArchitecture() {
- return servicesArchitectureEClass;
+ public EOperation getServicesArchitecture__ParticipantsRoleCompatibility__DiagnosticChain_Map() {
+ return servicesArchitectureEClass.getEOperations().get(0);
}
/**
@@ -851,8 +851,8 @@ public class SoaMLPackageImpl extends EPackageImpl implements SoaMLPackage {
* <!-- end-user-doc -->
* @generated
*/
- public EOperation getServicesArchitecture__ParticipantsRoleCompatibility__DiagnosticChain_Map() {
- return servicesArchitectureEClass.getEOperations().get(0);
+ public EOperation getServicesArchitecture__PartsTypes__DiagnosticChain_Map() {
+ return servicesArchitectureEClass.getEOperations().get(1);
}
/**
@@ -860,8 +860,8 @@ public class SoaMLPackageImpl extends EPackageImpl implements SoaMLPackage {
* <!-- end-user-doc -->
* @generated
*/
- public EOperation getServicesArchitecture__PartsTypes__DiagnosticChain_Map() {
- return servicesArchitectureEClass.getEOperations().get(1);
+ public EOperation getServicesArchitecture__GetIcon__Image() {
+ return servicesArchitectureEClass.getEOperations().get(2);
}
/**
@@ -1198,13 +1198,13 @@ public class SoaMLPackageImpl extends EPackageImpl implements SoaMLPackage {
createEReference(motivationRealizationEClass, MOTIVATION_REALIZATION__BASE_REALIZATION);
serviceInterfaceEClass = createEClass(SERVICE_INTERFACE);
- createEReference(serviceInterfaceEClass, SERVICE_INTERFACE__BASE_INTERFACE);
createEReference(serviceInterfaceEClass, SERVICE_INTERFACE__BASE_CLASS);
createEOperation(serviceInterfaceEClass, SERVICE_INTERFACE___PARTS_TYPES_OF_SERVICE_INTERFACE__DIAGNOSTICCHAIN_MAP);
servicesArchitectureEClass = createEClass(SERVICES_ARCHITECTURE);
createEOperation(servicesArchitectureEClass, SERVICES_ARCHITECTURE___PARTICIPANTS_ROLE_COMPATIBILITY__DIAGNOSTICCHAIN_MAP);
createEOperation(servicesArchitectureEClass, SERVICES_ARCHITECTURE___PARTS_TYPES__DIAGNOSTICCHAIN_MAP);
+ createEOperation(servicesArchitectureEClass, SERVICES_ARCHITECTURE___GET_ICON__IMAGE);
attachmentEClass = createEClass(ATTACHMENT);
createEAttribute(attachmentEClass, ATTACHMENT__ENCODING);
@@ -1432,7 +1432,6 @@ public class SoaMLPackageImpl extends EPackageImpl implements SoaMLPackage {
initEReference(getMotivationRealization_Base_Realization(), theUMLPackage.getRealization(), null, "base_Realization", null, 1, 1, MotivationRealization.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEClass(serviceInterfaceEClass, ServiceInterface.class, "ServiceInterface", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
- initEReference(getServiceInterface_Base_Interface(), theUMLPackage.getInterface(), null, "base_Interface", null, 0, 1, ServiceInterface.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEReference(getServiceInterface_Base_Class(), theUMLPackage.getClass_(), null, "base_Class", null, 0, 1, ServiceInterface.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
op = initEOperation(getServiceInterface__PartsTypesOfServiceInterface__DiagnosticChain_Map(), ecorePackage.getEBoolean(), "partsTypesOfServiceInterface", 0, 1, IS_UNIQUE, IS_ORDERED);
@@ -1464,6 +1463,9 @@ public class SoaMLPackageImpl extends EPackageImpl implements SoaMLPackage {
g1.getETypeArguments().add(g2);
addEParameter(op, g1, "context", 0, 1, IS_UNIQUE, IS_ORDERED);
+ op = initEOperation(getServicesArchitecture__GetIcon__Image(), null, "getIcon", 1, 1, IS_UNIQUE, !IS_ORDERED);
+ addEParameter(op, theUMLPackage.getImage(), "image", 1, 1, IS_UNIQUE, !IS_ORDERED);
+
initEClass(attachmentEClass, Attachment.class, "Attachment", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getAttachment_Encoding(), theTypesPackage.getString(), "encoding", null, 1, 1, Attachment.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEReference(getAttachment_Base_Property(), theUMLPackage.getProperty(), null, "base_Property", null, 1, 1, Attachment.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
@@ -1555,6 +1557,140 @@ public class SoaMLPackageImpl extends EPackageImpl implements SoaMLPackage {
// Create resource
createResource(eNS_URI);
+
+ // Create annotations
+ // http://www.eclipse.org/uml2/1.1.0/GenModel
+ createGenModelAnnotations();
+ }
+
+ /**
+ * Initializes the annotations for <b>http://www.eclipse.org/uml2/1.1.0/GenModel</b>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void createGenModelAnnotations() {
+ String source = "http://www.eclipse.org/uml2/1.1.0/GenModel";
+ addAnnotation
+ (getAgent__IsActive__DiagnosticChain_Map(),
+ source,
+ new String[] {
+ "body", "base_Class.isActive"
+ });
+ addAnnotation
+ (getParticipant__NoRealizedUsedInterface__DiagnosticChain_Map(),
+ source,
+ new String[] {
+ "body", "Realization.allInstances()->select(r|r.client->includes(self.base_Class))->size()=0 and \r\nUsage.allInstances()->select(r|r.client->includes(self.base_Class))->size()=0"
+ });
+ addAnnotation
+ (getParticipant__PortTypes__DiagnosticChain_Map(),
+ source,
+ new String[] {
+ "body", " let portsSet: OrderedSet(UML::Port)= self.base_Class.ownedPort() in\r\n portsSet->size()>0 implies \r\n portsSet->forAll(p|p.getAppliedStereotypes()->select(s|s.name=\'Request\' or s.name=\'Service\')->size()=1 )"
+ });
+ addAnnotation
+ (getMessageType__NoOwnedBehaviors__DiagnosticChain_Map(),
+ source,
+ new String[] {
+ "body", "self.base_Class<>null implies self.base_Class.ownedBehavior->size()=0"
+ });
+ addAnnotation
+ (getMessageType__NoOwnedOperations__DiagnosticChain_Map(),
+ source,
+ new String[] {
+ "body", "if self.base_Class<>null \r\nthen self.base_Class.ownedOperation->size()=0 \r\nelse\r\n\t if self.base_DataType<>null \r\n\t then self.base_DataType.ownedOperation->size()=0\r\n\t else self.base_Signal<>null implies true endif \r\nendif"
+ });
+ addAnnotation
+ (getMessageType__PublicAttributes__DiagnosticChain_Map(),
+ source,
+ new String[] {
+ "body", "if self.base_Class<>null then self.base_Class.attribute->size()>0 implies self.base_Class.attribute->forAll (a|a.visibility=UML::VisibilityKind::public)\r\n else \r\n\t (if self.base_DataType<>null then \r\n\t\t \tself.base_DataType.attribute->size()>0 implies self.base_DataType.attribute->forAll(a|a.visibility=UML::VisibilityKind::public)\r\n \t\telse \r\n \t\t\tself.base_Signal.attribute->size()>0 implies self.base_Signal.attribute-> forAll (a|a.visibility=UML::VisibilityKind::public)\r\n\t\tendif)\r\n endif"
+ });
+ addAnnotation
+ (getServiceContract__RoleType__DiagnosticChain_Map(),
+ source,
+ new String[] {
+ "body", " \r\nlet isComposit : Boolean= self.base_Collaboration.ownedConnector->isEmpty()\r\n and self.base_Collaboration.getAllAttributes()\r\n->collect(oclAsType(UML::CollaborationUse))->notEmpty(),\r\nisSimple :Boolean= self.base_Collaboration.getAllAttributes()\r\n->collect(oclAsType(UML::CollaborationUse))->isEmpty()\r\nin self.base_Collaboration.role-> notEmpty() implies \r\nisSimple and self.base_Collaboration.role-> forAll(role|\r\nrole.type.oclIsTypeOf(UML::Interface))\r\nor\r\nisComposit and self.base_Collaboration.role->forAll(role|\r\nrole.type.oclIsTypeOf(UML::Interface) or\r\n(role.type.oclIsTypeOf(UML::Class)\tand\r\n(role.type.oclIsTypeOf(UML::Class) implies(role.type.getAppliedStereotypes()\r\n->select(s|s.name=\'Provider\' or s.name=\'Consumer\' \r\nor s.name=\'ServiceInterface\') ->size()=1))))\r\n"
+ });
+ addAnnotation
+ (getServiceContract__AttachedBehaviorCompatibility__DiagnosticChain_Map(),
+ source,
+ new String[] {
+ "body", " self.base_Collaboration.ownedBehavior->size()>0 implies (\r\n\tself.base_Collaboration.ownedBehavior->asOrderedSet()->first().oclIsTypeOf(UML::Interaction) implies\r\n\t\tlet attachedInteraction=self.base_Collaboration.ownedBehavior->asOrderedSet()->first().oclAsType(UML::Interaction),\r\n\t\tlifelines=self.base_Collaboration.ownedBehavior->asOrderedSet()->first().oclAsType(UML::Interaction).lifeline,\r\n\t\tmessages= self.base_Collaboration.ownedBehavior->asOrderedSet()->first().oclAsType(UML::Interaction).message,\r\n\t\tmessOccuSpec=self.base_Collaboration.ownedBehavior->asOrderedSet()->first().oclAsType(UML::Interaction).fragment\r\n\t\t->select(f|f.oclIsTypeOf(MessageOccurrenceSpecification)) in \r\n\t\tlifelines->size()>0 implies lifelines->forAll(l| self.base_Collaboration.role -> includes(l.oclAsType(UML::Lifeline).represents) ) \r\n\t\tand \r\n\t\tmessages->size()>0 implies messages\r\n\t\t--->select(m|m.messageSort=MessageSort::asynchCall) \r\n\t\t--signature of messages should be one of the operations or signal of the corresponding Service Declaration\r\n\t\t->forAll(m|m.signature.oclIsTypeOf(Operation) implies \r\n\t\t\tm.receiveEvent.oclAsType(MessageOccurrenceSpecification).covered->flatten()->asOrderedSet()\r\n\t\t\t->first().oclAsType(Lifeline).represents.type.oclAsType(Classifier).ownedElement->select(oclIsTypeOf(Operation))\r\n\t\t\t->includes(m.signature.oclAsType(Operation)) and \r\n\t\t\t\tm.signature.oclIsTypeOf(Signal) implies \r\n\t\t\t\tm.sendEvent->asOrderedSet()->first().oclAsType(MessageOccurrenceSpecification).covered->asOrderedSet()\r\n\t\t\t\t->first().oclAsType(Sequence)->asOrderedSet()->first().oclAsType(Lifeline).represents.type.oclAsType(Classifier).ownedElement\r\n\t\t\t\t->select(oclIsTypeOf(Signal))->includes(m.signature.oclAsType(Signal)\r\n\t\t\t)) )"
+ });
+ addAnnotation
+ (getRequest__RequestType__DiagnosticChain_Map(),
+ source,
+ new String[] {
+ "body", " let portType: Type= base_Port.type in\r\n portType.getAppliedStereotypes()->select(s|s.name=\'ServiceInterface\' or s.name=\'Consumer\')->size()=1 or portType.oclIsTypeOf(Interface) "
+ });
+ addAnnotation
+ (getRequest__IsConjugatedTrue__DiagnosticChain_Map(),
+ source,
+ new String[] {
+ "body", "base_Port.isConjugated"
+ });
+ addAnnotation
+ (getServiceInterface__PartsTypesOfServiceInterface__DiagnosticChain_Map(),
+ source,
+ new String[] {
+ "body", "self.base_Class.ownedAttribute->forAll(a|self.base_Class.getAllUsedInterfaces()->includes(a.type) or \r\n\tself.base_Class.allRealizedInterfaces()->includes(a.type))\r\n"
+ });
+ addAnnotation
+ (getServicesArchitecture__ParticipantsRoleCompatibility__DiagnosticChain_Map(),
+ source,
+ new String[] {
+ "body", "let properties : Set (UML::ConnectableElement) = self.base_Collaboration.role,\r\ncollBUses: Set(UML::Element)= self.base_Collaboration.collaborationUse in\r\ncollBUses->notEmpty() implies \r\n-- Each participant satisfying roles in a ServicesArchitecture shall have a port for each role binding attached to that participant. \r\n--This port shall have a type compliant with the type of the role used in the ServiceContract.\r\ncollBUses.oclAsType(UML::CollaborationUse).roleBinding-> forAll(rb| let \r\n\tportTypesOfSupplier=\trb.oclAsType(UML::Dependency).supplier->select(s|s.oclIsTypeOf(UML::Property))->select(s|s.oclAsType(UML::Property).type.oclIsTypeOf(Class))->collect(oclAsType(UML::Property).type.oclAsType(Class).getAllAttributes())->select(att|att.oclIsTypeOf(UML::Port))->collect(oclAsType(UML::Port).type) , clientType=rb.oclAsType(UML::Dependency).client->select(s|s.oclIsTypeOf(UML::Property))->collect(t:UML::NamedElement|t.oclAsType(UML::Property).type)->asOrderedSet()->first()in \t\r\nportTypesOfSupplier->includes(clientType)--1. The role correspond to a port type on the supplier.\r\n--2. the supplier has a port type that specializes the type of the role.\r\nor(clientType.oclAsType(Classifier).generalization.general->closure(general)->includes(portTypesOfSupplier)) \r\n--3. the supplier has a port type that realizes the type of the role.\r\nor(clientType.oclAsType(Classifier).getRelationships().oclAsType(UML::Realization)->includes(portTypesOfSupplier)) \r\n--4. the supplier has a port type that contains at least the ownedAttributes and ownedOperations of the role.\r\nor(portTypesOfSupplier.oclAsType(Classifier).getAllAttributes()->includesAll(clientType.oclAsType(Classifier).getAllAttributes()) \r\n\tand portTypesOfSupplier.oclAsType(Classifier).getAllOperations()->includesAll(clientType.oclAsType(Classifier).getAllOperations())\r\n) )"
+ });
+ addAnnotation
+ (getServicesArchitecture__PartsTypes__DiagnosticChain_Map(),
+ source,
+ new String[] {
+ "body", "let properties : Set (UML::ConnectableElement) = self.base_Collaboration.role,\r\ncollBUses: Set(UML::Element)= self.base_Collaboration.collaborationUse in\r\nproperties->notEmpty() implies \r\nproperties-> forAll(p|p.type->exists(p|p.getAppliedStereotypes()->select(s|s.name=\'Participant\' or s.name=\'Capability\' or s.name=\'Agent\' )->size()=1) )\r\n"
+ });
+ addAnnotation
+ (getCollaborationUse__RoleBindingClientSupplierCompatibility__DiagnosticChain_Map(),
+ source,
+ new String[] {
+ "body", "--only in case of defining Contract collaboratinUse inside the ServiceInterface\r\n--If the CollaborationUse has isStrict=true, then the parts must be compatible with the roles they are bound to.\r\nself.isStrict=true and self.base_CollaborationUse.owner.oclIsTypeOf(Classifier) \r\nand self.base_CollaborationUse.type.oclAsType(UML::Collaboration).getAppliedStereotypes()->select(s|s.name=\'ServiceContract\')->size()=1 implies\r\n--For parts to be compatible with a role, one of the following must be true:\r\n--1. The role and part have the same type.\r\nself.base_CollaborationUse.roleBinding-> forAll(rb|\r\n\t(let supplierType =(rb.oclAsType(UML::Dependency).supplier->select(s|s.oclIsTypeOf(UML::Property))->select(s|s.oclAsType(UML::Property).type.oclIsTypeOf(Class))\r\n\t->collect(oclAsType(UML::Property).type ->asOrderedSet()->first())),\r\n\tclientType= (rb.oclAsType(UML::Dependency).client->select(s|s.oclIsTypeOf(UML::Property))->collect(t:UML::NamedElement|t.oclAsType(UML::Property).type)->asOrderedSet()->first())in (\r\n\tsupplierType= clientType\r\n--2. The part (the supplier) has a type that specializes the type of the role.\r\nor(clientType.oclAsType(Classifier).generalization.general->closure(general)->includes(supplierType)) \r\n--3. The part has a type that realizes the type of the role.\r\nor(clientType.oclAsType(Classifier).getRelationships().oclAsType(UML::Realization)->includes(supplierType)) \r\n--4. The part has a type that contains at least the ownedAttributes and ownedOperations of the role. In general this is a\r\n--special case of item 3 where the part has an Interface type that realizes another Interface.\r\nor(supplierType.oclAsType(Classifier).getAllAttributes()->includesAll(clientType.oclAsType(Classifier).getAllAttributes()) \r\n\tand supplierType.oclAsType(Classifier).getAllOperations()->includesAll(clientType.oclAsType(Classifier).getAllOperations())\r\n) )\r\n--5. The type of each role in a service contract shall have a uses dependency to the type of all roles that role is connected to.\r\n)\r\n)"
+ });
+ addAnnotation
+ (getServiceChannel__Onlybinaryconnectorsallowed__DiagnosticChain_Map(),
+ source,
+ new String[] {
+ "body", "self.base_Connector.end->size() = 2 \r\n--and self.base_Connector.end->forAll(e|e.oclIsTypeOf(UML::Port)) "
+ });
+ addAnnotation
+ (getServiceChannel__ServiceChannelEndTypes__DiagnosticChain_Map(),
+ source,
+ new String[] {
+ "body", "let portsSet: OrderedSet(UML::ConnectorEnd)= self.base_Connector.end ->select(e|e.oclIsTypeOf(UML::Port)) in\r\n portsSet->size()>0 implies \r\n portsSet->forAll(p|p.getAppliedStereotypes()->select(s|s.name=\'Request\' or s.name=\'Service\')->size()=1 )\r\n"
+ });
+ addAnnotation
+ (getServiceChannel__Compatibility__DiagnosticChain_Map(),
+ source,
+ new String[] {
+ "body", "let \r\n requestTypeClassifier: UML::Classifier=self.base_Connector.end->select(p|p.oclIsTypeOf(UML::Port) and \toclIsTypeOf(SoaML::Request))\r\n -> select(p|p.oclAsType(UML::Port).type.oclIsTypeOf(Classifier))->first().oclAsType(UML::Port).type.oclAsType(Classifier),\r\n serviceTypeClassifier: UML::Classifier=self.base_Connector.end->select(p|p.oclIsTypeOf(UML::Port) and oclIsTypeOf(SoaML::Service))\r\n ->select(p|p.oclAsType(UML::Port).type.oclIsTypeOf(Classifier))->first().oclAsType(UML::Port).type.oclAsType(Classifier) in \r\n--The Request and Service connected by a ServiceChannel must be compatible\r\n --1. The Request and Service have the same type, either an Interface or ServiceInterface.\r\nnot requestTypeClassifier.oclIsUndefined() and not serviceTypeClassifier.oclIsUndefined() implies requestTypeClassifier=serviceTypeClassifier or\r\n --2. The type of the Service is a specialization or realization of the type of the Request. --2 implies 1\r\nserviceTypeClassifier.Generalization.general->closure(general)-> includes(requestTypeClassifier) or\r\n requestTypeClassifier.allUsedInterfaces()->includes(serviceTypeClassifier) or\r\n --3. The Request and Service have compatible needs and capabilities respectively. This means the Service must provide an \r\n--Operation for every Operation used through the Request, the Request must provide an Operation for every Operation used \r\n--through the Service, and the protocols for how the capabilities are compatible between the Request and Service. \r\n(requestTypeClassifier.allUsedInterfaces().getAllOperations()->includesAll(serviceTypeClassifier.allRealizedInterfaces().getAllOperations() )and \r\n\trequestTypeClassifier.allRealizedInterfaces().getAllOperations()-> includesAll(serviceTypeClassifier.allUsedInterfaces().getAllOperations()))"
+ });
+ addAnnotation
+ (getService__ServiceType__DiagnosticChain_Map(),
+ source,
+ new String[] {
+ "body", " if base_Port.type.oclIsUndefined() then false else\r\n let portType: Type= base_Port.type in\r\n portType.getAppliedStereotypes()->select(s|s.name=\'ServiceInterface\' or s.name=\'Provider\' )->size()=1 or portType.oclIsTypeOf(Interface)\r\n endif "
+ });
+ addAnnotation
+ (getService__IsConjugatedFalse__DiagnosticChain_Map(),
+ source,
+ new String[] {
+ "body", " \r\n not base_Port.isConjugated"
+ });
+ addAnnotation
+ (getPort__ConnectorRequired__DiagnosticChain_Map(),
+ source,
+ new String[] {
+ "body", "--self.connectorRequired=true implies self.base_Port.owner.\r\ntrue"
+ });
}
} //SoaMLPackageImpl
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/util/SoaMLSwitch.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/util/SoaMLSwitch.java
index 8c2ed9b6acd..46fbe4886cf 100644
--- a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/util/SoaMLSwitch.java
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/util/SoaMLSwitch.java
@@ -56,7 +56,7 @@ public class SoaMLSwitch<T> extends Switch<T> {
* Checks whether this is a switch for the given package.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
- * @parameter ePackage the package in question.
+ * @param ePackage the package in question.
* @return whether this is a switch for the given package.
* @generated
*/
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/AgentValidator.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/AgentValidator.java
new file mode 100644
index 00000000000..17f81bf437f
--- /dev/null
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/AgentValidator.java
@@ -0,0 +1,17 @@
+/**
+ *
+ * $Id$
+ */
+package SoaML.validation;
+
+
+/**
+ * A sample validator interface for {@link SoaML.Agent}.
+ * This doesn't really do anything, and it's not a real EMF artifact.
+ * It was generated by the org.eclipse.emf.examples.generator.validator plug-in to illustrate how EMF's code generator can be extended.
+ * This can be disabled with -vmargs -Dorg.eclipse.emf.examples.generator.validator=false.
+ */
+public interface AgentValidator {
+ boolean validate();
+
+}
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/AttachmentValidator.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/AttachmentValidator.java
new file mode 100644
index 00000000000..bda15954ce5
--- /dev/null
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/AttachmentValidator.java
@@ -0,0 +1,21 @@
+/**
+ *
+ * $Id$
+ */
+package SoaML.validation;
+
+import org.eclipse.uml2.uml.Property;
+
+/**
+ * A sample validator interface for {@link SoaML.Attachment}.
+ * This doesn't really do anything, and it's not a real EMF artifact.
+ * It was generated by the org.eclipse.emf.examples.generator.validator plug-in to illustrate how EMF's code generator can be extended.
+ * This can be disabled with -vmargs -Dorg.eclipse.emf.examples.generator.validator=false.
+ */
+public interface AttachmentValidator {
+ boolean validate();
+
+ boolean validateEncoding(String value);
+ boolean validateBase_Property(Property value);
+ boolean validateMimetype(String value);
+}
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/CapabilityValidator.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/CapabilityValidator.java
new file mode 100644
index 00000000000..52b1cd131d6
--- /dev/null
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/CapabilityValidator.java
@@ -0,0 +1,18 @@
+/**
+ *
+ * $Id$
+ */
+package SoaML.validation;
+
+
+/**
+ * A sample validator interface for {@link SoaML.Capability}.
+ * This doesn't really do anything, and it's not a real EMF artifact.
+ * It was generated by the org.eclipse.emf.examples.generator.validator plug-in to illustrate how EMF's code generator can be extended.
+ * This can be disabled with -vmargs -Dorg.eclipse.emf.examples.generator.validator=false.
+ */
+public interface CapabilityValidator {
+ boolean validate();
+
+ boolean validateBase_Class(org.eclipse.uml2.uml.Class value);
+}
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/CatalogValidator.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/CatalogValidator.java
new file mode 100644
index 00000000000..3eb6f0f7eb2
--- /dev/null
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/CatalogValidator.java
@@ -0,0 +1,18 @@
+/**
+ *
+ * $Id$
+ */
+package SoaML.validation;
+
+
+/**
+ * A sample validator interface for {@link SoaML.Catalog}.
+ * This doesn't really do anything, and it's not a real EMF artifact.
+ * It was generated by the org.eclipse.emf.examples.generator.validator plug-in to illustrate how EMF's code generator can be extended.
+ * This can be disabled with -vmargs -Dorg.eclipse.emf.examples.generator.validator=false.
+ */
+public interface CatalogValidator {
+ boolean validate();
+
+ boolean validateBase_Package(org.eclipse.uml2.uml.Package value);
+}
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/CategorizationValidator.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/CategorizationValidator.java
new file mode 100644
index 00000000000..3d90f361aa2
--- /dev/null
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/CategorizationValidator.java
@@ -0,0 +1,19 @@
+/**
+ *
+ * $Id$
+ */
+package SoaML.validation;
+
+import org.eclipse.uml2.uml.Dependency;
+
+/**
+ * A sample validator interface for {@link SoaML.Categorization}.
+ * This doesn't really do anything, and it's not a real EMF artifact.
+ * It was generated by the org.eclipse.emf.examples.generator.validator plug-in to illustrate how EMF's code generator can be extended.
+ * This can be disabled with -vmargs -Dorg.eclipse.emf.examples.generator.validator=false.
+ */
+public interface CategorizationValidator {
+ boolean validate();
+
+ boolean validateBase_Dependency(Dependency value);
+}
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/CategoryValidator.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/CategoryValidator.java
new file mode 100644
index 00000000000..74b99199da1
--- /dev/null
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/CategoryValidator.java
@@ -0,0 +1,17 @@
+/**
+ *
+ * $Id$
+ */
+package SoaML.validation;
+
+
+/**
+ * A sample validator interface for {@link SoaML.Category}.
+ * This doesn't really do anything, and it's not a real EMF artifact.
+ * It was generated by the org.eclipse.emf.examples.generator.validator plug-in to illustrate how EMF's code generator can be extended.
+ * This can be disabled with -vmargs -Dorg.eclipse.emf.examples.generator.validator=false.
+ */
+public interface CategoryValidator {
+ boolean validate();
+
+}
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/CategoryValueValidator.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/CategoryValueValidator.java
new file mode 100644
index 00000000000..7a45211df91
--- /dev/null
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/CategoryValueValidator.java
@@ -0,0 +1,17 @@
+/**
+ *
+ * $Id$
+ */
+package SoaML.validation;
+
+
+/**
+ * A sample validator interface for {@link SoaML.CategoryValue}.
+ * This doesn't really do anything, and it's not a real EMF artifact.
+ * It was generated by the org.eclipse.emf.examples.generator.validator plug-in to illustrate how EMF's code generator can be extended.
+ * This can be disabled with -vmargs -Dorg.eclipse.emf.examples.generator.validator=false.
+ */
+public interface CategoryValueValidator {
+ boolean validate();
+
+}
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/CollaborationUseValidator.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/CollaborationUseValidator.java
new file mode 100644
index 00000000000..2f16e6dbb48
--- /dev/null
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/CollaborationUseValidator.java
@@ -0,0 +1,20 @@
+/**
+ *
+ * $Id$
+ */
+package SoaML.validation;
+
+import org.eclipse.uml2.uml.CollaborationUse;
+
+/**
+ * A sample validator interface for {@link SoaML.CollaborationUse}.
+ * This doesn't really do anything, and it's not a real EMF artifact.
+ * It was generated by the org.eclipse.emf.examples.generator.validator plug-in to illustrate how EMF's code generator can be extended.
+ * This can be disabled with -vmargs -Dorg.eclipse.emf.examples.generator.validator=false.
+ */
+public interface CollaborationUseValidator {
+ boolean validate();
+
+ boolean validateBase_CollaborationUse(CollaborationUse value);
+ boolean validateIsStrict(boolean value);
+}
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/CollaborationValidator.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/CollaborationValidator.java
new file mode 100644
index 00000000000..900e9fe16a4
--- /dev/null
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/CollaborationValidator.java
@@ -0,0 +1,20 @@
+/**
+ *
+ * $Id$
+ */
+package SoaML.validation;
+
+import org.eclipse.uml2.uml.Collaboration;
+
+/**
+ * A sample validator interface for {@link SoaML.Collaboration}.
+ * This doesn't really do anything, and it's not a real EMF artifact.
+ * It was generated by the org.eclipse.emf.examples.generator.validator plug-in to illustrate how EMF's code generator can be extended.
+ * This can be disabled with -vmargs -Dorg.eclipse.emf.examples.generator.validator=false.
+ */
+public interface CollaborationValidator {
+ boolean validate();
+
+ boolean validateBase_Collaboration(Collaboration value);
+ boolean validateIsStrict(boolean value);
+}
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/ConsumerValidator.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/ConsumerValidator.java
new file mode 100644
index 00000000000..d9bc803030a
--- /dev/null
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/ConsumerValidator.java
@@ -0,0 +1,20 @@
+/**
+ *
+ * $Id$
+ */
+package SoaML.validation;
+
+import org.eclipse.uml2.uml.Interface;
+
+/**
+ * A sample validator interface for {@link SoaML.Consumer}.
+ * This doesn't really do anything, and it's not a real EMF artifact.
+ * It was generated by the org.eclipse.emf.examples.generator.validator plug-in to illustrate how EMF's code generator can be extended.
+ * This can be disabled with -vmargs -Dorg.eclipse.emf.examples.generator.validator=false.
+ */
+public interface ConsumerValidator {
+ boolean validate();
+
+ boolean validateBase_Interface(Interface value);
+ boolean validateBase_Class(org.eclipse.uml2.uml.Class value);
+}
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/ExposeValidator.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/ExposeValidator.java
new file mode 100644
index 00000000000..d62b07710ce
--- /dev/null
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/ExposeValidator.java
@@ -0,0 +1,19 @@
+/**
+ *
+ * $Id$
+ */
+package SoaML.validation;
+
+import org.eclipse.uml2.uml.Dependency;
+
+/**
+ * A sample validator interface for {@link SoaML.Expose}.
+ * This doesn't really do anything, and it's not a real EMF artifact.
+ * It was generated by the org.eclipse.emf.examples.generator.validator plug-in to illustrate how EMF's code generator can be extended.
+ * This can be disabled with -vmargs -Dorg.eclipse.emf.examples.generator.validator=false.
+ */
+public interface ExposeValidator {
+ boolean validate();
+
+ boolean validateBase_Dependency(Dependency value);
+}
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/FreeFormDescriptorValidator.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/FreeFormDescriptorValidator.java
new file mode 100644
index 00000000000..383c4c047c6
--- /dev/null
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/FreeFormDescriptorValidator.java
@@ -0,0 +1,19 @@
+/**
+ *
+ * $Id$
+ */
+package SoaML.validation;
+
+import org.eclipse.uml2.uml.Property;
+
+/**
+ * A sample validator interface for {@link SoaML.FreeFormDescriptor}.
+ * This doesn't really do anything, and it's not a real EMF artifact.
+ * It was generated by the org.eclipse.emf.examples.generator.validator plug-in to illustrate how EMF's code generator can be extended.
+ * This can be disabled with -vmargs -Dorg.eclipse.emf.examples.generator.validator=false.
+ */
+public interface FreeFormDescriptorValidator {
+ boolean validate();
+
+ boolean validateBase_Property(Property value);
+}
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/FreeFormValueValidator.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/FreeFormValueValidator.java
new file mode 100644
index 00000000000..87c6db90dfc
--- /dev/null
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/FreeFormValueValidator.java
@@ -0,0 +1,19 @@
+/**
+ *
+ * $Id$
+ */
+package SoaML.validation;
+
+import org.eclipse.uml2.uml.ValueSpecification;
+
+/**
+ * A sample validator interface for {@link SoaML.FreeFormValue}.
+ * This doesn't really do anything, and it's not a real EMF artifact.
+ * It was generated by the org.eclipse.emf.examples.generator.validator plug-in to illustrate how EMF's code generator can be extended.
+ * This can be disabled with -vmargs -Dorg.eclipse.emf.examples.generator.validator=false.
+ */
+public interface FreeFormValueValidator {
+ boolean validate();
+
+ boolean validateBase_ValueSpecification(ValueSpecification value);
+}
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/MessageTypeValidator.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/MessageTypeValidator.java
new file mode 100644
index 00000000000..85a4fbe6d90
--- /dev/null
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/MessageTypeValidator.java
@@ -0,0 +1,23 @@
+/**
+ *
+ * $Id$
+ */
+package SoaML.validation;
+
+import org.eclipse.uml2.uml.DataType;
+import org.eclipse.uml2.uml.Signal;
+
+/**
+ * A sample validator interface for {@link SoaML.MessageType}.
+ * This doesn't really do anything, and it's not a real EMF artifact.
+ * It was generated by the org.eclipse.emf.examples.generator.validator plug-in to illustrate how EMF's code generator can be extended.
+ * This can be disabled with -vmargs -Dorg.eclipse.emf.examples.generator.validator=false.
+ */
+public interface MessageTypeValidator {
+ boolean validate();
+
+ boolean validateBase_Signal(Signal value);
+ boolean validateEncoding(String value);
+ boolean validateBase_Class(org.eclipse.uml2.uml.Class value);
+ boolean validateBase_DataType(DataType value);
+}
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/MilestoneValidator.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/MilestoneValidator.java
new file mode 100644
index 00000000000..8867dd3e0a5
--- /dev/null
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/MilestoneValidator.java
@@ -0,0 +1,26 @@
+/**
+ *
+ * $Id$
+ */
+package SoaML.validation;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.uml2.uml.Comment;
+import org.eclipse.uml2.uml.Signal;
+import org.eclipse.uml2.uml.ValueSpecification;
+
+/**
+ * A sample validator interface for {@link SoaML.Milestone}.
+ * This doesn't really do anything, and it's not a real EMF artifact.
+ * It was generated by the org.eclipse.emf.examples.generator.validator plug-in to illustrate how EMF's code generator can be extended.
+ * This can be disabled with -vmargs -Dorg.eclipse.emf.examples.generator.validator=false.
+ */
+public interface MilestoneValidator {
+ boolean validate();
+
+ boolean validateSignal(Signal value);
+ boolean validateProgress(int value);
+ boolean validateValue(EList<ValueSpecification> value);
+ boolean validateBase_Comment(Comment value);
+}
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/MotivationElementValidator.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/MotivationElementValidator.java
new file mode 100644
index 00000000000..1a5256aacde
--- /dev/null
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/MotivationElementValidator.java
@@ -0,0 +1,17 @@
+/**
+ *
+ * $Id$
+ */
+package SoaML.validation;
+
+
+/**
+ * A sample validator interface for {@link SoaML.MotivationElement}.
+ * This doesn't really do anything, and it's not a real EMF artifact.
+ * It was generated by the org.eclipse.emf.examples.generator.validator plug-in to illustrate how EMF's code generator can be extended.
+ * This can be disabled with -vmargs -Dorg.eclipse.emf.examples.generator.validator=false.
+ */
+public interface MotivationElementValidator {
+ boolean validate();
+
+}
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/MotivationRealizationValidator.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/MotivationRealizationValidator.java
new file mode 100644
index 00000000000..57c31aafef8
--- /dev/null
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/MotivationRealizationValidator.java
@@ -0,0 +1,19 @@
+/**
+ *
+ * $Id$
+ */
+package SoaML.validation;
+
+import org.eclipse.uml2.uml.Realization;
+
+/**
+ * A sample validator interface for {@link SoaML.MotivationRealization}.
+ * This doesn't really do anything, and it's not a real EMF artifact.
+ * It was generated by the org.eclipse.emf.examples.generator.validator plug-in to illustrate how EMF's code generator can be extended.
+ * This can be disabled with -vmargs -Dorg.eclipse.emf.examples.generator.validator=false.
+ */
+public interface MotivationRealizationValidator {
+ boolean validate();
+
+ boolean validateBase_Realization(Realization value);
+}
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/NodeDescriptorValidator.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/NodeDescriptorValidator.java
new file mode 100644
index 00000000000..ef65e894136
--- /dev/null
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/NodeDescriptorValidator.java
@@ -0,0 +1,19 @@
+/**
+ *
+ * $Id$
+ */
+package SoaML.validation;
+
+import org.eclipse.uml2.uml.Artifact;
+
+/**
+ * A sample validator interface for {@link SoaML.NodeDescriptor}.
+ * This doesn't really do anything, and it's not a real EMF artifact.
+ * It was generated by the org.eclipse.emf.examples.generator.validator plug-in to illustrate how EMF's code generator can be extended.
+ * This can be disabled with -vmargs -Dorg.eclipse.emf.examples.generator.validator=false.
+ */
+public interface NodeDescriptorValidator {
+ boolean validate();
+
+ boolean validateBase_Artifact(Artifact value);
+}
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/ParticipantValidator.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/ParticipantValidator.java
new file mode 100644
index 00000000000..d56a81047f7
--- /dev/null
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/ParticipantValidator.java
@@ -0,0 +1,18 @@
+/**
+ *
+ * $Id$
+ */
+package SoaML.validation;
+
+
+/**
+ * A sample validator interface for {@link SoaML.Participant}.
+ * This doesn't really do anything, and it's not a real EMF artifact.
+ * It was generated by the org.eclipse.emf.examples.generator.validator plug-in to illustrate how EMF's code generator can be extended.
+ * This can be disabled with -vmargs -Dorg.eclipse.emf.examples.generator.validator=false.
+ */
+public interface ParticipantValidator {
+ boolean validate();
+
+ boolean validateBase_Class(org.eclipse.uml2.uml.Class value);
+}
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/PortValidator.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/PortValidator.java
new file mode 100644
index 00000000000..ab09f80a5a2
--- /dev/null
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/PortValidator.java
@@ -0,0 +1,20 @@
+/**
+ *
+ * $Id$
+ */
+package SoaML.validation;
+
+import org.eclipse.uml2.uml.Port;
+
+/**
+ * A sample validator interface for {@link SoaML.Port}.
+ * This doesn't really do anything, and it's not a real EMF artifact.
+ * It was generated by the org.eclipse.emf.examples.generator.validator plug-in to illustrate how EMF's code generator can be extended.
+ * This can be disabled with -vmargs -Dorg.eclipse.emf.examples.generator.validator=false.
+ */
+public interface PortValidator {
+ boolean validate();
+
+ boolean validateBase_Port(Port value);
+ boolean validateConnectorRequired(boolean value);
+}
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/PropertyValidator.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/PropertyValidator.java
new file mode 100644
index 00000000000..e6f101b2ed2
--- /dev/null
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/PropertyValidator.java
@@ -0,0 +1,20 @@
+/**
+ *
+ * $Id$
+ */
+package SoaML.validation;
+
+import org.eclipse.uml2.uml.Property;
+
+/**
+ * A sample validator interface for {@link SoaML.Property}.
+ * This doesn't really do anything, and it's not a real EMF artifact.
+ * It was generated by the org.eclipse.emf.examples.generator.validator plug-in to illustrate how EMF's code generator can be extended.
+ * This can be disabled with -vmargs -Dorg.eclipse.emf.examples.generator.validator=false.
+ */
+public interface PropertyValidator {
+ boolean validate();
+
+ boolean validateIsID(boolean value);
+ boolean validateBase_Property(Property value);
+}
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/ProviderValidator.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/ProviderValidator.java
new file mode 100644
index 00000000000..7547fd14dd9
--- /dev/null
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/ProviderValidator.java
@@ -0,0 +1,20 @@
+/**
+ *
+ * $Id$
+ */
+package SoaML.validation;
+
+import org.eclipse.uml2.uml.Interface;
+
+/**
+ * A sample validator interface for {@link SoaML.Provider}.
+ * This doesn't really do anything, and it's not a real EMF artifact.
+ * It was generated by the org.eclipse.emf.examples.generator.validator plug-in to illustrate how EMF's code generator can be extended.
+ * This can be disabled with -vmargs -Dorg.eclipse.emf.examples.generator.validator=false.
+ */
+public interface ProviderValidator {
+ boolean validate();
+
+ boolean validateBase_Class(org.eclipse.uml2.uml.Class value);
+ boolean validateBase_Interface(Interface value);
+}
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/RequestValidator.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/RequestValidator.java
new file mode 100644
index 00000000000..9fc6c064702
--- /dev/null
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/RequestValidator.java
@@ -0,0 +1,19 @@
+/**
+ *
+ * $Id$
+ */
+package SoaML.validation;
+
+import org.eclipse.uml2.uml.Port;
+
+/**
+ * A sample validator interface for {@link SoaML.Request}.
+ * This doesn't really do anything, and it's not a real EMF artifact.
+ * It was generated by the org.eclipse.emf.examples.generator.validator plug-in to illustrate how EMF's code generator can be extended.
+ * This can be disabled with -vmargs -Dorg.eclipse.emf.examples.generator.validator=false.
+ */
+public interface RequestValidator {
+ boolean validate();
+
+ boolean validateBase_Port(Port value);
+}
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/ServiceChannelValidator.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/ServiceChannelValidator.java
new file mode 100644
index 00000000000..4c40d5584b1
--- /dev/null
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/ServiceChannelValidator.java
@@ -0,0 +1,19 @@
+/**
+ *
+ * $Id$
+ */
+package SoaML.validation;
+
+import org.eclipse.uml2.uml.Connector;
+
+/**
+ * A sample validator interface for {@link SoaML.ServiceChannel}.
+ * This doesn't really do anything, and it's not a real EMF artifact.
+ * It was generated by the org.eclipse.emf.examples.generator.validator plug-in to illustrate how EMF's code generator can be extended.
+ * This can be disabled with -vmargs -Dorg.eclipse.emf.examples.generator.validator=false.
+ */
+public interface ServiceChannelValidator {
+ boolean validate();
+
+ boolean validateBase_Connector(Connector value);
+}
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/ServiceContractValidator.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/ServiceContractValidator.java
new file mode 100644
index 00000000000..27bbae5a073
--- /dev/null
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/ServiceContractValidator.java
@@ -0,0 +1,17 @@
+/**
+ *
+ * $Id$
+ */
+package SoaML.validation;
+
+
+/**
+ * A sample validator interface for {@link SoaML.ServiceContract}.
+ * This doesn't really do anything, and it's not a real EMF artifact.
+ * It was generated by the org.eclipse.emf.examples.generator.validator plug-in to illustrate how EMF's code generator can be extended.
+ * This can be disabled with -vmargs -Dorg.eclipse.emf.examples.generator.validator=false.
+ */
+public interface ServiceContractValidator {
+ boolean validate();
+
+}
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/ServiceInterfaceValidator.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/ServiceInterfaceValidator.java
new file mode 100644
index 00000000000..f3c2eec78d2
--- /dev/null
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/ServiceInterfaceValidator.java
@@ -0,0 +1,20 @@
+/**
+ *
+ * $Id$
+ */
+package SoaML.validation;
+
+import org.eclipse.uml2.uml.Interface;
+
+/**
+ * A sample validator interface for {@link SoaML.ServiceInterface}.
+ * This doesn't really do anything, and it's not a real EMF artifact.
+ * It was generated by the org.eclipse.emf.examples.generator.validator plug-in to illustrate how EMF's code generator can be extended.
+ * This can be disabled with -vmargs -Dorg.eclipse.emf.examples.generator.validator=false.
+ */
+public interface ServiceInterfaceValidator {
+ boolean validate();
+
+ boolean validateBase_Interface(Interface value);
+ boolean validateBase_Class(org.eclipse.uml2.uml.Class value);
+}
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/ServiceValidator.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/ServiceValidator.java
new file mode 100644
index 00000000000..64d4d5e6bd2
--- /dev/null
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/ServiceValidator.java
@@ -0,0 +1,19 @@
+/**
+ *
+ * $Id$
+ */
+package SoaML.validation;
+
+import org.eclipse.uml2.uml.Port;
+
+/**
+ * A sample validator interface for {@link SoaML.Service}.
+ * This doesn't really do anything, and it's not a real EMF artifact.
+ * It was generated by the org.eclipse.emf.examples.generator.validator plug-in to illustrate how EMF's code generator can be extended.
+ * This can be disabled with -vmargs -Dorg.eclipse.emf.examples.generator.validator=false.
+ */
+public interface ServiceValidator {
+ boolean validate();
+
+ boolean validateBase_Port(Port value);
+}
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/ServicesArchitectureValidator.java b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/ServicesArchitectureValidator.java
new file mode 100644
index 00000000000..a66a4330603
--- /dev/null
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/src/SoaML/validation/ServicesArchitectureValidator.java
@@ -0,0 +1,17 @@
+/**
+ *
+ * $Id$
+ */
+package SoaML.validation;
+
+
+/**
+ * A sample validator interface for {@link SoaML.ServicesArchitecture}.
+ * This doesn't really do anything, and it's not a real EMF artifact.
+ * It was generated by the org.eclipse.emf.examples.generator.validator plug-in to illustrate how EMF's code generator can be extended.
+ * This can be disabled with -vmargs -Dorg.eclipse.emf.examples.generator.validator=false.
+ */
+public interface ServicesArchitectureValidator {
+ boolean validate();
+
+}
diff --git a/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/text/description.txt b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/text/description.txt
new file mode 100644
index 00000000000..94c1018bd1e
--- /dev/null
+++ b/extraplugins/soaml/org.eclipse.papyrus.soaml.profile/text/description.txt
@@ -0,0 +1,121 @@
+Model SoaML
+
+This model description is not a real EMF artifact. It was generated by the
+org.eclipse.emf.examples.generator.validator plug-in to illustrate how EMF's
+code generator can be extended.
+This can be disabled with -vmargs -Dorg.eclipse.emf.examples.generator.validator=false.
+
+Package SoaML <http://Papyrus/SoaML/1>
+
+ Class Agent -> Participant
+ Operation isActive(EDiagnosticChain, EMap) : EBoolean
+
+ Class Participant
+ Reference base_Class : Class<<1..1>>
+ Operation noRealizedUsedInterface(EDiagnosticChain, EMap) : EBoolean
+ Operation portTypes(EDiagnosticChain, EMap) : EBoolean
+
+ Class Collaboration
+ Reference base_Collaboration : Collaboration<<1..1>>
+ Attribute isStrict : Boolean<<1..1>>
+
+ Class MotivationElement
+
+ Class Provider
+ Reference base_Class : Class
+ Reference base_Interface : Interface
+
+ Class FreeFormValue
+ Reference base_ValueSpecification : ValueSpecification<<1..1>>
+
+ Class MessageType
+ Reference base_Signal : Signal
+ Attribute encoding : String
+ Reference base_Class : Class
+ Reference base_DataType : DataType
+ Operation noOwnedBehaviors(EDiagnosticChain, EMap) : EBoolean
+ Operation noOwnedOperations(EDiagnosticChain, EMap) : EBoolean
+ Operation publicAttributes(EDiagnosticChain, EMap) : EBoolean
+
+ Class Category -> NodeDescriptor
+
+ Class NodeDescriptor
+ Reference base_Artifact : Artifact<<1..1>>
+
+ Class Milestone
+ Reference signal : Signal
+ Attribute progress : Integer<<1..1>>
+ Reference value : ValueSpecification<<0..*>>
+ Reference base_Comment : Comment<<1..1>>
+
+ Class FreeFormDescriptor
+ Reference base_Property : Property<<1..1>>
+
+ Class CategoryValue -> FreeFormValue
+
+ Class ServiceContract -> Collaboration
+ Operation RoleType(EDiagnosticChain, EMap) : EBoolean
+ Operation AttachedBehaviorCompatibility(EDiagnosticChain, EMap) : EBoolean
+
+ Class Request
+ Reference base_Port : Port<<1..1>>
+ Operation requestType(EDiagnosticChain, EMap) : EBoolean
+ Operation isConjugatedTrue(EDiagnosticChain, EMap) : EBoolean
+
+ Class Consumer
+ Reference base_Interface : Interface
+ Reference base_Class : Class
+
+ Class Catalog -> NodeDescriptor
+ Reference base_Package : Package<<1..1>>
+
+ Class Capability
+ Reference base_Class : Class<<1..1>>
+
+ Class Categorization
+ Reference base_Dependency : Dependency<<1..1>>
+
+ Class MotivationRealization
+ Reference base_Realization : Realization<<1..1>>
+
+ Class ServiceInterface
+ Reference base_Class : Class
+ Operation partsTypesOfServiceInterface(EDiagnosticChain, EMap) : EBoolean
+
+ Class ServicesArchitecture -> Collaboration
+ Operation participantsRoleCompatibility(EDiagnosticChain, EMap) : EBoolean
+ Operation partsTypes(EDiagnosticChain, EMap) : EBoolean
+ Operation getIcon(Image<<1..1>>) : void<<1..1>>
+
+ Class Attachment
+ Attribute encoding : String<<1..1>>
+ Reference base_Property : Property<<1..1>>
+ Attribute mimetype : String<<1..1>>
+
+ Class CollaborationUse
+ Reference base_CollaborationUse : CollaborationUse<<1..1>>
+ Attribute isStrict : Boolean<<1..1>>
+ Operation RoleBindingClientSupplierCompatibility(EDiagnosticChain, EMap) : EBoolean
+
+ Class ServiceChannel
+ Reference base_Connector : Connector<<1..1>>
+ Operation Onlybinaryconnectorsallowed(EDiagnosticChain, EMap) : EBoolean
+ Operation serviceChannelEndTypes(EDiagnosticChain, EMap) : EBoolean
+ Operation Compatibility(EDiagnosticChain, EMap) : EBoolean
+
+ Class Service
+ Reference base_Port : Port<<1..1>>
+ Operation serviceType(EDiagnosticChain, EMap) : EBoolean
+ Operation isConjugatedFalse(EDiagnosticChain, EMap) : EBoolean
+
+ Class Port
+ Reference base_Port : Port<<1..1>>
+ Attribute connectorRequired : Boolean<<1..1>>
+ Operation connectorRequired(EDiagnosticChain, EMap) : EBoolean
+
+ Class Property
+ Attribute isID : Boolean<<1..1>>
+ Reference base_Property : Property<<1..1>>
+
+ Class Expose
+ Reference base_Dependency : Dependency<<1..1>>

Back to the top