RDB2Onto Mapper

LaravelPHPPostgreSQLOWLR2RMLTurtle

Automated extraction engine that bridges relational databases and Semantic Web technologies by translating SQL schemas into OWL and R2RML mappings.

RDB2Onto Mapper
ArhitecturăAutomated Schema Mapping & Ontology Generation
Cod Sursă / ReferințeGitHub Repository

Overview

This project implements automated extraction patterns to bridge the gap between relational databases and semantic web technologies. It evaluates database schemas, calculates semantic richness, and translates structural elements into Web Ontology Language (OWL) and R2RML mappings.

Core Features & Architecture

  • Database Metadata Extraction Engine (DMEE): Parses SQL DDL structures and database metadata to accurately identify tables, views, primary/foreign keys, and advanced constraints (NOT NULL, UNIQUE, CHECK, DEFAULT, ON DELETE CASCADE).

  • Semantic Richness Evaluation (NS Metric): Calculates the Number of Semantics (NS) metric to evaluate the input database’s semantic quality. It verifies the presence of relational patterns such as tables without FKs, attributes with numerical CHECK constraints, and transitive relationships.

  • TBox Generation (Conceptual Ontology): Applies strict transformation rules to build the schema in OWL (XML) format:

    • Classes: Tables map directly to owl:Class.
    • Properties: Standard columns map to owl:DatatypeProperty, while foreign keys map to owl:ObjectProperty (defining rdfs:domain and rdfs:range).
    • Restrictions: SQL constraints are translated into OWL logic (NOT NULL → owl:minCardinality, DEFAULT → owl:hasValue, CHECK → XSD facets).
  • ABox Generation & R2RML Engine (Active Development): Implementation of Algorithm 2 for generating Turtle (.ttl) R2RML mappings. This component creates LogicalTable targets, SubjectMap URI templates based on primary keys, and mapping predicates to output the final RDF triples.