210 likes | 373 Views
XMI - XML Metadata Interchange. Vortrag im Rahmen des Seminar Modellgetriebene Softwareentwicklung Mirko Otto. Inhalt. Motivation XMI Übersicht XMI Beispiele Zusammenfassung Quellen. App1. App2. App6. App3. App5. App4. Motivation I. Problem
E N D
XMI - XML Metadata Interchange Vortrag im Rahmen des Seminar Modellgetriebene Softwareentwicklung Mirko Otto
Inhalt • Motivation • XMI Übersicht • XMI Beispiele • Zusammenfassung • Quellen Otto / Paul
App1 App2 App6 App3 App5 App4 Motivation I • Problem • N * N - N = 30 Übergänge (Import / Export) • N = 6 Anwendungen Otto / Paul
Software Assets Design Repository XMI Reports Database Schema Motivation II • Ziel • 6 Übergänge • 6 Anwendungen Development Tools Otto / Paul
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 1.x / 2.x • XMI 1.x • Definiert XMI mittels DTD • XMI 2.x • Definiert XMI mittels XML Schema Otto / Paul
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
Möglichkeiten mit XMI (Übersicht) • Erzeugen von • XMI Dokumenten aus einem MOF Metamodell (Beispiel) • DTD / Schema aus einem MOF basierten Metamodell • Erzeugen von MOF Metamodellen aus einer • 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
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 Beispiel I • UML Klassendiagramm • Klasse Max M • Attribut Attrib1, Attrib2 Otto / Paul
XMI Beispiel II • Metamodell Otto / Paul
XMI Beispiel III Otto / Paul
XMI Beispiel IV Otto / Paul
XMI Beispiel V Otto / Paul
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
Erzeugen von DTD / Schema (Beispiel) • Beispiel einer Klasse Auto modelliert mit UML Otto / Paul
Möglichkeiten mit XMI III • Erzeugen von MOF Metamodellen aus einer • DTD • XML (Beispiel) • XML Schema Otto / Paul
Erzeugen von MOF Metamodellen aus einer DTD, XML, XML Schema (Beispiel) • Erzeugen eines neuen Metamodells Otto / Paul
Zusammenfassung • XMI als Standard zum objektorientierten Modellaustausch • Fördert weitere toolneutrale Aktivitäten • Codegenerierung aus OO-Modellen • Modellvalidierung • Metrikenberechnung • Langzeitspeicherung • Versionsverwaltung • ... Otto / Paul
Quellen: • XMI Spezifikation • http://www.omg.org/technology/documents/modeling_spec_catalog.htm#XMI • Literatursammlung von M. Jeckle • http://www.jeckle.de/xmi.htm • IBM XMI Opens Application Interchange • http://www-306.ibm.com/software/awdtools/standards/xmiwhite0399.pdf • W3C • http://www.w3c.org Otto / Paul