Treffer: Owlready: Ontology-oriented programming in Python with automatic classification and high level constructs for biomedical ontologies.

Title:
Owlready: Ontology-oriented programming in Python with automatic classification and high level constructs for biomedical ontologies.
Authors:
Lamy JB; LIMICS, Université Paris 13, Sorbonne Paris Cité, 93017 Bobigny, INSERM UMRS 1142, UPMC Université Paris 6, Sorbonne Universités, Paris, France. Electronic address: jibalamy@free.fr.
Source:
Artificial intelligence in medicine [Artif Intell Med] 2017 Jul; Vol. 80, pp. 11-28. Date of Electronic Publication: 2017 Aug 14.
Publication Type:
Journal Article
Language:
English
Journal Info:
Publisher: Elsevier Science Publishing Country of Publication: Netherlands NLM ID: 8915031 Publication Model: Print-Electronic Cited Medium: Internet ISSN: 1873-2860 (Electronic) Linking ISSN: 09333657 NLM ISO Abbreviation: Artif Intell Med Subsets: MEDLINE
Imprint Name(s):
Publication: Amsterdam : Elsevier Science Publishing
Original Publication: Tecklenburg, Federal Republic of Germany : Burgverlag, c1989-
Contributed Indexing:
Keywords: Automatic classification; Biomedical ontology; Local closed world reasoning; OWL; Ontology-oriented programming; Semantic web
Entry Date(s):
Date Created: 20170819 Date Completed: 20171117 Latest Revision: 20181202
Update Code:
20250114
DOI:
10.1016/j.artmed.2017.07.002
PMID:
28818520
Database:
MEDLINE

Weitere Informationen

Objective: Ontologies are widely used in the biomedical domain. While many tools exist for the edition, alignment or evaluation of ontologies, few solutions have been proposed for ontology programming interface, i.e. for accessing and modifying an ontology within a programming language. Existing query languages (such as SPARQL) and APIs (such as OWLAPI) are not as easy-to-use as object programming languages are. Moreover, they provide few solutions to difficulties encountered with biomedical ontologies. Our objective was to design a tool for accessing easily the entities of an OWL ontology, with high-level constructs helping with biomedical ontologies.
Methods: From our experience on medical ontologies, we identified two difficulties: (1) many entities are represented by classes (rather than individuals), but the existing tools do not permit manipulating classes as easily as individuals, (2) ontologies rely on the open-world assumption, whereas the medical reasoning must consider only evidence-based medical knowledge as true. We designed a Python module for ontology-oriented programming. It allows access to the entities of an OWL ontology as if they were objects in the programming language. We propose a simple high-level syntax for managing classes and the associated "role-filler" constraints. We also propose an algorithm for performing local closed world reasoning in simple situations.
Results: We developed Owlready, a Python module for a high-level access to OWL ontologies. The paper describes the architecture and the syntax of the module version 2. It details how we integrated the OWL ontology model with the Python object model. The paper provides examples based on Gene Ontology (GO). We also demonstrate the interest of Owlready in a use case focused on the automatic comparison of the contraindications of several drugs. This use case illustrates the use of the specific syntax proposed for manipulating classes and for performing local closed world reasoning.
Conclusion: Owlready has been successfully used in a medical research project. It has been published as Open-Source software and then used by many other researchers. Future developments will focus on the support of vagueness and additional non-monotonic reasoning feature, and automatic dialog box generation.
(Copyright © 2017 Elsevier B.V. All rights reserved.)