Ads
Links
Anybody remembers the UML Diagram Interchange format?
One of the reasons that have motivated the WebUML initiative (commented here ) is the problem of exchanging UML models among different modeling tools.
Even when we manage to solve the XMI interoperability problems and are able to import the content of a UML model from another tool, we quickly realize that we have lost all the layout information during the import process, and thus, we need to redraw the model again.
However, I'm not sure many people are aware of that the OMG already proposed a solution for this: the UML Diagram Interchange standard . This UML DI standard was supposed to be a complement of the XMI standard to allow the interchange of both the model content and all its graphical details (e.g. layout)
The formal specification was released in 2006 but honestly nobody seems to care about it (maybe I'm wrong but the only CASE tool I remember that supports this standard is Poseidon for UML ).
I don't really know the standard so maybe tools do not implement it because it sucks but sometimes we complain about problems that in fact have already been studied and for which there is already a solution available (if somebody takes the time of implementing it...)
Please, if my perception is wrong and the standard is being supported by other tools please let me know. Also, if you know this standard and want to share your opinion please be welcome!
If you enjoyed this post you can subscribe to this Software Modeling blog and/or follow me on twitter or through the portal's mailing list . And if you really liked it help me pass it on to others by bookmarking and sharing the post using the links below:

Delicious
Digg
StumbleUpon
Reddit
Facebook
Google
Yahoo
Technorati
Papyrus supports also the UML Diagram Interchange format
It seems that Papyrus UML also has "Full respect of the DI2 (Diagram Interchange ) standard"
Missing piece between UML and DI
Hi Jordi,
there was a missing piece of technology between the modeling language (e.g. UML) and the XMI Diagram Interchange. There was no way to specify how model elements were to be mapped to the DI elements. So e.g. Poseidon did have some hierarchy of DI elements, but never documented this structure, so it was basically too hard for anybody to do the same or even similar structure.
We did a special kind of mapping language, which would enable you to specify some parameterized computable DI structures based on a model. It had some drawbacks as well, but we did describe our metamodel-to-DI mappings only using it, nothing hardcoded.
As you know, we had the Coral tool which was compatible with Poseidon to some degree. If I remember correctly, class diagrams worked very nicely. But when a new version of Poseidon appeared, the DI structure that they had decided to use had changed, so there was too much work to maintain this compatibility.
Best regards,
Marcus Alanen
Linking model elements to diagrams
The new Diagram Definition standard will finally fix this. It will include mechanisms for defining types of diagrams as views of models, interchanging those definitions, and interchanging diagrams based on those definitions. And it has real vendor support this time.
This standard is just another in a series of things that are finally happening for UML 2, about 4-5 years later than they should have: real model interoperability, true diagram interchange, precise semantics, an action language, profiles with real community support, and so forth. We are finally recovering from the multiple foot wounds inflicted by the UML 2.0 standard as it was originally adopted.
Is it too late? I don't think so...but we will see.
-- Ed Seidewitz
Coral tool
Very interesting comment. And, for those, that do not know the Coral tool :
Coral is an open source metamodel-independent toolkit that can be used to create, edit and transform new models and modeling languages at run-time. Coral is a full metamodeling tool: A modeling language, including its abstract and concrete syntax is defined by a model. Coral is also a toolkit: it can be customized to build other modeling tools.
I remember seeing some demos that Marco and Ivan Porres did in previous MoDELS/UML conference. I've to say the tool was quite impressive, specially in a time that all this metamodeling stuff was not so "mainstream"
Comment from Ed Seidewitz
Ed Seidewitz commented on this blog post from his twitter account . I reproduce his comments here:
The UML Diagram Interchange std DID suck. It will be replaced as part of the new Diagram Definition std. http://bit.ly/4U22yi . UML Diagram Definition revised submissions now due Feb 22. This time it is based on real implementation (largely from IBM).