Papyrus Photon - struggling with sequence diagrams [message #1791836] |
Thu, 05 July 2018 20:41  |
Eclipse User |
|
|
|
Hello
I need some help solving following issues I experience in Papyrus 4.0 sequence diagrams. I did not have these issues in Oxygen (I think it was 3.4??? Maybe)
1. Cannot resize the interaction frame created by Papyrus on diagram creation. Especially when it's too big and I need to shrink it
2. Can create but cannot show in the diagram guard conditions for any operand or message operation. I define the guard using the value of LiteralString in the properties view
Before I create a bug report I'd like to check if I'm doing something wrong... if anyone had success with these please advise! Thanks!
|
|
|
|
Re: Papyrus Photon - struggling with sequence diagrams [message #1791859 is a reply to message #1791836] |
Fri, 06 July 2018 05:18   |
Eclipse User |
|
|
|
Hi Richard,
just to cite the UML 2.5.x spec
8.6.17 StringExpression [Class]
8.6.17.1 Description
A StringExpression is an Expression that specifies a String value that is derived by concatenating a sequence of operands with String values or a sequence of subExpressions, some of which might be template parameters.
8.6.17.2 Diagrams
Expressions, Namespaces
8.6.17.3 Generalizations
TemplateableElement, Expression
8.6.17.4 Association Ends
owningExpression : StringExpression [0..1]{subsets Element::owner} (opposite
StringExpression::subExpression)
The StringExpression of which this StringExpression is a subExpression.
♦ subExpression : StringExpression [0..*]{ordered, subsets Element::ownedElement} (opposite
StringExpression::owningExpression)
The StringExpressions that constitute this StringExpression.
8.6.17.5 Operations
stringValue() : String {redefines ValueSpecification::stringValue()}
The query stringValue() returns the String resulting from concatenating, in order, all the component String
values of all the operands or subExpressions that are part of the StringExpression.
body: if subExpression->notEmpty()
then subExpression->iterate(se; stringValue: String = '' |
stringValue.concat(se.stringValue()))
else operand->iterate(op; stringValue: String = '' | stringValue.concat(op.stringValue()))
endif
8.6.17.6 Constraints
operands
All the operands of a StringExpression must be LiteralStrings
inv: operand->forAll (oclIsKindOf (LiteralString))
subexpressions
If a StringExpression has sub-expressions, it cannot have operands and vice versa (this avoids the problem of
having to define a collating sequence between operands and subexpressions).
inv: if subExpression->notEmpty() then operand->isEmpty() else operand->notEmpty() endif
Am I am the only one missing the point about guards?
/Carsten
[Updated on: Fri, 06 July 2018 05:24] by Moderator
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Powered by
FUDForum. Page generated in 0.06334 seconds