从 DBpedia 中提取数据(从 java 连接 sparql 端点)

Extract data from DBpedia (connecting sparql endpoint from java)

我需要从 DBpedia 中提取一些数据。我知道我可以使用 http://dbpedia.org/snorql/ 并在那里编写查询,然后查看结果。但是有没有 tool/class 从 java 连接 DBpedia 端点,在代码中编写查询,然后在文件中获取结果?

是的,有几个,其中 Apache Jena and Eclipse RDF4J 可能是最著名的。

这是一个简单的示例,它使用 RDF4J 在 Java 的 DBPedia 端点上执行 SPARQL 查询并打印结果:

  Repository endpoint = new SPARQLRepository("http://dbpedia.org/sparql");
  try (RepositoryConnection conn = endpoint.getConnection()) {
        TupleQueryResult result = conn.prepareTupleQuery("SELECT * WHERE { ?s ?p ?o } LIMIT 10").evaluate();
        result.forEach(System.out::println);
  }

把结果放到一个文件中当然也是可以的。我建议您查看项目文档以了解有关可能性的更多信息。