文档章节

MOF 四层元模型

风象南
 风象南
发布于 2016/03/24 18:09
字数 717
阅读 153
收藏 0

MOF 四层元模型(M3-M2-M1-M0):

    以下说明均以一个用户对象(逻辑设计结构下)-用户表(物理存储结构下)作为例子,阅读顺序建议由M0-M3顺序阅读,便于理解。

    用户对象:对应做系统时UML画的对象或Powerdesign 等工具画的用户逻辑模型

    用户表:对应做系统时数据库的用户数据表  

    按照面向对象的设计方式,一般情况下用户表会根据设计的用户对象进行创建,故两者存在对应关系。


M3 - 元元模型层

    概念:元模型体系结构的基础结构,定义元模型的原型和规则

    例: 定义对应模型的Classfier(包含属性:是否抽象、类代码(Class)、类描述),或者定义Table的Tablefier(包含属性:表代码(Table)、表备注),就叫做元元模型,此处也可以叫做Class、Table的元元模型

           定义对应属性的Attributefier(包含属性:属性代码(Attribute)、属性描述),或者定义ColumnColumnfier(包含属性:字段代码(Column)、字段描述),就叫做元元模型,此处也可以叫做Attribute、Column的元元模型

M2 - 元模型层

      概念:元元模型的实例,描述元模型

      例: 定义对应模型的Class(包含属性: 对象名称、对象代码),或者定义用户表的Table(表名称、表代码) 就叫做元模型,此处也可叫做对象的元模型或者表的元模型

             对应模型属性Attribute(包含属性: 属性名称、属性类型),后者用户表字段Column(包含字段:字段名称、字段类型)也叫做元模型,此处也可叫做属性的元模型或者字段的元模型

M1 - 模型层

       概念:元模型的实例,描述数据、对象

       例: 对应的用户对象(包含 姓名、性别两个属性)就叫做一个模型或者叫用户表(包含 姓名、性别两个字段)

M0 - 数据、对象模型层   

        概念:执行模型时所创建的运行元素组成

        例:张三、男  这个实实在在存在的对象(UML面向对象逻辑结构下叫对象)或者叫数据(对应物理存储下叫数据)

M1 M2 M3 层存储的数据就叫做元数据


附:MOF 与  UML 、CWM、XMI 的关系

MOF 定义了一种通用的元语言,用来创建其他的语言 

UML 定义了一种源自MOF的元语言,用来描述面向对象的系统 

CWM 定义了一种源自MOF的元语言,用来描述数据仓库和相关系统 

XMI 定义了共享源自MOF模型的方法


参考:

      http://blog.sina.com.cn/s/blog_79d1df070100pjar.html

      http://blog.csdn.net/teamlet/article/details/28271633

© 著作权归作者所有

共有 人打赏支持
风象南
粉丝 40
博文 272
码字总数 22699
作品 1
西安
高级程序员
模型转换框架--MOFScript

MOFScript 主要的目的是开发支持模型到文本转换的工具和框架。比如支持从模型生成代码或文档等。它提供一个元模型未知的框架,这个框架能够使用任何 类型的元模型和它的实例来生成文本。 它的...

匿名
2008/09/24
416
0
Eclipse ATL

ATL是一种混合语言(宣告式与命令式的混合)设计用于表达MDA框架中的模型转换。它通过一种抽象的语法(一种MOF元模型)进行描述,建模者可以利用 上下文相关的语法和一个辅助的图形符号来描绘转换...

匿名
2008/09/24
1K
0
元数据转换框架--Kermeta

Kermeta是一种面向模型的语言填补了元语言如MOF,EMOF和Ecore的空白,这些元语言主要是集中于结构上的规范说明没有内置支持对行为的定 义。Kermeta是作为EMOF的一个扩展进行构建对它添加了可执...

匿名
2008/09/24
811
0
TCP/IP 协议族概述

TCP/IP 协议的体系结构 TCP/IP 协议族的四层模型和 OSI 七层模型 四层模型中各个层次的作用和特点 四层模型中各个层次对应的协议

梦想家Peng
2016/03/08
39
0
微软利用机器学习强化防毒软件,轻松阻挡恶意入侵

微软近日揭露了如何将机器学习应用在自家防毒软件 Windows Defender Antivirus 上,以自动化及多层机器学习架构,缩小新的恶意攻击从出现到被侦测的时间差。 Windows Defender Antivirus 使用...

王练
2017/12/17
542
7

没有更多内容

加载失败,请刷新页面

加载更多

Java并发编程:volatile关键字解析

volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在Java 5之后,volatile关键字才得以重获生...

engeue
16分钟前
0
0
通过ajax访问远程天气预报服务

http://www.webxml.com.cn/zh_cn/index.aspx 更改wsdl文件 打开文件将15行,51行,101行去掉 然后把文件复制到c盘 然后在桌面上面就生成了文件 将文件打成jar包 package cn.it.ws.weather;...

江戸川
今天
1
0
聊聊storm的tickTuple

序 本文主要研究一下storm的tickTuple 实例 TickWordCountBolt public class TickWordCountBolt extends BaseBasicBolt { private static final Logger LOGGER = LoggerFactory.getLogg......

go4it
今天
1
0
自动装箱和自动拆箱

自动装箱和自动拆箱 Java 提供了 8 种基本数据类型,每种数据类型都有其对应的包装类型,包装类是面向对象的类,是一种高级的数据类型,可以进行一些比较复杂的操作,它们是引用类型而不再基...

tsmyk0715
今天
2
0
简易审计系统

1、有时候我们需要对线上用户的操作进行记录,可以进行追踪,出现问题追究责任,但是linux自带的history并不会实时的记录(仅仅在内存中,当用户正常退出(exit logout )时才会记录到history文件里...

芬野de博客
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部