- From: Steve Harris <S.W.Harris@ecs.soton.ac.uk>
- Date: Wed, 9 Feb 2005 17:33:54 +0000
- To: DAWG public list <public-rdf-dawg@w3.org>
Hopefully completes action from telecon of 2005-02-08. As of revision 1.202 Things marked Minor: just struck me as odd, others are wrong and should be fixed or explained. General It's allready been noted, but its particularly clear in this part of the document; there are a clutch of things that look function-like, eg FUNC(), fn:func() and &fn:func(). I would have thought these could be reduced to one or two forms. Section 11.1 Minor (maybe): I recommend against specifying that operators can work on both float and double. Universally prmoting floats to doubles in the query language is far less confusing. It avoids problems such as _:a rdf:value "3" . SELECT ?x WHERE (?x rdf:value ?val) AND xsd:float(?x) == 3.0 which produces no matches in IEEE-754 compliant implementations, though it looks cromulent. Section 11.1.1 "This is accomplished by promoting the arguments to the lowest common type." should that be "highest common type"? If not, list order should be reversed. Table 11.1 Minor: == can be applied to URIs and numeric arguments, but not strings or datetimes. Seems odd. Section 11.2.1.* Minor: sections are titled 11.2.1.* sop:interCapped, but sop: is not used in examples and the keywords are in CAPS Minor: redundant {}'s round stement patterns. Section 11.2.1.2 Typo in query, I think it should be something like: PREFIX foaf: <http://xmlns.com/foaf/0.1/> SELECT ?name WHERE ( ?x foaf:name ?name ) OPTIONAL ( ?x foaf:mbox ?mbox ) AND BOUND(?mbox) Ditto for 2nd query. There a load of extra paranes and braces in there that dont balance. Section 11.2.1.6 Results should be "Alice" | <alice@work.example> Section 11.2.1.7 Typo. Query is PREFIX foaf: <http://xmlns.com/foaf/0.1/> SELECT ?name1 WHERE { ( ?x foaf:name ?name ) } AND LANG(?mbox) EQ "ES" should probably be PREFIX foaf: <http://xmlns.com/foaf/0.1/> SELECT ?name ?mbox WHERE ( ?x foaf:name ?name ) ( ?x foaf:mbox ?mbox ) AND LANG(?name) EQ "ES" to match the results, and because ?mbox cant have a LANG. Table 11.2 Casting table has some odd-looking results in it, eg. casting r:Literals to xs:double is down as No, but xs:String to xs:double is down as Maybe. Ditto for str->URI and ltrl->URI. Section 11.3 Syntax is given as &qname(?var or constant, ?var or constant , ...) but the example is fn:matches(STR(?mbox), "@work.example$") ie. no & and fn: is not declared, STR(?mbox) is neither a ?var or constant AFAIK. fn:matches takes a pattern for its 2nd argument, so I think this should be /@work.example$/ to match other examples. --------------------------------------------------------
Received on Wednesday, 9 February 2005 17:36:22 UTC