Owlready2 0.43 est disponible !

Owlready2 est un module Python pour la programmation orientée ontologie. Il permet de charger des ontologies OWL 2.0 et de les manipuler de manière transparente en Python.

Cette version inclut un changement incompatible avec les précédentes: les literaux avec des languages différents sont désormais considérés comme différents. Par exemple:

  • locstr("Test", "en") != "Test"

  • locstr("Test", "en") != locstr("Test", "fr")

ce n'était pas le cas dans les versions précédentes, et cela causait des bogues et des confusion entre literaux.

J'en profite pour mentionner un nouveau projet: FullPy est un module Python pour concevoir des applications web entièrement en Python. Il utilise Owlready pour la persistance et la sémantique des données. Pour plus d'informations sur FullPy sont disponibles ici :

Suite à un bogue de dernière minute, il n'y a pas de version 0.42.

Voici les modifications :

  • INCOMPATIBLE CHANGE: Consider literal with different language as different

  • Support GRAPH clauses in SPARQL queries

  • World now supports custom lock (e.g. World(lock = ...))

  • Bugfixes: - Fix World(enable_thread_parallelism = True) (was named enable_gevent) - Fix blank nodes in rdflib_store - Fix FILTER in SPARQL when the filter was just after a recursive query - Fix recursive query in SPARQL involving variables in their right part - Fix SPARQL query with annotations containing entities - Fix property creation when using a Union in the '>>' syntax (e.g. class Prop((MyClass | MyOtherClass) >> str): pass) - Fix UMLS extraction in PyMedTermino2 - Fix Class IRI with brackets (or other special characters) when writing RDF/XML file

La nouvelle version peut être téléchargé sur PyPI (Python Package Index) : https://pypi.python.org/pypi/Owlready2