Het alternatief voor RDF, OWL en SHACL: operationele ontologieën op SQL
Synalog beschrijft alleen wat uw data bevat, in één gesloten-wereldtaal die naar SQL compileert op uw bestaande databases.
SynaLemma vs RDF, OWL en SHACL in één oogopslag
| Criterium | SynaLemma | RDF, OWL, SHACL |
|---|---|---|
| Wat de ontologie beschrijft | Alleen de concepten die uw data bevat, berekend uit uw tabellen | Een domein, om te publiceren en te koppelen |
| Logica | Gesloten wereld, zoals uw database | Open wereld: een ontbrekend feit is onbekend |
| Talen | Eén: regels, query's en asserties | RDF, OWL, SHACL, SPARQL, plus R2RML om SQL te bereiken |
| Waar het draait | Compileert naar SQL op uw bestaande databases | Een triplestore, of mappings naar relationele tabellen |
| Totalen, gemiddelden, rangschikkingen | Onderdeel van de taal, met recursie en negatie | Buiten het redeneren van OWL: geschreven in SPARQL |
| Controles | Een verifier bewijst dat elke regel eindigt; asserties controleren de data | Reasoners controleren de consistentie; SHACL valideert de data |
| Tijd tot het eerste antwoord | De laag groeit vanaf de eerste vraag | Vooraf modelleren, vaak maanden of jaren |
Waarom teams een alternatief voor RDF, OWL en SHACL zoeken
-
Open wereld
In OWL is een ontbrekend feit onbekend, niet onwaar (OWL 2 primer).
-
Vier talen
RDF, OWL, SHACL en SPARQL, plus R2RML om relationele tabellen te bereiken (R2RML).
-
Een triplestore of mappings
De data moet worden verplaatst of gemapt.
-
Geen bedrijfsaggregaten in OWL
Totalen, gemiddelden en rangschikkingen worden in SPARQL geschreven.
-
Vooraf modelleren
Ontologieprojecten duren vaak maanden of jaren tot het eerste antwoord.
SynaLemma vs RDF, OWL en SHACL: de belangrijkste verschillen
-
Operationele ontologieën
Alleen de concepten en relaties die uw data bevat, elk berekend uit uw tabellen.
-
Gesloten wereld
Wat niet in de data staat, is onwaar, zoals in uw database. Asserties controleren de data rechtstreeks.
-
Eén taal op SQL
Regels, query's en asserties in Synalog, naar SQL gecompileerd op PostgreSQL, BigQuery, Databricks, Trino, Presto, DuckDB en SQLite.
-
Redeneren met aggregaten
Recursie, aggregatie, negatie en tijd in één programma, met geverifieerde beëindiging.
-
Geen modelleerproject vooraf
De analist schrijft regels naarmate er vragen worden gesteld. De laag groeit vanaf de eerste vraag.
Voorbeeld: een gesloten-wereldcontrole
Omzet per klant, met drie asserties. De tweede is de controle die de open wereld van OWL op zichzelf niet kan uitvoeren. Klant 12 ontbreekt; de engine noemt de rij.
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"); Alternatief voor RDF, OWL en SHACL: veelgestelde vragen
Wat is een operationele ontologie?
Een ontologie die alleen de concepten en relaties beschrijft die uw data bevat, elk berekend uit uw tabellen.
Heb ik een triplestore of een grafendatabase nodig?
Nee. Synalog compileert naar SQL en draait op uw bestaande databases. Graafquery's zijn recursieve regels.
Kan Synalog controleren of elke bestelling een klant heeft?
Ja, met een assertie. Synalog werkt met een gesloten wereld, dus de engine geeft de rijen zonder klant terug.
Bronnen
- 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 op GitHub (Apache-2.0)
Gecontroleerd aan de hand van de openbare documentatie van elk product op de herzieningsdatum. Een fout melden: contact@synalinks.com.
Andere vergelijkingen
Neem een vraag mee die uw huidige stack niet kan beantwoorden.
In 30 minuten laten wij zien hoe SynaLemma die beantwoordt, met de regel achter het getal en de controles die het doorstond.