W3C home > Mailing lists > Public > public-rdf-dawg@w3.org > April to June 2005

Notes on value testing 11.1

From: Seaborne, Andy <andy.seaborne@hp.com>
Date: Wed, 13 Apr 2005 17:29:18 +0100
Message-ID: <425D48DE.6080000@hp.com>
To: Eric Prud'hommeaux <eric@w3.org>
CC: RDF Data Access Working Group <public-rdf-dawg@w3.org>

I went through section 11.1 with a view to implementing.  These are some thing I 
came across. rq23 v1.298


11.1 "may come from the instance data" confused me.  Where else might it come
from (at an RDF level?).

11.1 xsd:dateTime is an exact point in time so the software is not between
19:00 and 19:01 (all other dates and times are durations - I pretty sure
dateTime is not)

Not clear where "software upgrade" comes from anyway - the data didn't
suggest it to me

Going straight into casting in 11.1 - bit of a shock to the reader!

End 11.1 "r:" is not defined

11.1.1 Example "xs:integer(7)+xs:float(6.5)" ...

Seems to mix casting and promotion in one example.  Might be worth steping
through one example in detail.

The list above does not have xs:integer in it so there is another rule
being applied as well (not yet mentioned) about xs:integer => xs:decimal

11.1.1 Cast of r:Literal : I got lost here : is an explicit case needed?
Seems to say not, because xs:integer(7) is truned in to xs:float(7)
automatically but I wasn't sure.

I suggest writing "7"^^xsd:integer if you mean the typed value, not a cast
of soemthing.

Suggest distinguish explict and implicit "casting" or reserve casting for
explicit casts (e.g. xs:integer("7") ) Whichever, it will need to agree
with 11.1 discussion of casting.

This seems to be at odds with the "11th hour proposal" DT-0 which I took to
mean no implicit casting.

"Any r:Literal can be cast ... " - does that mean that
   "3" + 5

is legal (I have no view here but its worth noting) - an explicit example
would be useful here if it is legal

11.2 -- 3rd bullet -- says "or" .  Is that the syntax?  It's || later on.

11.2.1. "Set of arguments" -- list of arguments might be clearer as they
are ordered.

Effective Boolean Value in 11.2 is a forward reference unless the reader
knows F&O

Table: A!=B is defined as not(A=B) (closed world assumption) that caused
some debate in BOS

If any RDF literal xcan be cast implicitly, then from the table, there seem
to be 2 ways to determine "03" = "3"
   1/ Numeric-equals so "03" => value 3 and it's true.
   2/ RDFterm-equals so "03" is a string, and is not equal to a string "3"

Somewhere I missed why that isn't a problem.

REGEX has become MATCHES : when did this happen?  The grammar has REGEX as
per WG discussion after F2F-BOS.  No problems - but I need to know which.

(Observation: REGEX is clearly not a LIKE thingy, that MATCHES mightimply)

"Semantically equivalent" - is that different to value equal?
What if two URIs are owl:sameAs?

Second example invokes xsd:dateTime-equal surely?  How does it relate to
the RDFterm-equal? : Typo in data "04::04Z" => "04:04Z"

Earlier dateTimes don't have the seconds - are they required?  I thought
they are all required and seconds are a decimal

What's the data for the second example of
If it as before, then Bob has a foaf:givenName, not a foaf:name : results table has 2 columns but query has three variables in

Uses foaf:given -- earlier it was foaf:givenName (which is the right one, I
think).  Similarly, foaf:family

The text (last line of talks about foaf:knows but the example
uses dc:creator for the isBlank() check Earlier it says that STR() applied to rdf:literal but here it only
mentions r:URI. Datatype fails (error? false?) on a plain literal.  This might be
somewhat confusing.  Suggest returns something (xs:string?)

The example tests for xsd:float but the results have the integer data
item.  Did it need a != ??
Received on Wednesday, 13 April 2005 16:29:31 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 16:15:23 GMT