本帖最后由 老包 于 2011-12-31 15:52 编辑
从XML说起
HTML的主要功绩是实现了各种性质不同的网络资源的显示和连接(属语法层次),但对资源的理解(属语义层次)主体是人,不是机器。
而语义网络和知识本体的目标是希望计算机能共享,重用,自动处理,自动推理(推理的基础是理解)网络数据资源和知识资源。换言之,对资源的理解主体是机器而不是人(当然开始可以是机器和人的交互,即共为主体)。
这方面的努力包括开发了基本实现的工具,如各种语言XML,XMLS,RDF,RDFS,OWL等。XMLS,RDF,RDFS,OWL都声明其基础是XML。
据笔者的理解,从逻辑角度分析,XML(Extensible Markup Language 可扩展标记语言)的基本特征有两点,一是实现表达变量名和赋值功能,如XML元素<LastName>Bao</LastName>表示LastName为Bao, LastName为变量,Bao为值,讲的明白一点就是“LastName –hsaValue- Bao”;二是实现了元素和元素之间的包含关系。如
<Person>
<FirstName>John</FirstName >
<LastName>Smith</LastName>
</ Person >
元素Person包含了子元素FirstName,LastName。子元素可以是父元素的属性或组成成分,但需要注意的是这里的包含不一定是is-a关系(不同于OWL的subClassOf关系)。
原则上XML的元素命名或标签的形式没有规定,文件创建者可以自由发挥,所以提供了强大的表达能力。但正因为如此,它的语义表达能力几乎是零。所以当机器读到如下文件时XML文件片段时,其实它什么也不懂:
<Note>
<To>George</To>
<From>John</From>
<Heading>Reminder</Heading >
<Body>Don’t forget the meeting!</Body >
</Note >
以后,我们可以看到,为了越来越精确地表达形形色色的语义,语义网络学家不得不不断地收回其“自由发挥”的原则,引入很多各种语言固有的有着特殊语义含义的“标签”。这就是为什么我们除了需要XML,我们还需要XMLS,RDF,RDFS,OWL等。 |