0

I want to add a SWRL rule basis some list of object property values or data property values. Person(?p)^hasPosition(?p,[CEO,COO,CFO,MD]) -> hasWorkGroup(?p,ExecutiveManagement) How do I correctly define [CEO,COO,CFO,MD] as list of values as we do in SQL's IN clause?

And how can I achieve similar thing when CEO,COO,CFO,MD values are literals (i.e. hasPosition is a data property)?

Dave
  • 1
  • 2
  • that feature doesn't exists. You could try to introduce a pseudo class in your OWL ontology which is equivalent to the enumeration like `ImportantPerson EquivalentTo hasPosition some { CEO,COO,CFO,MD }` and use `ImportantPerson` in your SWRL rule. The same could be done with a custom data range for literals – UninformedUser Dec 17 '22 at 09:27
  • or you use 4 SWRL rules to simulate a disjunction with each rule using a different position with the same conclusion, e.g. `Person(?p)^hasPosition(?p, CEO) -> hasWorkGroup(?p,ExecutiveManagement)` and ... – UninformedUser Dec 17 '22 at 09:29

0 Answers0