Bug 520742 - [SysML 1.4] [Sequence Diagram] Validation issues when droping a Block on sequence diagram
Summary: [SysML 1.4] [Sequence Diagram] Validation issues when droping a Block on sequ...
Status: NEW
Alias: None
Product: Papyrus
Classification: Modeling
Component: SysML (show other bugs)
Version: 0.10.0   Edit
Hardware: PC Linux
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Project Inbox CLA
QA Contact: Benoit Maggi CLA
URL:
Whiteboard:
Keywords:
Depends on: 520840
Blocks:
  Show dependency tree
 
Reported: 2017-08-09 07:41 EDT by Emmanuel Arias CLA
Modified: 2017-08-16 10:41 EDT (History)
1 user (show)

See Also:


Attachments
Creation of SD problem (982.05 KB, application/gzip)
2017-08-09 07:41 EDT, Emmanuel Arias CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Emmanuel Arias CLA 2017-08-09 07:41:38 EDT
Created attachment 269756 [details]
Creation of SD problem

Hello everybody, 

This is my first report and I am new on SysML and Papyrus. So, I don't know if this problem is a 'bug' or my foul.

I define a BDD with two block: 'Clients'  and  'PyLeanCanvasLib'. When I want to define a SD, I just move the Client Block inside the SD. This action create a lifetime named ':Client'. That is OK.


If I do a 'validation model' I have this error:

Error	8.3.2.3 Block [4] In the UML metamodel on which SysML is built, a Property that is typed by a block must be defined as an end of an association. (An inverse end of this association, whether owned by another block or the association itself, must always be present so there is always a metamodel element to record the inverse multiplicity of the reference.)	<Property> : Clients	RootElement::Behavior::Write Problem	EMF Problem


So, I make an association with this two blocks, and I define the blocks as an end of an association.

Then, I just create a lifetime that represents the property generated in the association. This create an '<Unnamed>:Client'. But I Cannot change the name of the property inside the SD.

The only way to put an name in the lifetime is put the name in the property of the association. But this make the next error when I validate the model:

Error	8.3.2.3 Block [3] In the UML metamodel on which SysML is built, any instance of the Property metaclass that is typed by a block (a Class with the «block» stereotype applied) and which is owned by an Association may not have a name and may not be defined as a navigable owned end of the association. (While the Property has a «name» property as defined by its NamedElement	<Property> pyLeanCanvasLib : PyLeanCanvasLib	null	EMF Problem


What is the problem?

Regards!
eamanu
Comment 1 Benoit Maggi CLA 2017-08-10 08:56:29 EDT
I can confirm the behavior on 0.10.0

A way to achieve your goal: 
 - create a part in an IBD
 - create a LifeLine 
 - check the properties of the LifeLine
     - change the "represents" to your part.

=> This should create a valid model

Some comments:

 - About validation, these are the normative rules not sure if it's completely coherent with Sequence Diagram.
You can disable the rules in 
Window > Preferences > Model Validation > Constraints

 - I let the bug open since the use case seems regular, there is probably room for improvement on drag&drop:
   - <<Block>> on Interaction
   - property on Interaction
Comment 2 Emmanuel Arias CLA 2017-08-16 10:41:30 EDT
Hi Benoit Maggi, 

Your solution work for me. 

I will study the problem to know what happened. And the try to make a commit.

Thanks!
eamanu