| | 37 | Reasoning is fundamental to exploring any sort of hierarchies of the more expressive ontologies. We present here a simple example how reasoner could be employed, but considerably more complicated scenarios are in use by the OWL community. Consider the following hypothetical ontology (annotated with Description Logic syntax below) describing the anatomical relations among the parts of heart. We start by defining four classes: ''Heart'', ''HeartComponent'', ''LeftHeart'', and ''MitralValve'' and two object properties to describe the partonomy: ''partOf'' and ''hasPart''. The two <tt>primitive classes</tt> ''LeftHeart'' and ''MitralValve'' have additional necessary conditions defined as ''partOf some Heart'' and ''partOf some LeftHeart'' respectively in order to describe that mitral valve is a component of left heart, which in turn is a part of the whole heart. We additionally create a <tt>defined class</tt> ''HeartComponent'' as a convenience class to capture all the different parts of heart as subsumptions and this is our primary query -- find all parts of heart. Simply parsing the ontology to find which classes have the statement ''partOf some Heart'' among their restrictions would only return ''LeftHeart'', but miss ''MitralValve'' completely. However, if we additionally specify that ''partOf'' is transitive, the reasoner would be able to infer that ''MitralValve'' is also a ''HeartComponent''. |