Académique Documents
Professionnel Documents
Culture Documents
G. Halin
Introduction
Exemple d’utilisation
• Taylored : un modèle m • Réflective :
– Nombre d’acteurs de m ? – Le nom de la métaclasse système ?
– Ajouter ou supprimer un acteur à m. – Quelles sont ses méta-associations ?
– Liste des cas d’utilisations auxquels – Quels sont ses méta=attributs ?
participe l’acteur « internaute »
instanciation
m
JMI (Java Metadata Interface)
• Standard du JCP (Java Community
Process) de Sun
• Métamétamodèle repose sur le MOF
1.4
• RefBaseObject : Représente
n’importe quel élément d’un modèle ou
d’un métamodèle.
– refMetaObject() retourne la
métaclasse de l’élément.
– La métaclasse retournée est de type
RefObject.
– permet d’obtenir la métaclasse d’une
métaclasse et ainsi de remonter tous
les niveaux méta
Interface de la méta-association
RefPackage m1 = RefPackageImpl.getM1Repository(m2);
RefObject l1 = m1.refClass("Livre").refCreateInstance(null);
l1.refSetValue("titre","Tout sur UML");
RefObject l2 = m1.refClass("Livre").refCreateInstance(null);
l2.refSetValue("titre","Tout sur MOF");
• EPackage
– moyen d’accès à toutes les EClass
définies dans un package.
– getEClassifier(String qname) récupérer
la référence d’une EClass d’un
métamodèle à partir de son nom.
• EFactory
– permet de créer des instances des
EClass définies dans un package.
– create() :créer une instance d’une
EClass.
instanciation
Livre l1 = m1Fact.createLivre();
l1.setTitre("Tout sur UML");
Livre l2 = m1Fact.createLivre();
l2.setTitre("Tout sur MOF");
cat.getLivre().add(l1);
cat.getLivre().add(l1);
Le Framework EMF
<Catalogue nom="BiblioAcsi">
<Livre titre="Tout sur UML"> </Livre>
<Livre titre="Tout sur MOF"> </Livre>
</Catalogue>
XML : XSLT
XML, SVG
DTD ou
Métamodèle XMI : génération
XML schema
Document
Modèle XMI : sérialisation
XML
XML Metadata Interchange : XMI
XMI, exemple
<!ELEMENT Catalogue (nom, CatalogueToLivre) >
<!ATTLIST Catalogue
id ID #REQUIRED>
<!ELEMENT nom (#PCDATA)>
<Catalogue id="idvalue0">
<nom>BiblioACSI</nom>
<CatalogueToLivre>
<Livre id="l1">
<titre>Tout sur UML</titre>
</Livre>
<Livre id="l2">
<titre>Tout sur MOF</titre>
</Livre>
</CatalogueToLivre>
</Catalogue>
XMI, échange de modèle
• Le métamodèle : UML
• DTD définit à partir d’UML
UML DTD
UML
XMI 1.0 XMI 1.1 XMI 1.2 XMI 1.2 XMI 2.0 XMI 2.1
schema
UML 1.3
UML 1.4
UML 1.5
UML 2.0
G
SV
tion
orma
nsf
Tra
Conclusion