1 Ecore模型:
1.1 說明:這裡展示了整個Ecore模型中各個類的集成關系。
2 繼承圖
2.1 說明:本部分列出了每一個類所包含的字段,字段的值可以通過Java文件,UML圖,XML文件或者Ecore模型進行定制,字段的值將直接影響到Ecore所生成的目標代碼。
2.2 EStructurealFeature
2.2.1 類圖:
說明:EAttribute和EReference主要用於描述類所能包含的屬性。
2.2.2 字段說明:
Property
Value
Usage
ENameElement
name
字符串
名稱。
ETypedElement
eType
EClassifIEr
特性的類型。對於EAttribute他是Attribute的類型,對於EReference他是Reference所引用的類型。
lowerBound
整數值
特性的下限
unique
true|false
當特性含有多個值時,值是否允許重復出現
upperBound
整數值
特性的上限
EStructuralFeature
changeable
true|false
特性是否可修改
transIEnt
ture|false
在序列化時,特性是否被忽略
unsettable
true|false
是否能夠把特性設置為“未設置”狀態
volatIE
true|false
是否不需要為特性提供存儲空間,一般用於表示特性是從其他特性中導出
required
true|false
特性是否必須,如果是則等價於把下限值設為1
many
true|false
特性是否為多值,如果是則等價於把上限值設為-1
defaultValueLiteral
字符串
特性默認值的字符串表示
defaultValue
Java類
默認值所對應的Java實例
EAttribute
iD
true|false
該屬性是否全局唯一
EReference
containment
true|false
引用是否是按值引用
container
布爾值
如果引用是雙向的,則該值為true
resolveProxIEs
true|false
當引用者與被引用者處於不同的文檔時,我們使用一個代理來代表被引用者,直到第一次訪問被引用者時,再裝入被引用者的內容並進行解釋。而當引用者與被引用者位於同一個文檔時,我們可以不用使用這種代理的方式,此時該值可以設置為“false”。
eOpposite
EReference
如果是雙向的引用,則該值指向另一個方向的引用
2.3 ClassifIErs
2.3.1 類圖:
說明:EClass主要用於描述類,EDataType主要用於描述字段的類型。
2.3.2 字段說明:
Property
Value
Usage
ENameElement
name
字符串
名稱
EClassifIEr
instanceClassName
字符串
用於表示該類型的Java類名
instanceClass
Java類
由instanceClassName指定的類
defaultValue
Java實例
instanceClass所對應的一個實例
EClass
abstract
true|false
如果為true,則該類是一抽象類
interface
true|false
如果為true,則該類是一接口
注:EClass包含了其他大量的用於對操作,屬性,關聯,父類等進行引用的屬性
EDataType
serializable
true|false
標識該類型是否需要進行序列化
2.4 Packages and FactorIEs
2.4.1 類圖:
說明:EPackage主要用於描述包的信息,EFactory主要用於提供對包內的類進行實例化的
便利方法。
2.4.2 字段說明:
Property
Value
Usage
ENameElement
name
字符串
名稱
EFactory
package
對對應的EPackage實例的引用
EPackage
nsURI
字符串
名字空間的URI(與XML對應)
nsPrefix
字符串
名字空間的前綴(與XML對應)
eCLassifIErs
對包中的類的引用
eSubpackages
對子包的引用
eFactoryInstance
對對應的EFactory實例的引用
3 類間關系圖
3.1 說明:這裡展示了多個類如何通過一定的關聯來描述用戶所需的模型。
3.2 Ecore Kernel
說明:描述類的結構,包括類所包含的屬性,關聯以及類所包含的操作。
3.3 Packages and FactorIEs
說明:用於描述包的結構。