W3C home > Mailing lists > Public > w3c-rdfcore-wg@w3.org > March 2002

Re: rdfs:Literal not rdfs:subClassOf rdfs:Resource

From: Patrick Stickler <patrick.stickler@nokia.com>
Date: Tue, 12 Mar 2002 13:51:39 +0200
To: Dan Connolly <connolly@w3.org>
CC: RDF Core <w3c-rdfcore-wg@w3.org>
Message-ID: <B8B3B86B.10837%patrick.stickler@nokia.com>
On 2002-03-09 1:33, "ext Dan Connolly" <connolly@w3.org> wrote:

> On Fri, 2002-03-08 at 13:00, Patrick Stickler wrote:
> [...]
>> Though, in re-re-reading the RDFS rec, it remains clear to me,
>> at least insofar as the original language is concerned, that
>> members of the class rdfs:Literal are not members of the
>> class rdfs:Resource.
>> 
>> The key criteria for being a member of rdfs:Resource appears
>> to be the ability to occur as the subject of a statement.
>> 
>> Since literals cannot be subjects, they cannot be members of
>> rdfs:Resource.
>> 
>> Right?
> 
> Nope. You've got a use/mention bug in your argument.
> 
> Syntactic literals can't occur in the subject position,
> but URIs (or bNodes) in the subject position can
> denote literal values.
> 
> e.g. http://example/vocab/#myString might denote
> the same three character string literal denoted by "abc",
> in which case it would be sensible to say
> 
> <http://example/vocab/#myString> daml:equivalentTo "abc".
> <http://example/vocab/#myString> rdf:type rdfs:Literal.
> 
> even though RDF 1.0 syntax doesn't include the sentence
> 
> "abc" rdf:type rdfs:Literal.

I'm concerned then about how applications distinguish between
literal nodes and other nodes, since the datatyping idioms
are rather useless if we can't actually get to the lexical
forms. Per your example above, the following would be
fully valid, but problemmatic in practice:

   age rdfs:drange xsd:integer .
   xsd:integer rdf:type rdfs:Datatype .

   myString daml:equivalentTo "35" .
   myString rdf:type rdfs:Literal .

   Bob age myString .

   Mary age [ xsd:integer myString ] .

in which case, the application has to know how the actual
literal node may be related to the bNode, and what if
it doesn't understand what daml:equivalentTo means?

What is an application going to do with xsd:integer([myString])?
It needs xsd:integer("35").

How do I, using RDF/S vocabulary alone, write implications
that depend on some node being a literal node, not just
some node that may be a member of class rdfs:Literal.

I fear we may be loosing an important distinction here.

Perhaps rdfs:Literal is not your normal kind of class...

Patrick
 
--
               
Patrick Stickler              Phone: +358 50 483 9453
Senior Research Scientist     Fax:   +358 7180 35409
Nokia Research Center         Email: patrick.stickler@nokia.com
Received on Tuesday, 12 March 2002 06:49:40 EST

This archive was generated by hypermail pre-2.1.9 : Wednesday, 3 September 2003 09:46:16 EDT