Center for
Open
Middleware

Application integration with
the W3C Linked Data standards
Día W3C en España
December 18th, 20...
Center for
Open
Middleware

2

Evolution of Application Integration

http://www.immortalhumans.com/wp-content/uploads/Evol...
Center for
Open
Middleware

3

Linked Data
• Connecting data distributed across the Web
• Similar to how documents are con...
Center for
Open
Middleware

4

Why Linked Data ?
• Global identifiers that are dereferenceable
• Easily accessible data us...
Center for
Open
Middleware

5

Linked Data specifications
Domain

Specification

Protocol

HTTP

Data model

RDF(S)

Seria...
Center for
Open
Middleware

6

Linked Data Platform
http://www.w3.org/2012/ldp/
• RESTful protocol for Read / Write Linked...
Center for
Open
Middleware

7

An example: BugLinks
An LDP-enabled bug tracker

OPTIONS

OPTIONS
Center for
Open
Middleware

8

Looking up for the project
GET /bug-tracker/alm-istack HTTP/1.1
Host: example.org
Accept: t...
Center for
Open
Middleware

9

Looking up for the project with many
bugs (Paging)
GET /bug-tracker/buggy-product HTTP/1.1
...
Center for
Open
Middleware

10

Looking up for the project with many
bugs (Paging) II
GET /bug-tracker/buggy-product?first...
Center for
Open
Middleware

11

Creating a new bug report
POST /bug-tracker/alm-istack HTTP/1.1
Host: example.org
Content-...
Center for
Open
Middleware

12

Looking up for a project (again)
GET /bug-tracker/alm-istack HTTP/1.1
Host: example.org
Ac...
Center for
Open
Middleware

13

Looking up for a bug report
GET /bug-tracker/alm-istack/bug5 HTTP/1.1
Host: example.org
Ac...
Center for
Open
Middleware

14

ALM iStack Project
Objective:
To evaluate and foster the adoption of Linked Data
technolog...
Center for
Open
Middleware

15

Architecture of the Proof-of-Concept
Center for
Open
Middleware

16

Enterprise readiness
PARTIAL
PROVENANCE

TRANSACTIONS

TESTING

VALIDATION

RETRIEVALS
UPD...
Center for
Open
Middleware

17

Final remarks
• Linked Data can be a good approach when the

integrations are data intensi...
Center for
Open
Middleware

Thank You !
Application integration with
the W3C Linked Data standards
Raúl García Castro,
Mig...
Upcoming SlideShare
Loading in …5
×

Application integration with the W3C Linked Data standards

814 views
681 views

Published on

Linked Data Platform specification aims to define a set of HTTP protocol extensions for accessing, updating, creating and deleting resources from servers that expose their resources as Linked Data. This presentation looks at how the Linked Data Platform can be used for application integration.

