Re: ISSUE-29 datarange and plain literals with language tags

From: Jeremy Carroll <jjc@hpl.hp.com>
Subject: ISSUE-29 datarange and plain literals with language tags
Date: Wed, 16 Jan 2008 17:56:08 +0000

> I have just had a thought.
> 
> Owl:DataRange is also used for sets of plain literals with language 
> tags, as well as for sets of typed literals.
> 
> I am unclear whether rdfs:Datatype can be used for sets of plain 
> literals with language tags.
> 
> Jeremy

Should still work, as instances of rdfs:Dataype don't have to be RDF
datatypes.

The semantic conditions and axiomatic triples wrt rdfs:Datatype are: 

1/ If x is in ICEXT(I(rdfs:Datatype)) 
   then <x, I(rdfs:Literal)> is in IEXT(I(rdfs:subClassOf))

2/ rdf:XMLLiteral rdf:type rdfs:Datatype .
   rdfs:Datatype rdfs:subClassOf rdfs:Class .

3/ If <aaa,x> is in D (i.e., D is an RDF datatype)
   then I(aaa) is in ICEXT(I(rdfs:Datatype))

The axiomatic triples in 2/ are unproblematic.

The semantic rule 3/ talks about RDF datatypes, and thus doesn't matter,
as the dataranges are not RDF datatypes.

The semantic rule 1/ says that instances of rdfs:Datatypes are
subclasses of rdfs:Literal so we do have to be careful.  However,
rdfs:Literal contains ... wait for it ... all RDF literals, which,
includes ... wait for it again ... plain literals.

So, saying that { "1" "3"@en } is an instance of rdfs:Datatype is
unproblematic.

peter

Received on Wednesday, 16 January 2008 19:11:21 UTC