SPARQL查询RDF文件-1

测试一下SPARQL环境:

输入sparql ,如下图所示

SPARQL查询RDF文件-1_第1张图片

输入下面的命令:sparql -data=lizi.rdf -query=q1.rq

SPARQL查询RDF文件-1_第2张图片

其中lizi.rdf是存储的RDF文件,q1.rq存储的是SPARQL查询语句,具体的文件内容如下所示(现在网上大家用的RDF进行展示差不多都是同一个RDF文件):

lizi.rdf:


  
    Smith
    John
  
  
    John Smith
    
  
  
    Sarah Jones
    
  
  
    Matt Jones
    
  
  
    Smith
    Rebecca
  
  
    Jones
    Sarah
  
  
    Jones
    Matthew
  
  
    Becky Smith
    
  


在https://www.w3.org/RDF/Validator/解析出的RDF如下图所示:

SPARQL查询RDF文件-1_第3张图片

q1.rq:

SELECT ?x
WHERE { ?x    "Sarah Jones" }

 

SPARQL语言模型 (这部分内容是来自其他CSDN,网址在后面会给出)

SPARQL的查询是基于结构化知识的,变无序数据为有序数据知识,让计算机理解Web信息,基于语义Web。SPARQL是针对RDF框架进行存储的知识库进行检索的SQL语句,因此有有一定的SQL基础,学习会容易很多。

网址:https://blog.csdn.net/hanyueqi/article/details/47376355

简单查询

1、总决式(基本要诀)

select ? o

where

{

s p ?o

}

破法:类SQL讲究选择映射,同时sparql本身基于rdf的三元组(s p o) --主谓宾,所有查询就变成了主谓宾的描述,同时,返回某一变量值,变量值用问号?进行表示,select进行映射。

口诀:有定义方可使用,有定义方可进行选取,所有方法均可描述成三元组的组成结构,相当于用三元组的知识回答一些问题。

2、破剑式(兼容并蓄)

select ?o1 ?o2

where

{

?s p1 ?o1.

?s p2 ?o2

}

破法:兼容并蓄,以总决式进行引导,针对可以对其中的各个变量抑或参数进行属性的关联操作与展示,可以主主关联、主宾关联等等(主谓、谓宾很多时候都是不同类所以可能无法关联),同时可以有若干个属性,若干次迭代过程,从而形成了变化莫测的查询

口诀:依变量索骥,按照语义进行理解,变量起合适名称,相当于进行若干次、若干步骤的推理工作

3、破刀式(以轻御重)

select ?s ?p

where

{

     ?s ?p X

}

破法:以轻御重,以快敌慢,与之前变量不同,此时的宾语为固定值,此固定值可能是字符串、数字抑或iri地址,同时规定了一些基础格式例如@en等进行语言的描述,使用此方法可以实现通过已知推导未知,从而实现了针对某个属性的查询。

口诀:依RDF类型及属性进行写入,如需特殊使用参见标签方法,相当于使用一个没有进入系统的标签来回答系统中的一种问题。

4、破气式(存乎一心)

select ?s ?o

where

{

     ?s p ?o

}

破法:运用之妙,存乎一心,与总决及上面其他形式类似,然而所破之物有细微差别,专门针对没有实在的主语或者称之为匿名主语,此时返回结果可能仅仅是在域中随便起的名字。

口诀:无名亦有名,假名亦真名,相当于使用一个占位符来表示相应的空间。

https://www.cnblogs.com/zhaoyufei/p/8137658.html  这网址可以好好看看

 

对于SPARQL具体的查询语句的含义还不是太明白,今天仅是将SPARQL是怎么执行起来的学会了,后续会不断的进行更新的,希望同道者互相支持,常交流

你可能感兴趣的:(知识图谱,SPARQL,知识图谱,RDF)