W3C home > Mailing lists > Public > semantic-web@w3.org > August 2007

Re: RDF's curious literals

From: Sandro Hawke <sandro@w3.org>
Date: Thu, 02 Aug 2007 12:24:58 -0400
To: Story Henry <henry.story@bblfish.net>
Cc: Lee Feigenbaum <lee@thefigtrees.net>, Richard Cyganiak <richard@cyganiak.de>, Garret Wilson <garret@globalmentor.com>, Tim Berners-Lee <timbl@w3.org>, Sandro Hawke <sandro@w3.org>, Semantic Web <semantic-web@w3.org>
Message-ID: <9217.1186071898@ubuhebe>

> http://www.w3.org/TR/2004/REC-rdf-concepts-20040210/#section-Datatypes
> [[
> A datatype consists of a lexical space, a value space and a lexical-=20
> to-value mapping.
> The lexical space of a datatype is a set of Unicode [UNICODE] strings.
> The lexical-to-value mapping of a datatype is a set of pairs whose =20
> first element belongs to the lexical space of the datatype, and the =20
> second element belongs to the value space of the datatype:
> Each member of the lexical space is paired with (maps to) exactly one =20=
> member of the value space.
> Each member of the value space may be paired with any number =20
> (including zero) of members of the lexical space (lexical =20
> representations for that value).
> A datatype is identified by one or more URI references.
> RDF may be used with any datatype definition that conforms to this =20
> abstraction, even if not defined in terms of XML Schema.
> ]]

Is there some other distinguishing criterion on datatypes?   

I can't think of one.

Therefore, X is a datatype if and only if X is an owl:FunctionalProperty
and the rdfs:domain of X contains only Unicode strings.

It's kind of a shame this logic isn't used more in the design of RDF to
simplify it.   There might be another re-articulation of the RDF design
which would use this fact.    

(Again, this is not a new idea [1]).

> The important point there is that there has to be a lexical to value 
> mapping, and there has to be a one to one mapping.

No, it's a one-to-many mapping.    For instance, the value one can be
mapped to from "1", "01", "001", etc.

> This can only work 
> of course if all the information is contained in the String, ie, 
> there is not more information to be got from anywhere else, or else 
> there would be no way to create a decision procedure for it. So 
> "George Bush"^^xxx:presidents would not work. For one, George Bush 
> may never have been president.

But it's easy for me to construct the mapping you quoted above.  So I
can't understand what you mean.  A datatype like eg:uspresidents makes
every bit as much sense as a datatype like xs:date.

This all brings me back to:

   A simpler abstract syntax for RDF would be N-triples where you only
   have unicode-string-literals (plainLiterals), b-nodes, and a "URI"
   predicate. (You'd have to allow b-nodes in the predicate position.)
   The current design of RDF is basically syntactic sugar on that

   [Personally, I'd probably use bit-strings or byte-strings instead of
   unicode-character-strings, too.    Tough design tradeoffs, there.]

   -- Sandro

[1] http://esw.w3.org/topic/InterpretationProperties
Received on Thursday, 2 August 2007 16:26:39 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 19:47:26 UTC