Saturday

Notational Model

The notation model (metamodel image) is used to store visual information necessary for diagram drawing and is independent from the underlying semantic model (instantiated from EMF metamodel). For example, it is used to store the position and size of nodes, bounds of the nodes, link bend point locations, linkcolor styles, etc.
The notation model is mostly based on the following sub-classes of abstract class View: Diagram, Node and Edge. Each of these subclasses is used to store a corresponding set of properties specific for Diagram, Node or Edge visual representation, respectively. The notation model can be extended with some userdefined data by attaching specific Style to the existing View instance. Each opened diagram editor has own notation model instance attached and is actively used by the runtime as an API for storing and loading diagram-specific information.
The unifying force of GMF is the notation meta-model which provides the concrete link between the EMF and GEF. It is the scaffolding around which GMF diagram capability is built. The most important aspect about the notation meta-model is that it is completely domain independent. By having it be generic across domains, this allows the engine to behave in a common way and provide a common feature set that can be absorbed into those domains. The only link to the semantic model is a reference stored on the View element in the hierarchy. The GMF editparts always navigate to the semantic model through this reference.


8 comments:

öyster said...

Hey,

thank you so much for blogging about GMF mystries, that have not been documented properly. Somebody really should do this!! :)

I came across your blog by Google'ing after "Notation + GMF" as this is exactly what I did not undertand yet: What is the functionality of the Notation model? Where do I specify it (Figure Descriptors?) and so on and your explanation answered the first very good :)

PS: EditParts come from GEF and not GMF though..

Best

Burcu

Amit S said...

Thanks Oyster !
I really need help in more documentation.
Just that I have stopped working on GMF and no time. Else it would have been quite better !

Anonymous said...

Hey Amit,
Thanks a lot for sharing the information related to eclipse and GMF.It is very useful.

I am new to GMF and have created a sample example based on some tutorials available. But I would also like to understand the generated code and how the application runs in the background. How things like edit parts,policies etc work in tandem, I could see that these are topics in your article but however I could not see the link there. Are you still working on it or is there any other place i have to look for ?

thanks again

Regards,
Bhat

Amit S said...

Hi Bhat,

Thanks !

I could not dedicate more time on GMF. So the articles I thought of writing are currently suspended. Hope I do get sometime to fill the gaps.

Anonymous said...

OK! But, and the rest?

Anonymous said...

Good dispatch and this mail helped me alot in my college assignement. Thank you on your information.

Anonymous said...

You can certainly see your enthusiasm in the article you write.

The arena hopes for more passionate writers like you who aren't afraid to mention how they believe.
All the time follow your heart.

My web blog clash of clans hack apk download

Anonymous said...

Greate post. Keep writing such kind of info on your site.
Im really impressed by your site.
Hey there, You've performed a fantastic job. I'll definitely
digg it and individually suggest to my friends. I'm sure they'll be benefited from
this web site.

Feel free to visit my web blog garage doors service and repairs