doca
doca

Reputation: 1558

A question about Property Characteristics

Say that I'm creating a vehicle ontology. A vehicle and its manufacturer is connected by something like MyCar hasManufacturer Tesla. Then the manufacturer has a country of origin which I specify as Tesla hasCountryOfOrigin USA. What I want is the MyCar to be connected to USA when I run the reasoner such that,MyCar hasCountryOfOrigin USA. I know that this is different from transitive property. How can I achieve this? (Using Protege specifically)

Upvotes: 1

Views: 82

Answers (2)

Antoine Zimmermann
Antoine Zimmermann

Reputation: 5515

You can do this with a property chain in OWL. You want to define the chain hasManufacturer --> hasCountryOfOrigin as a subproperty of hasCountryOfOrigin. In Protégé, you can do it by selecting the property hasCountryOfOrigin (in the ObjectProperty tab), find the place in the lower right section with "SuperPropertyOf (chain)" and click the + sign, then in the new edit box that opens, type hasManufacturer o hasCountryOfOrigin. The property hasManufacturer must have been added previously. It's also possible to get the same inferences as a property chain with a SWRL rule, which can be done in Protégé, but SWRL is not a standard, whereas OWL and the property chain feature are.

Upvotes: 5

Dan D.
Dan D.

Reputation: 74685

You have a rule like:

{ x? hasManufacturer y?; y? hasCountryOfOrigin z? } 
=> { x? hasCountyOfOrigin z? }

This might not be the right syntax.

Upvotes: 1

Related Questions