Seminar Modellgetriebene Softwareentwicklung
XMI - XML Metadata Interchange
Vortrag im Rahmen des Seminar Modellgetriebene
Softwareentwicklung
Mirko Otto
Seminar Modellgetriebene Softwareentwicklung
Inhalt

Motivation

XMI Übersicht

XMI Beispiele

Zusammenfassung

Quellen
Otto / Paul
XMI
2
Seminar Modellgetriebene Softwareentwicklung
Motivation I

Problem


N * N - N = 30 Übergänge (Import / Export)
N = 6 Anwendungen
App1
App2
App6
App3
App5
Otto / Paul
XMI
App4
3
Seminar Modellgetriebene Softwareentwicklung
Motivation II

Ziel


6 Übergänge
6 Anwendungen
Software
Assets
Design
Development
Tools
Database
Schema
Otto / Paul
XMI
XMI
Repository
Reports
4
Seminar Modellgetriebene Softwareentwicklung
Was ist XMI?






1999 von der OMG (Object Management Goup)
verabschiedeter Standard
SMIF(Stream-based Model Interchange Format) -> XMI
Ein auf XML basierendes Format
XMI ist kein Dateiformat, sondern ein XML Mapping für
MOF
Speicherung von Objekt-Metadaten
Basiert auf MOF
Otto / Paul
XMI
5
Seminar Modellgetriebene Softwareentwicklung
XMI 1.x / 2.x

XMI 1.x


Definiert XMI mittels DTD
XMI 2.x

Definiert XMI mittels XML Schema
Otto / Paul
XMI
6
Seminar Modellgetriebene Softwareentwicklung
XMI und XML

XMI besteht aus



XMI – gültigen XML DTD / Schema
XMI – gültigen XML Dokument (Stream)
XML

Validität eines Dokumentes kann geprüft werden
Otto / Paul
XMI
7
Seminar Modellgetriebene Softwareentwicklung
Möglichkeiten mit XMI (Übersicht)

Erzeugen von



Erzeugen von MOF Metamodellen aus einer




XMI Dokumenten aus einem MOF Metamodell (Beispiel)
DTD / Schema aus einem MOF basierten Metamodell
DTD
XML (Beispiel)
XML Schema
Transformation mittels XSLT, DOM, SAX-API



XMI -> XMI (Modelltransformation)
XMI -> XML (HTML, SVG, ...)
XMI -> Code (Java, C++, SQL, ...)
Otto / Paul
XMI
8
Seminar Modellgetriebene Softwareentwicklung
Möglichkeiten mit XMI I

Erzeugen von XMI Dokumenten aus einem MOF
Metamodell


DTD / Schema bzgl. des MOF Metamodells vorhanden
Speichert Instanz des MOF Metamodells bzgl. der
vorhandenen DTD / Schema
Otto / Paul
XMI
9
Seminar Modellgetriebene Softwareentwicklung
XMI Beispiel I



UML Klassendiagramm
Klasse Max M
Attribut Attrib1, Attrib2
Otto / Paul
XMI
10
Seminar Modellgetriebene Softwareentwicklung
XMI Beispiel II

Metamodell
Otto / Paul
XMI
11
Seminar Modellgetriebene Softwareentwicklung
XMI Beispiel III
Otto / Paul
XMI
12
Seminar Modellgetriebene Softwareentwicklung
XMI Beispiel IV
Otto / Paul
XMI
13
Seminar Modellgetriebene Softwareentwicklung
XMI Beispiel V
Otto / Paul
XMI
14
Seminar Modellgetriebene Softwareentwicklung
Möglichkeiten mit XMI II

Erzeugen von DTD / Schema aus einem MOF basierten
Metamodell


Also einer Instanz des Meta-Metamodell (MOF)
Definiert ein neues Austauschformat
Otto / Paul
XMI
15
Seminar Modellgetriebene Softwareentwicklung
Erzeugen von DTD / Schema (Beispiel)

Beispiel einer Klasse Auto modelliert mit UML
Otto / Paul
XMI
16
Seminar Modellgetriebene Softwareentwicklung
Möglichkeiten mit XMI III

Erzeugen von MOF Metamodellen aus einer



DTD
XML (Beispiel)
XML Schema
Otto / Paul
XMI
17
Seminar Modellgetriebene Softwareentwicklung
Erzeugen von MOF Metamodellen aus einer
DTD, XML, XML Schema (Beispiel)

Erzeugen eines neuen
Metamodells
Otto / Paul
XMI
18
Seminar Modellgetriebene Softwareentwicklung
Zusammenfassung

XMI als Standard zum objektorientierten Modellaustausch

Fördert weitere toolneutrale Aktivitäten






Codegenerierung aus OO-Modellen
Modellvalidierung
Metrikenberechnung
Langzeitspeicherung
Versionsverwaltung
...
Otto / Paul
XMI
19
Seminar Modellgetriebene Softwareentwicklung
Quellen:

XMI Spezifikation


Literatursammlung von M. Jeckle


http://www.jeckle.de/xmi.htm
IBM XMI Opens Application Interchange


http://www.omg.org/technology/documents/modeling_spec_c
atalog.htm#XMI
http://www306.ibm.com/software/awdtools/standards/xmiwhite0399.pdf
W3C

http://www.w3c.org
Otto / Paul
XMI
20