- From: Story Henry <henry.story@bblfish.net>
- Date: Mon, 22 Feb 2010 22:30:53 +0100
- To: Pat Hayes <phayes@ihmc.us>
- Cc: Dan Connolly <connolly@w3.org>, Jeremy Carroll <jeremy@topquadrant.com>, Semantic Web <semantic-web@w3.org>, foaf-protocols@lists.foaf-project.org
On 22 Feb 2010, at 21:56, Pat Hayes wrote: > Is it really all that complicated? Here is a summary of typed literals. A datatype URI identifies a mapping from strings to values. The value of the typed literal "string"^^dtype is the value of the mapping applied to the string: in normal mathematical notation, it is just dtype(string). > >> So now I am reading through the rdf-semantics specification. Its interesting, but it does seem somehow overly complicated. > > Its complicated largely because it has to work for *any* datatype or set of datatypes. But the heart of it is what I said just above. yes, I want to understand how you get out of the problem of xsd:integer being both a relation and a set. I need to understand this clearly, or I won't be satisfied :-) >> (Still need to come to a conclusion) >> >> Now literals as relations make a lot of sense. That is why I'd like to understand the relation between literal types and relations. It seems that the following is true >> >> { bgt euro "1.2"^^xsd:float } => { bgt euro "1.2"^[ is xsd:float of] } >> It would be really great if one could come to some generalised conclusion on this. > > I don't understand your notation here. I guess [is FOO of] means the property of a value which gives the string representation of that value under the FOO convention, so that "1A" is hex of 26 . (??) No, sorry to introduce this here. > If that is right, then your suggested entailment seems wrong, above. But this would be OK: It's a useful N3 trick to get inverses of properties. { ?a ?r ?b } <=> { ?b is ?r of ?a .} also { ?a ?r ?b^?t } <=> { ?a ?r [ ?t ?b ] } ie harry loves jane^mother . => harry loves [ mother jane ]. (not to be confused with harry loves jane.mother http://www.w3.org/2000/10/swap/doc/Shortcuts ) so all I meant to say was bgt euro "1.2"^^xsd:float . => bgt euro [ is xsd:float of "1.2" ] . => bgt euro _:e . "1.2" xsd:float _:e . OR I could have defined the inverse of xsd:float xxx:floatInv owl:inverseOf xsd:float . then it would be clearer bgt euro "1.2"^^xsd:float . => bgt euro "1.2"^xxx:floatInv . => bgt euro [ xxx:floatInv "1.2" ] . which is what you were thinking. > bgt euro "1.2"^^xsd:float . > > => > > bgt euro _:x . > "1.2" is xsd:float of _:x . the things got inverted somwhere. > and this pattern generalizes, of course. However, this has a literal subject, so its not legal RDF. Whereas this > > bgt euro _:x . > _:x xsd:float "1.2" . > yes, and it's what DanC was thinking was a good way of thinking of xsd:float, but you were thinking was not. I was trying to go in your direction here. :-) > is legal RDF :-) > > Hope this helps. Sorry for the quick course into N3 shortcuts. I liked them because they do make the relation between literals and properties very clear. Henry > > Pat
Received on Monday, 22 February 2010 21:31:32 UTC