Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Papyrus for Real Time » UML RT metamodel
UML RT metamodel [message #1838576] Mon, 01 March 2021 18:09 Go to next message
John Henbergs is currently offline John HenbergsFriend
Messages: 214
Registered: October 2020
Senior Member
Hi all,

I am trying to find the UML RT state machine metamodel/profile, as I would like to create an abstract syntax in Xtext and would like to have that as a reference. However, I do not seem to find that anywhere. Can any of you help me? Even just a photo of it is fine.

Many thanks,
John

[Updated on: Mon, 01 March 2021 18:36]

Report message to a moderator

Re: UML RT metamodel [message #1838584 is a reply to message #1838576] Mon, 01 March 2021 23:52 Go to previous messageGo to next message
Ernesto Posse is currently offline Ernesto PosseFriend
Messages: 416
Registered: March 2011
Senior Member
Papyrus-RT already has an Xtext-based textual syntax (called Tumlrt) for both state machines and capsules. It was not in the official list of features described in the website as it was not supposed to be part of the initial 1.0 release, but nevertheless, it's there. You can use it by creating text files with the .umlrt extension. You can use it to generate code and even convert from textual to graphical and vice-versa, although I think we hid those menus in the 1.0 release. I'm attaching the syntax reference.

The profile is in the git repo (git://git.eclipse.org/gitroot/papyrus-rt/org.eclipse.papyrus-rt.git) under "plugins/umlrt/profile/o.e.prt.umlrt.profile", but it is not suitable for Xtext, and it is not used in the Tumlrt implementation.

As for the meta-model, well, the official meta-model is that of UML state machines, but Papyrus-RT has also an internal metamodel called "XtUML-RT" for both capsules and state machines, and it is the one used by the TUMLRT implementation. It can be found in the git repo (git://git.eclipse.org/gitroot/papyrus-rt/org.eclipse.papyrus-rt.git) under the "plugins/xtumlrt" folder. In fact that folder includes four subfolders:

* metamodel: the Ecore meta-model, which includes separate meta-models for structure, state machines, interaction diagrams, and some extensions for state machines and capsules.
* xtext: the textual syntax implementation. The grammar is in the o.e.prt.xtumlrt.xtext plugin in the Tumlrt.xtext file.
* trans: transformation from textual to graphical and graphical to textual, including translation to dot diagrams.
* common: utilities, integration with external packages (like the UML-RT standard library), and a sublanguage for arithmetic expressions, used mostly by the code generator to allow for symbolic expressions in attributes and replicated ports and parts.

I'm also attaching a zip file with some SVG diagrams from the metamodel.

Nevertheless, the official meta-model, as I said, is the UML meta-model. Papyrus-RT includes an extremely useful façade to manipulate UML-RT models in the plugins under "plugins/umlrt/profile/o.e.prt.umlrt.uml".

Hope this helps.

[Updated on: Mon, 01 March 2021 23:57]

Report message to a moderator

Re: UML RT metamodel [message #1838603 is a reply to message #1838584] Tue, 02 March 2021 10:28 Go to previous message
John Henbergs is currently offline John HenbergsFriend
Messages: 214
Registered: October 2020
Senior Member
Hi Ernesto,

Thank you very much for such detailed explanation. It is even more than I could ask for :)

Many thanks,
John
Previous Topic:Can´t create a diagram for a package
Next Topic:Required feature "upperBound" and "lowerBound" must be set
Goto Forum:
  


Current Time: Thu Dec 08 17:39:57 GMT 2022

Powered by FUDForum. Page generated in 0.02304 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top