Sommaire

Exemple : un navigateur multiterminologique

La consultation des terminologies médicales est tout à fait possible dans un terminal Python avec PyMedTermino, cependant cela s’avère vite laborieux. Nous allons donc construire un navigateur minimaliste multiterminologique permettant à la fois de rechercher des concepts par mots-clefs et de naviguer parmi eux. Il utilisera le module Python Flask pour générer un site web dynamique (voir chapitre Accéder aux ontologies en Python, section Exemple : créer un site web dynamique à partir d’une ontologie) et intégrera toutes les terminologies importées dans PyMedTermino. Site web dynamique Flask

Le programme suivant décrit sa mise en œuvre :

# Fichier navigateur_termino.py 
from owlready2 import *  
default_world.set_backend(filename = "pymedtermino.sqlite3") 
PYM = get_ontology("http://PYM/").load()  
 
from flask import Flask, url_for, request  
app = Flask(__name__)  
 
def repr_concept(concept):  
   return """[<a href="%s">%s:%s</a>] %s""" % (  
       url_for("page_concept", iri = concept.iri),  
       concept.terminology.name,  
       concept.name,  
       concept.label.first() )  
 
def repr_relations(entity, border = False):  
   if border: html ...