Application integration with the W3C Linked Data standards
-
Upload
nandana-mihindukulasooriya -
Category
Technology
-
view
534 -
download
1
description
Transcript of Application integration with the W3C Linked Data standards
![Page 1: Application integration with the W3C Linked Data standards](https://reader036.fdocuments.us/reader036/viewer/2022062616/54b67dc04a79591b3c8b45f4/html5/thumbnails/1.jpg)
Center for Open Middleware
Center for Open Middleware
Application integration with the W3C Linked Data standards
Nandana Mihindukulasooriya
Universidad Politécnica de Madrid
@nandanamihindu
Día W3C en EspañaDecember 18th, 2013
![Page 2: Application integration with the W3C Linked Data standards](https://reader036.fdocuments.us/reader036/viewer/2022062616/54b67dc04a79591b3c8b45f4/html5/thumbnails/2.jpg)
Center for Open Middleware
2
Evolution of Application Integration
http://www.immortalhumans.com/wp-content/uploads/Evolution-11.jpg
![Page 3: Application integration with the W3C Linked Data standards](https://reader036.fdocuments.us/reader036/viewer/2022062616/54b67dc04a79591b3c8b45f4/html5/thumbnails/3.jpg)
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/
![Page 4: Application integration with the W3C Linked Data standards](https://reader036.fdocuments.us/reader036/viewer/2022062616/54b67dc04a79591b3c8b45f4/html5/thumbnails/4.jpg)
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
• 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
No silver bullets
![Page 5: Application integration with the W3C Linked Data standards](https://reader036.fdocuments.us/reader036/viewer/2022062616/54b67dc04a79591b3c8b45f4/html5/thumbnails/5.jpg)
Center for Open Middleware
5
Linked Data specifications
• Advanced modeling• OWL
Domain Specification
Protocol HTTP
Data model RDF(S)
Serializations RDF/XMLTurtleTriGRDFaJSON-LD
Query SPARQL
W3C Linked Data Platform
![Page 6: Application integration with the W3C Linked Data standards](https://reader036.fdocuments.us/reader036/viewer/2022062616/54b67dc04a79591b3c8b45f4/html5/thumbnails/6.jpg)
Center for Open Middleware
6
Linked Data Platformhttp://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, …
![Page 7: Application integration with the W3C Linked Data standards](https://reader036.fdocuments.us/reader036/viewer/2022062616/54b67dc04a79591b3c8b45f4/html5/thumbnails/7.jpg)
Center for Open Middleware
7
An example: BugLinks An LDP-enabled bug tracker
OPTIONS
OPTIONS
![Page 8: Application integration with the W3C Linked Data standards](https://reader036.fdocuments.us/reader036/viewer/2022062616/54b67dc04a79591b3c8b45f4/html5/thumbnails/8.jpg)
Center for Open Middleware
8
Looking up for the projectGET /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> .
![Page 9: Application integration with the W3C Linked Data standards](https://reader036.fdocuments.us/reader036/viewer/2022062616/54b67dc04a79591b3c8b45f4/html5/thumbnails/9.jpg)
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"
![Page 10: Application integration with the W3C Linked Data standards](https://reader036.fdocuments.us/reader036/viewer/2022062616/54b67dc04a79591b3c8b45f4/html5/thumbnails/10.jpg)
Center for Open Middleware
10
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#>.
<bug-tracker/buggy-product> a ldp:SimpleContainer,bt:ProductDescription;
ldp:contains </bug-tracker/alm-istack/bug1>;
…
ldp:contains </bug-tracker/alm-istack/bug200> .
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
Under discussion
![Page 11: Application integration with the W3C Linked Data standards](https://reader036.fdocuments.us/reader036/viewer/2022062616/54b67dc04a79591b3c8b45f4/html5/thumbnails/11.jpg)
Center for Open Middleware
11
Creating a new bug reportPOST /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
![Page 12: Application integration with the W3C Linked Data standards](https://reader036.fdocuments.us/reader036/viewer/2022062616/54b67dc04a79591b3c8b45f4/html5/thumbnails/12.jpg)
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> .
![Page 13: Application integration with the W3C Linked Data standards](https://reader036.fdocuments.us/reader036/viewer/2022062616/54b67dc04a79591b3c8b45f4/html5/thumbnails/13.jpg)
Center for Open Middleware
13
Looking up for a bug reportGET /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 .
.
![Page 14: Application integration with the W3C Linked Data standards](https://reader036.fdocuments.us/reader036/viewer/2022062616/54b67dc04a79591b3c8b45f4/html5/thumbnails/14.jpg)
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.
Center for Open Middleware
![Page 15: Application integration with the W3C Linked Data standards](https://reader036.fdocuments.us/reader036/viewer/2022062616/54b67dc04a79591b3c8b45f4/html5/thumbnails/15.jpg)
Center for Open Middleware
15
Architecture of the Proof-of-Concept
![Page 16: Application integration with the W3C Linked Data standards](https://reader036.fdocuments.us/reader036/viewer/2022062616/54b67dc04a79591b3c8b45f4/html5/thumbnails/16.jpg)
Center for Open Middleware
16
Enterprise readiness
VALIDATION
TRANSACTIONS
SECURITY
DESIGN PATTERNS &
ANTI-PATTERNS
APPLICATION MODELS
DISCOVERY & INTROSPECTI
ON
VOCABULARY
MANAGEMENT
VERSIONING
PROVENANCE
IDENTITY MANAGEME
NT
PERFORMANCE
OPTIMIZATION
TESTING
PARTIAL RETRIEVALS & UPDATES
![Page 17: Application integration with the W3C Linked Data standards](https://reader036.fdocuments.us/reader036/viewer/2022062616/54b67dc04a79591b3c8b45f4/html5/thumbnails/17.jpg)
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
![Page 18: Application integration with the W3C Linked Data standards](https://reader036.fdocuments.us/reader036/viewer/2022062616/54b67dc04a79591b3c8b45f4/html5/thumbnails/18.jpg)
Center for Open Middleware
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