iop-alliance / OpenKnowHow

A metadata specification to enable the collection of distributed, standardised metadata of open source hardware designs
GNU General Public License v3.0
2 stars 1 forks source link

Check resources for ontology modules #143

Closed moedn closed 4 years ago

moedn commented 4 years ago

"Describing reality has been done". This phrase stuck in my head after our last meeting :)

Here's what we need to look at regarding modules of ontologies to build our own:

The field that you might be looking for is called "ontology engineering" in the Semantic Web. Over the past years, there have been many methodologies that have been defined to specify a methodological framework for developing ontologies/vocabularies either individually or collaboratively. 

On the one hand, I would recommend to read about the modelling languages in the Semantic Web. There are books that help understand both the RDF(S)/OWL constructs and the foundational knowledge:

- The Semantic Web primer: https://mitpress.mit.edu/books/semantic-web-primer-second-edition (1)
- Semantic Web for the working ontologist: http://workingontologist.org/ (2) 

But maybe these books might go into too many details, especially, since you might not need to exploit all the constructs of e.g. OWL for your Wikibase ontology; and Wikibase has its own data model. So, you might find the following resources more useful, to understand how knowledge engineers tend to solve the problem of conceptualizing/modelling the domain: 

- Technical report by Natasha Noy on "A Guide to Creating Your First Ontology": https://protege.stanford.edu/publications/ontology_development/ontology101.pdf (3) 
- A paper on the Neon Ontology Engineering methodology that helps you define competency questions (i.e., the information needs that your ontology needs to cover): https://link.springer.com/chapter/10.1007/978-3-642-24794-1_2 (4) 

The pointer I mentioned in the last event is a repository with existing ontologies that one ca (re-)use -- like an open data portal, but for vocabularies (https://lov.linkeddata.es/dataset/lov/ (5) ). It might be useful to get the URIs of classes and/or properties in these ontologies to, for instance, type your entities (i.e., add a statement of the shape "entity rdf:type external_type" or "entity wdt:p31 external_type". But you can also develop your ontology and then map or align it to existing ones. The reason why one does that is to integrate your data set and ontology with others, hence, weave the linked dataspace. 

Besides that, a book that I would totally recommend is the Linked Data book: http://linkeddatabook.com/editions/1.0/ (6) because it gives a very good overview of best practices on preparing and publishing data as Linked Data, including data links and vocabularies. 

I realize that you said "guide [...] for people outside the field?" and these are resources to on-board people in Semantic Web ontology engineering. I don't know if there are resources tailored in an easier/non-technical way, but I actually think that esp. (3) and (6) are written in a really clear way and one can use such materials to learn how to follow useful and well-thought methodologies. Of course, learning about these might require looking up further resources, but I think that is true for any learning activity and topic. :) I think it's important to look into the ground technologies, to avoid the wild population of data that doesn't follow ground considerations (e.g., mixing "instance of" and "subclassof") and hence, keep good standards for data quality. Else, the data consumption step will encounter the problems - my2c. :)
moedn commented 4 years ago

thousand thanks again to @thessaly for the great input!

moved this to a wiki page \ still going through it. this one is really great :)