How to model a ontology with OWL(Turtle syntax?

959 Views Asked by At

How can I model the bold text (Villages are part of Provience)in the example below to owl using Turtle Syntax

  • Turkey is made up of Provience and district
  • Istanbul, Ankara, Mersin are Provience
  • Villages are part of Provience

:Turkey rdf:type owl:class .

:Provience rdf:type owl:class .

:District rdf:type owl:class .

:Istanbul rdf:type owl:class .

:Ankara rdf:type owl:class .

:Mersin rdf:type owl:class .

:Istanbul rdfs:subClassOf owl:Turkey.

:Ankara rdfs:subClassOf owl:Turkey .

:Mersin rdfs:subClassOf owl:Turkey .

In this section I can't decide how to do “Villages are part of Provience” I would be very grateful if someone could give me an idea.

Thanks in advance

1

There are 1 best solutions below

0
On

Use as many well-known vocabularies of OWL/RDF terms as you can, rather than inventing your own.

Try Dublin Core Terms' isPartOf for generic part/whole relationships but you probably want something like schema.org's geoWithin. Schema.org also has a bunch of common classes you could start with and then specialize with your specific things when you have everything working. Try this:

PREFIX sdo: <https://schema.org>

:Turkey a sdo:Country .

:CentralAnatolia a sdo:AdministrativeArea .

:AnkaraProvince a sdo:AdministrativeArea .

:AnkaraCity a sdo:City .

# linking
:CentralAnatolia sdo:geoWithin :Turkey .
:AnkaraProvince sdo:geoWithin :CentralAnatolia .
:AnkaraCity sdo:geoWithin :AnkaraProvince .