L'alternative à RDF, OWL et SHACL : des ontologies opérationnelles sur SQL
Synalog décrit uniquement ce que contiennent vos données, dans un seul langage en monde clos, compilé en SQL sur vos bases existantes.
SynaLemma face à RDF, OWL et SHACL en un coup d'œil
| Critère | SynaLemma | RDF, OWL, SHACL |
|---|---|---|
| Ce que décrit l'ontologie | Uniquement les concepts que vos données contiennent, calculés à partir de vos tables | Un domaine, pour être publié et relié |
| Logique | Monde fermé, comme votre base de données | Monde ouvert : un fait absent est inconnu |
| Langages | Un seul : règles, requêtes et assertions | RDF, OWL, SHACL, SPARQL, plus R2RML pour atteindre le SQL |
| Où il s'exécute | Compile en SQL sur vos bases de données existantes | Un triplestore, ou des correspondances vers des tables relationnelles |
| Totaux, moyennes, classements | Partie intégrante du langage, avec récursion et négation | Hors du raisonnement OWL : écrits en SPARQL |
| Contrôles | Un vérificateur prouve que chaque règle termine ; les assertions contrôlent les données | Les raisonneurs contrôlent la cohérence ; SHACL valide les données |
| Délai avant la première réponse | La couche se construit dès la première question | Modélisation en amont, couramment des mois ou des années |
Pourquoi chercher une alternative à RDF, OWL et SHACL
-
Monde ouvert
En OWL, un fait absent est inconnu, pas faux (OWL 2 primer).
-
Quatre langages
RDF, OWL, SHACL et SPARQL, plus R2RML pour atteindre les tables relationnelles (R2RML).
-
Un triplestore ou des correspondances
Les données doivent être déplacées ou mises en correspondance.
-
Pas d'agrégats métier en OWL
Totaux, moyennes et classements s'écrivent en SPARQL.
-
Une modélisation préalable
Les projets d'ontologie prennent souvent des mois ou des années avant la première réponse.
SynaLemma face à RDF, OWL et SHACL : principales différences
-
Des ontologies opérationnelles
Uniquement les concepts et les relations que contiennent vos données, chacun calculé à partir de vos tables.
-
Monde clos
Ce qui n'est pas dans les données est faux, comme dans votre base. Les assertions contrôlent directement les données.
-
Un seul langage sur SQL
Règles, requêtes et assertions en Synalog, compilées en SQL sur PostgreSQL, BigQuery, Databricks, Trino, Presto, DuckDB et SQLite.
-
Un raisonnement avec agrégats
Récursion, agrégation, négation et temps dans un seul programme, dont la terminaison est vérifiée.
-
Pas de projet de modélisation préalable
L'analyste écrit des règles au fil des questions. La couche grandit dès la première question.
Exemple : un contrôle en monde clos
Le chiffre d'affaires par client, avec trois assertions. La deuxième est le contrôle que le monde ouvert d'OWL ne peut pas faire seul. Le client 12 manque ; le moteur nomme la ligne.
Order(order_id:, customer_id:, amount:, status:) :- orders(order_id:, customer_id:, amount:, status:);
Customer(customer_id:, country:) :- customers(customer_id:, country:);
@Assert(Revenue,
one_row_per_customer: "∀ c r s, Revenue c r → Revenue c s → r = s",
known_customer: "∀ c r, Revenue c r → ∃ k, Customer c k",
positive: "∀ c, Revenue c > 0");
Revenue(customer_id:, revenue? += amount) distinct :-
Order(customer_id:, amount:, status: "delivered"); Alternative à RDF, OWL et SHACL : FAQ
Qu'est-ce qu'une ontologie opérationnelle ?
Une ontologie qui décrit uniquement les concepts et les relations que contiennent vos données, chacun calculé à partir de vos tables.
Faut-il un triplestore ou une base de données de graphe ?
Non. Synalog compile en SQL et tourne sur vos bases existantes. Les requêtes de graphe sont des règles récursives.
Synalog peut-il vérifier que chaque commande a un client ?
Oui, avec une assertion. Synalog fonctionne en monde clos : le moteur renvoie les lignes sans client.
Sources
- W3C : OWL 2 Web Ontology Language Primer
- W3C : Shapes Constraint Language (SHACL)
- W3C : R2RML, RDB to RDF Mapping Language
- W3C : SPARQL 1.1 Query Language
- Synalog sur GitHub (Apache-2.0)
Vérifié dans la documentation publique de chaque produit à la date de revue. Pour signaler une erreur : contact@synalinks.com.
Autres comparaisons
Venez avec une question à laquelle vos outils actuels ne savent pas répondre.
En 30 minutes, nous vous montrons SynaLemma qui y répond, avec la règle derrière le chiffre et les vérifications qu'elle a passées.