Sorry guys.

I meant the distance between two different objects o1 and o2.

And my question was related to what Michael said.

The distance between two objects can be viewed as a function that maps two object to a real number. This function can be viewed as a ternary relation, which related the two objects and the natural number that represents the distance between them, My problem is how to represent this ternary relation in OWL, since OWL can only represent binary relations.

One of my ideas about this problem is similar to the solution provided by Michael, involving the reification of the notion of Distance. That is, my model would have:

-A class "PhysicalObject"

-A class "Distance"

-An object property "hasReferenceObject", whose domain is "Distance" and whose range is "PhysicalObject"

-A data property "hasLenght", whose domain is "Distance" and whose range is Double.

With this model, for representing the fact that the distance between two objects "o1" and "o2" is 200, it is necessary to create an instance of Distance "d_o1_o2" and the assertion of the following relations:

-"d_o1_o2" "hasReferenceObject" "o1"

-"d_o1_o2" "hasReferenceObject" "o2"

-"d_o1_o2" "hasLenght" 200

This seems to be aligned to the suggestion provided by Michael.

But this seems to cause the inclusion of 4 assertions for representing the distance between each pair of objects. This causes a proliferation of assertions. There is a more parsimonious way of doing this?

Best regards.

_______________________________________________

protege-user mailing list

[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user