- From: Patrick Stickler <patrick.stickler@nokia.com>
- Date: Tue, 30 Apr 2002 09:26:49 +0300
- To: Pat Hayes <phayes@ai.uwf.edu>
- CC: RDF Core <w3c-rdfcore-wg@w3.org>
On 2002-04-29 19:50, "ext Pat Hayes" <phayes@ai.uwf.edu> wrote:
>> On 2002-04-29 11:05, "ext jos.deroo.jd@belgium.agfa.com"
>> <jos.deroo.jd@belgium.agfa.com> wrote:
>>
>>
>>> (the things are called 'resources', but no assumptions are made about
>>> the nature of resources.)
>>
>> Are all 'resources' in the MT members of rdf:Resource?
>
> Yes. That is, rdf:Resource denotes the universe IR in any interpretation.
Fine. That's what I thought.
>> If so, then literals are members of rdf:Resource, right,
>
> NOt necessarily, as the MT is currently set up. (We could do it
> differently so that all interpretations were required to contain all
> strings, but there doesnt seem to be any need for that.)
>
>> in
>> which case, rdfs:Literal should be rdfs:subClassOf rdfs:Resource,
>> right?
So it is not the case that rdfs:Literal rdfs:subClassOf rdfs:Resource
>> If all 'resources' in the MT are not necessarily members of
>> rdf:Resource, then some further clarification is needed.
>>
>>> For example, a triple of the form
>>>
>>> <ex:a> <rdf:type> <rdfs:Literal> .
>>>
>>> is legal even though 'ex:a' is a uriref rather than a literal.
>>> What it says is that I(ex:a) is a literal, ie that the uriref
>>> 'ex:a' denotes a literal.
>>
>> This seems to conflict with what the Schema spec says, which
>> is that a member of rdfs:Literal is self-denoting.
>
> Does it say a member of rdfs:Literal, or a literal?
The schema spec defines rdfs:Literal as follows:
rdfs:Literal This represents the set of atomic values, eg. textual
strings.
and
rdfs:Literal represents the self-denoting nodes called the 'literals' in the
RDF graph structure. Atomic values such as textual strings are examples of
RDF literals.
which says to me that all literal nodes are members of the
class rdfs:Literal.
> Well, Im assuming it is a class, so it can't be the set of literals.
> That is my point. If y'all want it to actually be the set of
> literals, then we would need to re-think this whole issue.
Well, I'm happy calling it a class and treating the set of literals
as a subset of the members of that class.
And to be honest, even if we have a bnode or uriref that denotes
a literal as the statement object, I don't see how that invalidates
the proposed closure rule, it just means that the application can't
get at the actual lexical representation of the value from the
object node directly. That's a practical issue, not a technical
fault.
The 'thing' in the universe that is the member of rdfs:Literal is
an atomic string, which in the case of datatyping, is taken to be
a lexical form of some datatype. Whether that 'thing' in the
universe is denoted 'transparently' by a literal node or 'opaquely'
by a bnode or uriref does not change the semantics of the
datatyping interpretation. No?
Thus, if we have
age rdfd:datatype xsd:integer .
Jenny age _:x .
_:x rdf:type rdfs:Literal .
then we can still infer
Jenny age _:y .
_:y rdfd:lex _:x .
even though _:x is not a literal string.
Perhaps all that is needed is adjusting the MT to speak
of a member of rdfs:Literal rather than a 'literal'?
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, 30 April 2002 02:23:39 UTC