SlideShare a Scribd company logo
1 of 23
Download to read offline
Triplify – Linked Data Publication
    from Relational Databases
Sören Auer, Sebastian Dietzold, Jens Lehmann,
    Sebastian Hellmann, David Aumueller
        AKSW, Institut für Informatik
Growth of the Semantic Data Web
Still outpaced by the traditional Web 




4/24/2009          Triplify – Linked Data Publication from Relational DBs   2
Triplify Big Picture




4/24/2009     Triplify – Linked Data Publication from Relational DBs   3
Triplify Motivation
                                                                 Project          Area               Downloads
• overcome the chicken-and-egg                                   phpBB            discussion forum   235480

  dilemma of missing semantic                                    Gallery          photo gallery      166005

  representations and search                                     XOOPS            CMS                115807
                                                                 Coppermine       photo gallery      113854
  facilities on the Web                                          Typo3            CMS                63641
• Triplify leverages relational                                  Liferay Portal   Portal             39615

  representations behind existing                                eGroupWare       group ware         33865
                                                                 Alfresco         CMS                31914
  Web applications:                                              e107             CMS                19996
      – often open-source, deployed                              Lifetype         Blogging           16730
        hundred thousand times                                   Plone            CMS                13993

      – structure and semantics encoded                          Compiere         ERP + CRM          13718

        in relational database schemes                           WebCalendar      Calendar           12832
                                                                 Nucleus          Blogging           12739
        (behind Web apps) is not
                                                                 Tikiwiki         Wiki               6368
        accessible to Web search engines,
                                                                 Monthly Web application downloads at
        mashups etc.                                             Sourceforge


4/24/2009             Triplify – Linked Data Publication from Relational DBs                                  4
Overview
                     Keyword-based
                                                    Semantic-based
Web Browser
                     Search Engines
                                                    Search Engines
              HTML pages
                                       RDF triple-based descriptions
                                       (Linked Data, RDF, JSON)

                       Webserver

                                                             Endpoint registry
   Web Application              Triplify script
                                                  Triplify

                                                              Configuration
                                                               repository
                        Relational
                        Database
Solution overview
• SQL is the industry standard language for
  relational transformations
• Extend SQL with a few syntactic constructs
  opaque to the SQL query processor
• Map URL patterns to sets of SQL query patterns
• For a concrete URL request, replace placeholders
  in the query patterns, execute the query
• Transform resulting relations into various RDF
  serializations (multiple view to class approach)

4/24/2009      Triplify – Linked Data Publication from Relational DBs   6
Triplify Solution: SQL-SELECT queries
          map relational data to RDF
Triplify Configuration:
• number of SQL queries selecting information, which should be made publicly
    available.

