SlideShare ist ein Scribd-Unternehmen logo
1 von 1
Downloaden Sie, um offline zu lesen
morph-LDP: An R2RML-based
Linked Data Platform implementation
Nandana Mihindukulasooriya1,2, Freddy Priyatna2,
Oscar Corcho2, Raúl García Castro1,2, and Miguel Esteban Gutiérrez1,2
1Center for Open Middleware
2Ontology Engineering Group, Facultad de Informática
Universidad Politécnica de Madrid, Spain
{nmihindu,fpriyatna,ocorcho,rgarcia,mesteban}@fi.upm.es
Objective: To expose relational databases as read / write Linked Data applications
Challenges: (i) Converting RDB to RDF and vice versa; (ii) Exposing RDF as read/write Linked Data
Approach: Combining the W3C Linked Data Platform (LDP) and W3C R2RML standards
Linked Data Platform
morph-LDP Use Case and Solution
An example – Retrieving the list of group members
R2RML Mapping Language
LDP4j morph-RDB
http://example.org/oeg/members/fpriyatna
identifies
Registration
Office
morph-LDP
Web App
Relational
Database
Library
Legacy Applications
configures
exposes
consumes Tabulator
OpenLink Data Explorer
ldspider LDIF
represents
Freddy
Priyatna
dereferences to
LDP Request
Handler
LDP4j
Template Matcher
Morph Proxy
Morph Engine
Query Translator
R2RML Processor
Data Translator
A set of rules for
generating RDF
triples from database
rows/values.
A RESTful protocol
for HTTP-based
read/write
Linked Data.
StandardsImpl.
http://ldp4j.org https://github.com/fpriyatna/morph
• An open-source R2RML Engine implementation
• Data and query translator
• Beyond the R2RML specification
• support for read / write access
• An open-source Java LDP implementation
• Middleware layer for building LDP applications
• Beyond the LDP specification
• support for vocabulary management
LDP Resource (LDPR)
Non-RDF
Source
(LDP-NR)
RDF Source (LDP-NR)
LDP Container (LDPC)
Basic Container
Direct Container
Indirect Container
GET /oeg/members/ HTTP/1.1
Host: example.org
Accept: text/turtle
200 OK
HTTP/1.1 200 OK
Content-Type: text/turtle; charset=UTF-8
Link: <http://www.w3.org/ns/ldp#BasicContainer>; rel="type"
ETag: W/"195482449"
@prefix dcterms: <http://purl.org/dc/terms/>.
@prefix ldp: <http://www.w3.org/ns/ldp#>.
<> a ldp:BasicContainer;
dcterms:title "Members of OEG, UPM";
ldp:contains <http://example.org/oeg/members/asun> ;
ldp:contains <http://example.org/oeg/members/fpriyatna> ;
ldp:contains <http://example.org/oeg/members/mesteban>;
ldp:contains <http://example.org/oeg/members/nmihindu>;
ldp:contains <http://example.org/oeg/members/ocorcho> ;
ldp:contains <http://example.org/oeg/members/rgarcia> .
HTTP Request
HTTP Response
Mapping LDP and R2RML Concepts
R2RML Mapping
TriplesMap
LogicalTable
PredicateObjectMap
PredicateMap
ObjectMap
SubjectMap
RefObjectMap
SELECT ?s WHERE { ?s a foaf:Person .
FILTER (REGEX(STR(?s), "^http://example.org/oeg/members/")) }
SPARQL Query
3
1
10
SELECT id FROM oegmembers 5SQL
LDP Request Handler
Query Translator
HTTP Request
ResultSet
Data Translator
-http://example.org/oeg/members/asun
-http://example.org/oeg/members/fpriyatna
-http://example.org/oeg/members/mesteban
-http://example.org/oeg/members/nmihindu
-http://example.org/oeg/members/ocorcho
-http://example.org/oeg/members/rgarcia
LDP Request Handler
-asun
-fpriyatna
-mesteban
-nmihindu
-ocorcho
-rgarcia
1
HTTP Response
2
3
45
7
8
9
10
M
D
6
SQL Query
oegmembers
id fname lname website email phone
asun Asunción Gómez Pérez http://delici.. asun@fi.up +34913367417
fpriyatna Freddy Priyatna http://delici.. fpriyatna@f +34913363670
mesteban Miguel Esteban Gutierrez http://delici.. mesteban@ +34913363671
nmihindu Nandana Mihindukulasoori http://www. nmihindu +34913363670
ocorcho Oscar Corcho http://delici.. ocorcho@ +34913366605
rgarcia Raul Garcia Castro http://delici.. rgarcia@fi +34913366596
D
@prefix rr: <http://www.w3.org/ns/r2rml#> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
<TriplesMapPerson>
a rr:TriplesMap;
rr:logicalTable [ rr:tableName "oegmembers" ];
rr:subjectMap [ a rr:Subject; rr:class foaf:Person;
rr:template “http://example.org/oeg/members/{id}";
rr:termType rr:IRI; ];
rr:predicateObjectMap [
rr:predicateMap [ rr:constant foaf:firstName ];
rr:objectMap [ rr:column “fname"; rr:termType rr:Literal; ]; ];
rr:predicateObjectMap [
rr:predicateMap [ rr:constant foaf:lastName ];
rr:objectMap [ rr:column “lname"; rr:termType rr:Literal; ]; ];
…
M

Weitere ähnliche Inhalte

Was ist angesagt?

Transient and persistent RDF views over relational databases in the context o...
Transient and persistent RDF views over relational databases in the context o...Transient and persistent RDF views over relational databases in the context o...
Transient and persistent RDF views over relational databases in the context o...Nikolaos Konstantinou
 
Matching and merging anonymous terms from web sources
Matching and merging anonymous terms from web sourcesMatching and merging anonymous terms from web sources
Matching and merging anonymous terms from web sourcesIJwest
 
Chicago LOMRDF update 2003-06-19
Chicago LOMRDF update 2003-06-19 Chicago LOMRDF update 2003-06-19
Chicago LOMRDF update 2003-06-19 Mikael Nilsson
 
W4 4 marc-alexandre-nolin-v2
W4 4 marc-alexandre-nolin-v2W4 4 marc-alexandre-nolin-v2
W4 4 marc-alexandre-nolin-v2nolmar01
 
3TU Datacentrum Tech Overview
3TU Datacentrum Tech Overview3TU Datacentrum Tech Overview
3TU Datacentrum Tech Overvieweposthumus
 
LDP-DL: A language to define the design of Linked Data Platforms
LDP-DL: A language to define the design of Linked Data PlatformsLDP-DL: A language to define the design of Linked Data Platforms
LDP-DL: A language to define the design of Linked Data PlatformsMohammad Noorani Bakerally
 
RDF-Gen: Generating RDF from streaming and archival data
RDF-Gen: Generating RDF from streaming and archival dataRDF-Gen: Generating RDF from streaming and archival data
RDF-Gen: Generating RDF from streaming and archival dataGiorgos Santipantakis
 
Improved chemical text mining of patents using infinite dictionaries, transla...
Improved chemical text mining of patents using infinite dictionaries, transla...Improved chemical text mining of patents using infinite dictionaries, transla...
Improved chemical text mining of patents using infinite dictionaries, transla...NextMove Software
 
Querying Linked Data on Android
Querying Linked Data on AndroidQuerying Linked Data on Android
Querying Linked Data on AndroidEUCLID project
 
Named Entity Recognition from Online News
Named Entity Recognition from Online NewsNamed Entity Recognition from Online News
Named Entity Recognition from Online NewsBernardo Najlis
 
Enabling Language Resources to Expose Translations as Linked Data on the Web
Enabling Language Resources to Expose Translations as Linked Data on the WebEnabling Language Resources to Expose Translations as Linked Data on the Web
Enabling Language Resources to Expose Translations as Linked Data on the WebJorge Gracia
 
Working with the IFS on System i
Working with the IFS on System iWorking with the IFS on System i
Working with the IFS on System iChuck Walker
 
Linguistic markup and transclusion processing in XML documents
Linguistic markup and transclusion processing in XML documentsLinguistic markup and transclusion processing in XML documents
Linguistic markup and transclusion processing in XML documentsSimon Dew
 
RDF for Librarians
RDF for LibrariansRDF for Librarians
RDF for LibrariansJenn Riley
 
Uplift – Generating RDF datasets from non-RDF data with R2RML
Uplift – Generating RDF datasets from non-RDF data with R2RMLUplift – Generating RDF datasets from non-RDF data with R2RML
Uplift – Generating RDF datasets from non-RDF data with R2RMLChristophe Debruyne
 
Implications Of Dual Participation Of Floss Developer
Implications Of Dual Participation Of Floss DeveloperImplications Of Dual Participation Of Floss Developer
Implications Of Dual Participation Of Floss DeveloperDr. Sulayman K. Sowe
 

Was ist angesagt? (20)

Transient and persistent RDF views over relational databases in the context o...
Transient and persistent RDF views over relational databases in the context o...Transient and persistent RDF views over relational databases in the context o...
Transient and persistent RDF views over relational databases in the context o...
 
Matching and merging anonymous terms from web sources
Matching and merging anonymous terms from web sourcesMatching and merging anonymous terms from web sources
Matching and merging anonymous terms from web sources
 
Chicago LOMRDF update 2003-06-19
Chicago LOMRDF update 2003-06-19 Chicago LOMRDF update 2003-06-19
Chicago LOMRDF update 2003-06-19
 
W4 4 marc-alexandre-nolin-v2
W4 4 marc-alexandre-nolin-v2W4 4 marc-alexandre-nolin-v2
W4 4 marc-alexandre-nolin-v2
 
3TU Datacentrum Tech Overview
3TU Datacentrum Tech Overview3TU Datacentrum Tech Overview
3TU Datacentrum Tech Overview
 
Introduction to LDL 2012
Introduction to LDL 2012Introduction to LDL 2012
Introduction to LDL 2012
 
LDP-DL: A language to define the design of Linked Data Platforms
LDP-DL: A language to define the design of Linked Data PlatformsLDP-DL: A language to define the design of Linked Data Platforms
LDP-DL: A language to define the design of Linked Data Platforms
 
master_thesis_greciano_v2
master_thesis_greciano_v2master_thesis_greciano_v2
master_thesis_greciano_v2
 
RDF-Gen: Generating RDF from streaming and archival data
RDF-Gen: Generating RDF from streaming and archival dataRDF-Gen: Generating RDF from streaming and archival data
RDF-Gen: Generating RDF from streaming and archival data
 
Linked data and voyager
Linked data and voyagerLinked data and voyager
Linked data and voyager
 
Triple Stores
Triple StoresTriple Stores
Triple Stores
 
Improved chemical text mining of patents using infinite dictionaries, transla...
Improved chemical text mining of patents using infinite dictionaries, transla...Improved chemical text mining of patents using infinite dictionaries, transla...
Improved chemical text mining of patents using infinite dictionaries, transla...
 
Querying Linked Data on Android
Querying Linked Data on AndroidQuerying Linked Data on Android
Querying Linked Data on Android
 
Named Entity Recognition from Online News
Named Entity Recognition from Online NewsNamed Entity Recognition from Online News
Named Entity Recognition from Online News
 
Enabling Language Resources to Expose Translations as Linked Data on the Web
Enabling Language Resources to Expose Translations as Linked Data on the WebEnabling Language Resources to Expose Translations as Linked Data on the Web
Enabling Language Resources to Expose Translations as Linked Data on the Web
 
Working with the IFS on System i
Working with the IFS on System iWorking with the IFS on System i
Working with the IFS on System i
 
Linguistic markup and transclusion processing in XML documents
Linguistic markup and transclusion processing in XML documentsLinguistic markup and transclusion processing in XML documents
Linguistic markup and transclusion processing in XML documents
 
RDF for Librarians
RDF for LibrariansRDF for Librarians
RDF for Librarians
 
Uplift – Generating RDF datasets from non-RDF data with R2RML
Uplift – Generating RDF datasets from non-RDF data with R2RMLUplift – Generating RDF datasets from non-RDF data with R2RML
Uplift – Generating RDF datasets from non-RDF data with R2RML
 
Implications Of Dual Participation Of Floss Developer
Implications Of Dual Participation Of Floss DeveloperImplications Of Dual Participation Of Floss Developer
Implications Of Dual Participation Of Floss Developer
 

Ähnlich wie morph-LDP: An R2RML-based Linked Data Platform implementation

Describing LDP Applications with the Hydra Core Vocabulary
Describing LDP Applications with the Hydra Core VocabularyDescribing LDP Applications with the Hydra Core Vocabulary
Describing LDP Applications with the Hydra Core VocabularyNandana Mihindukulasooriya
 
Introduction to LDP in Apache Marmotta
Introduction to LDP in Apache MarmottaIntroduction to LDP in Apache Marmotta
Introduction to LDP in Apache MarmottaSergio Fernández
 
Linked data platform adapter for bugzilla poster
Linked data platform adapter for bugzilla posterLinked data platform adapter for bugzilla poster
Linked data platform adapter for bugzilla posterNandana Mihindukulasooriya
 
Publishing Linked Data 3/5 Semtech2011
Publishing Linked Data 3/5 Semtech2011Publishing Linked Data 3/5 Semtech2011
Publishing Linked Data 3/5 Semtech2011Juan Sequeda
 
2009 0807 Lod Gmod
2009 0807 Lod Gmod2009 0807 Lod Gmod
2009 0807 Lod GmodJun Zhao
 
W3C Linked Data Platform Overview
W3C Linked Data Platform OverviewW3C Linked Data Platform Overview
W3C Linked Data Platform OverviewSteve Speicher
 
Linked Open Data: A simple how-to
Linked Open Data: A simple how-toLinked Open Data: A simple how-to
Linked Open Data: A simple how-tonvitucci
 
Linked Data (in low-resource) Platforms: a mapping for Constrained Applicatio...
Linked Data (in low-resource) Platforms: a mapping for Constrained Applicatio...Linked Data (in low-resource) Platforms: a mapping for Constrained Applicatio...
Linked Data (in low-resource) Platforms: a mapping for Constrained Applicatio...SisInfLab-SWoT @Politecnico di Bari
 
Learning W3C Linked Data Platform with examples
Learning W3C Linked Data Platform with examplesLearning W3C Linked Data Platform with examples
Learning W3C Linked Data Platform with examplesNandana Mihindukulasooriya
 
Data Integration And Visualization
Data Integration And VisualizationData Integration And Visualization
Data Integration And VisualizationIvan Ermilov
 
DC-2008 Tutorial 3 - Dublin Core and other metadata schemas
DC-2008 Tutorial 3 - Dublin Core and other metadata schemasDC-2008 Tutorial 3 - Dublin Core and other metadata schemas
DC-2008 Tutorial 3 - Dublin Core and other metadata schemasMikael Nilsson
 
Tim Pugh-SPEDDEXES 2014
Tim Pugh-SPEDDEXES 2014Tim Pugh-SPEDDEXES 2014
Tim Pugh-SPEDDEXES 2014aceas13tern
 
The Rhizomer Semantic Content Management System
The Rhizomer Semantic Content Management SystemThe Rhizomer Semantic Content Management System
The Rhizomer Semantic Content Management SystemRoberto García
 
Application integration with the W3C Linked Data standards
Application integration with the W3C Linked Data standardsApplication integration with the W3C Linked Data standards
Application integration with the W3C Linked Data standardsNandana Mihindukulasooriya
 

Ähnlich wie morph-LDP: An R2RML-based Linked Data Platform implementation (20)

Describing LDP Applications with the Hydra Core Vocabulary
Describing LDP Applications with the Hydra Core VocabularyDescribing LDP Applications with the Hydra Core Vocabulary
Describing LDP Applications with the Hydra Core Vocabulary
 
Introduction to W3C Linked Data Platform
Introduction to W3C Linked Data PlatformIntroduction to W3C Linked Data Platform
Introduction to W3C Linked Data Platform
 
Best of Marketing
Best of MarketingBest of Marketing
Best of Marketing
 
Introduction to LDP in Apache Marmotta
Introduction to LDP in Apache MarmottaIntroduction to LDP in Apache Marmotta
Introduction to LDP in Apache Marmotta
 
Linked data platform adapter for bugzilla poster
Linked data platform adapter for bugzilla posterLinked data platform adapter for bugzilla poster
Linked data platform adapter for bugzilla poster
 
Publishing Linked Data 3/5 Semtech2011
Publishing Linked Data 3/5 Semtech2011Publishing Linked Data 3/5 Semtech2011
Publishing Linked Data 3/5 Semtech2011
 
LOD2: State of Play WP6 - LOD2 Stack Architecture
LOD2: State of Play WP6 - LOD2 Stack ArchitectureLOD2: State of Play WP6 - LOD2 Stack Architecture
LOD2: State of Play WP6 - LOD2 Stack Architecture
 
morph-LDP Demo
morph-LDP Demomorph-LDP Demo
morph-LDP Demo
 
2009 0807 Lod Gmod
2009 0807 Lod Gmod2009 0807 Lod Gmod
2009 0807 Lod Gmod
 
Bio2RDF should we do it
Bio2RDF should we do itBio2RDF should we do it
Bio2RDF should we do it
 
W3C Linked Data Platform Overview
W3C Linked Data Platform OverviewW3C Linked Data Platform Overview
W3C Linked Data Platform Overview
 
Data in RDF
Data in RDFData in RDF
Data in RDF
 
Linked Open Data: A simple how-to
Linked Open Data: A simple how-toLinked Open Data: A simple how-to
Linked Open Data: A simple how-to
 
Linked Data (in low-resource) Platforms: a mapping for Constrained Applicatio...
Linked Data (in low-resource) Platforms: a mapping for Constrained Applicatio...Linked Data (in low-resource) Platforms: a mapping for Constrained Applicatio...
Linked Data (in low-resource) Platforms: a mapping for Constrained Applicatio...
 
Learning W3C Linked Data Platform with examples
Learning W3C Linked Data Platform with examplesLearning W3C Linked Data Platform with examples
Learning W3C Linked Data Platform with examples
 
Data Integration And Visualization
Data Integration And VisualizationData Integration And Visualization
Data Integration And Visualization
 
DC-2008 Tutorial 3 - Dublin Core and other metadata schemas
DC-2008 Tutorial 3 - Dublin Core and other metadata schemasDC-2008 Tutorial 3 - Dublin Core and other metadata schemas
DC-2008 Tutorial 3 - Dublin Core and other metadata schemas
 
Tim Pugh-SPEDDEXES 2014
Tim Pugh-SPEDDEXES 2014Tim Pugh-SPEDDEXES 2014
Tim Pugh-SPEDDEXES 2014
 
The Rhizomer Semantic Content Management System
The Rhizomer Semantic Content Management SystemThe Rhizomer Semantic Content Management System
The Rhizomer Semantic Content Management System
 
Application integration with the W3C Linked Data standards
Application integration with the W3C Linked Data standardsApplication integration with the W3C Linked Data standards
Application integration with the W3C Linked Data standards
 

Mehr von Nandana Mihindukulasooriya

A Framework for Linked Data Quality based on Data Profiling and RDF Shape Ind...
A Framework for Linked Data Quality based on Data Profiling and RDF Shape Ind...A Framework for Linked Data Quality based on Data Profiling and RDF Shape Ind...
A Framework for Linked Data Quality based on Data Profiling and RDF Shape Ind...Nandana Mihindukulasooriya
 
Leveraging Semantic Parsing for Relation Linking over Knowledge Bases
Leveraging Semantic Parsing for Relation Linking over Knowledge BasesLeveraging Semantic Parsing for Relation Linking over Knowledge Bases
Leveraging Semantic Parsing for Relation Linking over Knowledge BasesNandana Mihindukulasooriya
 
A Distributed Transaction Model for Read-Write Linked Data Applications
A Distributed Transaction Model for Read-Write Linked Data ApplicationsA Distributed Transaction Model for Read-Write Linked Data Applications
A Distributed Transaction Model for Read-Write Linked Data ApplicationsNandana Mihindukulasooriya
 
Loupe API - A Linked Data Profiling Service for Quality Assessment
Loupe API - A Linked Data Profiling Service for Quality AssessmentLoupe API - A Linked Data Profiling Service for Quality Assessment
Loupe API - A Linked Data Profiling Service for Quality AssessmentNandana Mihindukulasooriya
 
Collaborative Ontology Evolution and Data Quality - An Empirical Analysis
Collaborative Ontology Evolution and Data Quality - An Empirical AnalysisCollaborative Ontology Evolution and Data Quality - An Empirical Analysis
Collaborative Ontology Evolution and Data Quality - An Empirical AnalysisNandana Mihindukulasooriya
 
A Two-Fold Quality Assurance Approach for Dynamic Knowledge Bases : The 3cixt...
A Two-Fold Quality Assurance Approach for Dynamic Knowledge Bases : The 3cixt...A Two-Fold Quality Assurance Approach for Dynamic Knowledge Bases : The 3cixt...
A Two-Fold Quality Assurance Approach for Dynamic Knowledge Bases : The 3cixt...Nandana Mihindukulasooriya
 
An analysis of the quality issues of the properties available in the Spanish ...
An analysis of the quality issues of the properties available in the Spanish ...An analysis of the quality issues of the properties available in the Spanish ...
An analysis of the quality issues of the properties available in the Spanish ...Nandana Mihindukulasooriya
 
LDP4j: A framework for the development of interoperable read-write Linked Da...
LDP4j: A framework for the development of interoperable read-write Linked Da...LDP4j: A framework for the development of interoperable read-write Linked Da...
LDP4j: A framework for the development of interoperable read-write Linked Da...Nandana Mihindukulasooriya
 
Linked Data Platform as a novel approach for Enterprise Application Integra...
Linked Data Platform as a novel approach for Enterprise Application Integra...Linked Data Platform as a novel approach for Enterprise Application Integra...
Linked Data Platform as a novel approach for Enterprise Application Integra...Nandana Mihindukulasooriya
 
ALM iStack - Application Lifecycle Management using Linked Data
ALM iStack - Application Lifecycle Management using Linked Data ALM iStack - Application Lifecycle Management using Linked Data
ALM iStack - Application Lifecycle Management using Linked Data Nandana Mihindukulasooriya
 
Erasmus Mundus - Overview, Opportunities, and Details
Erasmus Mundus - Overview, Opportunities, and Details Erasmus Mundus - Overview, Opportunities, and Details
Erasmus Mundus - Overview, Opportunities, and Details Nandana Mihindukulasooriya
 
Erasmus Mundus - European higher education opportunities for Sri Lankans
Erasmus Mundus - European higher education opportunities for Sri Lankans Erasmus Mundus - European higher education opportunities for Sri Lankans
Erasmus Mundus - European higher education opportunities for Sri Lankans Nandana Mihindukulasooriya
 

Mehr von Nandana Mihindukulasooriya (20)

A Framework for Linked Data Quality based on Data Profiling and RDF Shape Ind...
A Framework for Linked Data Quality based on Data Profiling and RDF Shape Ind...A Framework for Linked Data Quality based on Data Profiling and RDF Shape Ind...
A Framework for Linked Data Quality based on Data Profiling and RDF Shape Ind...
 
Leveraging Semantic Parsing for Relation Linking over Knowledge Bases
Leveraging Semantic Parsing for Relation Linking over Knowledge BasesLeveraging Semantic Parsing for Relation Linking over Knowledge Bases
Leveraging Semantic Parsing for Relation Linking over Knowledge Bases
 
ISWC 2020 - Semantic Answer Type Prediction
ISWC 2020 - Semantic Answer Type PredictionISWC 2020 - Semantic Answer Type Prediction
ISWC 2020 - Semantic Answer Type Prediction
 
Fitur - HackaTrips 2018!
Fitur - HackaTrips 2018!Fitur - HackaTrips 2018!
Fitur - HackaTrips 2018!
 
A Distributed Transaction Model for Read-Write Linked Data Applications
A Distributed Transaction Model for Read-Write Linked Data ApplicationsA Distributed Transaction Model for Read-Write Linked Data Applications
A Distributed Transaction Model for Read-Write Linked Data Applications
 
Repairing Hidden Links in Linked Data
Repairing Hidden Links in Linked DataRepairing Hidden Links in Linked Data
Repairing Hidden Links in Linked Data
 
Loupe API - A Linked Data Profiling Service for Quality Assessment
Loupe API - A Linked Data Profiling Service for Quality AssessmentLoupe API - A Linked Data Profiling Service for Quality Assessment
Loupe API - A Linked Data Profiling Service for Quality Assessment
 
Research Poster Design
Research Poster DesignResearch Poster Design
Research Poster Design
 
Hidden Gems
Hidden GemsHidden Gems
Hidden Gems
 
Collaborative Ontology Evolution and Data Quality - An Empirical Analysis
Collaborative Ontology Evolution and Data Quality - An Empirical AnalysisCollaborative Ontology Evolution and Data Quality - An Empirical Analysis
Collaborative Ontology Evolution and Data Quality - An Empirical Analysis
 
Erasmus+ promotional event - Kandy, Sri Lanka
Erasmus+ promotional event - Kandy, Sri LankaErasmus+ promotional event - Kandy, Sri Lanka
Erasmus+ promotional event - Kandy, Sri Lanka
 
Loupe model - Use Cases and Requirements
Loupe model - Use Cases and Requirements Loupe model - Use Cases and Requirements
Loupe model - Use Cases and Requirements
 
4V - WP3 Progress Report (TIN2013-46238)
4V - WP3 Progress Report (TIN2013-46238)4V - WP3 Progress Report (TIN2013-46238)
4V - WP3 Progress Report (TIN2013-46238)
 
A Two-Fold Quality Assurance Approach for Dynamic Knowledge Bases : The 3cixt...
A Two-Fold Quality Assurance Approach for Dynamic Knowledge Bases : The 3cixt...A Two-Fold Quality Assurance Approach for Dynamic Knowledge Bases : The 3cixt...
A Two-Fold Quality Assurance Approach for Dynamic Knowledge Bases : The 3cixt...
 
An analysis of the quality issues of the properties available in the Spanish ...
An analysis of the quality issues of the properties available in the Spanish ...An analysis of the quality issues of the properties available in the Spanish ...
An analysis of the quality issues of the properties available in the Spanish ...
 
LDP4j: A framework for the development of interoperable read-write Linked Da...
LDP4j: A framework for the development of interoperable read-write Linked Da...LDP4j: A framework for the development of interoperable read-write Linked Da...
LDP4j: A framework for the development of interoperable read-write Linked Da...
 
Linked Data Platform as a novel approach for Enterprise Application Integra...
Linked Data Platform as a novel approach for Enterprise Application Integra...Linked Data Platform as a novel approach for Enterprise Application Integra...
Linked Data Platform as a novel approach for Enterprise Application Integra...
 
ALM iStack - Application Lifecycle Management using Linked Data
ALM iStack - Application Lifecycle Management using Linked Data ALM iStack - Application Lifecycle Management using Linked Data
ALM iStack - Application Lifecycle Management using Linked Data
 
Erasmus Mundus - Overview, Opportunities, and Details
Erasmus Mundus - Overview, Opportunities, and Details Erasmus Mundus - Overview, Opportunities, and Details
Erasmus Mundus - Overview, Opportunities, and Details
 
Erasmus Mundus - European higher education opportunities for Sri Lankans
Erasmus Mundus - European higher education opportunities for Sri Lankans Erasmus Mundus - European higher education opportunities for Sri Lankans
Erasmus Mundus - European higher education opportunities for Sri Lankans
 

Kürzlich hochgeladen

Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 

Kürzlich hochgeladen (20)

Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 

morph-LDP: An R2RML-based Linked Data Platform implementation

  • 1. morph-LDP: An R2RML-based Linked Data Platform implementation Nandana Mihindukulasooriya1,2, Freddy Priyatna2, Oscar Corcho2, Raúl García Castro1,2, and Miguel Esteban Gutiérrez1,2 1Center for Open Middleware 2Ontology Engineering Group, Facultad de Informática Universidad Politécnica de Madrid, Spain {nmihindu,fpriyatna,ocorcho,rgarcia,mesteban}@fi.upm.es Objective: To expose relational databases as read / write Linked Data applications Challenges: (i) Converting RDB to RDF and vice versa; (ii) Exposing RDF as read/write Linked Data Approach: Combining the W3C Linked Data Platform (LDP) and W3C R2RML standards Linked Data Platform morph-LDP Use Case and Solution An example – Retrieving the list of group members R2RML Mapping Language LDP4j morph-RDB http://example.org/oeg/members/fpriyatna identifies Registration Office morph-LDP Web App Relational Database Library Legacy Applications configures exposes consumes Tabulator OpenLink Data Explorer ldspider LDIF represents Freddy Priyatna dereferences to LDP Request Handler LDP4j Template Matcher Morph Proxy Morph Engine Query Translator R2RML Processor Data Translator A set of rules for generating RDF triples from database rows/values. A RESTful protocol for HTTP-based read/write Linked Data. StandardsImpl. http://ldp4j.org https://github.com/fpriyatna/morph • An open-source R2RML Engine implementation • Data and query translator • Beyond the R2RML specification • support for read / write access • An open-source Java LDP implementation • Middleware layer for building LDP applications • Beyond the LDP specification • support for vocabulary management LDP Resource (LDPR) Non-RDF Source (LDP-NR) RDF Source (LDP-NR) LDP Container (LDPC) Basic Container Direct Container Indirect Container GET /oeg/members/ HTTP/1.1 Host: example.org Accept: text/turtle 200 OK HTTP/1.1 200 OK Content-Type: text/turtle; charset=UTF-8 Link: <http://www.w3.org/ns/ldp#BasicContainer>; rel="type" ETag: W/"195482449" @prefix dcterms: <http://purl.org/dc/terms/>. @prefix ldp: <http://www.w3.org/ns/ldp#>. <> a ldp:BasicContainer; dcterms:title "Members of OEG, UPM"; ldp:contains <http://example.org/oeg/members/asun> ; ldp:contains <http://example.org/oeg/members/fpriyatna> ; ldp:contains <http://example.org/oeg/members/mesteban>; ldp:contains <http://example.org/oeg/members/nmihindu>; ldp:contains <http://example.org/oeg/members/ocorcho> ; ldp:contains <http://example.org/oeg/members/rgarcia> . HTTP Request HTTP Response Mapping LDP and R2RML Concepts R2RML Mapping TriplesMap LogicalTable PredicateObjectMap PredicateMap ObjectMap SubjectMap RefObjectMap SELECT ?s WHERE { ?s a foaf:Person . FILTER (REGEX(STR(?s), "^http://example.org/oeg/members/")) } SPARQL Query 3 1 10 SELECT id FROM oegmembers 5SQL LDP Request Handler Query Translator HTTP Request ResultSet Data Translator -http://example.org/oeg/members/asun -http://example.org/oeg/members/fpriyatna -http://example.org/oeg/members/mesteban -http://example.org/oeg/members/nmihindu -http://example.org/oeg/members/ocorcho -http://example.org/oeg/members/rgarcia LDP Request Handler -asun -fpriyatna -mesteban -nmihindu -ocorcho -rgarcia 1 HTTP Response 2 3 45 7 8 9 10 M D 6 SQL Query oegmembers id fname lname website email phone asun Asunción Gómez Pérez http://delici.. asun@fi.up +34913367417 fpriyatna Freddy Priyatna http://delici.. fpriyatna@f +34913363670 mesteban Miguel Esteban Gutierrez http://delici.. mesteban@ +34913363671 nmihindu Nandana Mihindukulasoori http://www. nmihindu +34913363670 ocorcho Oscar Corcho http://delici.. ocorcho@ +34913366605 rgarcia Raul Garcia Castro http://delici.. rgarcia@fi +34913366596 D @prefix rr: <http://www.w3.org/ns/r2rml#> . @prefix foaf: <http://xmlns.com/foaf/0.1/> . <TriplesMapPerson> a rr:TriplesMap; rr:logicalTable [ rr:tableName "oegmembers" ]; rr:subjectMap [ a rr:Subject; rr:class foaf:Person; rr:template “http://example.org/oeg/members/{id}"; rr:termType rr:IRI; ]; rr:predicateObjectMap [ rr:predicateMap [ rr:constant foaf:firstName ]; rr:objectMap [ rr:column “fname"; rr:termType rr:Literal; ]; ]; rr:predicateObjectMap [ rr:predicateMap [ rr:constant foaf:lastName ]; rr:objectMap [ rr:column “lname"; rr:termType rr:Literal; ]; ]; … M