Papyrus 插件模型文件分析(1)—— .di 文件

Eclipse Papyrus 是 Eclipse 的一个开源的、支持 MDA 的工程项目,其源文件是以 xml 格式组织的,本文章对其进行介绍分析。

首先,在 Eclipse 中新建一个 Papyrus 项目,命名为 actTesting。在其中创建如下的多个视图,View为视图的名称,Context为模型元素类型。

创建完成后,可以在 ModelExplorer 窗口中看到模型的总体架构,如下。其中,黄色方框内部元素即对应着创建的各个视图。

项目和视图创建完成后,在工作空间中的项目对应位置生成了3个文件:actTesting.di、actTesting.notation 和 actTesting.uml。接下来,分别对其进行介绍。

actTesting.di 文件

这个文件中只有2行。

第一行标签表明 xml 的版本,以及该文件所使用的编码格式。

第二行标签表示项目架构的描述,最后一个属性表示这个项目是Eclipse中Papyrus插件的SysML1.6工程项目。

扩展:

UTF-8(8 位元 Universal Character Set/Unicode Transformation Format)是针对Unicode 的一种可变长度字符编码,UTF后的数字代表编码的最小单位,如UTF-8表示最小单位1字节。它可以用来表示 Unicode 标准中的任何字符,而且其编码中的第一个字节仍与 ASCII 相容,使得原来处理 ASCII 字符的软件无需或只作少部份修改后,便可继续使用。因此,它逐渐成为电子邮件、网页及其他储存或传送文字的应用中,优先采用的编码;

Unicode叫做统一码,也叫万国码、单一码。它由统一码联盟开发,是计算机科学领域里的一项业界标准,包括字符集、编码方案等。统一码是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。

常见的文字编码标准有ASCII码、信息交换用汉字编码字符集、GBK字库、统一码和大五码

在所有字符集中,最知名的应该是称为ASCII的8位字符集了。它是美国标准信息交换代码(American Standard Code for Information Interchange)的缩写, 为美国英语通信所设计。它由128个字符组成,包括大小写字母、数字0-9、标点符号、非打印字符(换行符、制表符等4个)以及控制字符(退格、响铃等)组成。

但是,由于它是针对英语设计的,当处理带有音调标号(形如汉语的拼音)的亚洲文字时就会出现问题。因此,创建出了一些包括256个字符的由ASCII扩展的字符集。

其中有一种通常被称为IBM字符集,它把值为128-255之间的字符用于画图和画线,以及一些特殊的欧洲字符。

另一种8位字符集是ISO 8859-1Latin 1,也简称为ISOLatin-1。它把位于128-255之间的字符用于拉丁字母表中特殊语言字符的编码,也因此而得名。

但是,欧洲语言不是地球上的唯一语言,因此亚洲和非洲语言并不能被8位字符集所支持。仅汉语字母表(或pictograms)就有80000以上个字符。

于是,把汉语、日语和越南语的一些相似的字符结合起来,在不同的语言里,使不同的字符代表不同的字。这样,只用2个字节就可以编码地球上几乎所有地区的文字。因此,创建了UNICODE编码。它通过增加一个高字节对ISO Latin-1字符集进行扩展,当这些高字节位为0时,低字节就是ISO Latin-1字符。UNICODE支持欧洲、非洲、中东、亚洲(包括统一标准的东亚象形汉字和韩国表音文字)。但是,UNICODE并没有提供对诸如Braille(盲文),Cherokee, Ethiopic(埃塞俄比亚语), Khmer(高棉语), Mongolian(蒙古语), Hmong(苗语), Tai Lu, Tai Mau文字的支持。同时它也不支持如Ahom(阿霍姆语), Akkadian(阿卡德语)之类的古老文字。

Unicode只是一组字符设定或者说是从数字和字符之间的逻辑映射的概念编码,它并没有指定代码点如何在计算机上存储。UCS4、UTF-8、UTF-16。

在Unicode官方资料中,Unicode的编码方式有三种:UTF-8、UTF-16、UTF-32。由于UTF-8与字节序无关(无需BOM),同时兼容ASCII编码,使得UTF-8编码成为现今互联网信息编码标准而被广泛使用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值