我正在尝试在html中进行sparql查询。我有这段代码:
<script type="text/javascript">
document.write("<strong>Hola!</strong>");
var SPARQL_ENDPOINT = 'http://datos.zaragoza.es/sparql';
var query = 'PREFIX pproc: <http://contsem.unizar.es/def/sector-publico/pproc#>\
PREFIX dcterms: <http://purl.org/dc/terms/>\
SELECT DISTINCT ?uri ?titulo ?servicioGestor WHERE {\
?uri a <http://contsem.unizar.es/def/sector-publico/pproc#Contract>;\
dcterms:title ?titulo;\
pproc:managingDepartment ?managingDepartment.\
?managingDepartment dcterms:title ?servicioGestor} ORDER BY ?titulo';
现在我必须完成它,以便在浏览器中打开文件时可以看到查询结果。
答案 0 :(得分:1)
你需要:
使用该端点和查询为查询构建完整的URL。您可能希望以JSON格式请求结果,因为这将使结果更容易处理。查询和格式需要进行URL编码,例如:
var url = SPARQL_ENDPOINT
+ '?query=' + encodeURIComponent(query)
+ '&format=' + encodeURIComponent('application/sparql-results+json');
向该网址发出GET请求 - 在线提供大量代码。
然后,您可以解析并显示您获得的JSON结果,例如作为一个表:
function printTable(response){
var results = JSON.parse(response);
var table = '<table>';
results.results.bindings.forEach(function (result){
table += '<tr><td>' + result.uri.value + '</td><td>' + result.titulo.value
+ '</td><td>' + result.servicioGestor.value + '</td></tr>';
})
table += '</table>';
document.write(table);
}
添加console.log(results);
以在浏览器Javascript控制台窗口中查看整个结果,并确定要显示的内容。