控制工程师论坛

电机与运动控制

XML 101 『1』

birdoo_ivy
birdoo_ivy

2006-07-05

XML在网络中的Web应用已经比较普遍,它强调内容信息的重要性。但它却没有在工业控制领域中得到应用。


在张新薇的一篇文章中提到,由于DCS、PLC要与企业局域网相联,如果现在有几十种监控软件,相互之间需要转换,编写转换软件需要有上百个。如果采用XML(Extensible Markup Language)方法,它使得开发人员能够创建以逻辑内容而不是以格式为基础的标记结构。这将使人和计算机能够更容易地在文档内搜索具体的基于内容的信息,而不是仅仅搜索一个页面的文本。采用XML方法,可以作到部分表意。因此,就不需要编写那么多软件。


假如现在有6种监控软件,需要相互转换,采用“所见即所得”的编程方法,需编写60个软件。如果有一个中间环节,我们暂时称它为XML,只需编写12个软件。所有监控软件都转换到XML上,使用时再把XML嵌入到各个监控软件上。如果有更多的监控软件,转换时不采用XML,要编的软件就更多了。


另外,Cascade Controls公司的John T. Sever也说,当一个自动化项目即将结束的时候,如果发现设备模块包含跨越控制器边界的指令时,将会造成严重的问题。因为当这些指令跨越控制器边界被执行时,编码的结构是非确定的。这意味着终端设备将不会接收到该指令。当这种情况发生在具有大量I/O的工厂级系统网络中时,将变得足以致命。因此程序编码需要被修改。其工作量是非常巨大的,因为修改如此大量的示例(instance)将是一场灾难,起码需要1~2人年(man-year)。但是如果采用XML和XSLT,工期可以缩短为不足一个人月(man-month)。


什么是 XML?


可扩展标记语言(Extensible Markup Language,XML)提供了一种标记内容的方式,可以添加关于数据用途的信息。信息使用XML存储之后,称为解析器的应用程序就能够可靠地提取相关信息,并根据不同的需要处理。


XML可用来做什么?


XML可用于各种不同的应用程序,但其实质是:XML是一种表示数据的方式。有时候数据是为数据库准备的,有些时候则是供人阅读的。与这两方面应用相关的技术,比如数据验证和XML转换也已经随着XML自身一起发展起来。


XML包括验证或者确认的能力、文档结构和文档(在某种意义上的)内容。验证文档有助于防止数据与期望具有特定结构的应用程序进行交互时出现问题,当XML与非XML的遗留系统交互时这一点尤其有用。最初的XML 1.0推荐标准包括对文档类型定义(Document Type Definitions,DTD)的支持,DTD提供了一些验证能力。W3C XML Schemas扩展了这种功能,并提供了一种更加类似XML的语法。


可通过多种方式使用XML封装的数据。一种常见的处理方式是通过使用可扩展样式表语言转换(Extensible Stylesheet Language Transformations,XSLT),开发人员可以使用XSLT定义对XML文档的操作,以生成特定的结果。这种动态转换信息的能力允许从单个源文档产生多种输出,无论输出到不同的数据库还是输出到不同的浏览器。


XSL格式化对象(XSL Formatting Objects,XSL-FO)是一种强大而灵活的格式化数据的XML词汇表,常与XSLT结合使用,把XML和HTML转化成PDF(可移植文档格式)。


本blog点到为止,欢迎大家齐搅合,拍砖的请走绿色通道pengzhao@tsinghua.org.cn

回帖

评论0

首页 | 登录 | 注册 | 返回顶部↑
手机版 | 电脑版
版权所有 Copyright(C) 2016 CE China