Forwarded message 1
Hi all,
I reviewed [1], which at the time was the current version, pointed to
by [2].
1. Comments
It is my (personal) opinion that this document is not ready for
publication until the WSDL 2.0 compliance issue in Section 2.2 is
resolved. The phrase "DAWG acknowledges the risk inherent in
describing its protocol in an illegal variant of WSDL 2.0" is not
sufficient to relieve the working group of its responsibility for
interoperability. Indeed, if this specification were to be published
without resolution of this issue, I think it is quite likely that
WSDL 2.0 implementations would not change to reflect it. That would
materially damage the SPARQL Protocol's likelihood of uptake.
I understand that the DAWG has approached the Web Services
Description Working Group on this issue and I wish them well in
resolving it.
My suggestion for resolution is to comply with the final WSDL 2.0
specification (now in Last Call). If the requirement for a single
return type is not changed, then I suggest the DAWG create a new,
lightweight XML format for query Out Messages to wrap query results
in a single Internet Media Type. The new format could hold an SRD,
N3, etc. Although I recognize the loss of efficiency that this
entails, I believe that it is preferable to failing to comply with
WSDL 2.0. Similarly, the work should be done to address the (easier)
WSDL 2.0 compliance issues in the presented binding before publication.
I applaud the DAWG for catching the possibility for ambiguous RDF
datasets between protocol and query language and resolving it cleanly.
2. Important/Technical
ERROR: In the first paragraph of Section 2.1.2, "called st:query-
result" should be changed to "called st:query-request".
ERROR: The element name "query-result" in Figure 1.1, "XML Schema
fragment", should be changed to "query-request".
OMISSION: In the "Malformed Query" paragraph of Section 2.1.4, it
is unclear what behavior is expected from a query processing service
if a malformed query does not result in a MalformedQuery fault. One
way to solve this is to make such a fault mandatory ("must" instead
of "should"). If that is not done, the document should say what kind
of behavior to expect (is a QueryRequestRefused OK? How about
returning nothing?).
SUGGESTION: Section 2.2 says "if a SPARQL Protocol service
supports HTTP bindings, it must support the bindings as described in
sparql-protocol-query.wsdl. A SPARQL Protocol service may support
other interfaces." If I am reading that correctly, it says that if I
only want to have a RESTful interface and not WSDL, I am not
compliant. I don't like that in theory or in practice, especially
since sparql-protocol-query.wsdl is currently broken rather badly.
SUGGESTION: The use of a diminutive ("Little Jo") in Section
2.2.1.3 may be taken as insulting (or, worst, racist) by some and
should therefore by changed to something else (e.g. "Jo").
SUGGESTION: Section 3.0, "Policy Considerations", states that
query services MAY refuse to process certain query requests. In that
case, I suggest making it clear that they MUST do so as defined in
Section 2.1.4.
SUGGESTION: In Section 3.0, the phrase "may be constrained by law
in some countries" should be changed to "may be constrained by law in
some jurisdictions".
QUESTION: In the first paragraph of Section 2.1.2, could the
phrase "represented in the message schema by query" be deleted
without changing the intention? Does the reference to the "message
schema" refer to another document?
QUESTION: There are references to both IRIs and URIs in this
document. Does that represent the state of IRI uptake or an error?
QUESTION: Was the Content-Type of the example query intended to
be "application/x-www-form-urlencoded"?
QUESTION: I noticed that the SPARQL Query Language for RDF
working draft [3] (as of Revision 1.390 2005/06/13 13:37:19) removed
references to bnodes in results. Should the bnode used in Section
2.2.1.1 in the example result be removed?
3. Formatting
ERROR: The title of Section 2.1.2, "query-result In Message"
should be changed to "query In Message" to be consistent with the
titles of Sections 2.1.1, 2.1.3 and 2.1.4.
SUGGESTION: The "PREFIX foaf: <http://xmlns.com/foaf/0.1/>" lines
in the SPARQL example queries in Sections 2.2.1.1, 2.2.1.2 and
2.2.1.4 are not used and should be deleted.
4. Nits
SUGGESTION: The <documentation> section of Figure 1.0, "WSDL 2.0
fragment" in Section 2.1.1 ends in two periods (full stops for those
who learned English in the Commonwealth) instead of one.
SUGGESTION: In the first paragraph of Section 2.1.4, I suggest
deleting the words "described here".
SUGGESTION: In the "Malformed Query" paragraph of Section 2.1.4,
I suggest changing "should be returned, but an HTTP" to "should be
returned. An HTTP".
[1] http://www.w3.org/TR/2005/WD-rdf-sparql-protocol-20050914/
[2] http://www.w3.org/TR/rdf-sparql-protocol/
[3] http://www.w3.org/TR/rdf-sparql-query/
Regards,
Dave