OWL and Identity
For a while now, I have been experimenting with building a representation in OWL for the automatic attribution of responsibility. My problem is that the definition of dynamic concepts, i.e. concepts that capture change such as tasks, inferences, workflow, processes, causation, history, stories is next to impossible in OWL-DL. These concepts require some notion of identity in order to be able to describe the differences between occurrences of entities. Furthermore, a basic requirement is the ability to infer the type of some occurrence of a change (e.g. the type of an event).
To exemplify the issue, have a look at a possible definition of a Transition:
class Standstill-to-Moving
Transition and
from some (Physical-Object and (acceleration has zero)) and
to some (Physical-Object and (acceleration has plus))
Although this definition enables a standard OWL description classifier to infer the transition-type of events between simple states (the fillers of the from- and to properties), and to infer whether conjunctions of identified transitions belong to a particular process, more complex (structural or spatial) constraints cannot be expressed in OWL. For example, we could express that transition Standstill-to-Moving can change a property (e.g. acceleration) of some physical object onthe condition that it is connected to some (possibly) other object, and remains connected to some object. But we cannot express that these ob jects should be the same. Even worse, OWL does not allow us to express that the precondition holds for the same ob ject as the post-condition.
In OWL, an individual is a mere placeholder of some property values. In fact, the notion of individual in DL stands for both individual and for instance : the terms are used indiscriminately. Conceptually, individuals have an identity and a life-cycle, while instances are occurrences of individuals at a particular time and a particular place, i.e. situation dependent. OWL Individuals can be said to be the same or different using owl:sameAs and owl:differentFrom constructs respectively. However, these relations operate on a semantic level, and cannot be used to express an identity relation between two different instances of the same individual, i.e. two instances that differ in their property values.

At the instance level, multiple ways exist to express identity relations between OWL individuals: 1) introduce a transitive symmetric property such as sameIdentityAs to relate between OWL individuals that share some identity, 2) assert membership of a particular class for each identity, or 3) relate instances to an OWL individual that represents the shared identity. So far so good. However, when the need arises to express classes that range over multiple instances of shared identity, all three solutions are highly problematic. The class definition will be either too generic, or too specific. For instance, maintaining a sameIdentityAs property relation over the pre- and post condition of a transition is not possible: the existence of this relation cannot be used as a condition for classification. The use of a shared ancestor class or OWL individual to maintain identity, as e.g. in the definition of transitions, requires an explicit reference to the identity being maintained: transitions become identity-specific.
Possible followup: the OWL 1.1 proposal does not solve this issue…
Comments(1)