Re: general stuff about rdf:text / rdf:PlainLiteral / ...

From: Sandro Hawke <sandro@w3.org>
Subject: general stuff about rdf:text / rdf:PlainLiteral / ...
Date: Sat, 23 May 2009 11:37:18 -0500

[...]

>> I'm even becoming very worried about the requirement to avoid literals
>> with this datatype in RDF graphs.  So far, I'm willing to go along with
>> this, but the continued changes to this aspect of the proposal are
>> troubling to me.  In particular, the rationale for the prohibition is
>> completely bogus.
> 
> The rational I find convincing is that its hurts interoperation.  If
> people start to use rdf:text in RDF graphs, then all the existing
> software won't see their data.  That's something we should at least
> point out, warning people who might consider using rdf:text in their
> data.

I agree with this.  It is good advice to let people know that if they
produce RDF graphs with rdf:text datatyped literals, other tools may
produce slightly unusual results.   However, there are many, many, many
other cases where this advice should also be made when working with
datatyped literals.  The *only* thing special about rdf:text is that it
is new.  (By the way, what about the changes to XML Schema datatypes
that are in process?  These may affect existing tools as well!)

> But more than that, I think we have a duty to speak about whether old
> RDF software is then "broken" and should be modified to support
> rdf:text.  For myself, I could go either way on this, but I understand
> providers of RDF systems do not want this.  It seems to me they have the
> stronger rights here, so I agree the spec should give some fairly strong
> mandate about rdf:text literals not occuring in RDF graphs.  To my
> understanding, this issue was decided before Last Call, as a MUST, and I
> haven't seen evidence we should re-open the matter.  (It was not an
> issue that was discussed at length within the OWL-WG, so the bar to
> re-opening it would be fairly low, but still, we agreed to publish as
> Last Call a draft that says "...before exchanging an RDF graph with
> other RDF tools, an RDF tool that suports rdf:text MUST replace in the
> graph each typed rdf:text literal with the corresponding plain
> literal.")

The problem I have with the MUST is that some RDF-related tools and
recommendations, particularly SPARQL, have made a *conscious* decision
to live at a very low semantic level.  *At this level*, there are
distinctions that are either unimportant or non-existant at the OWL
level.  Pushing equivalences from the higher levels down to the lower
levels is, in effect, overturning these *conscious* decisions, and is
really making post-facto changes to existing recommendations and tool
behaviour.

For example, in SPARQL "1.0"^^xsd:decimal and "1.00"^^xsd:decimal can be
distinguished.  Similarly for "56"^^xsd:integer and "56"^^xsd:byte.
Should *all* tools that live at higher semantic levels canonicalize
literals in RDF graphs that might be consumed by SPARQL tools?

To move closer to the rdf:text situation, should OWL tools not use
xsd:string datatyped literals in RDF graphs?  It is indeed the case that
at the OWL level, "56" and "56"^^xsd:string are known to have the same
denotation, but SPARQL distinguishes them.  What is the difference
betwen this case and "56" and "56@"^^rdf:text (or "56@"^^owl:text)?

>      -- Sandro

I feel that all this advice and restrictions related to not using
rdf:text is just like King Canute telling the tide not to come in.

peter

Received on Saturday, 23 May 2009 18:30:43 UTC