![]() |
Univers@lis Model Repository Tool |
|
Documentation
Samples |
Universalis Textual NotationsTextual rendering of models are useful :
We provide different kind of textual representations. All of them have in common that they are generic (do not depend on the metamodel). Therefore they can be used for any metamodel registered in the repository tool. XMI and XMI+The XML Metadata Interchange (XMI) is the stream based interchange format that was standardized by the OMG. This standard allows models to be exchanged as XML documents. The syntax depends on a DTD file that is generated from any MOF based metamodel, according to rules defined in the XMI specification. Notice that regarding the UML 1.3 metamodel, two distinct versions have been issued by the OMG: a logical metamodel, and the so-called physical metamodel. The last one is a MOF compliant version derived from the original but with some transformations (association classes are transformed). The UML metamodel registered in Universalis is the logical one. The XMI rendering program for UML performs itself all the needed conversions so as to be compliant with the standard UML DTD (which is based on the physical metamodel). The XMI+ format is an improved XMI format where links reified by association class instances can be directly expressed (addition of XMI.reify and XMI.reifying elements). In additions some other changes are done in order to improve the readability and the ease of use of XMI (dropping of any useless qualification, no strict ordering for XMI role elements, etc). In contrast with the standard UML XMI no model transformations is needed for the XMI+ rendering. See XMI example (headings skipped)See XMI+ example (headings skipped) JMIThe Java-like Metadata Interchange (JMI) is equivalent to the XMI+ format. The only difference is that it uses Java-like separators that improves a lot the readability. See JMI examplePMIThe Python Metadata Interchange (PMI) is equivalent to the XMI+ format. The only relevant difference is that it uses a Python syntax (constructor calls with keyword arguments). An interesting property is that this notation can be executed by the python interpreter. See PMI exampleCTFThe Compiled Textual Format (CTF) is the internal format used for storing the models in the repository. This format is in fact equivalent to the JMI, PMI and XMI+ textual notations. This format is said to be compiled because each line can be seen as a basic instruction for loading the object into memory. See CTF example |
Last modification July 29 1999
mariano.belaunde@rd.francetelecom.fr