RE: question: datatype reasoning?

> From: Jim Hendler [] 
> maybe it's just me, but it seems like expecting the above to be in 
> any complete OWL reasoner is pretty tough - there are DL reasoners 
> that do some datatype reasoning, but they don't seem to discuss 
> anything near this level of complexity.

I guess I should jump in here, as one of the people who has implemented
datatype reasoning in a DL system :-).

I agree with Jim that it depends on the level of complexity, but there
are some simple things that go a long way towards getting useful

> >Nasty questions that can be asked in OWL DL assuming floats 
> and decimals
> >share the same underlying real values is how many floats are 
> unsignedLongs
> >(algorithm is keep increasing the maxCardinality in an 
> entailment like that
> >above until the entailment does not hold).

Cerebra doesn't presently do decimals (floats, ints and strings at
present).  I'd be interested to ask that question of one of the recent
Racer releases. 

> I might expect a classifer to determine 
> that A is a subclass of B because all A's are necessarily Bs (since 
> URIs are strings) - and that doesn't seem totally unreasonable.

Indeed.  And there is implementation experience to that effect - Cerebra
can do it at present.

> On 
> the other hand, if I have an example like the one above - expecting 
> the "only if" version of your rule above
> owl:Thing owl:sameClassAs
>      restriction(p, maxCardinality=128 )
> would require that I make this a subclass of something with 
> restrictions of
> <p> range xsd:negativeInteger
> <p> range xsd:byte
> seems a lot higher bar to expect.  (and I don't know how 
> implementable it is)

Again, Cerebra can handle this at present *assuming* negativeInteger and
byte are both defined as subranges of integer.

> in fact, is there even an axiomization of all 
> the datatype rules the reasoner would need to know with respect to 
> all the xsd: datatypes (i.e. what strings are dates? what lengths are 
> allowed on various types, etc.)

I strongly suspect not.

> I think the WG has to address the issue of what is expected in terms 
> of reasoning about datatypes.  If we really want to insist on 
> completeness of reasonign with respect to these, I'd think we need to 
> produce a list of all the "axioms" of XML Schema datatypes (which I'd 
> want to rule out of scope :->) or we need to come up with a 
> reasonable way of expressing our expectations (my preferred solution) 
> for a less than complete requirement with respect to the full set.

How about expecting complete reasoning over combinations of XML Schema
datatypes that share the same base type (such as byte and negative
integer), but not expecting complete reasoning over combinations that do
not share the same base type *or* asserting that intersection of
different base types e.g. xsd:integer and xsd:date is empty?  Again,
this is what's in Cerebra, and it seems to work pretty well for the apps
we have.

I can write up something more detailed if the WG wishes.

		- Peter

Received on Friday, 24 January 2003 08:33:28 UTC