NeOWL4j : création d’un éditeur d’ontologie moderne basé sur l’environnement Neo4j

When:
01/06/2026 – 02/06/2026 all-day
2026-06-01T02:00:00+02:00
2026-06-02T02:00:00+02:00

Offre en lien avec l’Action/le Réseau : – — –/– — –

Laboratoire/Entreprise : Laboratoire d’Informatique et Systèmes
Durée : 3 à 6 mois
Contact : alexis.guyot@lis-lab.fr
Date limite de publication : 2026-06-01

Contexte :
L’ingénierie des connaissances vise à modéliser, structurer et exploiter des savoirs pour les rendre manipulables par des systèmes informatiques. Au cœur de cette démarche, une ontologie est une représentation formelle d’un domaine : elle définit des concepts (classes), leurs relations (propriétés)
et des contraintes/axiomes (p. ex. hiérarchies, cardinalités). Les ontologies favorisent l’interopérabilité sémantique entre systèmes hétérogènes, facilitent l’intégration des données, soutiennent le raisonnement (inférences, vérification de cohérence) et encadrent la gouvernance des connaissances au moyen de référentiels partagés. Des outils comme Protégé font aujourd’hui autorité pour l’édition d’ontologies.

Le stage consiste à prototyper une alternative à Protégé en développant une surcouche d’édition et de raisonnement au-dessus du SGBD orienté graphe Neo4j, combinant ergonomie moderne, exploitation riche de graphe et compatibilité OWL (OWL API, moteurs de raisonnement standards). L’enjeu est de livrer une expérience contemporaine et efficace, sans réinventer les composants qui existent déjà lorsqu’ils sont adaptés.

Sujet :
**But du stage**
Concevoir et prototyper une application moderne (plutôt web, mais desktop possible) servant de sur-couche à Neo4j pour créer, éditer, valider et raisonner sur des ontologies (OWL/SWRL), avec une attention forte portée à l’UX et à l’esthétique. L’application doit ester interopérable avec l’écosystème existant (dont Protégé) tout en capitalisant sur les forces de Neo4j.

**Objectifs et missions**
Le/la stagiaire commencera par cadrer formellement le projet : étude de Protégé (exploration libre de l’outil, lecture de la documentation, entretiens avec des experts pour cerner besoins et limites de l’existant) ; rapide panorama des fonctionnalités des autres éditeurs d’ontologies, éventuellement complété par un album de captures pour comparer l’UX ; identification des contraintes techniques de l’existant (écosystème Neo4j, briques OWL/SWRL, validation et raisonnement) et repérage des bonnes pratiques UX 2025 pour guider la conception.

Sur cette base, il/elle rédigera des spécifications fonctionnelles et techniques pour le nouvel outil, puis développera un prototype de manière incrémentale : éditeur de d’ontologies ergonomique connecté à Neo4j, import/export assurant l’interopérabilité, mécanismes de validation, etc. Selon la durée et le profil,
le stage pourra s’étendre à l’édition d’axiomes et de règles, à l’intégration d’un raisonneur standard et à la création d’un démonstrateur complet sur une ontologie de référence.

**Technologies envisagées**
Côté interface, l’option prioritaire est une application web en TypeScript s’appuyant sur React ou SvelteKit, avec un composant d’édition de graphes adapté (par ex. React Flow ou Cytoscape.js), des moteurs de layout (elkjs/dagre) et un système de design moderne (Tailwind avec composants accessibles type Radix/shadcn). Cette combinaison permet de viser une UX actuelle : thèmes (y compris dark mode), accessibilité, performance (virtualisation), micro-interactions sobres.

En alternative desktop, on pourra empaqueter l’interface web via Electron ou Tauri, ou opter pour une interface native en JavaFX (Java) ou JetBrains Compose for Desktop (Kotlin), afin de faciliter l’intégration directe avec les bibliothèques web sémantique de l’écosystème Java.

Pour le backend, une pile Java avec Spring Boot est privilégiée afin d’intégrer naturellement OWL API/Apache Jena, de s’interfacer avec un raisonneur standard (HermiT, Pellet, Fact++), et de dialoguer avec Neo4j via le driver Java et neosemantics (n10s) pour les échanges RDF/OWL. La validation pourra
s’appuyer sur SHACL. L’API sera exposée simplement (REST/JSON ou gRPC) et restera découpée de façon à pouvoir évoluer (microservice dédié aux fonctions ontologiques si nécessaire).

Profil du candidat :
— Niveau : Bac+3 à Bac+5 (informatique / BD / IA / génie logiciel / IHM).
— Dominantes possibles : développement front moderne (TS + React/SvelteKit), Java et conception d’API, bases de données, graphes, web sémantique (OWL/RDF, SWRL, SHACL), UX/UI.
— Qualités attendues : autonomie, rigueur, curiosité, sens de l’ergonomie, communication.

Formation et compétences requises :

Adresse d’emploi :
LIS UMR 7020 CNRS / AMU / UTLN, équipe IACD
Aix Marseille Université – Campus de Saint Jérôme – Bat. Polytech
52 Av. Escadrille Normandie Niemen
13397 Marseille Cedex 20

Document attaché : 202510011418_2025_Sujet_Stage_NeOWL4J.pdf