本节书摘来自华章出版社《语义网基础教程(原书第3版)》一 书中的第3章,第3.1节,作者:(希)Grigoris Antoniou(荷)Paul Groth(荷)Frank van Harmelen(荷)Rinke Hoekstra ,更多章节内容可以访问云栖社区“华章计算机”公众号查看。
3.1 SPARQL基础设施
想要执行一条SPARQL查询,就需要一个能执行查询的软件。能做到这一点的最常用的软件叫做三元组存储库(triple store)。本质上,一个三元组存储库就是一个RDF的数据库。在网上可以下载到很多三元组存储库。在SPARQL的相关规范中,三元组存储库也称为图存储库。
在查询一个三元组存储库之前,需要先向其中填充RDF数据。大部分三元组存储库都提供批量上传的选项。也有一种称为SPARQL更新的机制,提供了一系列向三元组存储库中插入、加载及删除RDF的选项。本章中将稍后讨论SPARQL更新。
当数据被加载进三元组存储库之后,就可以使用SPARQL协议来发送SPARQL查询去查询了。每个三元组存储库都提供一个端点(endpoint),在此提交SPARQL查询。重要的一点是,客户端使用HTTP协议向端点发送查询。事实上,要将一条SPARQL查询提交给一个端点,其实可以将它输入浏览器地址栏中!当然,我们还是建议使用一个专门为SPARQL设计的客户端。网上也能找到很多。
因为SPARQL使用标准的万维网技术,你在网上将会找到大量的SPARQL端点。这些端点可以让你存取大量的数据。例如,dbpedia.org/sparql提供了一个查询端点来查询一份*的RDF表示。在CKAN.org中可以找到一份完整的SPARQL端点清单。
一旦我们有了这个基础设施,就可以开始写SPARQL查询了。