什么是语义万维网
语义万维网是万维网的发明人TimBerners-Lee倡导的下一代万维网,旨在赋予万维网上信息资源以一种标识,在资源之间建立起机器可处理的各类语义联系,并致力于开发“以计算机可处理形式表示信息含义的语言”。
Tim.Berners—Lee对语义万维网做了如下的描述:语义万维网并不是一个孤立的万维网,而是对当前万维网的扩展,语义万维网上的信息具有定义良好的含义,使得计算机之间以及人类能够更好的彼此合作。
语义万维网的组成
1.URIs和UnicodeWeb环境下的应用之间不可避免地需要相互通信,直接或间接地以机器可读的格式传递发布信息。这些信息中很大一部分是对Web上资源的描述,因此,首先应该以明确的方式来标识这些资源《对象)。语义万维网采用统一资源标识符(Unform Resource Identifiers,URI)来标识资源及其属性,URI是一个Internet标;佳,记载于RFC2396。这一层是整个语义万维网的基石,它成功地解决了万维网上资源的定位和跨地区字符编码的标佳格式的问题。
2.XML、NameSpace、XMLSchema在URI和Unicode之上,是XML及相关技术层。XML允许用户根据需要自定义一些“有意义的”标签对发布的内容进行标记,并使用文档类型定义(Document Type Definition,DTD)或XMLSchema来约束这些标签的结构。
3.RDF、RDFSchemaXML层的上一层是数据互操作层——资源描述框架(Resource Description Framework,RDF)$nRDFschemas。RDF本身并没有规定语义,但是它为每一个资源描述体系提供一个能够描述其特定需求的语义结构的能力。RDFSchema机制提供了RDF模型中使用的一个基本类型系统。
4.Ontology在某种意义上说,RDFSchema本身就是一种简单的本体(ontology)语言。但是RDF/RDFS对特定应用领域的词汇的描述能力比较弱,需要进行扩展,我们把这个RDF/RDFS之上的扩展层称为ontology层。T.RGruber等人对ontology给出的定义比较适用于语义万维网的研究:ontology是一种明确的共享概念化的形式说明。概念化是指对现实世界中的一些事物进行抽象建模,所建立的模型确定了该事物的一些相关的概念。明确意味着所使用概念的类型以及它们使用上的约束都有显式的定义。形式说明则是指ontology应该是机器可以理解的。共享反映了这样的一种理念:ontology表达双方都认可的知识,也就是说,ontology并不会仅仅局限于某些个体,而应该被一个群体所接受。
5.Logic、Proof&Trust到目前为止,利用RDF/RDFS以及对RDFS进行扩展的一些ontology语言可以对Web上的资源内容做出描述。仅有这些描述还远远不够,基于语义的web应用还需要根据特定的规则从这些描述性的知识中进行推理。逻辑层的目标就是提供一种方法来描述规则。描述逻辑标记语言(DescriptionLogicMarkupLanguage,DLML)就是这样的一种方法,它用DTD封装了描述逻辑中的逻辑连接词,可将基于描述逻辑的形式化知识嵌入到被描述的文档之中。Proof和Trust这部分内容在概念上目前还没有一个成熟的说法。但是语义万维网的研究者普遍认为Proof和Trust将是下一代Web的重要概念。在XML、RDFXRDFS、Ontology以及Logic层和Proof层之上,我们就可以建立一些可以信任的应用了。
语义万维网开发的工具
语义万维网能否取得成功的关键因素在于是否有充足的工具来帮助开发人员建立体现其价值的应用。下面仅介绍一些RDFAPI的讨论和开发状况,目前实现的RDFAPI主要有GINF、Redland、Jena、Mozila等。通用互操作框架,GINF,使用RDF作为协议、语言、数据和接13的通用表示。它使用的RDF接口不仅可以创建和操作RDF模型,而且还可以通过一个类似SQL的查询界面来访问这些模型。Redland是支持高层面向对象的RDF接口库。Redland用它自己的类实现了每一个RDF概念。Redland的模块化,面向对象的本质使得终端的用户能够插入各种不同的解析器和合适的存储机制。Redland提供了C语言的接口。Jena,是由惠普公司开发的JavaRDFAPI。它同时支持以声明和资源为中心的RDF模型的操作。并且在Jena所提供的工具箱中还提供了对DAMLontology的支持,但是目前只能对ontology进行一些简单的推理。Mozilla作为开放源代码Web浏览器的一部分而开发的MozillaAPI,提供了用SWf—Prolog实现的RDF解析器。