SPARQL Query Language for RDF
Contents
* 1. Intoduction
* 2. Making Simple Queries
* 3. RDF Term Constraints
* 4. SPARQL Syntax (语法)
o 4.1 IRIs (URIs)
o 4.2 平凡文字的语法 Syntax for Literals
o 4.3 查询变量的Syntax
o 4.4 空白节点的语法
o 4.5 三元组模型语法
o 4.6 谓-宾列表
o 4.7 宾语列表
o 4.8 复合列表
o 4.9 RDF集合
o 4.10 当rdf:type是谓词时可用a代替
* 5. Graph Patterns (模式)
o 5.1 Group Graph Patterns
o 5.2 Empty Group Pattern
o 5.3 Scope of Filters 过滤范围
* 6. Including Optional Values (可选值)
* 7. 匹配两个中的一个 Matching Alternatives
* 8. RDF Dataset 数据集合
* 9. 结果排序和修改 Solution Sequences and Modifiers
o 重复结果 Duplicate Soulution
* 10. 查询形式 Query Forms
* 11. 测试值 Testing Values
o 操作数数据类型Openrand Data Types
o 过滤评价 Filter Evaluation
* 12. SPARQL定义 Definition of SPARQL
o RDF Terms(术语)
1. Intoduction
* Turtle data format (Tutle数据格式)
2. Making Simple Queries
简单查询:
SELECT ?title
WHERE
{
<http://example.org/book/book1> <http://purl.org/dc/elements/1.1/title> ?title .
}
Building RDF Graphs, 用Construct代替Select:
CONSTRUCT { ?x foaf:name ?name }
WHERE{ ?x org:employeeName ?name }
3. RDF Term Constraints
正则表达式过滤 FILTER regex():
PREFIXdc:<http://purl.org/dc/elements/1.1/>
SELECT?title
WHERE{ ?x dc:title ?title
FILTER regex(?title, "web", "i" )
}
4. SPARQL Syntax (语法)
4.1 IRIs (URIs)
同一个IRI的不同表示方式:
<http://example.org/book/book1>
BASE <http://example.org/book/>
<book1>
PREFIX book: <http://example.org/book/>
book:book1
4.2 平凡文字的语法 Syntax for Literals
4.3 查询变量的Syntax
'?','$' 两者是等价的
4.4 空白节点的语法
[ :p "v" ] .
[] :p "v" .
_:b57 :p "v" . //前面加_:的标签
[ :p "v" ] :q "w" . //空白节点的组合
简略空白节点:
[ foaf:name?name ;
foaf:mbox<mailto:alice@example.org> ]
4.5 三元组模型语法
PREFIXdc: <http://purl.org/dc/elements/1.1/>
PREFIX: <http://example.org/book/>
SELECT$title
WHERE{ :book1dc:title$title }
4.6 谓-宾列表
?xfoaf:name?name ;
foaf:mbox?mbox .
4.7 宾语列表
?x foaf:nick"Alice" , "Alice_" .
4.8 复合列表
?xfoaf:name ?name ; foaf:nick"Alice" , "Alice_" .
等价于:
?xfoaf:name?name .
?xfoaf:nick"Alice" .
?xfoaf:nick"Alice_" .
4.9 RDF集合
(1 ?x 3 4) :p "w" .
4.10 当rdf:type是谓词时可用a代替
?xa:Class1 .
5. Graph Patterns (模式)
5.1 Group Graph Patterns
PREFIX foaf:<http://xmlns.com/foaf/0.1/>
SELECT ?name ?mbox
WHERE{
?x foaf:name ?name .
?x foaf:mbox ?mbox .
}
5.2 Empty Group Pattern
{}
SELECT ?x WHERE {}
5.3 Scope of Filters 过滤范围
FILTER regex(?name, "Smith")
6. Including Optional Values (可选值)
Optional Pattern Matching
WHERE{ ?x foaf:name?name .
OPTIONAL { ?xfoaf:mbox?mbox }
}
Constraints in Optional Pattern Matching
SELECT?title ?price
WHERE{ ?x dc:title ?title .
OPTIONAL { ?x ns:price ?price . FILTER (?price < 30) }
}
Multiple Optional Graph Patterns
SELECT ?name ?mbox ?hpage
WHERE{ ?x foaf:name?name .
OPTIONAL { ?x foaf:mbox ?mbox } .
OPTIONAL { ?x foaf:homepage ?hpage }
}
7. 匹配两个中的一个 Matching Alternatives
UNION:
SELECT ?x ?y
WHERE{ { ?book dc10:title ?x } UNION { ?book dc11:title?y } }
8. RDF Dataset 数据集合
查询多个Graph中的信息
9. 结果排序和修改 Solution Sequences and Modifiers
排序 ORDER BY:
SELECT ?name
WHERE { ?x foaf:name ?name }
ORDER BY ?name
映射 Projection
重复结果 Duplicate Soulution
唯一 DISTINCT:
PREFIX foaf:<http://xmlns.com/foaf/0.1/>
SELECT DISTINCT ?name WHERE { ?x foaf:name ?name }
简化 REDUCED:
PREFIX foaf:<http://xmlns.com/foaf/0.1/>
SELECT REDUCED ?name WHERE { ?x foaf:name ?name }
偏移 OFFSET, 限制 LIMIT:
SELECT?name
WHERE{ ?x foaf:name ?name }
ORDER BY ?name
LIMIT5
OFFSET10
10. 查询形式 Query Forms
*
SELECT
Returns all, or a subset of, the variables bound in a query pattern match.
*
CONSTRUCT
Returns an RDF graph constructed by substituting variables in a set of triple templates.
*
ASK
Returns a boolean indicating whether a query pattern matches or not.
*
DESCRIBE
Returns an RDF graph that describes the resources found.
11. 测试值 Testing Values
操作数数据类型Openrand Data Types
* xsd:integer
* xsd:decimal
* xsd:float
* xsd:double
* xsd:string
* xsd:boolean
* xsd:dateTime
过滤评价 Filter Evaluation
A B A || B A && B
T T T T
T F T F
F T T F
F F F F
T E T E
E T T E
F E E F
E F E F
E E E E
12. SPARQL定义 Definition of SPARQL
RDF Terms(术语)
RDF Term:
RDF
Let I be the set of all IRIs. Let RDF-L be the set of all RDF Literals Let RDF-B be the set of all blank nodes in RDF graphs
View document source. Generated on: 2008-04-17 09:54 UTC. Generated by Docutils from reStructuredText source.
分享到:
相关推荐
**RDF数据查询语言SPARQL**是一种标准的查询语言,由W3C的RDF数据工作组设计,专门用于查询Resource Description Framework (RDF)数据。RDF是一种语义网络模型,常用于描述和链接互联网上的数据。SPARQL允许用户以...
### SPARQL语言规则——语义Web查询语言 #### 一、引言 随着语义Web技术的发展,越来越多的数据以RDF(Resource Description Framework,资源描述框架)格式存储,这催生了对一种高效、标准的查询语言的需求。在...
**SPARQL本体查询语言**是用于查询Resource Description Framework (RDF)数据的标准化查询语言,由World Wide Web Consortium (W3C)制定。RDF是一种数据模型,用于描述和链接网络上的信息。SPARQL是语义网技术的重要...
为了用户能够方便地获取本体知识,提出了基予自然语言理解的SPARQL本体查询。利用StanfordParser·分析用戸的自然语言查询,根据语法构建查询三元组,与关键词的方法相比,有效地减少了组合的个数。结舍 用户词典,...
该基准目前提供14个测试查询。该文件包含所有使用SPARQL 1.0语法的查询,并用空行分隔并标识注释。
SPARQL查询是用于查询 RDF 数据模型的标准查询语言,它利用特定语法来查询本体、RDF 图和RDF 源。将 SPARQL 查询转换为 SQL 查询,意味着需要解析 SPARQL 语句,并重写为可以在关系数据库上执行的 SQL 语句。这个...
SPARQL.js将SPARQL转换为JSON并返回,因此您可以在JavaScript应用程序中解析和构建SPARQL查询。 它还在sparqlStar选项下包含对扩展的sparqlStar 。 它完全支持,包括,和。 用法 图书馆 // Parse a SPARQL query ...
SPARQL是用于查询RDF数据的查询语言,它的查询能力使得数据可以通过语义网的形式进行查询,而不仅仅是通过关键字或者属性值。MRQJ算法旨在克服现有基于Hadoop实现的RDF查询需要使用多个MapReduce任务而导致的时间...
【标题】:“面向自然问句的SPARQL查询生成方法研究与实现1”涉及的知识点主要集中在知识问答系统、RDF数据集、SPARQL查询语言以及自然语言处理技术。 【1】知识问答系统(QA System):这是一种智能信息检索系统,...
SPARQL(发音为“sparkle”)是用于查询和更新RDF(资源描述框架)数据的标准查询语言。RDF是一种用于描述资源和它们之间关系的模型,是构建语义网的基础技术之一。语义网旨在通过机器可以理解的方式描述信息,从而...
SPARQL(SPARQL Protocol and RDF Query Language)是一种W3C标准的查询语言,专门设计用于查询和处理Resource Description Framework (RDF)数据。RDF是一种用于表示网络数据的标准模型,它使用URI(Uniform ...
SPARQL(SPARQL Protocol and RDF Query Language)是一种用于查询RDF(Resource Description Framework)数据的标准化查询语言,由万维网联盟(W3C)制定。它允许用户从语义网络和链接数据中检索信息,支持复杂的...
首先,SPARQL(SPARQL Protocol and RDF Query Language)是一种用于RDF(Resource Description Framework)数据的查询语言,它使得语义网开发者能够从大型数据集中提取信息。SPARQL语言是语义网工具箱中最新加入的...
[奥莱理] 学习 SPARQL 第1版 (英文版) [奥莱理] Learning SPARQL 1st Edition (E-Book) ☆ 出版信息:☆ [作者信息] Bob DuCharme [出版机构] 奥莱理 [出版日期] 2011年07月23日 [图书页数] 258页 [图书语言]...
针对当前智能手机应用安全知识等信息的共享及复用问题,...利用本体查询语言SPARQL实现基于RDF三元组的各类相关查询;在此基础上,借助本体推理机制进行了推理研究,并结合实例,验证了研究内容的可行性和实用价值。