Published in: Technology, Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
814
On SlideShare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
6
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • http://www.slideshare.net/marin_dimitrov/linked-data-for-the-enterprise-opportunities-and-challenges?from_search=6
  • Application integration with the W3C Linked Data standards

    1. 1. Center for Open Middleware Application integration with the W3C Linked Data standards Día W3C en España December 18th, 2013 Nandana Mihindukulasooriya Universidad Politécnica de Madrid nmihindu@fi.upm.es @nandanamihindu
    2. 2. Center for Open Middleware 2 Evolution of Application Integration http://www.immortalhumans.com/wp-content/uploads/Evolution-11.jpg
    3. 3. Center for Open Middleware 3 Linked Data • Connecting data distributed across the Web • Similar to how documents are connected using hyperlinks to set up an hypertext web • Based on four rules defined by Tim Berners Lee [1]: 1. Use URIs as names for things 2. Use HTTP URIs so that people can look up those names. 3. When someone looks up a URI, provide useful information, using the standards (RDF*, SPARQL) 4. Include links to other URIs, so that they can discover more things [1] http://www.w3.org/DesignIssues/LinkedData.html [2] Linking Open Data cloud diagram, by Richard Cyganiak and Anja Jentzsch. http://lod-cloud.net/
    4. 4. Center for Open Middleware 4 Why Linked Data ? • Global identifiers that are dereferenceable • Easily accessible data using HTTP • Reconciliation of duplicate data • Avoid data silos • Use of standards • Interoperability • Flexible graph based RDF data model • Easy to merge data from different sources • Multiple schemas can live together • Easy to evolve No silver bullets • Typed links between data from different sources • Ability to traverse through data to find more information and context • Richer knowledge representation and modeling • Mappings without complex transformations • By adding more information rather than converting data
    5. 5. Center for Open Middleware 5 Linked Data specifications Domain Specification Protocol HTTP Data model RDF(S) Serializations RDF/XML Turtle TriG RDFa JSON-LD Query SPARQL • Advanced modeling • OWL W3C Linked Data Platform
    6. 6. Center for Open Middleware 6 Linked Data Platform http://www.w3.org/2012/ldp/ • RESTful protocol for Read / Write Linked Data • Extensions to HTTP protocol • Pagination, ordering, partial updates, introspection, creation factories, collections • Standardization focused of interoperability • Developed by W3C Linked Data Platform Working Group • 54 participants from 32 organizations • Industry: IBM, Oracle, EMC, Fujitsu, OpenLink Software, Base22, … • Academia: Universidad Politécnica de Madrid, University of Oxford, DERI, Université de Lyon, INRIA, … • Progress: • Several public working drafts are available • On its way to a Candidate Recommendation • Current and potential implementations: • OpenLink Virtuoso, Eclipse Lyo, ALM iStack middleware, Apache Marmotta, Callimachus, Tabulator, rdflib.js, RWW.IO, …
    7. 7. Center for Open Middleware 7 An example: BugLinks An LDP-enabled bug tracker OPTIONS OPTIONS
    8. 8. Center for Open Middleware 8 Looking up for the project GET /bug-tracker/alm-istack HTTP/1.1 Host: example.org Accept: text/turtle; charset=UTF-8 HTTP/1.1 200 OK Content-Type: text/turtle; charset=UTF-8 Link: <http://www.w3.org/ns/ldp/Container>; rel="type" ETag: W/"123456789" @prefix dcterms: <http://purl.org/dc/terms/>. @prefix ldp: <http://www.w3.org/ns/ldp#>. @prefix bt: <http://www.example.org/vocab#>. </bug-tracker/alm-istack> a ldp:SimpleContainer, bt:ProductDescription; dcterms:title "A collection of bug reports on ALM iStack project"; bt:developer </user/johndoe>; ldp:contains </bug-tracker/alm-istack/bug3>; ldp:contains </bug-tracker/alm-istack/bug4> .
    9. 9. Center for Open Middleware 9 Looking up for the project with many bugs (Paging) GET /bug-tracker/buggy-product HTTP/1.1 Host: example.org Accept: text/turtle; charset=UTF-8 HTTP/1.1 303 See Other Location: /bug-tracker/buggy-product?firstpage Link: <http://www.w3.org/ns/ldp/Container>; rel="type"
    10. 10. Center for Open Middleware 10 Looking up for the project with many bugs (Paging) II GET /bug-tracker/buggy-product?firstpage HTTP/1.1 Host: example.org Accept: text/turtle; charset=UTF-8 HTTP/1.1 200 OK Content-Type: text/turtle; charset=UTF-8 Link: <http://www.w3.org/ns/ldp/Resource>; rel="type“ Link: </bug-tracker/buggy-product?secondpage>; rel='next' ETag: W/"123456789“ @prefix ldp: <http://www.w3.org/ns/ldp#>. @prefix bt: <http://www.example.org/vocab#>. Under discussion <bug-tracker/buggy-product> a ldp:SimpleContainer,bt:ProductDescription; ldp:contains </bug-tracker/alm-istack/bug1>; … ldp:contains </bug-tracker/alm-istack/bug200> .
    11. 11. Center for Open Middleware 11 Creating a new bug report POST /bug-tracker/alm-istack HTTP/1.1 Host: example.org Content-Type: text/turtle @prefix dcterms: <http://purl.org/dc/terms/>. @prefix bt: <http://www.example.org/vocab#>. <> a bt:BugReport; dcterms:title "Server crashed"; dcterms:creator </user/janedoe> . HTTP/1.1 201 Created Location: /bug-tracker/alm-istack/bug5 Link: <http://www.w3.org/ns/ldp/Resource>; rel="type" ETag: W/"123456789" Content-Length: 0
    12. 12. Center for Open Middleware 12 Looking up for a project (again) GET /bug-tracker/alm-istack HTTP/1.1 Host: example.org Accept: text/turtle; charset=UTF-8 HTTP/1.1 200 OK Content-Type: text/turtle; charset=UTF-8 Link: <http://www.w3.org/ns/ldp/Container>; rel="type" ETag: W/“223456789" @prefix dcterms: <http://purl.org/dc/terms/>. @prefix ldp: <http://www.w3.org/ns/ldp#>. @prefix bt: <http://www.example.org/vocab#>. </bug-tracker/alm-istack> a ldp:SimpleContainer, bt:ProductDescription; dcterms:title "A collection of bug reports on ALM iStack project"; ldp:contains </bug-tracker/alm-istack/bug3> ; ldp:contains </bug-tracker/alm-istack/bug4> ; ldp:contains </bug-tracker/alm-istack/bug5> .
    13. 13. Center for Open Middleware 13 Looking up for a bug report GET /bug-tracker/alm-istack/bug5 HTTP/1.1 Host: example.org Accept: text/turtle; charset=UTF-8 HTTP/1.1 200 OK Content-Type: text/turtle; charset=UTF-8 Link: <http://www.w3.org/ns/ldp/Resource>; rel="type" ETag: W/"123456789" @prefix dcterms: <http://purl.org/dc/terms/>. @prefix ldp: <http://www.w3.org/ns/ldp#>. @prefix bt: <http://www.example.org/vocab#>. </bug-tracker/alm-istack/bug5> a bt:BugReport; dcterms:title "Server crashed"; dcterms:creator </user/janedoe>; dcterms:created "2013-05-05T10:00"^^xsd:dateTime; bt:state bt:New . .
    14. 14. Center for Open Middleware 14 ALM iStack Project Objective: To evaluate and foster the adoption of Linked Data technologies as the means for facilitating real-time Application Lifecycle Management tool integration in enterprise-grade environments.
    15. 15. Center for Open Middleware 15 Architecture of the Proof-of-Concept
    16. 16. Center for Open Middleware 16 Enterprise readiness PARTIAL PROVENANCE TRANSACTIONS TESTING VALIDATION RETRIEVALS UPDATES & VOCABULARY MANAGEMENT IDENTITY MANAGEMENT VERSIONING SECURITY APPLICATION MODELS DISCOVERY & DESIGN PATTERNS & ANTI-PATTERNS INTROSPECTION PERFORMANCE OPTIMIZATION
    17. 17. Center for Open Middleware 17 Final remarks • Linked Data can be a good approach when the integrations are data intensive • Service orientation vs. Data / Resource orientation • Linked Data Platform as a standard RESTful protocol for read/write Linked Data • Supported by the industry • OSLC / IBM Rational Jazz • EU projects (PPP/FP7): CESAR, iFEST, CRYSTAL • Some work to be done on enterprise Quality of Service requirements
    18. 18. Center for Open Middleware Thank You ! Application integration with the W3C Linked Data standards Raúl García Castro, Miguel Esteban Gutiérrez, Nandana Mihindukulasooriya

    ×