- From: Andy Seaborne <andy.seaborne@epimorphics.com>
- Date: Fri, 27 May 2011 10:23:03 +0100
- To: public-rdf-wg@w3.org
On 25/05/11 17:50, Antoine Zimmermann wrote:
> All,
>
>
> [disclaimer: I am not vehemently in favour of that proposal, just expressing my thoughts aloud.]
In the same spirit: just thinking aloud.
One of the limitations of datatypes is that lexical space is a 1D, the 
set of sequences of characters.  If we generalise datatypes for RDF to a 
"representation space" which can be multi-dimensional, we can formulate 
and relate language tagged datatypes quite simply.
Restricting the representation space to 1D space of strings, we get back 
to lexical space and compatibility with XSD etc.
rdf:String is a datatype where the rep space is
     (unicode strings) union (unicode strings, validLangTags)
The value space is <string> union <string,validLangTags>
rdf:LangTaggedString is a derived datatype of rdf:String, restricting 
the  represenation space to (unicode strings, validLangTags).
rdf:lang{langTag} is a derived datatype of rdf:LangTaggedString, 
restricting the representation space to (unicode strings, {langTag})
"foo"@en is special syntax ("foo", "en").
(c.f. 123 for "123"^^xsd:string)
SPARQL str() is defined to return the first element of a tuple.
Then rdf:PlainLiteral is datatype with a 1D lexical space, encoding 
using "@" as a separator.
(Does it say anywhere in RDF that derived datatypes must be subclasses?)
	Andy
Received on Friday, 27 May 2011 09:23:34 UTC