Re: proposed changes to the rdf:text document for option 5

From: Jonathan Rees <jar@creativecommons.org>
Subject: Re: proposed changes to the rdf:text document for option 5
Date: Sat, 30 May 2009 20:11:30 -0500

> I really want to come to peace with this, but can't unless I understand
> it. I'm sorry if the following repeats what Pat has said.
> 
> The current draft has:
> 
> "Because RDF plain literals are already a part of RDF and SPARQL
> syntaxes, rdf:PlainLiteral literals are written as RDF plain literals
> in RDF and SPARQL syntaxes."
> 
> Based on your comments I interpret this as follows:
> 
> "Because RDF plain literals [in the sense of nodes in RDF graphs]
No, this is not limited to nodes in an RDF graph at all.  In particular,
it is explicitly tied to surface syntaxes for RDF and SPARQL.
> are already a part of RDF and SPARQL
> syntaxes [including RDF/XML and Turtle], rdf:PlainLiteral literals
Yes.
> (graph nodes) are written
No.  I mean the actual values here, but I have to be very careful not to
also sweep up literals from, e.g., xsd:string.
> (by those who have never heard of this new datatype, as well as by those who
Well, if an app doesn't know about rdf:O)-> then it doesn't (need to)
write rdf:O)-> at all.
> follow the advice given herein) as (serialized / syntactic) RDF plain
> literals in RDF and SPARQL syntaxes."

> But I got caught up on "rdf:PlainLiteral literals".
> I guess that an "rdf:PlainLiteral literal" is
> a literal node whose datatype is rdf:PlainLiteral. Is this
> what you meant to say? And just to be sure, are such
> literal nodes typed, untyped, both, or does it
> not matter?

It really doesn't matter.

I suppose that this could all be written as:

  If you were going to write a datatyped literal with dataype rdf:O)->
  in some RDF or SPARQL syntax then *don't*!.  Datatyped literals with
  dataype rdf:O)-> are not legal RDF and SPARQL syntaxes.  Instead write
  the appropriate plain literal.  However, plain literals are still just
  plain literals and still don't have a datatype.  And, by the way, this
  doesn't change RDF graphs at all.

This is too folksy for me to put it in the document, but it does get the
message across.

> Thanks
> 
> Jonathan

peter


> On Wed, May 27, 2009 at 8:04 PM, Peter F.Patel-Schneider
> <pfps@research.bell-labs.com> wrote:
>> From: Jonathan Rees <jar@creativecommons.org>
>> Subject: Re: proposed changes to the rdf:text document for option 5
>> Date: Wed, 27 May 2009 16:24:05 -0500
>>
>>> On Wed, May 27, 2009 at 11:26 AM, Peter F.Patel-Schneider
>>> <pfps@research.bell-labs.com> wrote:
>>>>
>>>> [Changes to two last paragraphs of Section 1]
>>>>
>>>> To address these deficiencies, this specification introduces a datatype
>>>> called rdf:text, which uses the rdf: prefix because it refers to parts
>>>> of the conceptual model of RDF.  This extension, however, does not
>>>> change the conceptual model of RDF, and thus does not affect the
>>>> specifications that depend on the conceptual model of RDF such as
>>>> SPARQL.  The value space of rdf:text consists of all data values
>>>> assigned to RDF plain literals, which allows RDF applications to
>>>> explicitly refer to this set (e.g., in rdfs:range assertions).
>>>>
>>>> Because RDF plain literals are already a part of RDF and SPARQL
>>>> syntaxes, rdf:text literals are always written as RDF plain literals in
>>>> RDF and SPARQL syntaxes.
>>>
>>> "literals are written as literals" is a use/mention confusion; a
>>> literal can't be written
>>> as a different literal, because it is already written. You're really
>>> talking about how the
>>> values are written.
>>
>> This is RDF.  Check your assumptions at the door.
>>
>> Literals in RDF graphs (the data model of RDF) are indeed written as
>> literals in RDF surface syntaxes (e.g., RDF/XML and Turtle).  Already in
>> RDF some typed literals in RDF graphs are not written as typed literals
>> of the surface syntax.  A particularly interesting example is typed
>> literals with datatype rdf:XMLLiteral, which are written as XML Literals.
>>
>>> How about:
>>>   Because the syntaxes of RDF and SPARQL already provide a way to
>>>   write these values, they are always written using plain literals in
>>> RDF and SPARQL,
>>>   not as typed literals with type rdf:type_formerly_known_as_rdf_text.
>>
>> But this is not what I wanted to say at all.  This has the effect that
>> you can't use xsd:string in RDF syntaxes.
>>
>> I could have been more precise, saying something like
>>
>>  typed literals with datatype URI rdf:type_formerly_known_as_rdf_text
>>  in RDF graphs are always written as plain literals in linear and
>>  exchange syntaxes for RDF (including but not limited to RDF/XML and
>>  Turtle)
>>
>> Perhaps this is going to be the required wording, but it does have to be
>> very carefully crafted to cover no more and no less than needed.
>>
>> Peter F. Patel-Schneider
>> Bell Labs Research
>>

Received on Sunday, 31 May 2009 03:44:53 UTC