BFO
BFO copied to clipboard
BFO DL-Query Oddities noticed by Amanda Hicks
From [email protected] on March 01, 2013 16:17:10
Amanda Hicks, UAMS, [email protected]
I have noticed that there are some unsound results for DL queries in BFO. In short, some of the queries of the form R only x produce strange subclasses. I first noticed this when a query on one of our ontologies (Apollo-sv) produced Acquired Immunodeficiency Syndrome as a descendent of simulates only continuant AND simulates only occurrent. I think I have traced this oddity back to BFO.
Below is a set of notes I took on the queries that I made in case they're helpful. I'm not sure where the problem lies though, but if you have any questions about these queries, let me know. And if you make any headway figuring out where the problem is, I would be really interested in hearing about it!
In each of the ontologies below I created a dummy relation R and restricted the domains or ranges in various ways. There are some unsound subclass relations that result in some queires of the form R only x. They do not result when some is used.
BFO 1.1 http://bfo.googlecode.com/svn/releases/1.1/bfo.owl and
BFO 1.1.1 http://bfo.googlecode.com/svn/releases/1.1.1/bfo.owl Relations with a domain on the branch of continuants generate odd DL query results when the query is of the form R only x.
The general pattern appears to be that R only x subsumes the compliment class of the domain of R for all x. However, I have not tried all combinations.
Here are some sample queries:
Domain: continuant Query: R only continuant Subclass: occurrent
Query: R only dependent_continuant Subclass: occurrent
Query: R only occurrent Subclass: occurrent
Based on similar queries it is probably the case that when the domain of R is a continuant, R only x always yields occurrent as a subclass.
Domain: dependent_continuant Query: R only continuant Subclass: independent_continuant, occurrent, spatial_region
Based on similar queries it is probably the case that when the domain of R is a dependent_continuant, R only x always yields these subclasses.
Domain: generically_dependent_continuant Query: R only continuant Subclass: independent_continuant, occurrent, spatial_region, specifically_dependent_continuant
Based on similar queries it is probably the case that when the domain of R is a generically_dependent_continuant, R only x always yields these subclasses.
Domain: specifically_dependent_continuant Query: R only continuant Subclass: independent_continuant, occurrent, spatial_region, generically_dependent_continuant
Based on similar queries it is probably the case that when the domain of R is a specificially_dependent_continuant, R only x always yields these subclasses.
Domain: independent_continuant Query: R only continuant Subclass: dependent_continuant, occurrent, spatial_region
Based on similar queries it is probably the case that when the domain of R is a specificially_dependent_continuant, R only x always yields these subclasses.
Ruttenberg BFO 2 http://bfo.googlecode.com/svn/releases/owl-ruttenberg-2010-05-25/ruttenberg-bfo2.owl Here are some sample queries:
Domain: continuant Query: R only continuant Subclass: none
Query: R only dependent_continuant Subclass: none
Query: R only occurrent Subclass: none
Based on similar queries it is probably the case that when the domain of R is a continuant, there is no problem.
Domain: dependent_continuant Query: R only continuant Subclass: none
Based on similar queries it is probably the case that when the domain of R is a dependent_continuant, there is no problem.
Domain: generically_dependent_continuant Query: R only continuant Subclass: none
Domain: generically_dependent_continuant Range: independent continuant Query: R only continuant Subclass: entity
Domain: n/a Range: independent continuant Query: R only continuant Subclass: entity
Domain: n/a Range: occurrent Query: R only continuant Subclass: none
Domain: n/a Range: dependent continuant Query: R only continuant Subclass: none
Domain: n/a Range: material entity Query: R only continuant Subclass: none
Query: ‘g depends on’ only continuant Subclass: entity
Query: ‘is concretization of’ only continuant Subclass: entity
Query: concretizes only continuant Subclass: entity
Based on similar queries it is probably the case that something funny is happening on the continuant branch.
BFO 2 2012-11-15-bugfix http://bfo.googlecode.com/svn/releases/2012-11-15-bugfix/owl-group/bfo.owl There are a multitude of classes that are subclasses nothing. In addition, it seems that BFO 2 has the same problem as BFO 1.1 and BFO 1.1.1
The general pattern appears to be that R only x subsumes the compliment class of the domain of R for all x. However, I have not tried all combinations.
Here are some sample queries:
Domain: continuant Query: R only continuant Subclass: occurrent
Query: R only generically-dependent_continuant Subclass: occurrent
Query: R only occurrent Subclass: occurrent
Based on similar queries it is probably the case that when the domain of R is a continuant, R only x always yields occurrent as a subclass.
Domain: generically_dependent_continuant Query: R only continuant Subclass: independent_continuant, occurrent, specifically_dependent_continuant
Based on similar queries it is probably the case that when the domain of R is a generically_dependent_continuant, R only x always yields these subclasses.
Domain: specifically_dependent_continuant Query: R only continuant Subclass: independent_continuant, occurrent, generically_dependent_continuant
Based on similar queries it is probably the case that when the domain of R is a specificially_dependent_continuant, R only x always yields these subclasses.
Domain: independent_continuant Query: R only continuant Subclass: dependent_continuant, occurrent, generically dependent continuant
Based on similar queries it is probably the case that when the domain of R is a specificially_dependent_continuant, R only x always yields these subclasses.
Original issue: http://code.google.com/p/bfo/issues/detail?id=153
From [email protected] on March 01, 2013 13:18:07
We shouldn't bother with the ruttenberg-bfo2 ones, since that isn't in the line of development. So priority: BFO2, BFO1 as time permits
From [email protected] on March 01, 2013 13:45:18
The expression
simulates only continuant AND simulates only occurrent (1)
prevents that anything is in the range of simulates, because continunant and occurrent are disjoint
This expression is equal to
simulates only (continuant and occurrent) (2)
and because the intersection (continuant and occurrent) is equal to nothing
simulates only (Nothing) (3)
which can be syntactically be transformed into
not (simulates some Thing) (4)
Does this explain the inference?
To your more basic example:
Domain: continuant (5) Query: R only continuant (6) Subclass: occurrent (7)
This can be explained as following:
R: domain continuant (5)
is in DL by definition equivalent to the axiom
R some Thing subclassOf Continuant (8)
R only Continuant (6)
can be transformed into
Not (R some (Not Continuant)) (9)
which implies
Not (R some Thing) (10)
because every satisfiable expression implies Thing
As R some Thing is a subclass of continuant (8) then (10) cannot be a subclass of continuant
It is eqivalent to
Entity and (not continuant) (11)
which subsumes occurrent (7)
q.e.d.
From [email protected] on March 09, 2013 14:22:27
I suggest closing this item. There is no bug here in any version of BFO. This is how we expect "only" restrictions in OWL to work.