RDF Schema

    技术2022-05-11  140

    RDF使用Schema来定义其类型系统,在定义类型时,RDF引入了部分面向对象的思想。由于RDF的图中主要包含以下几个部分,主语,谓语,宾语,文本。因此RDF Schema要做的主要就是为这不同的部分提供对应的一个类型。RDF Schema本身也是一个RDF文件。

    a)        继承关系与实例关系

    rdfs:subClassOf用于表示继承关系。三元组A rdfs:subClassOf B表示AB的子类,这与Java当中的class A extends B等价。

    rdfs:type用于表示实例关系。三元组A rdfs:type B表示AB的一个实例,这与Java当中的A = new B()等价。

     

    b)        类标记:

    标记

    说明

    继承关系(rdfs:subClassOf

    实例关系(rdfs:type

    rdfs:Resource

    所有出现在RDF图中的对象都属于资源

     

    rdfs:Class

    rdfs:Class

    主语和宾语。用于指明主语或宾语所属的类型

    rdfs:Resource

    rdfs:Class

    rdfs:Literal

    文本

    rdfs:Resource

    rdfs:Class

    rdfs:Datatype

    用于有类型文本,指定数据类型

    rdfs:Class

    rdfs:Class

    rdf:XMLLiteral

    XML文本

    rdfs:Literal

    rdfs:Datatype

    rdf:Property

    谓语

    rdfs:Resource

    rdfs:Class

    rdfs:Container

    容器的基类

    rdfs: Resource

    rdfs:Class

    rdf:Bag

     

    rdfs:Container

    rdfs:Class

    rdf:Seq

     

    rdfs:Container

    rdfs:Class

    rdf:Alt

     

    rdfs:Container

    rdfs:Class

    rdf:List

    集合

    rdfs: Resource

    rdfs:Class

    rdf:nil

    空列表

     

    rdf:List

     

    c)        类定义:

    <rdf:Description rdf:about="A">

    <rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class">

    <rdfs:subClassOf rdf:resource="http://www.w3.org/2000/01/rdf-schema#Resource"/>

    </rdf:Description>

         等价于

    <rdfs:Class rdf:about="A">

    <rdfs:subClassOf rdf:resource="http://www.w3.org/2000/01/rdf-schema#Resource"/>

    </rdfs:Class>

     

    d)        范围与域:

    rdfs:range用于指定宾语的范围。三元组P rdfs:range QA P B,在第一个三元组当中,我们规定了如果一个三元组使用了属性P,那么三元组当中的宾语必须是Q的实例。第二个三元组单中,由于使用了P,所以可以得出B必定是Q的实例。

    rdfs:domain用于指定主语的范围。三元组P rdfs:range QA P B,在第一个三元组当中,我们规定了如果一个三元组使用了属性P,那么三元组当中的主语必须是Q的实例。第二个三元组单中,由于使用了P,所以可以得出A必定是Q的实例。

     

    e)        属性标记,所有的标记都是rdfs:Proerpty的实例

    标记

    说明

    域,主语(rdfs:domain

    范围,宾语(rdfs:range

    rdfs:range

    对宾语进行约束

    rdfs:Class

    rdfs:Property

    rdfs:domain

    对主语进行约束

    rdfs:Class

    rdfs:Property

    rdf:type

    用于定义实例关系

    rdfs:Resource

    rdfs:Class

    rdfs:subClassOf

    用于定义继承关系

    rdfs:Class

    rdfs:Class

    rdfs:subPropertyOf

    用于定义属性之间的继承关系。子属性的含义是指如果AB的子属性,那么如果主语和宾语符合A关系,那么他们也符合B关系。

    rdfs:Property

    rdfs:Property

    rdfs:label

    提供用户友好的标签

    rdfs:Resource

    rdfs:Literal

    rdfs:comment

    对资源进行描述

    rdfs:Resource

    rdfs:Literal

    rdfs:member

    用于表示集合与元素之间的关系

    rdfs:Resource

    rdfs:Resource

    rdf:first

    用于指明某个资源是某个集合的首元素

    rdf:List

    rdfs:Resource

    rdf:rest

     

    rdf:List

    rdf:List

     

    f)        属性定义

    <rdf:Property rdf:about="B">

      <rdfs:domain rdf:resource="http://www.w3.org/ 1999/02/22 -rdf-syntax-ns#List"/>

      <rdfs:range rdf:resource="http://www.w3.org/ 1999/02/22 -rdf-syntax-ns#List"/>

    </rdf:Property>

     

    最新回复(0)