|
|
ODF与OXML技术分千秋
|
作者:赵长厚
互操作已成未来的趋势,Open XML、ODF二者哪一个格式更容易理解?
面对着每天处理的文档,无论是企业,还是政府,都会感觉到它的重要性,而背后的文档标准却更为重要,也许普通的用户还没有意识到其中的重要性,那么假设有一天不能正确地读取和编辑自己的文档,那时候就知道它的确是个问题。
从2005年的5月1日OSI通过ODF成为标准,再到2006年的标准化组织欧洲计算机制造联合会(ECMA)通过微软的OpenXML标准,伴随着每次的决议,来业界的不同声音也此起彼伏,这也让我我们感觉到文档标准的重要性,下面我们从技术角度入手,看分析下ODF与OXML的区别。
Open XML文件格式将是Office 2007文件保存的基础。Open XML文档格式描述共分五部分,包括基本规格介绍、信息封装方式、标记语言入门、标记语言参考以及标记语言的兼容性和扩展性。它可以解决“潜在的交互性操作问题”并“帮助消费者更好地处理他们的文档”。
微软声称它的Open XML格式是完全开放的,但是却不能直接与Open Document格式兼容。不过微软在2006年7月就已启动了一项开源工程,旨在提供一个解决方案来帮助用户把Open XML文件转换成ODF文件。除了默认的Open XML文件格式外,Office 2007还会内置一个新的菜单选项以便让用户通过插件将文档转换为PDF和其它基于XML的格式如XPS(XML Paper Specification)和ODF等。
下面我们再来深入的对ODF和 OXML进行一个技术比较,尽可能的以简洁明了,直观的形式讲述一下这两种文档格式的设计是如何处理互操作性的,毕竟解决互操作性问题是开放标准的终极目标和根本所在。
格式越容易学习,那么就越容易得到支持。程序员也就越能更高效的为您开发出可靠性强的处理这些格式的应用程序和软件。
重用已经存在的标准可以让程序员重用他们已有的技能和工具,而且已经存在的标准经过了严格的测试,也已经非常成熟。我们已经使用过他们,而且知道他们使用起来没有问题。
开放文档和微软的OpenXML有什么不同呢?下面以表格的形式对他们进行了详细的对比让您有一个宏观上的了解和把握。
我们可以设想一下如果换用OXML,会带来什么好处呢?我们会得出结论,至少到现在我们还没有发现任何一件事情是微软的OpenXML能做到,而开放文档却做不到的。所以我们没有发现微软的OpenXML带来的任何好处,反而看到的是麻烦、垄断和更高的代价。
开放文档已经有5年的发展历史,而且有大量的来自标准制定机构的专家参与其中,当初开发它的时候有明确的目标,就是要做一个在不同平台上都可以操作的文档格式。相反地,OXML没有经过和ODF一样的同级评审过程,而仅仅是为了一个产品写的。这些不同可以从格式的设计中明显的看出来。
针对有微软的Word文档使用.doc作为扩展名,开放文档的文件是以.odt作为扩展名,而OXML文档的文件是以.docx作为扩展名。
混合内容模型
开放文档使用混合内容模型,然而OXML却不是这样?那么什么是混合内容呢?
在非混合内容中,一个元素包含有其他的元素或者文本,把它们作为自己的子元素或子文本,但是子元素和子内容不能同时存在于一个元素内。
非混合文档通常用来表示结构化的数据,而混合文档通常用来表示叙述性的内容。OXML使用非混合模型来表示叙述性的内容,例如文本处理。
重用已有的标准
开放文档尽可能的重用了我们已经拥有的标准,它使用SVG来绘图,使用MathML来表达方程式等。这样就让非常熟悉XML技术的人可以非常容易的使用这个文档格式。开放文档也支持用户重用现存的可以解析这些标准的工具,相反地,微软却尽可能的“重新发明轮子”,针对每一部分都要制定出属于自己的标准。
在一些技术举例中我们会看到一个超级链接的属性用xlink做了前缀,那么,什么是XLink呢?XLink是XML连接语言(XML Linking Language),它是业界的参考标准,而不是像OXML一样,重新从头做一套自己的标准,开放文档重用了已经存在的机制和解决方案。XLink在开放文档中以多种不同的方式用到,例如,嵌入图片。
元数据
我们在这里再说明一下,开放文档植根于已经发布的标准,而OXML是在重新发明了轮子,换句话说,就是做了重复劳动,浪费了体力不说,还未必能做好。开放文档使用Dublin Core元数据标准。任何的DC-aware应用程序或软件都没有必要理解开放文档就可以添加、查看,以及更新元数据。
通过上面较为详细的比较,从宏观的到技术上实现的细节,可以看出ODF比OpenXML有明显的优势,但是市场并不是就仅仅决定于这个因素,还有很多的因素要包含在内,换句话说,并不是说最好的技术一定会占有领先的市场地位,相信微软也不会轻易的妥协和让步,也不会轻易的失去自己占有的市场份额和霸主地位,我们静观其变,正因为有了争论和竞争,我们才可以进步,用户才可以使用到更好的软件产品,享受到更好的服务。
2006年5月17日,市场调查企业Gartner公司称,国际标准化组织(ISO)不可能批准微软的Office Open XML标准,国际标准化组织已经批准了开放文档标准。
该研究公司上周发表报告称,国际标准化组织有70%的可能不会采用微软XML文档标准。Gartner公司还预测,根据同样的可能性,到2010年,50%的政府机构和20%的商业组织将采用开放文档标准来交换文件。微软公司在去年向欧盟标准化组织ECMS递交了Office Open XML标准,这是寻求国际标准化组织批准的前奏。
虽然Gartner公司认为国际标准化组织不可能批准微软标准,但欧洲委员会似乎更加不确定。在国际标准化组织批准开放文档标准几天后,欧洲委员会消息来源对有关媒体说,欧洲不可能推荐微软标准,否则今后会有两个ISO标准。
ODF与OXML比较
开放文档 微软 OXML
是ISO标准 不是ISO标准
ISO/IEC 26300:2006 OXML是标准化组织欧洲计算机制造联合会(ECMA)标准, ECMA标准由于国际法律的原因,从来没有被承认为国际标 准,这也是为什么ISO决议非常重要的原因。Gartner预测ISO 不会通过OXML作为ISO标准。
是独立于软件提供商 是一个公司的格式,也就是微软公司自己的格式,换句话 说,您不能对这个格式做出任何实质上的修改。
术语说明
ODF: 开放文档 Format (.odt)
OXML: Microsoft Office Open XML (.docx)
OpenXML:OXML
Mixed content model:混合内容模型
non-mixed content:非混合内容
mixed content: 混合内容 |
|
|