W3C home > Mailing lists > Public > public-data-shapes-wg@w3.org > December 2016

Re: shapes-ISSUE-198 (rdf:langString): rdf:langString not included in datatypes [SHACL Spec]

From: Karen Coyle <kcoyle@kcoyle.net>
Date: Fri, 9 Dec 2016 08:45:23 -0800
To: public-data-shapes-wg@w3.org
Message-ID: <f0c75996-594d-964e-2060-89f46791de14@kcoyle.net>
Thanks, Andy, for the explanation. I still like having rdf:langString 
called out since it isn't actually "inside" the datatype list, and it 
will be used heavily. A courtesy for the reader.


On 12/9/16 4:07 AM, Andy Seaborne wrote:
> On 19/11/16 17:16, Karen Coyle wrote:
>> On 11/17/16 10:50 PM, Holger Knublauch wrote:
>>> Hi Karen,
>>> - RDF 1.1 *does* mention rdf:langString (see the NOTE in
>>> https://www.w3.org/TR/rdf11-concepts/#section-Datatypes)
>> Yes, and it says there:
>> "Language-tagged strings have the datatype IRI
>> http://www.w3.org/1999/02/22-rdf-syntax-ns#langString. No datatype is
>> formally defined for this IRI because the definition of datatypes does
>> not accommodate language tags in the lexical space. The value space
>> associated with this datatype IRI is the set of all pairs of strings and
>> language tags."
>> So it treats it as an exception, and says that it is not defined as a
>> datatype.
> This is explaining, as I recall it, the reason that text is in RDF 1.1.
> The note "No datatype is formally defined" is about a technical issue.
> "formally" is relevant.
> The formal definition of a datatype includes a mapping from lexical
> space to value space.
> The complexity arises as rdf:langString is retro-fitted on the original
> design of language-tagged literals -- "plain literals" in RDF 1.0. In
> RDF 1.0 language tagged literals didn't have a datatype. RDF 1.1 added
> datatypes for all literals.
> For rdf:langString, there is no proper lexical space in the sense of XML
> Schema and RDF 1.0 which is a single sequence of characters, whereas for
> rdf:langString it would be is a pair of lang tag and lexical. (c.f. OWL
> went a different way - rdf:plainLiteral, which must not be used in RDF).
> The WG though it was better to have datatypes everywhere rfathe rthan
> leave the RDF 1.0 form.
> The alternative for the WG was to change the notion of lexical space but
> that come from XML Schema and how have big knock on effects.  The
> compromise was to partially define "rdf:langString" - the URI has a
> meaning - without all the details of the machinary of lexical space.
> The URI as a datatype is defined by the statement:
> RDFS schema: 2.4
> "The class rdf:langString is the class of language-tagged string values."
> which is normative.
> In SPARQL DATATYPE("foo"@en) is rdf:langString by definition in
>  That's there because SPARQL 1.1 went to REC before RDF 1.1.
>     Andy

Karen Coyle
kcoyle@kcoyle.net http://kcoyle.net
m: 1-510-435-8234
skype: kcoylenet/+1-510-984-3600
Received on Friday, 9 December 2016 16:46:25 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 19:30:39 UTC