在emacs sparql中为dbpedia设置正确的端点

在emacs sparql中为dbpedia设置正确的端点,emacs,sparql,dbpedia,Emacs,Sparql,Dbpedia,我开始使用emacs在脚本中而不是在浏览器中编辑和执行sparql查询 我的脚本,test.sparql,如下所示: PREFIX owl: <http://www.w3.org/2002/07/owl#> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX rdf: <http://www.

我开始使用emacs在脚本中而不是在浏览器中编辑和执行sparql查询

我的脚本,
test.sparql
,如下所示:

PREFIX owl: <http://www.w3.org/2002/07/owl#>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX dc: <http://purl.org/dc/elements/1.1/>
PREFIX : <http://dbpedia.org/resource/>
PREFIX dbpedia2: <http://dbpedia.org/property/>
PREFIX dbpedia: <http://dbpedia.org/>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>

ENDPOINT <http://dbpedia.org/sparql>

SELECT DISTINCT ?Concept WHERE {
  [] a ?Concept
} LIMIT 5
或者当我改变的时候

ENDPOINT <http://dbpedia.org/sparql>
端点

端点

访问的正确端点类似于什么?我需要做哪些修改才能以JSON格式返回结果?

我没有使用sparql模式,但是
端点
不是sparql语法的一部分。
service
关键字用于指示联合查询。在中对其进行了更全面的描述,并提供了一些示例。我认为你的问题大致如下:

select distinct ?concept where {
  service <http://dbpedia.org/sparql> { 
    [] a ?concept
  }
}
limit 5
正如我所说的,我没有sparql模式,但我可以使用Jena的命令行
sparql
工具运行该查询,并得到人们期望的结果。(不过,您可能希望增加
限制
;我倾向于得到的前五个结果如下:

-----------------------------------------------------------------------
| concept                                                             |
=======================================================================
| <http://www.w3.org/1999/02/22-rdf-syntax-ns#Property>               |
| <http://www.openlinksw.com/schemas/virtrdf#QuadMapFormat>           |
| <http://www.openlinksw.com/schemas/virtrdf#QuadStorage>             |
| <http://www.openlinksw.com/schemas/virtrdf#array-of-QuadMap>        |
| <http://www.openlinksw.com/schemas/virtrdf#QuadMap>                 |
| <http://www.openlinksw.com/schemas/virtrdf#array-of-QuadMapFormat>  |
-----------------------------------------------------------------------
|概念|
=======================================================================
|                |
|            |
|              |
|         |
|                  |
|   |
这些不是您可能期望的有用的DBpedia类。)

sparql或Emacs sparql模式中没有“端点”! 当您通过单击“C-C-C”使其运行时,小缓冲区中会出现一个提示 请求将作为基本端点的URL!这个基本端点可以是任何东西 类似于在本地主机上运行的fuseki服务器或”http://dbpedia.org/sparql"! 也可以在给出url后指定格式,默认为csv/txt

如果要更改端点,只需单击“C-C-u”并提供新的URL。 您也可以通过单击“C-C-f”更改格式! 如果忘记了键绑定,您可以始终执行“C-h m”,其中“h”代表帮助,“m”代表模式;)

下面是您运行的示例:


端点是否是sparql模式特有的?它不是SPARQL 1.1的一部分。在SPARQL 1.1中,您通常会使用
service
关键字。看见
select distinct ?concept where {
  service <http://dbpedia.org/sparql> { 
    [] a ?concept
  }
}
limit 5
select ?concept where {
  service <http://dbpedia.org/sparql> { 
    select distinct ?concept where {
      [] a ?concept
    }
    limit 5
  }
}
-----------------------------------------------------------------------
| concept                                                             |
=======================================================================
| <http://www.w3.org/1999/02/22-rdf-syntax-ns#Property>               |
| <http://www.openlinksw.com/schemas/virtrdf#QuadMapFormat>           |
| <http://www.openlinksw.com/schemas/virtrdf#QuadStorage>             |
| <http://www.openlinksw.com/schemas/virtrdf#array-of-QuadMap>        |
| <http://www.openlinksw.com/schemas/virtrdf#QuadMap>                 |
| <http://www.openlinksw.com/schemas/virtrdf#array-of-QuadMapFormat>  |