Re: OWL descriptions of lists

Drew McDermott wrote:

>>[Jeremy Carroll]
>>
>>It would seem strange to permit this, without also permitting say:
>>
>><owl:ObjectProperty rdf:about="&rdf;first">
>>    <rdfs:range rdf:resource="&my;abc"/>
>></owl:ObjectProperty>
>>
>>and, we have conflict between user vocabulary "&my;abc" and the standard 
>>use of rdf:first in say a unionOf construct, in which it has an owl:Class 
>>object.
>>
> 
> This is not actually illegal; it's just not Owl DL.  Also, it happens
> to be inconsistent with the usual uses, so a reasoner should flag an
> ontology containing it as "inconsistent."  


Agreed.


> 
> Also, I still don't understand why making statements about rdf:List,
> rdf:first, and rdf:rest is forbidden in Owl DL.  Given my ignorance
> about DLs, there could be some obvious fact I'm overlooking here.
> Someone can put me out of my misery by telling us what it is.
> 


The rationale for the syntactic restrictions on OWL DL is to try and get 
the semantic layering to work.

i.e. given the triple oriented RDFS-compatible semantics, and the abstract 
syntax tree oriented 'direct' semantics then we should have the following:


graph A  OWL-Full-entails graph B

iff

tree A' direct-entails tree B'

where A and A' (and B and B') correspond by the mapping rules

for all A, B in OWL DL.

This proved too strong, and the actual relationship is a little weaker.

Once we allow logical statements about the built-in vocabulary then the 
OWL-Full entailments of those statements are more extensive and the desired 
state above is lost completely.

Hmmm, but that is consistent with the actual resolution that we now have that
if
tree A' direct-entails tree B'
then
graph A  OWL-Full-entails graph B

but not conversely, the two cases I am aware of are:
a) the domain of discourse of OWL Full is necessarily infinite,
whereas in the direct semantics it can have size 1 or greater
b) the objects of annotations in OWL Full are necessarily of type 
owl:Thing, whereas this does not hold in the direct semantics.

I guess some members of the WG regarded iff as the ideal and points (a) and 
(b) as bugs. Permitting arbitrary use of the list vocabulary would have 
introduced more such 'bugs'. Permitting a restricted use of the list 
vocabulary in the user space was not something we considered in detail, but 
would have required more work on quite what restrictions were appropriate. 
Personally I find the advice of define your own vocab a better way to go.


> 
> I suppose for my own uses I could make up my own listoids.  But why
> would it be cool for me to make assertions about those, and not about
> rdf:List?  What exactly is the difference?
> 


Those assertions would have the same consequences on OWL Full and OWL DL 
(at least when restricted to the OWL DL syntactic subset).
  Saying the same things about the builtin vocab would have more/different 
consequences in OWL DL than in OWL Full, e.g. the restriction on rdf:first 
with cardinality = 1 would contain all list nodes in OWL Full (user and 
logical) whereas only the user list nodes in OWL DL.



> By the way, in non-XML serializations like N3, is there an equivalent
> to parseType="Collection"?  It sure would be nice.  Even better would
> be a version that allowed one to parameterize over the 
> <List, first, rest> ops.


I beleive so, I am not an N3 user.

Jeremy

Received on Tuesday, 13 January 2004 08:25:51 UTC