博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
jena RDF学习笔记
阅读量:6445 次
发布时间:2019-06-23

本文共 1896 字,大约阅读时间需要 6 分钟。

hot3.png

一、首先要了解RDF和Jena RDF的介绍:

在Jena中,用于表示单个三元组的Java类是Statement。根据RDF规范,只有资源可以是RDF三元组的主题(subject),而对象可以是资源或文字。提取a元素的关键方法Statement是:

    getSubject() returning a Resource(资源)

    getObject() returning an RDFNode (公共接口RDFNode是一个超类两者的Resource和Literal【文字】)
    getPredicate() returning a Property(属性)

示例一个三元组数据:http://somewhere/JohnSmith http://www.w3.org/2001/vcard-rdf/3.0#FullName  "John Smith" .

主语subject是一个资源,书写形式为uri:  http://somewhere/JohnSmith

谓语predicate就是一个属性,书写形式为uri : http://www.w3.org/2001/vcard-rdf/3.0#FullName 
宾语object是一个RDFNode(可以为Resource或Literal,在本例中是文字) : "John Smith"

二、理解URI的概念和写法

  在学习jena RDF时,对三元组的书写格式不太理解,为什么都要写成http://somewhere/JohnSmith这种uri形式,下面把我对uri的学习坐下记录:

URI :Uniform Resource Identifier,统一资源;

URL:Uniform Resource Locator,;

URN:Uniform Resource Name,统一资源名称。

其中,URL,URN是URI的子集

在电脑术语中,统一资源标识符(Uniform  Identifier,或URI)是一个用于标识某一互联网资源名称的字符串。 该种标识允许用户对任何(包括本地和互联网)的资源通过特定的协议进行交互操作。URI由包括确定语法和相关协议的方案所定义。

Web上可用的每种资源 -文档、图像、视频片段、程序等 - 由一个通用资源标识符(Uniform Resource Identifier, 简称"URI")进行定位。

URI一般由三部分组成:

一、

存放资源的自身的名称,由路径表示。

参考下面的URI,它符合当前的RFC4395规范:协议名称://域名.根域名/目录/文件名.后缀

例如http://b.c/d/e.f (假设b.c是一个可用的,e.f是一个标准的文件)

这个URI是这样的:这是一个可通过访问的资源,位于b.c上,通过URI中的字符串“/d”访问主机上的“d”文件夹,通过“e.f”请求访问主机上“/d/e.f”这个文件。

这是URI的另一个例子,指向一个用户的邮箱:mailto:名称

注:大多数读者可能熟悉"URL",而不是URI。URL是URI命名机制的一个子集。

二、标志符

有的URI指向一个资源的内部。 这种URI以"#"结束,并跟着一个标志符(称为片段标志符)。例如,下面是一个指向section_2的URI:

协议://域名/目录/文件#片段标示符(例如:/a/b.php#a)

三、相对URI

相对URI不包含任何命名规范信息。它的路径通常指同一台机器上的资源。相对URI可能含有(如,“..”表示上一层路径),还可能包含片段标志符。

为了说明相对URI,假设我们有一个基本的URI:

协议://域名/目录a/目录b/文件c

下面的链接中使用了相对URI:

../文件D

它扩展成完全的URI就是 "协议://域名/目录a/文件D",

下面是一个图像的相对URI:

<IMG src="../icons/logo.gif" alt="logo">

它扩展成完全的URI就是 "协议://域名/目录a/icons/logo.gif"。

在HTML中,URI被用来:

链接到另一个文档或资源(参看A和LINK元素)。

链接到一个外部样式表或脚本(参看LINK和元素)。

在页内包含图像、对象或(参看、、和元素)。

建立(参看MAP和元素)。

提交一个(参看)。

建立一个框架文档(参看和元素)。

引用一个外部参考(参看Q、,和元素)。

指向一个描述文档的metadata(参看元素)。

 

 

转载于:https://my.oschina.net/sunyouling/blog/2251600

你可能感兴趣的文章
Unity3D游戏开发初探—2.初步了解3D模型基础
查看>>
go语言操作mysql范例(增删查改)
查看>>
新浪微博IM下周1上线?惊人一举!
查看>>
VSTO之旅系列(一):VSTO入门
查看>>
神经网络激活函数sigmoid relu tanh 为什么sigmoid 容易梯度消失
查看>>
CentOS 7.4nginx配置SSL
查看>>
软件创富密码:iPhone应用程序开发攻略之深入浅出Objective-C 2.0(双色)
查看>>
Zookeeper简介
查看>>
开发iOS平台的猜数游戏
查看>>
Removing image from UIImageView
查看>>
DataSet 与 xml
查看>>
Android——布局(线性布局linearLayout,表格布局TableLayout,帧布局FrameLayout)
查看>>
Git 常用命令 思维导图(转)
查看>>
C#Web异步操作封装
查看>>
扫描器的高效实现
查看>>
css3整理--background-image
查看>>
自定义Notification
查看>>
Vis.js – 基于浏览器的动态 JavaScript 可视化库
查看>>
Oracle 过程中变量赋值
查看>>
快速傅里叶变换(FFT)
查看>>