Re: {a draft proposal} How to publish SPARQL endpoint limits/metadata?

Hi Frans,
Thanks for your feedback !! So, now let's iterate over your comments ;)
More comments in-line...
> As for the details, I tried to form a better understanding of the SPARQL
> 1.1 Service Description
> (http://www.w3.org/TR/sparql11-service-description/), since that is
> vocabulary that is extended. But some things I did not get:
>
>   * I was wondering whether it would be good to know the version(s) of
>     the SPARQL Protocol that is supported by an endpoint. I have just
>     noticed that the Service Description vocabulary is for SPARQL 1.1
>     only, not for SPARQL in general (including past and future
>     versions). Does this mean that a user agent can infer that the
>     service supports version 1.1 of SPARQL if it is described by the
>     SPARQL 1.1 Service Description? And will it be probable that new
>     vocabularies will be published to describe future versions of SPARQL?
I am not sure to understand your point here. Did you look at sd:Language 
definition at 
http://www.w3.org/TR/sparql11-service-description/#sd-Language ?. At the 
moment, this class defines 3 instances for the past and current version 
of SPARQL query, namely sd:SPARQL10Query, sd:SPARQL11Query and 
sd:SPARQL11Update. So, I guess you can always create an instance of 
sd:Language for the future versions of SPARQL.
btw, if a service implements SPARQL1.1, does it mean it take into acount 
the past versions of the language? I suspect the answer is yes but not 
sure...I'll investigate later.

>   * In the abstract it says /"//These descriptions provide a mechanism
>     by which a client or end user can discover information about the
>     SPARQL service such as supported extension functions and details
>     about the available dataset//"/. Note the singular in the last word:
>     dataset. Does this mean that a 1:1 relationship between services and
>     datasets is assumed?
No, I don't think so... I prefer to look at the semantic in the owl spec 
instead..
>   * I think I have always seen a SPARQL Service and a SPARQL endpoint as
>     being the same thing. But looking closely at the SD vocabulary, I
>     see they are modelled as different things. I think it is important
>     to understand the difference, but I could not find a description of
>     the difference between a SPARQL endpoint and a SPARQL service.
>     However, I do find web resources that seem to equate the two, like
>     this text from the SPARQL overview
>     (http://www.w3.org/TR/sparql11-overview/) : /"//Assuming the graph
>     data from above is loaded into a SPARQL service (i.e., an HTTP
>     service endpoint that can process SPARQL queries) ..//. "//. /I am
>     afraid I am confused...
As I can read from the Terminology section, A SPARQL Service could be 
generally speaking "Virtuoso 6.0" and a SPARQL endpoint 
<http://dbpedia.org/sparql>. A service seems to be more generic than 
just a particular endpoint.
Maybe this small sample for lov endpoint using the SD vocab could help?

@prefix sd: <http://www.w3.org/ns/sparql-service-description#> .
@prefix void: <http://rdfs.org/ns/void#> .

[] a sd:Service ;
     sd:endpoint <http://lov.okfn.org/endpoint/lov> ;
     sd:supportedLanguage sd:SPARQL11Query ;
     sd:resultFormat <http://www.w3.org/ns/formats/RDF_XML>, 
<http://www.w3.org/ns/formats/Turtle>, 
<http://www.w3.org/ns/formats/N3>, 
<http://www.w3.org/ns/formats/SPARQL_Results_XML>;
     sd:feature sd:DereferencesURIs ;
     sd:defaultDataset [
         a sd:Dataset ;
         sd:defaultGraph [
             a sd:Graph ;
             void:triples 23985
         ] ;

     ] .


>
> As for the proposal, here are some remarks:
>
>   * I was taught at school that it is good practice to always use whole
>     SI units. I notice you use milliseconds to denote the query timeout
>     value. Wouldn't it be better to use seconds (regardless of present
>     day common practice)?
+1. :
>   * Why is sdm:maxResultsPerRequest a property of sdm:SPARQLRequest?
>     Isn't the limit always the same across for all requests that can be
>     sent to the endpoint?
I see your point. But I define sdm:SPARQLRequest as subClassOf 
http:Request to be able to have access to the httpVersion of the 
protocol. That was actually one of your requirement.
>   * Shouldn't  sdm:maxResultsPerRequest and sdm:remainingPerRequest be
>     of type xsd:integer?
Yes. I update it.

Regards,

Ghislain
-- 
Ghislain Atemezing
EURECOM, Multimedia Communications Department
Campus SophiaTech
450, route des Chappes, 06410 Biot, France.
e-mail: auguste.atemezing@eurecom.fr & ghislain.atemezing@gmail.com
Tel: +33 (0)4 - 9300 8178
Fax: +33 (0)4 - 9000 8200
Web: http://www.eurecom.fr/~atemezin

Received on Tuesday, 15 October 2013 12:55:14 UTC