RDF的一些基础知识

时间:2022-11-12 20:22:36

RDF(Resource Description Framework)资源描述框架,一种基本的本体描述语言,提供一个通用的数据模型支持对Web资源的描述。

•资源:一切在Web上被命名、具有URI引用的东西

•描述:对资源特性的一个声明,包括资源本身的属性和资源间的关系

•框架:与被描述资源及其领域无关的通用模型
实际上RDF是一种数据模型,由一系列的陈述即“对象-属性-值”三元组组成。

Triples:[S, P, O] 

RDF用Subject,Predicate,Object三元组与原陈述的三个部分联系起来。
主体(subject):声明被描述的事物
谓词(predicate):这个事物的属性
客体(object):这个属性的值

{p,s,o}实例:

{http://www.w3c.cn,创建者,W3C}--->http://"www.w3c.cn "的"创建者"是 "W3C"

主体,谓词和客体 ,三元组

<?xml version="1.0"?>

<rdf:RDF xmlns:rdf=http://www.w3.org/1999/02/22-rdf-syntax-ns#  xmlns:w3=“www.w3school.com.cn”>

 <rdf:Description rdf:about=“要描述的主体">

 <w3:author要表达的关系>主体的关系的描述</w3:author> <w3:homepage>http://www.w3school.com.cn</w3:homepage>

 </rdf:Description>

 </rdf:RDF>

RDF语法

1. turtle语法

@prefix someprefix:<"http://www.perceive.new/schemas/relationship/>.    #最后的“.”是必须的代表语句的结束

<http://example.org/#green-goblin>someprefix:enemyOf<http://example.org/#spiderman>.

green-goblin 的敌人是 spiderman

@base <"http://example.org/>.

@prefix someprefix:<"http://www.perceive.new/schemas/relationship/>.

@prefix foaf: <http://xmlns.com/foaf/0.1/> .

<#green-goblin>someprefix:enemyOf<#spiderman>;          #谓词对象列表的相匹配的一系列谓语和宾语,由';'分隔

a foaf:person;

foaf:name "Green Goblin".

IRIs用<IRIs>

RDF 默认的文字类型是 xsd:String  `"That Seventies Show"^^xsd:string .            # literal

 

@prefix : <http://example.org/elements> .                                                                              

 

<http://en.wikipedia.org/wiki/Helium>                                                                                 

 

    :atomicNumber 2 ;               # xsd:integer                                                                      

 

    :atomicMass 4.002602 ;          # xsd:decimal                                                                     

    :specificGravity 1.663E-4 .     # xsd:double

 

  :isLandlocked false .           # xsd:boolean

嵌套空白节点

@prefix foaf: <http://xmlns.com/foaf/0.1/> . 

[ foaf:name "Alice" ] foaf:knows [

    foaf:name "Bob" ;

    foaf:knows [

        foaf:name "Eve" ] ;

    foaf:mbox <bob@example.com> ] .

==>

_:a <http://xmlns.com/foaf/0.1/name> "Alice" .

_:a <http://xmlns.com/foaf/0.1/knows> _:b .

_:b <http://xmlns.com/foaf/0.1/name> "Bob" .

_:b <http://xmlns.com/foaf/0.1/knows> _:c .

_:c <http://xmlns.com/foaf/0.1/name> "Eve" .

_:b <http://xmlns.com/foaf/0.1/mbox> <bob@example.com> .

N3语法是她的子集,没有prefix

 

RDF应用

•Web元数据:提供关于Web资源和使用Web资源的系统信息(内容分级、性能描述和个人偏好等)
•需要开放的信息模型的应用(活动安排、组织流     程、Web资源标注等)
•发表机器可处理的信息
•应用之间的互操作。合并来自多个应用的数据构成新信息
•软件Agent对Web信息的自动化处理。