0

I am working with an ontology (OWL, Protege 4). I have 3 individuals: A, B and C. And two object properties: bears and hasContactWith.

The relationships should be next:

  • A bears B;
  • B bears C;
  • A hasContactWith B;
  • B hasContactWith C.

The property bears has to be transitive, while hasContactWith symmetric.

Is it some possibility to define the property hasContactWith through the bears (as a subproperty / chain axiom / additional step), in order to lose the transitive characteristic and get symmetric?

The result which I want to get is to set bears relationships and get hasContactWith from reasoner as derived properties.

I appreciate your help in advance!

Stanislav Kralin
  • 11,070
  • 4
  • 35
  • 58
Taras
  • 1
  • 2
  • Create third property as a subproperty of both. Otherwise, a "solution" should be able to distinguish asserted and inferred statements. – Stanislav Kralin Dec 04 '18 at 22:53
  • your example is `A hasContactWith B; B hasContactWith C.` - for me that's not symmetric but transitive. – UninformedUser Dec 05 '18 at 08:05
  • by the way, you should be careful with the property characteristics and subproperty axioms, there are some restrictions to keep the reasoning decidable, see [here](https://www.w3.org/TR/owl2-syntax/#Property_Hierarchy_and_Simple_Object_Property_Expressions) – UninformedUser Dec 05 '18 at 08:07
  • Stanislav, thank you for your answers. Can you give please one more small advice, in which direction should I think? I am new in this area and I am not able to create a non-standard solution. I tried next. I got 3 classes: **bears** (transitive), **symmetric_secondary** (symmetric), **hasContactWith** (SubPropertyOf **symmetric_secondary** and **bears**; without characteristics). By playing with this three properties through equivalentTo or Chain Axiom I got either wrong inference or inconsistency and program crash. Thanks in advance! – Taras Dec 05 '18 at 09:17
  • AKSW, thank you for your answer. I will show the full example: A **bears** B; B **bears** C; C **bears** D. A **hasContactWith** B; B **hasContactWith** A and C; C **hasContactWith** B and D. But: A **doesn’t hasContactWith** C and D. So it is not transitive. The aim by **hasContactWith** is that we are not going futher than the neighbor elements. Any idea how to get it work? Thank you in advance! – Taras Dec 05 '18 at 09:21

1 Answers1

1

Let's suppose you have a solution. That solution should infer A hasContact B from A bears B, B hasContact C from B bears C, but shouldn't infer A hasContact C from A bears C.
What is the difference between A bears B and A bears C? The latter is already inferred. That solution should be able to distinguish asserted and inferred statements. It is impossible in OWL.

Probably one could figure out something using rule languages or SPARQL UPDATE.

In OWL, I'd suggest to create third property as a subproperty of both and set its values:

ObjectProperty: myProperty
     SubPropertyOf: bears, hasContactWith

ObjectProperty: bears
     Characteristics: Transitive

ObjectProperty: hasContactWith
     Characteristics: Symmetric  

Individual: A
     Facts: myProperty  B   

Individual: B
     Facts: myProperty  C

Individual: C

object propery assesrtion for A, B, C


BTW, transitivity and symmetricity may be considered as down-top propagated in property hierarchies.

Stanislav Kralin
  • 11,070
  • 4
  • 35
  • 58
  • seems to work, but what about using an SWRL if OWL isn't expressive enough? – UninformedUser Dec 05 '18 at 11:34
  • @AKSW, SWRL is "deductively closed" too, it is impossible to stop consequences generation. It also seems that one can't use a kind of counter due to monotonicity, absense of negation etc. – Stanislav Kralin Dec 05 '18 at 12:12
  • 1
    Yes, I know this. To be honest, I didn't get the whole use-case that's why I was thinking of SWRL. That said, I think this use case is more like beyond deductive reasoning and should be solved, as you already mentioned via a self controlled mechanism like a single (or multiple depending on the depth) SPARQL Update queries, which indeed would materialize the facts. Don't think this is a problem though – UninformedUser Dec 05 '18 at 13:20
  • 1
    Stanislav, thank you a lot for detailed explanation with pictures :) Have a nice week! – Taras Dec 05 '18 at 21:15