以文本方式查看主题 - 中文XML论坛 - 专业的XML技术讨论区 (http://bbs.xml.org.cn/index.asp) -- 『 DTD/XML Schema 』 (http://bbs.xml.org.cn/list.asp?boardid=23) ---- XML和语义:实际情况(一) (http://bbs.xml.org.cn/dispbbs.asp?boardid=23&rootid=&id=187) |
-- 作者:admin -- 发布时间:11/18/2003 12:41:00 PM -- XML和语义:实际情况(一) Thinking XML #1 XML 和语义:实际情况 Uche Ogbuji (uche@fourthought.com) CEO 兼首席顾问,Fourthought, Inc. 2001 年 2 月 这篇对 XML 和语义的讨论揭开了这个由 Uche Ogbuji 撰写的专栏的序幕,本专栏讨论了 XML 知识管理方面的问题,包括元数据、语义、资源描述结构 (RDF)、主题映射和自主主体。本专栏从实践的角度来剖析这个主题,因此它针对的读者是程序员,而不是针对理论家。
“XML 编程思想”这个新专栏将讨论 XML 和知识体系结构 (KA) 的交汇处。知识体系结构听起来象是一句行话,但它其实只是一个涵盖面很广的术语,是指当今 XML 逐步走向成熟时出现的一些非常有用的技术。元数据管理、语义透明性和自主主体都是 XML 独有的概念,但 XML 对统一结构化语法和半结构化语法的承诺有助于将几乎不可能的事变成切实可行的。 区分本专栏和许多此类主题讨论的主要特征是我将针对程序员展开讨论,而不是针对理论家。我将讨论一些开发工具和技术,它们可以让开发人员使用 XML 更好地收集和浏览隐藏在数据中的知识,无论这些数据是在公司的数据库中还是在 Web 上。这听上去象是在夸夸其谈,但本专栏的各篇文章其实是一个循序渐进的过程,决不会脱离常识。 本专栏的前两篇文章介绍了预备知识,因此它们可能会稍微偏离我的基本规则“重代码,轻理论”。前两篇专栏文章将讨论 XML 的语义和相关词汇。我只用现有产品来讨论其创始过程,以供开发人员了解,但现在还不会展示许多实用代码。 究竟什么是语义? 它们包括: 元素类型名称、属性名称和某些情况下内容术语的解释
当然,在这三概念之间有一些重叠。 反观语义 EDI 为特定业界定义了一种特殊语法和一套特殊语义 -- 一些是普通语义,而另一些是非常特殊的语义。XML 目前有明确的语法和结构,但它没有提语义透明性。语义透明性可以使 XML 机器建立元素(比如,PurchaseOrder 或 PO)和根据该元素执行专门操作的高阶处理之间的关系。总而言之,它意味着数据中的表达式如实地表示了相应概念的含义。语义透明性的最终测试是如果某个人 只使用适用于 XML 处理软件的机制,他能否正确理解 XML 数据的含义。 显然,单靠 XML 根本无法实现语义透明性,这正是那么多 XML 技术专家关注语义透明性的原因。如果 XML 系统不能实现语义透明性,那么这些系统可能就不符合有三十几年历史的 EDI,就不能成为一种自动电子交易的方式。 关于 XML 实现语义透明性的必要性还有一些争论。在完成 XML 1.0 规范之前,各种团体都期望开发语义透明性的机制。实际上,某些创意没有考虑到 XML;它们期望(至今仍是这样)成为集 SGML、XML、EDI、表格式报表和其它机器格式的术语于一身的通用权威。 关于 ISO BSR 目前已经建立了基本规则(出版物 ISO 16668:2000),ISO 已经收集了一个试用集合,有几千项,例如 AccountsPayables、ContactParty.CustomerAssigned.Identifier 和 Contract。一旦完成,BSR 可以让程序员使用合成 XML 模式,如以下 DTD 片段: <!ELEMENT AccountsPayables.Contact (ContactParty.CustomerAssigned.Identifier)>
假设那些元素是由制造公司使用的报表格式,该公司将其会计工作外包给另一家公司。那么,XML 词汇的开发人员将从以下方式中得到语义透明性的好处: 开发人员确保所使用的元素类型名称符合 BSR 中的等价概念,以最小化元素含义的多义性。制造商可以与会计人员讨论数据,并确保双方都认同所表达的内容。
即便在这个初级阶段,也可以使用 BSR 进行实验,因为全球信息定位服务 (GILS) 已经创造了试用 BSR 项的 RDF 模式和 XML 模式编译。GILS 是美国政府的倡议,它涵盖了用于寻找结构化信息的技术和资源。GILS BSR 编译是一个有价值的资源,它已经涵盖了在常规政府与私人交流中使用的常用术语。 UN/CEFACT:联合国贸易促进及电子商务中心 我建议查看 BSR,因为它影响着重要组织,如 UN/CEFACT(全球范围)、CEN/ISSS(欧洲)和 DISA(美国)。 统一欧洲和美国的术语 显然,开发 EDI 的组织在处理 XML 语义方面跳跃了一大步。其中不带 EDI 标记的主要代表是 Microsoft。在 1999 年,Microsoft 推出了 BizTalk 结构。BizTalk 是 Microsoft、其伙伴和业界组织用于注册模式、进程描述和样本 XML 文件的库。其旨在充当 XML 格式和相关进程的交换所,这是它成为实现语义透明性的重要力量。 部分是因为它是由一家公司开发的,部分是因为常用行业政策,BizTalk 已经成为激烈争论的主题。某些人将它看作是 Microsoft 通过在语义问题上建立霸权以达到掠夺 XML 的目的。不管政策如何,现在已经出现了在 BizTalk 结构中工作的工具。许多工具都是类似于 XML 解决方案的映射软件,它们提供了 GUI 以便将一个词汇映射成词汇。同样,开发人员可以开始使用基于 SOAP 的 BizTalk XML 消息格式的公开规范。遗憾的是,如果要执行重要的 BizTalk 消息传递,需要使用 Microsoft 的商业 BizTalk 服务器产品。 该领域中的新生事物 在这篇文章中,我讨论了 XML 语义这个舞台上的一些重要演员。然而,现在该领域中的许多活动来自于新生代,如 ebXML、UDDI 和 eCo,以及纵向联合行业组织的工作。在下一篇文章中,我将讨论这些新加入者更实际的方面。 参考资料 Uche Ogbuji 撰写的 XML: The future of EDI? 讨论了即将问世的 XML 可能会替代 EDI;这篇文章接触了有关语义的问题。
[此贴子已经被作者于2004-4-16 14:45:40编辑过]
|
-- 作者:admin -- 发布时间:11/18/2003 12:43:00 PM -- XML 和语义(二) Thinking XML #2:XML 和语义 该领域中的新生事物以及旧的邻近范畴的另一事物 Uche Ogbuji (uche@fourthought.com) CEO 兼首席顾问,Fourthought, Inc. 2001 年 5 月 在本专栏中,Uche Ogbuji 完成了他对 XML 和语义的介绍,并为随后的更多实践性专栏做准备。XML 编程思想讨论了 XML 知识管理方面的方面,包括元数据、语义、“资源描述结构 (RDF)”、“主题映射”和自主主体。本专栏从实践的角度探讨了主题,因此针对的是程序员而非理论家。 EDI 标准的 XML 标记 可以从 IgML 网站(请参阅参考资料)下载当前的 DTD 当前草案,以及 ANSI X12 和 UN/EDIFACT(EDI 的两个主要“方言”)各种子集的样本。虽然 IgML 本身不提供语义透明性的框架,但对于那些使用 EDI,或者只是利用 EDI 标准提供的语义基础结构的实现 XML 商家到商家系统,它提供了一种有用的工具。 UN + OASIS = ebXML ebXML 的目的是开发利用 XML 来推动各种组织之间贸易的基础结构和实践,而不论这些组织的规模如何、选择的是何种工具,或者地理位置如何。这一努力是根据主动的时间表实施的,可能考虑到了 EDI 开发所用的时间。去年年底开始形成了它的第一个产物,包括整个体系结构文档。 ebXML 与 XML 交换的语义透明性最为相关的那部分是“注册表服务”,这在“注册表信息模型和注册表服务”规范草案中进行了描述,它用于处理面向对象实体的管理和交换。这些注册表针对的层次级别比我在第一专栏中介绍的“国际标准化组织基本语义注册表 (ISO BSR) 级别更高。它们为使用“统一建模语言 (UML)”的商业信息提供了对象模型,并添加了与“对象管理小组 (OMG 的)”元对象规范并无分别的元数据和设计特性。 它们还为由元数据执行的对象查询定义了 XML 词汇表,最有意义的是,为符合对象模型的实例定义了 XML 表示。遵循这些表示的文档可以作为伙伴之间的交易事务进行交换。最近采纳了“简单对象访问协议 (SOAP)”,作为这样的事务的传送协议。 ebXML 技术体系结构规定了 ebXML 系统开发的三个阶段:实现阶段、发现和检索阶段,以及运行时阶段。在发现和检索阶段中,规范规定:“这个阶段是某些交易伙伴发现由其它交易伙伴请求的商业信息含义的阶段。”规范的意图是,这个“含义”由在 ebXML 注册表中设置的元数据模型提供。 有关抱怨的说明 另一个抱怨是注册表方法非常不幸地演变成第二代倡议中一个公共的、不正确的趋势:将面向对象系统中的概念成批地导入到常规 XML 中。 这种趋向可能会严重损害到 XML 的扩展和表现,特别是在半结构化数据很重要的情况下。这种失常最危险的表现可能是 W3C XML Schema 规范的数据分类和继承特性。例如 ebXML 和 W3C Schema 这样的倡议尽量集中在核心 XML 需要上,而将面向对象体系结构留给 OMG 和类似的团体。 eCo 战士:挽救真正的庞然大物 eCo 注册表提供对规范数据模型、以及由各种 XML 商业事务规范提供的元素类型和属性定义的访问。eCo 工作组以被一些主要组织利用,开发诸如 Open Buying on the Internet (OBI)、RosettaNet 和 XML/EDI 这样的 XML 格式规范而感到自豪。上述成果中的一些已经与 ebXML 建立了关系,并且有可能在 eCo 和 ebXML 工作之间发展出牢固的关系。 不幸的是,到目前为止,跃跃欲试的开发者可以使用的唯一资源是 eCo 站点上提供的少数几个有些单薄的演示。 使用 RosettaNet 解释供应链残余 RosettaNet 计划交付一个“主要字典”,其中定义了在供应链交互中使用的术语,以及为这样的交互而形成的框架所包括的商业过程和交换协议。很自然的,从知识管理角度来说,字典是最吸引我的方面。但字典和协议的组合是 RosettaNet 称之为 Partner Interface Process(PIP) 的基础。每个 PIP 都是在商业伙伴之间使用 XML 消息调整特殊过程所用的一种规范。一个完整的支持 RosettaNet 的供应链可以由几十个甚至几百个 PIP 组成。 RosettaNet 可能是最忠于 XML 语义注册表生成和交换倡议的,并且已经创造出象 BEA WebLogic Collaborate 这样包括了实现的产品。2001 年 2 月,在 RosettaNet 的 EConcert 准备发布那一天,一些发言人聚在一起,生成 PIP 在各自行业中的使用相当成功。 它的成熟等于为开发者带来了福音。RosettaNet 站点已提供了三个字典:RosettaNet 商业字典、RosettaNet IT 技术字典和 RosettaNet EC 技术字典。它们以 HTML 表和 XML+DTD 的形式提供了几百个术语的定义、数据类型和表示限制(例如 "DigitalCertificateSignature")。这是一个不可多得的宝贵资料库,对于其完善更有价值,甚至远远超过上一专栏中提到的基于实验的 ISO BSR 列表。 知识的汇编语言 我曾参与过几个语义透明性非常重要的项目的工作,包括一个客户机在其中使用 RDF 来实现同义词框架和基本转换以适应格式不限的顾客查询。 使用 RDF 能够如此轻松地建立这样的系统,并产生良好的性能总是给我留下非常深刻的印象。 因此,看到有那么多 XML 进程倡议重蹈 RDF 的覆辙让我非常失望。但象我已在有关“Web 服务描述语言 (WSDL)”的 developerWorks 文章中所提到过的,有太多的 XML 应用程序都没有注意到 RDF 的长处。希望随着 RDF 工具 -- 以及象 RDF Site Summary (RSS) 这样的成功经历 -- 的稳步增加,这种状况将有所转变。 今后的实践 参考资料 考虑过这一专栏吗?有关这一部分,请转至 论坛。(也可以单击页面顶部的 Discuss 图标。) |
-- 作者:admin -- 发布时间:11/18/2003 12:44:00 PM -- XML 和语义(三) Thinking XML #3 踏着语义的节拍 Uche Ogbuji (uche@fourthought.com) CEO 兼首席顾问,Fourthought, Inc. 2001 年 5 月 Uche Ogbuji 就 XML 语义透明性和 XML 知识管理方面讨论了近来所发生的事情,这其中包括 ebXML 和 RosettaNet 中的一些新的开发。 对于语义透明性,大多数精力一直放在贸易简化(可作为一种组织来理解)和难以定义的自动交易请求,而且有可能让大多数都可以实现。在这个领域有一些突然而至的活动,这里来看一下 ebXML 和涉及到 RosettaNet 的项目。 随处可见的 ebXML 信息技术可以向发展中国家提供了一个机会,使它们跃过其它国家必须经过的漫长而痛苦的发展阶段。 在会议上,我寻找种种不仅仅是闲置原则的产品的迹象。最后,发现了使用 ebXML 的具体示例。在一块场地上有家供应商显示它的产品实现了 ebXML。当然,本次会议也只是 ebXML 概念证明 (POC) 演示路途中的一站。象 NetFish/IONA、Documentum、Sun、BEA、Commerce One、 Fujitsu、Kildara 和 Bowstreet 与 ebXML 原型(用 Perl、Python、C++ 或 Java 编写)一起演示了它们能够互相向对方的软件透明地发送消息,包括中间系统的演示。在演示之后,与这些参与着者会谈中得知,这个代码正快速地实现从原型向交付包转移。 发布的 ebXML 新闻 RosettaNet 提出联合 尽管集中了这么多精力,但从本专栏中列出的 XML 词汇提倡者中可以得出一个结论,在语义透明性空间里有过多的分支。从近来的新闻发布会得知,RosettaNet 宣布它将关注并以极大的热情来统一这些流派。 虽然现今的许多 XML 提倡者都是相互补充的,但是大量的 XML 标准导致实现者和关键决策者之间的混乱。为了在工业界提供更清晰地理解,RosettaNet 开发了概念模型,用于定义支持供应链中贸易伙伴间的 B2B 集成所需求的 XML 标准的各层。 网络上的字 若想了解 WordNet,Dr. Jonathan Borden 的联机浏览器是一个不错的示例,它使用了 Dan Brickley 的 联机 RDF WordNet 模型。该浏览器使用 XSLT 样式表,所以对于那些正在开发语义相关的实际系统的开发人员来说,它是一个很方便的工具。这个联机浏览器的唯一问题是反应迟缓,要想较快一些的访问,可以下载 WordNet RDF 转储到本地机器。 嘿,继续…… 参考资料 XML 编程思想 #1 和 XML 编程思想 #2 讲述了提倡 XML 语义透明性。 |
-- 作者:admin -- 发布时间:11/18/2003 12:47:00 PM -- XML和语义(四) Thinking XML:XML 和语义 英文原文 Uche Ogbuji(uche.ogbuji@fourthought.com) XML 作为基本数据格式无疑是成功的。但是 XML 1.0 提出的许多承诺 — 从统一各企业间的通信方式到使 Web 更智能化 — 都没有兑现。将 XML 用于共享的语义并因此用于共享的知识,是本专栏的主题。本文中,Ogbuji 先生介绍了迄今为止,开放应用程序组(Open Applications Group)和美国国防部(DoD)沿着这一方向,在最近发展环境中所取得的进步。 当引入 XML 1.0 时,它不仅被宣传成黑客工具箱中又一个有价值的工具,而且还被描绘成一个鼓励人们更自由地共享信息的系统。XML 承诺:标准化作为组织间电子贸易基础的格式,并建立带有更灵巧的搜索引擎和支持下一代分布式应用程序的更智能化的 Web 基础。 这些承诺的核心是一种能力,它将共享简单标记文档扩展成共享文档中一些标记背后的概念。这是共享语义的思想,并且也是本专栏讨论的重点。我已经讨论过建立 XML 格式的字典和映射表的组织工作,以便可以由全面和正式的文档(例如,RosettaNet 和 ebXML)共享语义。我也讨论过用 RDF 在程序中表达语义的实际技术。正如我小心演示的那样,该技术的基础就是用来做这类工作的,但问题是能否建立更软的基础。 对于更软的基础,我的意思是协定。如果没有足够多(多于某个临界数量)的人数依靠世界上所有的工会、注册中心、资料库、模式语言和词汇表来制定和正式化其协定,则这些工会、注册中心等等就都毫无价值。构成采购订单的定义有数百种,但人们是否有充分的愿望通过使用与 XML 相关的技术提供的工具使一种采购订单格式与另一种匹配呢? 在本专栏文章的其余部分,我将就语义透明性方面的最新发展作常规调查。人们在这些方向上仍在进行大量活动的事实显示,还是有机会兑现 XML 的重要承诺的。 OAG 在前进 OAGIS 版本 8.0 提供了与版本 7.2.1 相同的 BOD 集合。添加了对更具描述性的标记名称的支持,但大多数更改是添加了技术特性规范。尤其是,BOD 现在具有 W3C XML 模式定义语言(XSDL)定义;还有用 XPath 定义的映射,用于根据消息内容集成应用程序执行。版本 8.0 中的所有 BOD 文档都是以强交叉引用的 HTML 提供的。 OAG 似乎还很认真地采用了与其它组的可互操作的思想。7.2.1 发行版已经提供了对 ebXML、RosettaNet 实现框架(RNIF)和 Microsoft 的 BizTalk 的支持。随着核心 XML 技术映射的添加,现在,在各种通用 XML 工具中支持 OAGIS 的道路越发清晰了。 OAGIS 8.0 可免费下载。您会得到一个大的 zip 文件,在解压缩之后,可以通过在 Web 浏览器中查看所包含的 index.html 来开始。压缩文档还包含 XML 概要(schemata)(仅 XSDL 格式 — 没有 DTD)和示例 BOD。这个概要很大,并且展开成错综复杂互连文件。OAG 推荐使用 XML IDE,也许是基于这样的设想:这样的工具有助于理解散乱的模式文档。为方便起见,Xerces 解析器、Saxon XSLT 引擎和 XSV XSDL 验证器被捆绑在一起。 在该 zip 文件中,还有所有 200 多个 BOD 的示例。这些示例不大象它们应有的那样有用,因为它们有许多占位符,如文本“String”大意相当于说“把某个字符串放在这儿”。也许这适合于模板,但在示例中,这不是很有用。看起来这些样本不大可能仅仅意味着模板,因为 OAG 推荐使用 XML 工具,而任何工具都能方便地从模式生成模板。但是,作为示例它们应该以友好的方式帮助用户理解文档的结构和意图。因此,不完整的示例有点让人沮丧,但考虑到 BOD 可能很大,因此可能认为将完整的示例放入免费可用的软件包中要投入太多的工作而不能实现。 DISA 在研究模式 DoD 指定国防信息系统局(Defense Information Systems Agency (DISA))建立一个 XML 组件资源库,主要由国防机构内部使用,但显然有可能扩展到更大范围(请参阅参考资料)。请不要把这个 DISA(http://www.disa.mil)与我在本专栏中第一部分提到的数据交换标准协会(Data Interchange Standards Association)(http://www.disa.org)混淆。此外,民间的 DISA 管理着 X12 EDI 标准的公认标准委员会(Accredited Standards Committee (ASC))。 该工作幕后有双重推动力:各种政府机构越来越多地使用 XML,并期望通过标准化或至少通过注册各种格式、最佳实践和与供应商和业界团体的关系来扩大使用 XML 的好处。(在 DISA 备忘录中,这种多样的混合通常称为组件。)DISA 已经管理着 DoD XML Registry v2.1,根据其主页上的定义:“允许一致的 XML 用法,包括项目内的垂直使用和跨组织的水平使用”。特别地,注册中心定义了来自多种词汇表的、有组织的 XML 信息项,例如,通过名称空间(在本例中,从组织角度而不是如 XML 名称空间 1.0 中那样从技术角度讲)组织。每个名称空间都有管理器,并且都与其它名称空间中的相关项交叉引用。 例如,您可以转到这个在 Personnel 名称空间下的注册中心,查找定义婚姻状态的信息项(Con_MaritalStatus (1.0))。您甚至可以下载表示婚姻状态枚举中的正式值的 XML 文档(请参阅清单 1)。 清单 1:DoD XML 注册中心中表示婚姻状态信息代码域值的文档
结束语 在本系列的下一篇专栏文章中,我将回到问题跟踪器的主题。既然许多基本部分已经就位 — XML 源代码、RDF 模式和查询 — 您可以开始在中间件设置中制作应用程序、说明 RDF 可以如何增强应用程序中已有的 XML 价值。 参考资料 阅读关于开放应用程序组所从事的“电子商务和应用程序集成的最佳实践和 XML 内容”。 关于作者
[此贴子已经被作者于2004-4-16 14:41:24编辑过]
|
W 3 C h i n a ( since 2003 ) 旗 下 站 点 苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》 |
78.613ms |