0

I want to have a class Professor which will have some properties: name, surname and nationality.

Now I just created a class Professor, a class Person and a class Nationality, and some data properties for name and surname and an object property hasNationaity to relate a professor with a nationality.

Does it make sense to use FOAF for Person and maybe something like Group and member for the nationalities?

To do so I would need to import FOAF, right?

I guess my main question is what are the reasons that justify importing an upper ontology? and is this what people normally do?

In any case the ontology, in Turtle, is available here on GitHub.

moondaisy
  • 4,303
  • 6
  • 41
  • 70
  • i think the world would benefit from as much ontology reuse as possible. this benefit should come from a bunch of prewritten queries on the existing ontologies - otherwise you will need to recreate each one for your new ontology - and other people would too - so they likely won't use your new one etc. – Randy Jun 09 '18 at 16:48

1 Answers1

1

Ontologies and more generally "Semantic web technologies" are dedicated to knowledge pooling.

As Sire Tim Berners-Lee specified in its 5-Stars Ranking on Open Data, the best level of opening is reached when you "link your data to other data to provide context". So it is a good thing !

About the "import", not all the FOAF ontology is mandatory in your case I think. Importing all statements of an ontology is, in my experience, important when you need to implement many resources relative to the upper-ontology (Graph browsing, structure modification, ...) On the other hand, the simple use of prefixes can solve many problem without weighing an application:

xmlns:foaf="http://xmlns.com/foaf/0.1/#"

About the nationality question, Group from FOAF can be a solution. Nota Bene that other ontologies may provide suited answer like YAGO (Yet Another Great Ontology). Some may create multiple imports/connections to increase the contextualisaiton of their Knowledge Base.

Gilles-Antoine Nys
  • 1,481
  • 16
  • 21
  • When you say the "simple use of prefixes" you mean I can create object properties or classes in my ontology and give them the prefix of the FOAF ontology? That's enough for it to work without the need of importing anything? – moondaisy Jun 10 '18 at 16:18
  • Actually, "everything is possible". Just be sure to respect the FOAF recommendations. And if the "original" ontology doesnt provide exactly what you need, you're free to create your own Classes and Properties ofc. – Gilles-Antoine Nys Jun 10 '18 at 16:35
  • Ok, but when it comes to the specific implementation, what is better: importing or just using the prefixes? – moondaisy Jun 10 '18 at 16:38
  • 1
    If you want to create your own KB, hosted in a triple store, and therefore manage the statements, ... Importing is needed. If you want to simply query a KB, prefixes are good enough. – Gilles-Antoine Nys Jun 10 '18 at 16:40