Special SQL query result structure required (in order to convert results into RDF:
• first column must contain identifiers for generating instance URIs (i.e. the primary
   key of DB table)
• column names are used to generate property URIs, renaming columns allows to
   reuse properties from existing vocabularies such as Dublin Core, FOAF, SIOC
      – e.g. SELECT id, name AS 'foaf:name' FROM users
•   individual cells contain data values or references to other instances
    (eventually constitute the objects of resulting triples)




4/24/2009                 Triplify – Linked Data Publication from Relational DBs         7
Example: Wordpress Blog Posts
  Associate the URL path fragment 'post‘ with a number of
    SQL patterns:
          http://blog.aksw.org/triplify/post/(xxx)
                                                                                 Object property
1 SELECT id, post_author AS 'sioc:has_creator->user',
     post_title AS 'dc:title',
     post_content AS 'sioc:content', post_date AS
     'dcterms:modified^^xsd:dateTime‘,
     post_modified AS 'dcterms:created^^xsd:dateTime'
  FROM posts
                                                                               Datatype property
  WHERE post_status='publish‘ (AND id=xxx)

2 SELECT post_id id, tag_label  AS 'tag:taggedWithTag‘
  FROM post2tag INNER JOIN tag ON(post2tag.tag_id=tag.tag_id)
  (WHERE id=xxx)

3 SELECT post_id id, category_id          AS 'belongsToCategory->category‘
  FROM post2cat
  (WHERE id=xxx)

  4/24/2009           Triplify – Linked Data Publication from Relational DBs                 8
RDF Conversion
                           http://blog.aksw.org/triplify/post/1


 1    id    post_author   post_title                 post_content                post_date       post_modified
      1     5             New DBpedia release        Today we released …         200810201635    200810201635

                    id    tag:taggedWithTag                        id      belogsToCategory
                                                           3
                2
                    1     DBpedia                                  1       34
                    1     Release                                  …
                    ..



 http://blog.aksw.org/triplify/post/1        sioc:has_creator           http://blog.aksw.org/triplify/user/5
 http://blog.aksw.org/triplify/post/1        dc:title                   “New DBpedia release”
 http://blog.aksw.org/triplify/post/1        sioc:content               “Today we released …”
 http://blog.aksw.org/triplify/post/1        dcterms:modified           “20081020T1635”^^xsd:dateTime
 http://blog.aksw.org/triplify/post/1        dcterms:created            “20081020T1635”^^xsd:dateTime
 http://blog.aksw.org/triplify/post/1        tag:taggedWithTag          “DBpedia”
 http://blog.aksw.org/triplify/post/1        tag:taggedWithTag          “Release”
 http://blog.aksw.org/triplify/post/1        belongsToCategory          http://blog.aksw.org/triplify/category/34
4/24/2009                       Triplify – Linked Data Publication from Relational DBs                              9
Triplify Implementation: Simplicity
• Expose semantics as simple as possible
      – No (new) mapping languages – easy to learn
      – Few lines of code – easy to plug-in
      – Simple, reusable configurations
• Available for most popular Web app languages
      – PHP (ready), Ruby/Python under development
• Works with most popular Web app DBs
      – MySQL (extensively tested), PHP-PDO DBs (SQLite, Oracle,
        DB2, MS SQL, PostgreSQL etc.) should work, not needed
        for Virtuoso 
• Triplify exposes RDF/Ntriples, LinkedData and
  RDF/JSON

4/24/2009            Triplify – Linked Data Publication from Relational DBs   10
<?php
        include('../wp-config.php');

                                                                                         Example Config
        $triplify['namespaces']=array(
          'vocabulary'=>'http://triplify.org/vocabulary/Wordpress/',
          'foaf'=>'http://xmlns.com/foaf/0.1/',
           … );

        $triplify['queries']=array(
           'post'=>array(
              quot;SELECT id,post_author 'sioc:has_creator->user',post_date 'dcterms:created',post_title 'dc:title', post_content 'sioc:content',
                  post_modified 'dcterms:modified‘ FROM {$table_prefix}posts WHERE post_status='publish'quot;,
              quot;SELECT post_id id,tag_id 'tag:taggedWithTag' FROM {$table_prefix}post2tagquot;,
              quot;SELECT post_id id,category_id 'belongsToCategory' FROM {$table_prefix}post2catquot;,
           ),
           'tag'=>quot;SELECT tag_ID id,tag 'tag:tagName' FROM {$table_prefix}tagsquot;,
           'category'=>quot;SELECT cat_ID id,cat_name 'skos:prefLabel',category_parent 'skos:narrower' FROM {$table_prefix}categoriesquot;,
           'user'=>array(
              quot;SELECT id,user_login 'foaf:accountName',SHA(CONCAT('mailto:',user_email)) 'foaf:mbox_sha1sum',
                  user_url 'foaf:homepage',display_name 'foaf:name' FROM {$table_prefix}usersquot;,
              quot;SELECT user_id id,meta_value 'foaf:firstName' FROM {$table_prefix}usermeta WHERE meta_key='first_name'quot;,
              quot;SELECT user_id id,meta_value 'foaf:family_name' FROM {$table_prefix}usermeta WHERE meta_key='last_name'quot;,
           ),
           'comment'=>quot;SELECT comment_ID id,comment_post_id 'sioc:reply_of',comment_author AS 'foaf:name',
                SHA(CONCAT('mailto:',comment_author_email)) 'foaf:mbox_sha1sum', comment_author_url 'foaf:homepage',
                comment_date AS 'dcterms:created', comment_content 'sioc:content',comment_karma,comment_type
              FROM {$table_prefix}comments WHERE comment_approved='1'quot;,
        );

        $triplify['objectProperties']=array(
          'sioc:has_creator'=>'user', 'tag:taggedWithTag'=>'tag', 'belongsToCategory'=>'category‘,'skos:narrower'=>'category','sioc:reply_of'=>'post');

        $triplify['classMap']=array('user'=>'foaf:person', 'post'=>'sioc:Post', 'tag'=>'tag:Tag', 'category'=>'skos:Concept');

        $triplify['TTL']=0; // Caching

        $triplify['db']=new PDO('mysql:host='.DB_HOST.';dbname='.DB_NAME,DB_USER,DB_PASSWORD);
?>

4/24/2009                                      Triplify – Linked Data Publication from Relational DBs                                               11
Configuration repository
• Triplify configurations are shared at:
  http://Triplify.org
• Existing configurations for
  OpenConf, Wordpress, WackoWiki, Drupal,
  OJS, Joomla, osCommerce, Gallery, phpBB,
  OMDB …



4/24/2009       Triplify – Linked Data Publication from Relational DBs   12
Triplify Endpoint Registry
• Simple REST endpoint registry:
    http://triplify.org/Registry/?url=%rdf_source_URL%
• Itself available as Linked Data endpoint
• Enables building of mashups, vertical search
  and other applications using information from
  many sources – product search, blog search
  etc.


4/24/2009        Triplify – Linked Data Publication from Relational DBs   13
Triplify Temporal Extension
Problem: How do next generation search engines know
  something changed on the Data Web?

Different solutions:
• Try to crawl always everything: currently deployed on
  the Web
• Ping a central update notification service:
  PingTheSemanticWeb.com – will probably not scale if
  the Data Web gets really deployed
• Each linked data endpoint publishes an update log:
  Triplify Update Logs

4/24/2009         Triplify – Linked Data Publication from Relational DBs   14
Triplify Temporal Extension
                                                           special update path and vocabulary
http://example.com/Triplify/update

http://example.com/Triplify/update/2007 rdf:type update:UpdateCollection .
http://example.com/Triplify/update/2008 rdf:type update:UpdateCollection .

http://example.com/Triplify/update/2008

http://example.com/Triplify/update/2008/Jan rdf:type update:UpdateCollection .
http://example.com/Triplify/update/2008/Feb rdf:type update:UpdateCollection .

Nesting continues until we finally reach an URL, which exposes all updates performed in a certain
    second in time…

http://example.com/Triplify/update/2008/Jan/01/17/58/06

http://example.com/Triplify/update/2008/Jan/01/17/58/06/user123
 update:updatedResource http://example.com/Triplify/users/JohnDoe ;
 update:updatedAt       quot;20080101T17:58:06quot;^<xsd:dateTime> ;
 update:updatedBy       http://example.com/Triplify/users/JohnDoe .


4/24/2009                     Triplify – Linked Data Publication from Relational DBs                15
LOD Update log generation
Updates have to be logged in the DB
Update log queries have to expose a date as first
 column:

$triplify['queries']=array(
   …
   'update'=>quot;SELECT p.changed AS id,
       p.id AS 'update:updatedResource->project‘
       FROM project pquot;,
);
4/24/2009        Triplify – Linked Data Publication from Relational DBs   16
Triplify Spatial Extension:
                   Linked Open Geo Data
Spatial data is crucial for the Data Web in order to interlink geographically linked resources.
Open Street Map project (OSM) collects, organizes and publishes geo data the wiki way:
• 80.000 OSM users collected data about 22M km ways (roads, highways etc.) on earth, 25T
    km are added daily
• OSM contains a vast amount points-of-interest descriptions e.g. shops, amenities, sports
    venues, businesses, touristic and historic sights.
Goal: publish OSM geo data, interlink it with other data sources and provide efficient means
    for browsing and authoring:
• Open Street Map data extraction works on the basis of OSM database dumps, a bi-
    directional live integration of OSM and our Linked Geo Data browser and editor is currently
    in the works.
• Triplify spatial data publishing, the Triplify script for publishing linked data from relational
    databases is extended for publishing geo data, in particular with regard to the retrieval
    of information about geographical areas.
• LinkedGeo Data browser and editor is a facet-based browser for geo content, which uses
    an OLAP inspired hypercube for quickly retrieving aggregated information about any user
    selected area on earth.

                                          Linked Data Tutorial
Triplify Spatial Extension
How to publish geo-data using Triplify?
                                                                   Radius Attribute Value
                                   Lon                    Lat

http://linkedgeodata.org/near/48.213056,16.359722/1000/amenity=Hotel


http://linkedgeodata.org/node/212331
http://linkedgeodata.org/node/944523
http://linkedgeodata.org/node/234091
http://linkedgeodata.org/way/56719

node/150760824                amenity                        quot;pubquot;;
                              created_by                     quot;JOSMquot;;
                              distance                       quot;5995quot;;
                              name                           quot;La frioleraquot;;
                              geo#lat                        quot;40.4474quot;;
                              geo#long                       quot;-3.7173quot;.
4/24/2009                Triplify – Linked Data Publication from Relational DBs             18
Faceted Linked-Geo-Data Browser




             Linked Data Tutorial
RDB2RDF tool comparison
  Tool                                                                             Virtuoso RDF
                             Triplify                          D2RQ
                                                                                       Views
  Technology
                      Scripting languages                                        Whole middleware
                                                                Java
                             (PHP)                                                   solution

  SPARQL endpoint
                                  -                                X                    X

  Mapping language
                                SQL                         RDF based               RDF based

  Mapping
                             Manual                     Semi-automatic               Manual
  generation

  Scalability             Medium-high
                                               Medium                                  High
                        (but no SPARQL)
  More at: http://esw.w3.org/topic/Rdb2RdfXG/StateOfTheArt
4/24/2009               Triplify – Linked Data Publication from Relational DBs                    20
Conclusion
• Triplify supports the “long tail” of deployed Web
  applications
• Publishing RDF and Linked Data is simple
• Support for temporal and spatial data
  dimensions
      – LOD Update Logs enable differential crawling
      – Linkedgeodata.org provides spatial identifiers for most
        parts of the world
• More comprehensive solutions are (still) required
  for SPARQL support
4/24/2009           Triplify – Linked Data Publication from Relational DBs   21
Should it be a Cloud or the Sky?




4/24/2009    Triplify – Linked Data Publication from Relational DBs   22
Thanks!
Sören Auer
auer@informatik.uni-leipzig.de
Research group Agile Knowledge Engineering & Semantic Web
    (AKSW): http://aksw.org

•   http://Triplify.org
•   http://DBpedia.org
•   http://OntoWiki.net
•   http://OpenResearch.org
•   http://aksw.org/projects/xOperator
•   DL-Learner.org
•   Cofundos.org
                          Linked Data Tutorial

More Related Content

What's hot

Really Simple Search - Alfresco
Really Simple Search - AlfrescoReally Simple Search - Alfresco
Really Simple Search - AlfrescoAlfresco Software
 
Visualize Solr Data with Banana: Presented by Andrew Thanalertvisuti, Lucidworks
Visualize Solr Data with Banana: Presented by Andrew Thanalertvisuti, LucidworksVisualize Solr Data with Banana: Presented by Andrew Thanalertvisuti, Lucidworks
Visualize Solr Data with Banana: Presented by Andrew Thanalertvisuti, LucidworksLucidworks
 
W-JAX 2011: OSGi with Apache Karaf
W-JAX 2011: OSGi with Apache KarafW-JAX 2011: OSGi with Apache Karaf
W-JAX 2011: OSGi with Apache KarafJerry Preissler
 
Scaling search in Oak with Solr
Scaling search in Oak with Solr Scaling search in Oak with Solr
Scaling search in Oak with Solr Tommaso Teofili
 
APACHE
APACHEAPACHE
APACHEARJUN
 
Moving Graphs to Production At Scale
Moving Graphs to Production At ScaleMoving Graphs to Production At Scale
Moving Graphs to Production At ScaleNeo4j
 
Deep Dive: Alfresco Core Repository (... embedded in a micro-services style a...
Deep Dive: Alfresco Core Repository (... embedded in a micro-services style a...Deep Dive: Alfresco Core Repository (... embedded in a micro-services style a...
Deep Dive: Alfresco Core Repository (... embedded in a micro-services style a...J V
 
Cross Datacenter Replication in Apache Solr 6
Cross Datacenter Replication in Apache Solr 6Cross Datacenter Replication in Apache Solr 6
Cross Datacenter Replication in Apache Solr 6Shalin Shekhar Mangar
 
Apache Solr-Webinar
Apache Solr-WebinarApache Solr-Webinar
Apache Solr-WebinarEdureka!
 
OSGi for real in the enterprise: Apache Karaf - NLJUG J-FALL 2010
OSGi for real in the enterprise: Apache Karaf - NLJUG J-FALL 2010OSGi for real in the enterprise: Apache Karaf - NLJUG J-FALL 2010
OSGi for real in the enterprise: Apache Karaf - NLJUG J-FALL 2010Adrian Trenaman
 
Survey of restful web services frameworks
Survey of restful web services frameworksSurvey of restful web services frameworks
Survey of restful web services frameworksVijay Prasad Gupta
 
Practical Kerberos with Apache HBase
Practical Kerberos with Apache HBasePractical Kerberos with Apache HBase
Practical Kerberos with Apache HBaseJosh Elser
 
Apache Tutorial
Apache TutorialApache Tutorial
Apache TutorialGuru99
 
APACHE WEB SERVER FOR LINUX
APACHE WEB SERVER FOR LINUXAPACHE WEB SERVER FOR LINUX
APACHE WEB SERVER FOR LINUXwebhostingguy
 
Apache web server
Apache web serverApache web server
Apache web serverzrstoppe
 
GraphConnect 2014 SF: From Zero to Graph in 120: Scale
GraphConnect 2014 SF: From Zero to Graph in 120: ScaleGraphConnect 2014 SF: From Zero to Graph in 120: Scale
GraphConnect 2014 SF: From Zero to Graph in 120: ScaleNeo4j
 

What's hot (20)

Really Simple Search - Alfresco
Really Simple Search - AlfrescoReally Simple Search - Alfresco
Really Simple Search - Alfresco
 
Visualize Solr Data with Banana: Presented by Andrew Thanalertvisuti, Lucidworks
Visualize Solr Data with Banana: Presented by Andrew Thanalertvisuti, LucidworksVisualize Solr Data with Banana: Presented by Andrew Thanalertvisuti, Lucidworks
Visualize Solr Data with Banana: Presented by Andrew Thanalertvisuti, Lucidworks
 
W-JAX 2011: OSGi with Apache Karaf
W-JAX 2011: OSGi with Apache KarafW-JAX 2011: OSGi with Apache Karaf
W-JAX 2011: OSGi with Apache Karaf
 
Scaling search in Oak with Solr
Scaling search in Oak with Solr Scaling search in Oak with Solr
Scaling search in Oak with Solr
 
OSGi & Blueprint
OSGi & BlueprintOSGi & Blueprint
OSGi & Blueprint
 
APACHE
APACHEAPACHE
APACHE
 
Moving Graphs to Production At Scale
Moving Graphs to Production At ScaleMoving Graphs to Production At Scale
Moving Graphs to Production At Scale
 
Deep Dive: Alfresco Core Repository (... embedded in a micro-services style a...
Deep Dive: Alfresco Core Repository (... embedded in a micro-services style a...Deep Dive: Alfresco Core Repository (... embedded in a micro-services style a...
Deep Dive: Alfresco Core Repository (... embedded in a micro-services style a...
 
Cross Datacenter Replication in Apache Solr 6
Cross Datacenter Replication in Apache Solr 6Cross Datacenter Replication in Apache Solr 6
Cross Datacenter Replication in Apache Solr 6
 
Alfresco Architecture
Alfresco ArchitectureAlfresco Architecture
Alfresco Architecture
 
Alfresco spk-alfresco-day
Alfresco spk-alfresco-dayAlfresco spk-alfresco-day
Alfresco spk-alfresco-day
 
Apache Solr-Webinar
Apache Solr-WebinarApache Solr-Webinar
Apache Solr-Webinar
 
Rest overview briefing
Rest  overview briefingRest  overview briefing
Rest overview briefing
 
OSGi for real in the enterprise: Apache Karaf - NLJUG J-FALL 2010
OSGi for real in the enterprise: Apache Karaf - NLJUG J-FALL 2010OSGi for real in the enterprise: Apache Karaf - NLJUG J-FALL 2010
OSGi for real in the enterprise: Apache Karaf - NLJUG J-FALL 2010
 
Survey of restful web services frameworks
Survey of restful web services frameworksSurvey of restful web services frameworks
Survey of restful web services frameworks
 
Practical Kerberos with Apache HBase
Practical Kerberos with Apache HBasePractical Kerberos with Apache HBase
Practical Kerberos with Apache HBase
 
Apache Tutorial
Apache TutorialApache Tutorial
Apache Tutorial
 
APACHE WEB SERVER FOR LINUX
APACHE WEB SERVER FOR LINUXAPACHE WEB SERVER FOR LINUX
APACHE WEB SERVER FOR LINUX
 
Apache web server
Apache web serverApache web server
Apache web server
 
GraphConnect 2014 SF: From Zero to Graph in 120: Scale
GraphConnect 2014 SF: From Zero to Graph in 120: ScaleGraphConnect 2014 SF: From Zero to Graph in 120: Scale
GraphConnect 2014 SF: From Zero to Graph in 120: Scale
 

Viewers also liked

Презентация Астрафарма
Презентация АстрафармаПрезентация Астрафарма
Презентация АстрафармаAnton Bogdanov
 
Geo-linked data: towards deep integration of location in the web of data
Geo-linked data: towards deep integration of location in the web of dataGeo-linked data: towards deep integration of location in the web of data
Geo-linked data: towards deep integration of location in the web of dataAndrew Woolf
 
Linked Geo-Data and Early Geospatial Documents
Linked Geo-Data and Early Geospatial DocumentsLinked Geo-Data and Early Geospatial Documents
Linked Geo-Data and Early Geospatial Documentsaboutgeo
 
SPARQL in a nutshell
SPARQL in a nutshellSPARQL in a nutshell
SPARQL in a nutshellFabien Gandon
 
Introduction to RDF & SPARQL
Introduction to RDF & SPARQLIntroduction to RDF & SPARQL
Introduction to RDF & SPARQLOpen Data Support
 
An Introduction to SPARQL
An Introduction to SPARQLAn Introduction to SPARQL
An Introduction to SPARQLOlaf Hartig
 

Viewers also liked (8)

Презентация Астрафарма
Презентация АстрафармаПрезентация Астрафарма
Презентация Астрафарма
 
Geo-linked data: towards deep integration of location in the web of data
Geo-linked data: towards deep integration of location in the web of dataGeo-linked data: towards deep integration of location in the web of data
Geo-linked data: towards deep integration of location in the web of data
 
Linked Geo-Data and Early Geospatial Documents
Linked Geo-Data and Early Geospatial DocumentsLinked Geo-Data and Early Geospatial Documents
Linked Geo-Data and Early Geospatial Documents
 
SPARQL in a nutshell
SPARQL in a nutshellSPARQL in a nutshell
SPARQL in a nutshell
 
SPARQL Tutorial
SPARQL TutorialSPARQL Tutorial
SPARQL Tutorial
 
Introduction to RDF & SPARQL
Introduction to RDF & SPARQLIntroduction to RDF & SPARQL
Introduction to RDF & SPARQL
 
An Introduction to SPARQL
An Introduction to SPARQLAn Introduction to SPARQL
An Introduction to SPARQL
 
SPARQL Cheat Sheet
SPARQL Cheat SheetSPARQL Cheat Sheet
SPARQL Cheat Sheet
 

Similar to WWW09 - Triplify Light-Weight Linked Data Publication from Relational Databases

History and Background of the USEWOD Data Challenge
History and Background of the  USEWOD Data ChallengeHistory and Background of the  USEWOD Data Challenge
History and Background of the USEWOD Data ChallengeKnud Möller
 
20100614 ISWSA Keynote
20100614 ISWSA Keynote20100614 ISWSA Keynote
20100614 ISWSA KeynoteAxel Polleres
 
The Web of data and web data commons
The Web of data and web data commonsThe Web of data and web data commons
The Web of data and web data commonsJesse Wang
 
S. Bartoli & F. Pompermaier – A Semantic Big Data Companion
S. Bartoli & F. Pompermaier – A Semantic Big Data CompanionS. Bartoli & F. Pompermaier – A Semantic Big Data Companion
S. Bartoli & F. Pompermaier – A Semantic Big Data CompanionFlink Forward
 
Architecture Patterns for Semantic Web Applications
Architecture Patterns for Semantic Web ApplicationsArchitecture Patterns for Semantic Web Applications
Architecture Patterns for Semantic Web Applicationsbpanulla
 
Site Interoperability Projects at DERI Galway's SW Cluster
Site Interoperability Projects at DERI Galway's SW ClusterSite Interoperability Projects at DERI Galway's SW Cluster
Site Interoperability Projects at DERI Galway's SW ClusterJohn Breslin
 
Producing, publishing and consuming linked data - CSHALS 2013
Producing, publishing and consuming linked data - CSHALS 2013Producing, publishing and consuming linked data - CSHALS 2013
Producing, publishing and consuming linked data - CSHALS 2013François Belleau
 
web2py:Web development like a boss
web2py:Web development like a bossweb2py:Web development like a boss
web2py:Web development like a bossFrancisco Ribeiro
 
Modèles de données et langages de description ouverts 6 - 2021-2022
Modèles de données et langages de description ouverts   6 - 2021-2022Modèles de données et langages de description ouverts   6 - 2021-2022
Modèles de données et langages de description ouverts 6 - 2021-2022François-Xavier Boffy
 
Open API Architectural Choices Considerations
Open API Architectural Choices ConsiderationsOpen API Architectural Choices Considerations
Open API Architectural Choices ConsiderationsDominiek ter Heide
 
Sustainable queryable access to Linked Data
Sustainable queryable access to Linked DataSustainable queryable access to Linked Data
Sustainable queryable access to Linked DataRuben Verborgh
 
State of the Semantic Web
State of the Semantic WebState of the Semantic Web
State of the Semantic WebIvan Herman
 
ESWC SS 2012 - Wednesday Tutorial Barry Norton: Building (Production) Semanti...
ESWC SS 2012 - Wednesday Tutorial Barry Norton: Building (Production) Semanti...ESWC SS 2012 - Wednesday Tutorial Barry Norton: Building (Production) Semanti...
ESWC SS 2012 - Wednesday Tutorial Barry Norton: Building (Production) Semanti...eswcsummerschool
 
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
 
Open Device Programmability: Hands-on Intro to RESTCONF (and a bit of NETCONF)
Open Device Programmability: Hands-on Intro to RESTCONF (and a bit of NETCONF)Open Device Programmability: Hands-on Intro to RESTCONF (and a bit of NETCONF)
Open Device Programmability: Hands-on Intro to RESTCONF (and a bit of NETCONF)Cisco DevNet
 
Data Integration And Visualization
Data Integration And VisualizationData Integration And Visualization
Data Integration And VisualizationIvan Ermilov
 
Innovate2014 Better Integrations Through Open Interfaces
Innovate2014 Better Integrations Through Open InterfacesInnovate2014 Better Integrations Through Open Interfaces
Innovate2014 Better Integrations Through Open InterfacesSteve Speicher
 
REST Easy with Django-Rest-Framework
REST Easy with Django-Rest-FrameworkREST Easy with Django-Rest-Framework
REST Easy with Django-Rest-FrameworkMarcel Chastain
 

Similar to WWW09 - Triplify Light-Weight Linked Data Publication from Relational Databases (20)

History and Background of the USEWOD Data Challenge
History and Background of the  USEWOD Data ChallengeHistory and Background of the  USEWOD Data Challenge
History and Background of the USEWOD Data Challenge
 
20100614 ISWSA Keynote
20100614 ISWSA Keynote20100614 ISWSA Keynote
20100614 ISWSA Keynote
 
The Web of data and web data commons
The Web of data and web data commonsThe Web of data and web data commons
The Web of data and web data commons
 
S. Bartoli & F. Pompermaier – A Semantic Big Data Companion
S. Bartoli & F. Pompermaier – A Semantic Big Data CompanionS. Bartoli & F. Pompermaier – A Semantic Big Data Companion
S. Bartoli & F. Pompermaier – A Semantic Big Data Companion
 
Architecture Patterns for Semantic Web Applications
Architecture Patterns for Semantic Web ApplicationsArchitecture Patterns for Semantic Web Applications
Architecture Patterns for Semantic Web Applications
 
Site Interoperability Projects at DERI Galway's SW Cluster
Site Interoperability Projects at DERI Galway's SW ClusterSite Interoperability Projects at DERI Galway's SW Cluster
Site Interoperability Projects at DERI Galway's SW Cluster
 
Producing, publishing and consuming linked data - CSHALS 2013
Producing, publishing and consuming linked data - CSHALS 2013Producing, publishing and consuming linked data - CSHALS 2013
Producing, publishing and consuming linked data - CSHALS 2013
 
web2py:Web development like a boss
web2py:Web development like a bossweb2py:Web development like a boss
web2py:Web development like a boss
 
URL Design
URL DesignURL Design
URL Design
 
Modèles de données et langages de description ouverts 6 - 2021-2022
Modèles de données et langages de description ouverts   6 - 2021-2022Modèles de données et langages de description ouverts   6 - 2021-2022
Modèles de données et langages de description ouverts 6 - 2021-2022
 
Open API Architectural Choices Considerations
Open API Architectural Choices ConsiderationsOpen API Architectural Choices Considerations
Open API Architectural Choices Considerations
 
Sustainable queryable access to Linked Data
Sustainable queryable access to Linked DataSustainable queryable access to Linked Data
Sustainable queryable access to Linked Data
 
State of the Semantic Web
State of the Semantic WebState of the Semantic Web
State of the Semantic Web
 
ESWC SS 2012 - Wednesday Tutorial Barry Norton: Building (Production) Semanti...
ESWC SS 2012 - Wednesday Tutorial Barry Norton: Building (Production) Semanti...ESWC SS 2012 - Wednesday Tutorial Barry Norton: Building (Production) Semanti...
ESWC SS 2012 - Wednesday Tutorial Barry Norton: Building (Production) Semanti...
 
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
 
Open Device Programmability: Hands-on Intro to RESTCONF (and a bit of NETCONF)
Open Device Programmability: Hands-on Intro to RESTCONF (and a bit of NETCONF)Open Device Programmability: Hands-on Intro to RESTCONF (and a bit of NETCONF)
Open Device Programmability: Hands-on Intro to RESTCONF (and a bit of NETCONF)
 
Data Integration And Visualization
Data Integration And VisualizationData Integration And Visualization
Data Integration And Visualization
 
Innovate2014 Better Integrations Through Open Interfaces
Innovate2014 Better Integrations Through Open InterfacesInnovate2014 Better Integrations Through Open Interfaces
Innovate2014 Better Integrations Through Open Interfaces
 
REST Easy with Django-Rest-Framework
REST Easy with Django-Rest-FrameworkREST Easy with Django-Rest-Framework
REST Easy with Django-Rest-Framework
 
RDFauthor (EKAW)
RDFauthor (EKAW)RDFauthor (EKAW)
RDFauthor (EKAW)
 

More from Sören Auer

Knowledge Graph Research and Innovation Challenges
Knowledge Graph Research and Innovation ChallengesKnowledge Graph Research and Innovation Challenges
Knowledge Graph Research and Innovation ChallengesSören Auer
 
Knowledge Graph Introduction
Knowledge Graph IntroductionKnowledge Graph Introduction
Knowledge Graph IntroductionSören Auer
 
Describing Scholarly Contributions semantically with the Open Research Knowle...
Describing Scholarly Contributions semantically with the Open Research Knowle...Describing Scholarly Contributions semantically with the Open Research Knowle...
Describing Scholarly Contributions semantically with the Open Research Knowle...Sören Auer
 
Towards Knowledge Graph based Representation, Augmentation and Exploration of...
Towards Knowledge Graph based Representation, Augmentation and Exploration of...Towards Knowledge Graph based Representation, Augmentation and Exploration of...
Towards Knowledge Graph based Representation, Augmentation and Exploration of...Sören Auer
 
Towards an Open Research Knowledge Graph
Towards an Open Research Knowledge GraphTowards an Open Research Knowledge Graph
Towards an Open Research Knowledge GraphSören Auer
 
DBpedia - 10 year ISWC SWSA best paper award presentation
DBpedia  - 10 year ISWC SWSA best paper award presentationDBpedia  - 10 year ISWC SWSA best paper award presentation
DBpedia - 10 year ISWC SWSA best paper award presentationSören Auer
 
Enterprise knowledge graphs
Enterprise knowledge graphsEnterprise knowledge graphs
Enterprise knowledge graphsSören Auer
 
Towards digitizing scholarly communication
Towards digitizing scholarly communicationTowards digitizing scholarly communication
Towards digitizing scholarly communicationSören Auer
 
Project overview big data europe
Project overview big data europeProject overview big data europe
Project overview big data europeSören Auer
 
LDOW2015 Position Talk and Discussion
LDOW2015 Position Talk and DiscussionLDOW2015 Position Talk and Discussion
LDOW2015 Position Talk and DiscussionSören Auer
 
Linked data for Enterprise Data Integration
Linked data for Enterprise Data IntegrationLinked data for Enterprise Data Integration
Linked data for Enterprise Data IntegrationSören Auer
 
What can linked data do for digital libraries
What can linked data do for digital librariesWhat can linked data do for digital libraries
What can linked data do for digital librariesSören Auer
 
Open data for smart cities
Open data for smart citiesOpen data for smart cities
Open data for smart citiesSören Auer
 
The web of interlinked data and knowledge stripped
The web of interlinked data and knowledge strippedThe web of interlinked data and knowledge stripped
The web of interlinked data and knowledge strippedSören Auer
 
Проект Евросоюза LOD2 и Британский Институт Открытых данных
Проект Евросоюза LOD2 и Британский Институт Открытых данныхПроект Евросоюза LOD2 и Британский Институт Открытых данных
Проект Евросоюза LOD2 и Британский Институт Открытых данныхSören Auer
 
Introduction to the Data Web, DBpedia and the Life-cycle of Linked Data
Introduction to the Data Web, DBpedia and the Life-cycle of Linked DataIntroduction to the Data Web, DBpedia and the Life-cycle of Linked Data
Introduction to the Data Web, DBpedia and the Life-cycle of Linked DataSören Auer
 
Das Semantische Daten Web für Unternehmen
Das Semantische Daten Web für UnternehmenDas Semantische Daten Web für Unternehmen
Das Semantische Daten Web für UnternehmenSören Auer
 
Creating knowledge out of interlinked data
Creating knowledge out of interlinked dataCreating knowledge out of interlinked data
Creating knowledge out of interlinked dataSören Auer
 
From Open Linked Data towards an Ecosystem of Interlinked Knowledge
From Open Linked Data towards an Ecosystem of Interlinked KnowledgeFrom Open Linked Data towards an Ecosystem of Interlinked Knowledge
From Open Linked Data towards an Ecosystem of Interlinked KnowledgeSören Auer
 

More from Sören Auer (20)

Knowledge Graph Research and Innovation Challenges
Knowledge Graph Research and Innovation ChallengesKnowledge Graph Research and Innovation Challenges
Knowledge Graph Research and Innovation Challenges
 
Knowledge Graph Introduction
Knowledge Graph IntroductionKnowledge Graph Introduction
Knowledge Graph Introduction
 
Describing Scholarly Contributions semantically with the Open Research Knowle...
Describing Scholarly Contributions semantically with the Open Research Knowle...Describing Scholarly Contributions semantically with the Open Research Knowle...
Describing Scholarly Contributions semantically with the Open Research Knowle...
 
Towards Knowledge Graph based Representation, Augmentation and Exploration of...
Towards Knowledge Graph based Representation, Augmentation and Exploration of...Towards Knowledge Graph based Representation, Augmentation and Exploration of...
Towards Knowledge Graph based Representation, Augmentation and Exploration of...
 
Cognitive data
Cognitive dataCognitive data
Cognitive data
 
Towards an Open Research Knowledge Graph
Towards an Open Research Knowledge GraphTowards an Open Research Knowledge Graph
Towards an Open Research Knowledge Graph
 
DBpedia - 10 year ISWC SWSA best paper award presentation
DBpedia  - 10 year ISWC SWSA best paper award presentationDBpedia  - 10 year ISWC SWSA best paper award presentation
DBpedia - 10 year ISWC SWSA best paper award presentation
 
Enterprise knowledge graphs
Enterprise knowledge graphsEnterprise knowledge graphs
Enterprise knowledge graphs
 
Towards digitizing scholarly communication
Towards digitizing scholarly communicationTowards digitizing scholarly communication
Towards digitizing scholarly communication
 
Project overview big data europe
Project overview big data europeProject overview big data europe
Project overview big data europe
 
LDOW2015 Position Talk and Discussion
LDOW2015 Position Talk and DiscussionLDOW2015 Position Talk and Discussion
LDOW2015 Position Talk and Discussion
 
Linked data for Enterprise Data Integration
Linked data for Enterprise Data IntegrationLinked data for Enterprise Data Integration
Linked data for Enterprise Data Integration
 
What can linked data do for digital libraries
What can linked data do for digital librariesWhat can linked data do for digital libraries
What can linked data do for digital libraries
 
Open data for smart cities
Open data for smart citiesOpen data for smart cities
Open data for smart cities
 
The web of interlinked data and knowledge stripped
The web of interlinked data and knowledge strippedThe web of interlinked data and knowledge stripped
The web of interlinked data and knowledge stripped
 
Проект Евросоюза LOD2 и Британский Институт Открытых данных
Проект Евросоюза LOD2 и Британский Институт Открытых данныхПроект Евросоюза LOD2 и Британский Институт Открытых данных
Проект Евросоюза LOD2 и Британский Институт Открытых данных
 
Introduction to the Data Web, DBpedia and the Life-cycle of Linked Data
Introduction to the Data Web, DBpedia and the Life-cycle of Linked DataIntroduction to the Data Web, DBpedia and the Life-cycle of Linked Data
Introduction to the Data Web, DBpedia and the Life-cycle of Linked Data
 
Das Semantische Daten Web für Unternehmen
Das Semantische Daten Web für UnternehmenDas Semantische Daten Web für Unternehmen
Das Semantische Daten Web für Unternehmen
 
Creating knowledge out of interlinked data
Creating knowledge out of interlinked dataCreating knowledge out of interlinked data
Creating knowledge out of interlinked data
 
From Open Linked Data towards an Ecosystem of Interlinked Knowledge
From Open Linked Data towards an Ecosystem of Interlinked KnowledgeFrom Open Linked Data towards an Ecosystem of Interlinked Knowledge
From Open Linked Data towards an Ecosystem of Interlinked Knowledge
 

Recently uploaded

Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
Landscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfLandscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfAarwolf Industries LLC
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesBernd Ruecker
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
Infrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsInfrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsYoss Cohen
 
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Jeffrey Haguewood
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesThousandEyes
 
QMMS Lesson 2 - Using MS Excel Formula.pdf
QMMS Lesson 2 - Using MS Excel Formula.pdfQMMS Lesson 2 - Using MS Excel Formula.pdf
QMMS Lesson 2 - Using MS Excel Formula.pdfROWELL MARQUINA
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...Nikki Chapple
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Nikki Chapple
 
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...BookNet Canada
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...panagenda
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Mark Simos
 

Recently uploaded (20)

Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
Landscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdfLandscape Catalogue 2024 Australia-1.pdf
Landscape Catalogue 2024 Australia-1.pdf
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architectures
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
Infrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsInfrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platforms
 
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
 
QMMS Lesson 2 - Using MS Excel Formula.pdf
QMMS Lesson 2 - Using MS Excel Formula.pdfQMMS Lesson 2 - Using MS Excel Formula.pdf
QMMS Lesson 2 - Using MS Excel Formula.pdf
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
 
How Tech Giants Cut Corners to Harvest Data for A.I.
How Tech Giants Cut Corners to Harvest Data for A.I.How Tech Giants Cut Corners to Harvest Data for A.I.
How Tech Giants Cut Corners to Harvest Data for A.I.
 
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
Tampa BSides - The No BS SOC (slides from April 6, 2024 talk)
 

WWW09 - Triplify Light-Weight Linked Data Publication from Relational Databases

  • 1. Triplify – Linked Data Publication from Relational Databases Sören Auer, Sebastian Dietzold, Jens Lehmann, Sebastian Hellmann, David Aumueller AKSW, Institut für Informatik
  • 2. Growth of the Semantic Data Web Still outpaced by the traditional Web  4/24/2009 Triplify – Linked Data Publication from Relational DBs 2
  • 3. Triplify Big Picture 4/24/2009 Triplify – Linked Data Publication from Relational DBs 3
  • 4. Triplify Motivation Project Area Downloads • overcome the chicken-and-egg phpBB discussion forum 235480 dilemma of missing semantic Gallery photo gallery 166005 representations and search XOOPS CMS 115807 Coppermine photo gallery 113854 facilities on the Web Typo3 CMS 63641 • Triplify leverages relational Liferay Portal Portal 39615 representations behind existing eGroupWare group ware 33865 Alfresco CMS 31914 Web applications: e107 CMS 19996 – often open-source, deployed Lifetype Blogging 16730 hundred thousand times Plone CMS 13993 – structure and semantics encoded Compiere ERP + CRM 13718 in relational database schemes WebCalendar Calendar 12832 Nucleus Blogging 12739 (behind Web apps) is not Tikiwiki Wiki 6368 accessible to Web search engines, Monthly Web application downloads at mashups etc. Sourceforge 4/24/2009 Triplify – Linked Data Publication from Relational DBs 4
  • 5. Overview Keyword-based Semantic-based Web Browser Search Engines Search Engines HTML pages RDF triple-based descriptions (Linked Data, RDF, JSON) Webserver Endpoint registry Web Application Triplify script Triplify Configuration repository Relational Database
  • 6. Solution overview • SQL is the industry standard language for relational transformations • Extend SQL with a few syntactic constructs opaque to the SQL query processor • Map URL patterns to sets of SQL query patterns • For a concrete URL request, replace placeholders in the query patterns, execute the query • Transform resulting relations into various RDF serializations (multiple view to class approach) 4/24/2009 Triplify – Linked Data Publication from Relational DBs 6
  • 7. Triplify Solution: SQL-SELECT queries map relational data to RDF Triplify Configuration: • number of SQL queries selecting information, which should be made publicly available. Special SQL query result structure required (in order to convert results into RDF: • first column must contain identifiers for generating instance URIs (i.e. the primary key of DB table) • column names are used to generate property URIs, renaming columns allows to reuse properties from existing vocabularies such as Dublin Core, FOAF, SIOC – e.g. SELECT id, name AS 'foaf:name' FROM users • individual cells contain data values or references to other instances (eventually constitute the objects of resulting triples) 4/24/2009 Triplify – Linked Data Publication from Relational DBs 7
  • 8. Example: Wordpress Blog Posts Associate the URL path fragment 'post‘ with a number of SQL patterns: http://blog.aksw.org/triplify/post/(xxx) Object property 1 SELECT id, post_author AS 'sioc:has_creator->user', post_title AS 'dc:title', post_content AS 'sioc:content', post_date AS 'dcterms:modified^^xsd:dateTime‘, post_modified AS 'dcterms:created^^xsd:dateTime' FROM posts Datatype property WHERE post_status='publish‘ (AND id=xxx) 2 SELECT post_id id, tag_label AS 'tag:taggedWithTag‘ FROM post2tag INNER JOIN tag ON(post2tag.tag_id=tag.tag_id) (WHERE id=xxx) 3 SELECT post_id id, category_id AS 'belongsToCategory->category‘ FROM post2cat (WHERE id=xxx) 4/24/2009 Triplify – Linked Data Publication from Relational DBs 8
  • 9. RDF Conversion http://blog.aksw.org/triplify/post/1 1 id post_author post_title post_content post_date post_modified 1 5 New DBpedia release Today we released … 200810201635 200810201635 id tag:taggedWithTag id belogsToCategory 3 2 1 DBpedia 1 34 1 Release … .. http://blog.aksw.org/triplify/post/1 sioc:has_creator http://blog.aksw.org/triplify/user/5 http://blog.aksw.org/triplify/post/1 dc:title “New DBpedia release” http://blog.aksw.org/triplify/post/1 sioc:content “Today we released …” http://blog.aksw.org/triplify/post/1 dcterms:modified “20081020T1635”^^xsd:dateTime http://blog.aksw.org/triplify/post/1 dcterms:created “20081020T1635”^^xsd:dateTime http://blog.aksw.org/triplify/post/1 tag:taggedWithTag “DBpedia” http://blog.aksw.org/triplify/post/1 tag:taggedWithTag “Release” http://blog.aksw.org/triplify/post/1 belongsToCategory http://blog.aksw.org/triplify/category/34 4/24/2009 Triplify – Linked Data Publication from Relational DBs 9
  • 10. Triplify Implementation: Simplicity • Expose semantics as simple as possible – No (new) mapping languages – easy to learn – Few lines of code – easy to plug-in – Simple, reusable configurations • Available for most popular Web app languages – PHP (ready), Ruby/Python under development • Works with most popular Web app DBs – MySQL (extensively tested), PHP-PDO DBs (SQLite, Oracle, DB2, MS SQL, PostgreSQL etc.) should work, not needed for Virtuoso  • Triplify exposes RDF/Ntriples, LinkedData and RDF/JSON 4/24/2009 Triplify – Linked Data Publication from Relational DBs 10
  • 11. <?php include('../wp-config.php'); Example Config $triplify['namespaces']=array( 'vocabulary'=>'http://triplify.org/vocabulary/Wordpress/', 'foaf'=>'http://xmlns.com/foaf/0.1/', … ); $triplify['queries']=array( 'post'=>array( quot;SELECT id,post_author 'sioc:has_creator->user',post_date 'dcterms:created',post_title 'dc:title', post_content 'sioc:content', post_modified 'dcterms:modified‘ FROM {$table_prefix}posts WHERE post_status='publish'quot;, quot;SELECT post_id id,tag_id 'tag:taggedWithTag' FROM {$table_prefix}post2tagquot;, quot;SELECT post_id id,category_id 'belongsToCategory' FROM {$table_prefix}post2catquot;, ), 'tag'=>quot;SELECT tag_ID id,tag 'tag:tagName' FROM {$table_prefix}tagsquot;, 'category'=>quot;SELECT cat_ID id,cat_name 'skos:prefLabel',category_parent 'skos:narrower' FROM {$table_prefix}categoriesquot;, 'user'=>array( quot;SELECT id,user_login 'foaf:accountName',SHA(CONCAT('mailto:',user_email)) 'foaf:mbox_sha1sum', user_url 'foaf:homepage',display_name 'foaf:name' FROM {$table_prefix}usersquot;, quot;SELECT user_id id,meta_value 'foaf:firstName' FROM {$table_prefix}usermeta WHERE meta_key='first_name'quot;, quot;SELECT user_id id,meta_value 'foaf:family_name' FROM {$table_prefix}usermeta WHERE meta_key='last_name'quot;, ), 'comment'=>quot;SELECT comment_ID id,comment_post_id 'sioc:reply_of',comment_author AS 'foaf:name', SHA(CONCAT('mailto:',comment_author_email)) 'foaf:mbox_sha1sum', comment_author_url 'foaf:homepage', comment_date AS 'dcterms:created', comment_content 'sioc:content',comment_karma,comment_type FROM {$table_prefix}comments WHERE comment_approved='1'quot;, ); $triplify['objectProperties']=array( 'sioc:has_creator'=>'user', 'tag:taggedWithTag'=>'tag', 'belongsToCategory'=>'category‘,'skos:narrower'=>'category','sioc:reply_of'=>'post'); $triplify['classMap']=array('user'=>'foaf:person', 'post'=>'sioc:Post', 'tag'=>'tag:Tag', 'category'=>'skos:Concept'); $triplify['TTL']=0; // Caching $triplify['db']=new PDO('mysql:host='.DB_HOST.';dbname='.DB_NAME,DB_USER,DB_PASSWORD); ?> 4/24/2009 Triplify – Linked Data Publication from Relational DBs 11
  • 12. Configuration repository • Triplify configurations are shared at: http://Triplify.org • Existing configurations for OpenConf, Wordpress, WackoWiki, Drupal, OJS, Joomla, osCommerce, Gallery, phpBB, OMDB … 4/24/2009 Triplify – Linked Data Publication from Relational DBs 12
  • 13. Triplify Endpoint Registry • Simple REST endpoint registry: http://triplify.org/Registry/?url=%rdf_source_URL% • Itself available as Linked Data endpoint • Enables building of mashups, vertical search and other applications using information from many sources – product search, blog search etc. 4/24/2009 Triplify – Linked Data Publication from Relational DBs 13
  • 14. Triplify Temporal Extension Problem: How do next generation search engines know something changed on the Data Web? Different solutions: • Try to crawl always everything: currently deployed on the Web • Ping a central update notification service: PingTheSemanticWeb.com – will probably not scale if the Data Web gets really deployed • Each linked data endpoint publishes an update log: Triplify Update Logs 4/24/2009 Triplify – Linked Data Publication from Relational DBs 14
  • 15. Triplify Temporal Extension special update path and vocabulary http://example.com/Triplify/update http://example.com/Triplify/update/2007 rdf:type update:UpdateCollection . http://example.com/Triplify/update/2008 rdf:type update:UpdateCollection . http://example.com/Triplify/update/2008 http://example.com/Triplify/update/2008/Jan rdf:type update:UpdateCollection . http://example.com/Triplify/update/2008/Feb rdf:type update:UpdateCollection . Nesting continues until we finally reach an URL, which exposes all updates performed in a certain second in time… http://example.com/Triplify/update/2008/Jan/01/17/58/06 http://example.com/Triplify/update/2008/Jan/01/17/58/06/user123 update:updatedResource http://example.com/Triplify/users/JohnDoe ; update:updatedAt quot;20080101T17:58:06quot;^<xsd:dateTime> ; update:updatedBy http://example.com/Triplify/users/JohnDoe . 4/24/2009 Triplify – Linked Data Publication from Relational DBs 15
  • 16. LOD Update log generation Updates have to be logged in the DB Update log queries have to expose a date as first column: $triplify['queries']=array( … 'update'=>quot;SELECT p.changed AS id, p.id AS 'update:updatedResource->project‘ FROM project pquot;, ); 4/24/2009 Triplify – Linked Data Publication from Relational DBs 16
  • 17. Triplify Spatial Extension: Linked Open Geo Data Spatial data is crucial for the Data Web in order to interlink geographically linked resources. Open Street Map project (OSM) collects, organizes and publishes geo data the wiki way: • 80.000 OSM users collected data about 22M km ways (roads, highways etc.) on earth, 25T km are added daily • OSM contains a vast amount points-of-interest descriptions e.g. shops, amenities, sports venues, businesses, touristic and historic sights. Goal: publish OSM geo data, interlink it with other data sources and provide efficient means for browsing and authoring: • Open Street Map data extraction works on the basis of OSM database dumps, a bi- directional live integration of OSM and our Linked Geo Data browser and editor is currently in the works. • Triplify spatial data publishing, the Triplify script for publishing linked data from relational databases is extended for publishing geo data, in particular with regard to the retrieval of information about geographical areas. • LinkedGeo Data browser and editor is a facet-based browser for geo content, which uses an OLAP inspired hypercube for quickly retrieving aggregated information about any user selected area on earth. Linked Data Tutorial
  • 18. Triplify Spatial Extension How to publish geo-data using Triplify? Radius Attribute Value Lon Lat http://linkedgeodata.org/near/48.213056,16.359722/1000/amenity=Hotel http://linkedgeodata.org/node/212331 http://linkedgeodata.org/node/944523 http://linkedgeodata.org/node/234091 http://linkedgeodata.org/way/56719 node/150760824 amenity quot;pubquot;; created_by quot;JOSMquot;; distance quot;5995quot;; name quot;La frioleraquot;; geo#lat quot;40.4474quot;; geo#long quot;-3.7173quot;. 4/24/2009 Triplify – Linked Data Publication from Relational DBs 18
  • 19. Faceted Linked-Geo-Data Browser Linked Data Tutorial
  • 20. RDB2RDF tool comparison Tool Virtuoso RDF Triplify D2RQ Views Technology Scripting languages Whole middleware Java (PHP) solution SPARQL endpoint - X X Mapping language SQL RDF based RDF based Mapping Manual Semi-automatic Manual generation Scalability Medium-high Medium High (but no SPARQL) More at: http://esw.w3.org/topic/Rdb2RdfXG/StateOfTheArt 4/24/2009 Triplify – Linked Data Publication from Relational DBs 20
  • 21. Conclusion • Triplify supports the “long tail” of deployed Web applications • Publishing RDF and Linked Data is simple • Support for temporal and spatial data dimensions – LOD Update Logs enable differential crawling – Linkedgeodata.org provides spatial identifiers for most parts of the world • More comprehensive solutions are (still) required for SPARQL support 4/24/2009 Triplify – Linked Data Publication from Relational DBs 21
  • 22. Should it be a Cloud or the Sky? 4/24/2009 Triplify – Linked Data Publication from Relational DBs 22
  • 23. Thanks! Sören Auer auer@informatik.uni-leipzig.de Research group Agile Knowledge Engineering & Semantic Web (AKSW): http://aksw.org • http://Triplify.org • http://DBpedia.org • http://OntoWiki.net • http://OpenResearch.org • http://aksw.org/projects/xOperator • DL-Learner.org • Cofundos.org Linked Data Tutorial