-
资源描述框架模式RDFS
普通类 -
- 支持
- 批判
- 提问
- 解释
- 补充
- 删除
-
-
前言
RDF定义了一个简单的模型,通过指定的性质和相应的值描述资源之间的关系,可以表示一个实体关系图。(类似于E-R图)
但RDF没有定义任何一个特定领域的语义,没有假定某个领域,只提供了一个领域无关的机制来描述元数据,因此还需要其他工具来描述领域相关的语义,这便是RDFS所要实现的目标。【不了解RDF?先学习一下 RDF 的知识吧】
RDFS的工作:(1)描述类与它的子类之间的关系,可用于定义某个特定领域的分类方法;(2)定义类的性质。
可以说,RDFS提供了一些建模原语,用来定义一个描述类、类与类之间关系的简单模型,相当于为描述网上资源的RDF语句提供了一个词汇表。从而增强了RDF对资源的描述能力。-
基本概念
基本模型是:class definition and subClassOf statement,property definition and subPropertyOf statement,domain and range statement(To restrict the combination of class and property ),type statement(To declare a instance/resource of class)。使用这些原语定义一个领域的知识。
RDFS中的subClassOf层次结构如下:
RDFS是RDF的词汇描述语言,继承了所有RDF中定义的概念,并且有进一步的扩展,基本概念如下:
资源可以被划分成各种class,class的成员叫instance of class,类(rdf:Class)本身也是资源(rdf:Resource),通常用RDF URI Reference标识,可以用RDF的性质(rdf:Property)来描述。rdf:type性质可以用来声明一个资源是一个类的实例。
每个类都关联着一个实例集合,叫做这个类的扩展类。两个不同类可以有相同扩展类。但性质一般不同。一个类可以是自己的扩展类的成员。
子类与超类:当且仅当类C中的所有实例都是C’类的实例时,类C就是类C’的子类(以rdfs:subClassOf性质声明),C’为超类。所有类都是自身的子类。
子性质与超性质:(性质定义为主体资源与客体资源的关系)当且仅当与性质P相关联的所有主体资源和客体资源也都与性质P’相关联,P是P’的子性质,P’是P的超性质。所有性质都是自身的子性质。-
以性质为中心的RDFS
每个性质都指定了它所关联的主体类和客体类,因此可以向类中添加新的性质而无需修改这个类的定义,并且任何人都可以使用这种方法描述关于已存在的资源的任何信息。
性质有两种约束:
domain(定义域):将性质与类连接起来,指定了主体资源;
range(值域):限制了性质的取值范围,指定了客体资源。
模型举例:
人(Person)是文档(Document)的作者(Author)。
人有姓名(Name),类型为常量(Literal)。
文档(Document)有标题(Title),类型为DC:title。
上述模型重点突出了资源及其相互之间的关系,如果想重点突出作者这个性质,而不是资源本身,可以通过引入domain和range,调整如下:
将上述模型的上层进一步具体化可得:
同样,上述模型的下层也可以进一步具体化,整合可得:-
RDFS的组成
主要的类和性质有:
(1)rdfs:Resource:RDF所描述的所有事物,所有其它类都是这个类的子类,rdfs:Resource是rdfs:Class的实例;
(2)rdfs:Class:由所有RDF类资源组成的类,表示资源的类型,用来定义RDFS中的概念。Rdfs:Class是rdf:Class的实例;
(3)rdfs:Literal:由常量值构成的类,可为字符、数字等,往往是性质的取值。Rdfs:Literal是rdfs:Class的实例,是rdfs:Resource的子类;
(4)rdfs:Lable:用来提供关于资源名称的一个便于用户阅读的版本;
(5)rdfs:comment:提供关于资源的一些描述信息;
(6)rdf:Property:由RDF性质构成的类,描述那些作为RDF性质的资源;
(7)rdfs:domain:是rdf:Property的实例,表示由具有给定性质的资源构成的类;
(8)rdfs:range:是rdf:Property的实例,表示作为性质值的资源所构成的类。Rdfs:range性质的值是一个类,即rdfs:Class类;
(9)rdf:type:表明一个资源是一个类的实例,描述资源和类之间的instance-of关系;
(10)rdfs:subClassOf:表示类之间的包含关系。一个类可以是多个类的子类,但继承关系图不能有环;
(11)rdfs:PropertyOf:是rdf:Property的一个实例,描述了性质之间的包含关系,用来说明一个性质是另一个性质的实例。
如果性质P2是性质P1的子性质,而资源R有一个P2性质且值为V,那么资源R也有一个性质P1值为V。同样,继承关系图也是无环的。子性质的这种层次体系可以用来表示range和domain约束的层次关系。一个RDF性质的rdfs:domain和rdfs:range也可以用于它的每个子性质。
与具体化相关的类和性质有:
(12)rdf:Statement:所有RDF语句都是rdf:Statement的实例,rdf:Statement是rdf:subject、rdf:object、rdf:predicate性质的domain;
(13)rdf:subject:表示一个资源是某个RDF语句的主体。Rdf:subject的rdfs:domain是rdf:Statement,其rdfs:range是rdfs:Resource。常用三元组表示S是rdf:Statement类的一个实例且S的主体是资源R;
(14)rdf:predicate:表示一个资源是某个RDF语句的谓词。其domain和range与rdf:subject相同。元组表示S是rdf:Statement类的一个实例,R是rdf:Property的一个实例,且S的谓词是R;
(15)rdf:Object:表示一个资源是某个RDF语句的客体。其rdfs:domain是rdf:Statement,其rdfs:range既可以是常量也可以是资源。
RDF容器相关的类和性质有:
(16)rdfs:Container:所有RDF容器类的父类;
(17)rdfs:Bag:该类表示RDF的Bag容器;
(18)rdfs:Seq:表示RDF的Sequence容器;
(19)rdfs:Alt:表示RDF的Alt容器;
(20)rdfs:member:是rdf:Property的一个实例,是所有容器成员性质的父性质。
(21)rdfs:ContainerMembershipProperty:该类的实例包括性质rdf:_1、rdf:_2、rdf:_3等,用来表示一个资源是一个容器的成员,是rdf:Property的子类。每个容器成员性质的一个实例是rdfs:member性质的rdfs:subPropertyOf性质;常用三元组表示容器资源O是C的成员,标号为n;
(22)rdf:List:是RDF列表类,与以下三个性质连用;
(23)rdf:first:该性质表示rdf:List与它的第一个项之间的关系。如三元组表示资源O是列表L的第一个项;
(24)rdf:rest:该性质表示子列表不包含原列表的第一个项。如三元组表示列表O去掉了第一个项列表L;
(25)rdf:nil:资源rdf:nil是一个空列表。如三元组表示列表L中只有一个项; -
-
- 标签:
- 表示
- RDF
- rdf
- 实例
- 学习元
- RDFS
- rdfs
- 性质
- 资源
- 描述
-
学习元评论 (0条)
聪明如你,不妨在这 发表你的看法与心得 ~