GithubHelp home page GithubHelp logo

ontology_prototyper's Introduction

Ontology Prototyper

Ce projet est le fruit d'une collabration avec l'entreprise Perfect Memory, spécialiste du déploiement de solutions sémantiques.

Objectifs

Cette application a pour objectif de simplifier la production d'une ontologie et d'une base de connaissances à partir de données existantes aux formats CSV ou JSON.

Fonctionnement

L'application analyse un ou plusieurs fichiers de données pour construire un fichier de paramètres spécifiques. Une fois les paramètres finalisés par l'utilisateur, l'application produit un fichier d'ontologie et un fichier contenant la KB.

Pour initier le projet, rassembler les fichiers de données et créer un fichier de configuration.

Ensuite l'application procède en 4 étapes:

  1. Scan des données à transformer: pour chaque fichier l'application identifie toutes les colonnes et leur type de données puis renseigne le fichier de configuration.
  2. Paramétrage du fichier de modélisation sémantique : l'application alimente de façon continue un journal d'erreurs à résoudre. Une fois que tous les paramètres obligatoires sont correctement définis, l'application rend la main pour les étapes suivantes.
  3. Production de l'ontologie : l'application produit un fichier modèle de l'ontologie.
  4. Production d'une base de connaissances (KB) : : l'application produit un fichier restituant les données scannées de façon sémantisée, en cohérence avec l'ontologie.
graph LR
A(Init project) -- "-s" --> B(Scan)
B -- -l --> C(Config loopmode)
C -- -o --> D(Ontology)
D -- -k --> E(KB)
C --> C
Loading

L'application produit par défaut des fichiers au format turtle (.ttl) mais utilise la librairie RDFLib qui propose d'autres formats de sortie.

Pré-requis

  • Pour utiliser depuis le code source: Python 3.8+
  • L'application peut être packagée en exécutable autonome grâce à PyInstaller, un fichier prototype.spec est fourni. Dans le cas d'une utilisation packagée, aucune connaissance en programmation n'est nécessaire.
  • L'usage de l'application nécessite de bonnes bases en sémantique : principes des ontologies, connaître les différences entre Object Properties et DataType Properties, labels, prédicats etc. Pour plus d'informations consulter OWL - Semantic Web Standards - W3C

Fonctionnalités

  • Imports CSV et JSON paramétrables
  • Multi-tables, une ou plusieurs classes par tables
  • Implémentation d'ontologies internes ou de références: Schema.org, The Organization Ontology , DBpedia, Wikidata, etc.
  • Construction automatique des prédicats sur la base des noms de colonnes
  • Analyse récursive des documents JSON
  • Import par lot pour les gros fichiers CSV avec filtrage des clés primaires
  • Dispatching des données dans des entités ou des classes
  • Formats de sortie : turtle, rdf+xml, n3, etc. consulter la liste

ontology_prototyper's People

Contributors

jmasclef avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.