2.4.4.3 Types énumérés
Un type énuméré est un type de
données spécial qui est défini par une liste explicite des
valeurs qu'il peut éventuellement prendre, appelés
littéraux.
La Figure 2.10 illustre EDataType, EEnum et EEnumLiteral, les
types de données du modèle, les types
énumérés, et littéraux, respectivement.
FIGURE 2.10 - Concept EDataType, EEnum et
EEnumLiteral
Un EEnum spécifie zéro ou plus EEnumLiteral via
la référence de confinement «eLiterals» qui est
bidirectionnelle avec un «eEnum» opposé. EEnumLiteral
hérite d'un attribut name de «ENamedElement ». EEnum
définit une opération «getEEnumLiteral» pour retourner
le «EEnumLiteral» de «eLiterals» avec un nom.
page 36
2.5 Etude de cas
2.4.4.4 Package
En ECore, les classes et les types de données sont
groupées en paquets, EPackage apporte des facilités pour
accéder aux métadonnées du modèle. Elle contient
des accesseurs aux EClasses, EAttributes et EReferences
implémentées dans le modèle.
FIGURE 2.11 - Concept EPackage
EPackage hérite d'un attribut name de «
ENamedElement ». Le nom d'un paquet doit être unique. Au
lieu de cela, un URI est utilisé pour identifier de manière
unique le paquet, est également utilisé dans la
sérialisation des documents d'instance pour identifier un espace de
noms, Cette URI est donnée à l'attribut « nsURI » du
EPackage. Et l'attribut « nsPrefix » est utilisé pour
spécifier le préfixe d'espace de noms correspondant.
Les EClassifiers regroupés par un EPackage
sont contenus via la référence de « eClassifiers », qui
a une référence en face appelé « ePackage ». Une
opération de « getEClassifier » est également
définie, pour obtenir commodément un de ces EClassifiers par
nom.
|