- 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