Skip to content

Commit 0939613

Browse files
committed
[doc] Add shapes about ViewUsages and ViewDefinitions
Signed-off-by: Axel RICHARD <[email protected]>
1 parent 3764f49 commit 0939613

11 files changed

+186
-0
lines changed

CHANGELOG.adoc

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@
44

55
=== Shapes
66

7+
- Add support for `ViewUsages` and `ViewDefinitions`
8+
79
=== Breaking changes
810

911
=== Dependency update
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
= Add support for ViewUsages
2+
3+
This shape is the container shape for the support of `ViewUsage` elements in SysON.
4+
5+
The shapes are:
6+
7+
* link:./diagrams_on_view_usages.adoc[Diagrams on ViewUsages]
8+
* link:./display_view_usages_in_diagrams.adoc[Display ViewUsages in Diagrams]
9+
* link:./manage_update_of_view_usages_in_diagrams.adoc[Manage Update of ViewUsages in Diagrams]
10+
11+
The work to do (ordered by priority):
12+
13+
. Allow creation of `ViewUsages` from _New object_ menu in _Explorer_ view.
14+
. Create `ViewUsage` semantic element in addition to _diagram representation_ on _New representation_ menu in _Explorer_ view.
15+
. Update _Explorer_ view to open associated _diagram representation_ when a `ViewUsage` is selected.
16+
. Update _Explorer_ view to hide _diagram representation_.
17+
. Update _Details_ view to display two tabs when a `ViewUsage` is selected: one for the semantic element, and one for the associated _diagram representation_.
18+
. Display `ViewUsages` in diagrams by implementing a new custom shape (like for `Packages` or `Comments`).
19+
. Update SysON metamodel if needed to handle the list of semantic elements associated to a `ViewUsage`.
20+
. Display `ViewUsages` contents in diagrams.
21+
. Add new menu allowing to hide `ViewUsages` graphical elements in diagrams and display `ViewUsages` graphical elements' contents in `ViewUsages` graphical elements' container.
22+
. Add new option in "Manage Visibility" action, allowing to reveal a parent `ViewUsage` graphical element.
23+
. Update Sirius Web to allow switching of _NodeDescription_ on graphical elements.
24+
. Merge all SysON _DiagramDescriptions_ in one.
25+
. Create migration participants for existing diagrams.
26+
. Add new menu allowing to switch the appearance of a diagram/graphical element/set of graphical element.
Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
= Diagrams on ViewUsages
2+
3+
The parent shape of this is link:./add_support_for_viewusages.adoc[Add support for ViewUsages].
4+
5+
== Problem
6+
7+
With the current version 2025.4.0 of SysON, diagrams (GV, IV) are attached to semantic objects like Packages, Parts, Actions...
8+
9+
In the SysMLv2 specification, the ViewDefinition concept allows to define how to render elements (textual, graphical...) and `ViewUsage` is an instance of a ViewDefinition.
10+
11+
== Key Result
12+
13+
To comply with the specification, SysON should use `ViewUsages` and `ViewDefinitions` to handle diagrams.
14+
When end-users click on _New Representation_ on a semantic element, then _DiagramDescriptions_ are proposed in the list of representations, as of the current version.
15+
Then end-users click on _CREATE_ button, a `ViewUsage` is created, typed with the `ViewDefinition` corresponding to the selected _DiagramDescription_.
16+
17+
Then, no diagram tree item is created/visible under this `ViewUsage`.
18+
When end-users click on this `ViewUsage`, the diagram is opened.
19+
20+
In the _Details_ view, it will not be possible to change the type of a `ViewUsage` for now.
21+
In the _Details_ view, when a `ViewUsage` is selected, two tabs are displayed: one for the semantic element, and one for the representation.
22+
The tab for the representation will be read-only.
23+
24+
There will be only one _Diagram_ per `ViewUsage`.
25+
26+
When end-users click on _New Object_ on a semantic element, and select a `ViewUsage`, then a `ViewUsage` typed by default with the _General View_ `ViewDefinition` from the standard library will be created.
27+
A _General View_ diagram will also be created as well.
28+
29+
== Solution
30+
31+
=== Breadboarding
32+
33+
When end-users click on New Object menu, `ViewUsages` are available:
34+
35+
image:images/new_object_menu_view_usage.png[New object menu]
36+
37+
Once the `ViewUsage` created, its is displayed in the _Explorer_ view:
38+
39+
image:images/explorer_view_usage.png[New ViewUsage]
40+
41+
When end-users click on New representation menu, `ViewDefinitions` (or _DiagramDescriptions_?) are available:
42+
43+
image:images/new_representation_menu.png[New representation]
44+
45+
=== Cutting backs
46+
47+
When a `ViewUsage` is renamed, the associated representation will not be renamed as well.
48+
49+
== Rabbit holes
50+
51+
No rabbit holes found.
52+
53+
== No-gos
54+
55+
N/A
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
= Display ViewUsages in Diagrams
2+
3+
The parent shape of this is link:./add_support_for_viewusages.adoc[Add support for ViewUsages].
4+
5+
== Problem
6+
7+
With the current version 2025.4.0 of SysON, it is not possible to display `ViewUsage` elements in diagrams.
8+
9+
== Key Result
10+
11+
`ViewUsage` elements are now displayed in diagrams.
12+
They should be represented as "framed view", as described in _8.2.3.26 Views and Viewpoints Graphical Notation_ of the SysMLv2 specification.
13+
14+
A `ViewUsage` diagram element has the same palette than background palette of diagram that would have been created on the semantic element containing the `ViewUsage`.
15+
16+
A new menu "Show/Hide > View frame" is available on a `ViewUsage`.
17+
This menu allows to hide the framed view but not its contents.
18+
19+
When "Hide View frame" is clicked, the framed view is not on the diagram anymore and its contents are then moved into the original diagram.
20+
21+
It will be possible for end-users to reveal an hidden `ViewUsage` through:
22+
23+
* the _filter elements_ tool of the diagram toolbar.
24+
* a graphical element who was previously inside the hidden framed view.
25+
In this case, the "manage visibility" action will allow to reveal its hidden framed view.
26+
27+
== Solution
28+
29+
=== Breadboarding
30+
31+
The new menu item "Show View frame"/"Hide View frame" in "Show/Hide" section:
32+
33+
image:images/diagram_element_showhide_view_frame.png[Diagram Element ShowHide View frame]
34+
35+
The new option "View frame" in "Manage Visibility" action dialog:
36+
37+
image:images/diagram_element_manage_visibility_view_frame.png[Diagram Element Manage Visibility View frame]
38+
39+
=== Cutting backs
40+
41+
_Renderings_, _filters_ and _satisfy_ properties of `ViewUsages` won't be taken into account for now.
42+
43+
== Rabbit holes
44+
45+
No rabbit holes found
46+
47+
== No-gos
48+
49+
N/A
20.1 KB
Loading
58.2 KB
Loading
478 KB
Loading
407 KB
Loading
540 KB
Loading
582 KB
Loading

0 commit comments

Comments
 (0)