Path: http://datos.santander.es/sparql/select
Ejecuta una consulta SPARQL 1.1 sobre el triple store, pasando la consulta como un parámetro en la petición GET. El resultado será representado en el formato que sea pasado como parámetro ( “html”, “json” o “xml”).
Ver sintaxis de consulta SPARQL 1.1 en http://www.w3.org/TR/sparql11-query/
Resumen de Métodos
Recurso | Descripción |
GET /{BASE}/sparql/select?query=…&output=… | Ejecuta una consulta SPARQL 1.1 sobre el triple store, usando la query como un parámetro en la petición GET. |
POST /{BASE}/sparql/select?output=… | Ejecuta una consulta SPARQL 1.1 sobre el triple store, usando la query como un parámetro en la petición POST. |
POST /{BASE}/sparql/select?output=… | Ejecuta una consulta SPARQL 1.1 sobre el triple store, utilizando la query como un parámetro en el BODY de la petición POST. |
Detalle de Métodos
GET /{BASE}/sparql/select?query=…&output=…
Ejecuta una consulta SPARQL 1.1 sobre el triple store, pasando la consulta como un parámetro en la petición GET. El resultado será representado en el formato que sea pasado como parámetro ( “html”, “json” o “xml”).
- Salida: javax.ws.rs.core.Response – El resultado de la consulta es transformado al formato indicado como parámetro
- Parámetros de la consulta:
- query: Cadena de texto que contiene la consulta SPARQL.
- output: Formato de salida del resultado ( “html”, “json” o “xml”).
- Código HTTP de la respuesta:
- 200 – la consulta se ha realizado correctamente.
- 500 – Se ha producido un error durante la evaluación de la consulta.
POST /{BASE}/sparql/select?output=…
Ejecuta una consulta SPARQL 1.1 sobre el triple store, pasando la consulta como un parámetro en la petición POST. El resultado será representado en el formato que sea pasado como parámetro ( “html”, “json” o “xml”).
- Salida: javax.ws.rs.core.Response – El resultado de la consulta es transformado al formato indicado como parámetro
- Parámetros de la consulta:
- query: Cadena de texto que contiene la consulta SPARQL.
- output: Formato de salida del resultado ( “html”, “json” o “xml”).
- Código HTTP de la respuesta:
- 200 – la consulta se ha realizado correctamente.
- 500 – Se ha producido un error durante la evaluación de la consulta.
POST /{BASE}/sparql/select?output=…
Ejecuta una consulta SPARQL 1.1 sobre el triple store, pasando la query como un parámetro en el BODY de la petición POST. El resultado será representado en el formato que sea pasado como parámetro ( “html”, “json” o “xml”).
- Salida: javax.ws.rs.core.Response – El resultado de la consulta es transformado al formato indicado como parámetro
- Parámetros de la consulta:
- query: Cadena de texto que contiene la consulta SPARQL.
- output: Formato de salida del resultado ( “html”, “json” o “xml”).
- Código HTTP de la respuesta:
- 200 – la consulta se ha realizado correctamente.
- 500 – Se ha producido un error durante la evaluación de la consulta.
Ejemplo
<!DOCTYPE html> <html> <head> <title>Ejemplo de uso del API SPARQL</title> <script type="text/javascript" src="js/jquery-1.8.2.min.js"></script> <script> $(document).ready(function(){ $('#search_button').live('click', function(){ //Obtener de options de WP var endpoint = "http://datos.santander.es/sparql/"; var restquery = "select?query="; var query = $("#query").val(); var format = $("#format").val(); var urlQuery = endpoint + restquery + escape(query); if(format=="xml" || format=="json" || format=="rdf"){ urlQuery = endpoint + restquery + escape(query) + "&output=" + format; //descargar alert(urlQuery); }else{ urlQuery = endpoint + restquery + escape(query); + "&output=json"; $.ajax({ url: urlQuery, dataType: 'json', jsonp: 'callback', success: function(data) { var item ; $("#triplelist").html(''); var resultTable = "<table><thead><tr>"; for (var j = 0; j < data.head.vars.length; j++) { resultTable = resultTable + "<th>" + data.head.vars[j]; } resultTable = resultTable + "</tr></thead>"; if(data.results.bindings.length>0){ resultTable = resultTable + "<tbody>"; } for (var i = 0; i < data.results.bindings.length; i++) { resultTable = resultTable + "<tr>"; item = data.results.bindings[i]; for (var j = 0; j < data.head.vars.length; j++) { resultTable = resultTable + "<td>"+ item[data.head.vars[j]].value + "</td>"; } resultTable = resultTable + "</tr>"; } if(data.results.bindings.length>0){ resultTable = resultTable + "</tbody>"; } resultTable = resultTable + "</table>"; $("#triplelist").append(resultTable); }, error:function (xhr, ajaxOptions, thrownError){ $("#triplelist").append(thrownError); } }); }//end-else }); }); </script> </head> <body> <h1>Consulta sparql</h1> <div> <label >Contexto/Grafo: </label> <input id="context" value="http://datos.santander.es/sparql/context/samples"/> <label>Query: </label> <input id="query" value="SELECT * WHERE {?s ?p ?o} LIMIT 10" /> <label>Formato: </label> <input id="format" value="json" /> <a href="#" id="search_button">Buscar</a> </div> <!-- Contenedor de la tabla de resultados --> <div id="triplelist"></div> </body> </html>