W3C home > Mailing lists > Public > public-owl-dev@w3.org > April to June 2011

Re: why do owl:DataRange's need to be blank nodes?

From: Bijan Parsia <bparsia@cs.man.ac.uk>
Date: Sun, 26 Jun 2011 11:31:09 +0100
Cc: public-owl-dev@w3.org
Message-Id: <C5F18FC0-5BB8-4B05-B926-F528EEF32EA6@cs.man.ac.uk>
To: Lee Feigenbaum <lee@thefigtrees.net>
On 25 Jun 2011, at 19:27, Lee Feigenbaum wrote:

> The OWL 1 documents clearly if subtly say that for an enumerated data type being expressed in RDF, the owl:DataRange that is the subject of an owl:oneOf statement should be a blank node. I have a couple of questions about this:
> 
> 1) Why is this? Is there any harm (other than violating the spec, of course) in giving a URI to an owl:DataRange?

The canonical reason is to prevent assertions about the datarange that we can't handle. (OWL Full obviously allows this.) Naming datatypes can be dangerous as it can be hard to control what you subsequently say about them. Just consider the (overly tight) restrictions on datatype definitions in OWL 2:
	http://www.w3.org/TR/2009/REC-owl2-syntax-20091027/#Datatype_Definitions
	http://www.w3.org/TR/2009/REC-owl2-syntax-20091027/#The_Restrictions_on_the_Axiom_Closure
(In the latter, look at the example.)

In general, for OWL DL, the pattern in the RDF syntax is to use fresh bnodes always for each syntactic construct to prevent accidently equating of things you didn't intend to equate.

> 2) Is this same restriction reflected in the OWL 2 documents? I've tried to find it, but have been unsuccessful, so would appreciate any pointers.

Yes.

http://www.w3.org/TR/2009/REC-owl2-mapping-to-rdf-20091027/

Table 12, 14 and Table 1 to go from FS to triples.

However, you can name dataranges via the datatype definition mechanism. Since naming data ranges is the only reason I can thing of to not use a bnode in the syntax, I hope that suffices. Does it?

Cheers,
Bijan.
Received on Sunday, 26 June 2011 10:31:34 GMT

This archive was generated by hypermail 2.3.1 : Wednesday, 27 March 2013 09:32:59 GMT