Re: How to bind corrisponding classes through an object property

So, I try to explain more precisely my problem. 
 
The object property "bordering" doesn't bind directly two Buildings but uses an  "intermediate" class (called BuildingSpatialRelation) according to the following "schema"
First Building-->hasSpatialRelation(Building, BuildingSpatialRelation)-->bordering(BuildingSpatialRelation, Building)-->Second Building
So, it's a combination of object properties "hasSpatialRelation" and "bordering" that concretely express the bordering relation between the two buildings.
Now, what I can't understand, it'is how could be possible to express that "bordering" relation imply , at geometric level, a geometric relation, for instance "touching" between the corresponding buildings' solids.
I thought that a possible solution is reappling the previous "schema" in this way:
First Solid-->hasGeometriclRelation(Solid, BuildingSpatialRelation)-->touching(BuildingSpatialRelation, Solid)-->Second Solid,
declaring "touching" as a subProperty of  "bordering" and "hasGeometricRelation" as subProperty of  "hasSpatialRelation":
 
objectProperty:hasGeometricRelation subPropertyOf:hasSpatialRelation
domain:Solid
range:BuildingSpatialRelation
 
objectProperty:touching
subPropertyOf:bordering
domain:BuildingSpatialRelation
range:Solid
 
However, I suppose that such solution, beyond making ontology incoherent,  realize a "touching" relation which does not bind the corrisponding solids of the buildings involved in the relation of "bordering" (In other words, I think cannot get the right "Building.Solid" as in object modeling)..
 
I would accept with pleasure every advice. Thank you all.
 
Regards,
Antonio A. 		 	   		  

Received on Thursday, 29 July 2010 14:25:13 UTC