leveraging w3c linked data, oslc, and open source for loosely coupled application integrations

19
© 2013 IBM Corporation Steve Speicher OSLC Core Lead W3C Linked Data Platform Workgroup IBM Rational @sspeiche Leveraging W3C Linked Data, OSLC, and Open Source for Loosely Coupled Application Integrations Michael Fiedler OSLC Automation Lead Eclipse Lyo Project Lead and Committer IBM Rational @mffielder

Upload: clay

Post on 12-Feb-2016

43 views

Category:

Documents


0 download

DESCRIPTION

Leveraging W3C Linked Data, OSLC, and Open Source for Loosely Coupled Application Integrations. Steve Speicher OSLC Core Lead W3C Linked Data Platform Workgroup IBM Rational @ sspeiche. Michael Fiedler OSLC Automation Lead Eclipse Lyo Project Lead and Committer IBM Rational - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Leveraging W3C Linked Data, OSLC, and Open Source for Loosely Coupled Application Integrations

© 2013 IBM Corporation

Steve Speicher OSLC Core LeadW3C Linked Data Platform WorkgroupIBM Rational @sspeiche

Leveraging W3C Linked Data, OSLC, and Open Source for Loosely Coupled Application Integrations

Michael FiedlerOSLC Automation LeadEclipse Lyo Project Lead and CommitterIBM Rational @mffielder

Page 2: Leveraging W3C Linked Data, OSLC, and Open Source for Loosely Coupled Application Integrations

© 2013 IBM Corporation

Software Development Tools : Year 2000 - point products

User complaints–Need tools to work better

–Need tools to work together

Software Configuration Management

Work item & bug tracking

Build automation & management

Test automation & management

Requirements management

Page 3: Leveraging W3C Linked Data, OSLC, and Open Source for Loosely Coupled Application Integrations

© 2013 IBM Corporation

Year 2005 – ALM V1

• Developer complaints– Clumsy integrations– Want best-of-breed choice

• Management complaints– Need governance, metrics,

reports, …

• Mixed Tool Environments– Open-source offerings with

DIY integration– 3rd party ALM suites

Software Configuration Management

Work item & bug tracking

Build automation & management

Test automation & management

Requirements management

ALM Solution

Page 4: Leveraging W3C Linked Data, OSLC, and Open Source for Loosely Coupled Application Integrations

© 2013 IBM Corporation

Year 2010 – Linked Data and OSLC – A major breakthrough

Learned to integrate with open REST-based protocols instead of glue

Software Configuration Management

Work item & bug tracking

Build automation & management

Test automation & management Requirements

management

Page 5: Leveraging W3C Linked Data, OSLC, and Open Source for Loosely Coupled Application Integrations

© 2013 IBM Corporation

Linked Data – Defined by Tim Berners-Lee

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.

He concludes this with: “Simple.”

Reference: “Linked Data”, Tim Berners-Lee, 2006-07-27

Page 6: Leveraging W3C Linked Data, OSLC, and Open Source for Loosely Coupled Application Integrations

© 2013 IBM Corporation

Linked Data – What is it?

TestCase 14 is blocked by Issue 973http://srv/qm/tc/14 qm:blockedBy http://apache.org/jira/HTTPCLIENT-973

Issue 973 depends on Bug 318 http://apache.org/jira/HTTPCLIENT-973 cm:dependsOn http://bugs.sun.com/? id=7172318

Joe is a committer for Apachehttp://joecoder.me doap:committer http://apache.org

Issue 973 is owned by Joe http://apache.org/jira/HTTPCLIENT-973 dc:contributor http://joecoder.me

Page 7: Leveraging W3C Linked Data, OSLC, and Open Source for Loosely Coupled Application Integrations

© 2013 IBM Corporation

Lifecycle ToolLifecycle ToolChange Change ManagementManagement

Lifecycle ToolLifecycle ToolQuality ManagementQuality Management

Lifecycle ToolLifecycle ToolRequirements Requirements ManagementManagement

Service ManagementService ManagementHelp DeskHelp Desk

Service ManagementService ManagementDeploymentDeployment

OSLC – Based on Linked Data

<http://cm/bugs/2314> a oslc_cm:ChangeRequest ; dcterms:relation <http://cm/bugs/1235>; oslc_cm:implementsRequirement <http://rm/req/56> .

<http://rm/req/56> a oslc_rm:Requirement ; dcterms:title “Online shopping cart”; oslc_rm:validatedBy <http://qm/tc/17> .

Common Resource Definitions

Link Preview

Delegated Dialogs

http://open-services.net

Page 8: Leveraging W3C Linked Data, OSLC, and Open Source for Loosely Coupled Application Integrations

© 2013 IBM Corporation

REST W3C Linked Data

OSLC Specifications: Layered Cake and Independently Adoptable

OSLC Core

Change Management Quality ManagementDom

ains

Com

mon

Performance Monitoring Automation

Provides common and core needs

New domains as needed

Keep scope simple, learn and iterate

Page 9: Leveraging W3C Linked Data, OSLC, and Open Source for Loosely Coupled Application Integrations

© 2013 IBM Corporation

Evolution of W3C Linked Data

2006: Tim Berners-Lee introduced Linked Data as four design principles in an article

May 2011: IBM and W3C agreed that standardization is necessary to accelerate industry adoption and enhance interoperability

Dec 2011: IBM Sponsored W3C Workshop on Linked Enterprise Data Patterns– Participating organizations included EMC, Elsevier, IBM, Nokia, Oracle– Workshop recommended W3C produce a standard “which defines a Linked Data

Platform”, leveraging RDF

March 2012: IBM Submitted Linked Data Basic Profile 1.0 proposal to W3C– Base the Linked Data Platform foundation on OSLC Core technology and experience– Co-submitters:

– Supporters:

June 2012: W3C launched the Linked Data Platform (LDP) Working Group– Membership spans over 50 participants from 30 organizations– Arnaud J Le Hors (IBM) and Erik Wilde (EMC) as co-chairs

Page 10: Leveraging W3C Linked Data, OSLC, and Open Source for Loosely Coupled Application Integrations

© 2013 IBM Corporation

W3C Linked Data Platform (LDP)

WG is chartered to produce a W3C Recommendation:– For HTTP-based (RESTful) application integration patterns using read/write Linked Data– It will complement SPARQL and will be compatible with standards for publishing Linked

Data, bringing the data integration features of RDF to RESTful, data-oriented software development.

■ LDP defines a set of rules that clarify and extends Tim Berners-Lee's four basic rules focusing on the following concepts:

– LDP Resources (LDPR)– HTTP and RDF techniques to read and write linked data

– LDP Containers (LDPC)– A LDPR to which you POST to create new things, GET to find existing things– Similar to what AtomPub does for XML

– Paging– A mechanism to get the content of a LDPC in chunks

– Ordering– A mechanism to specify the order in which the content of a LDPC is sorted

WG currently on target to deliver a W3C Candidate Recommendation by the end of 2013.

Details @ http://www.w3.org/2012/ldp

Page 11: Leveraging W3C Linked Data, OSLC, and Open Source for Loosely Coupled Application Integrations

© 2013 IBM Corporation

W3C Linked Data Platform (LDP)

■ Published 1st Public Working Draft of Use Case and Requirements on January 31

■ Published 2nd Public Working Draft of Linked Data Platform 1.0 spec on March 7

■ 2nd Face-to-Face meeting March 13-15 Cambridge, MA■ 14 in attendance in all (out of 50 members)■Worked on key issues (IBM's issues identified via SWGAB Linked Data WG and OSLC)■Covered topics of required deliverables: specification, use case and requirements, test

suite, and access control requirements.

■ Key issues■Binary resources and metadata – agreed on direction in line with IBM's preference.■Partial update of resources – agreed on direction in line with OSLC's approach.■Composition and aggregation models for containers – working on a new proposal to

address various concerns with the status quo.

Last Call specification most likely to slip from May to June.

3rd Face-to-Face meeting scheduled for June to address any remaining issues.

WG still on target to deliver a W3C Candidate Recommendation by the end of 2013.

Ashok Malhotra of Oracle to become co-editor of the specification.

Details @ http://www.w3.org/2012/ldp 11

Page 12: Leveraging W3C Linked Data, OSLC, and Open Source for Loosely Coupled Application Integrations

© 2013 IBM Corporation

Linked Data Platform - Resource

• What resource formats should be used?

• What literal value types should be used?

• Are there some typical vocabularies that should be reused?

• How is optimistic collision detection handled for updates?

• What should client expectations be for changes to linked-to resources, such as type changes?

• What can servers do to ease the burden of constraints for resource creation?

Page 13: Leveraging W3C Linked Data, OSLC, and Open Source for Loosely Coupled Application Integrations

© 2013 IBM Corporation

http://example.org

LDP Resource – GET a simple example

Removed HTTP headers to save some space

@prefix dcterms: <http://purl.org/dc/terms/>.@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>.@prefix ldp: <http://w3.org/ns/ldp#>.

<http://example.org/container1/member1> a o:Cash; dcterms:title “ACME Bank savings account”; o:value 45.00.

GET /container1/member1 HTTP/1.1Host: example.orgAccept: text/turtle

Req

uest

Res

pons

e

container1

member1

member2

member3

Page 14: Leveraging W3C Linked Data, OSLC, and Open Source for Loosely Coupled Application Integrations

© 2013 IBM Corporation

Linked Data Platform - Container

• To which URLs can I POST to create new resources?

• Where can I GET a list of existing resources?

• How is the order of the container entries expressed?

• How do I get information about the members along with the container?

• How do I GET the entries of a large container broken up into pages?

• How can I ensure the resource data is easy to query?

Page 15: Leveraging W3C Linked Data, OSLC, and Open Source for Loosely Coupled Application Integrations

© 2013 IBM Corporation

http://example.org

ldp:Container – GET a simple example

Removed HTTP headers to save some space

@prefix dcterms: <http://purl.org/dc/terms/>.@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>.@prefix ldp: <http://w3c.org/ns/ldp#>.

<http://example.org/container1>   a ldp:Container;   dcterms:title "A very simple container";   rdfs:member <http://example.org/container1/member1>, <http://example.org/container1/member2>, <http://example.org/container1/member3>.

GET /container1 HTTP/1.1Host: example.orgAccept: text/turtle

Req

uest

Res

pons

e

container1

member1

member2

member3

Page 16: Leveraging W3C Linked Data, OSLC, and Open Source for Loosely Coupled Application Integrations

© 2013 IBM Corporation

OSLC’s Big Picture

Open Services for Lifecycle CollaborationLifecycle integration inspired by the web

LINKED DATA PLATFORM WORKING GROUP

Future Home of OSLC Spec Dev

The Resource for OSLC

Implementers

Inspired by the web

ProvenFree to use and share

OpenChanging the industry

InnovativeOSLC:

Tests, Libraries, Samples, Examples,Reference Implementations

Scenario-driven & Solution-oriented

Generally applicable: specs available for many domains covering ALM, DevOps, ISM, and PLM

Leading choice for strategic integration technology

Page 17: Leveraging W3C Linked Data, OSLC, and Open Source for Loosely Coupled Application Integrations

© 2013 IBM Corporation

Open Source Linked Data projects

Simple yet solid framework for building RESTful Web services based on JAX-RS

RDF Java API and Fuseki provides REST-style SPARQL HTTP interface

Easily develop semantic web apps by providing tools to manipulate RDF data, create RESTful Web Services

SDK and supporting tools to help the community to adopt OSLC specifications and build compliant tools

OSLC SDKs and tools for the .NET development community

OSLC4Net

Impl of LDP that can be extended and deployed easily by orgs who want to publish data or build custom apps

Page 18: Leveraging W3C Linked Data, OSLC, and Open Source for Loosely Coupled Application Integrations

© 2013 IBM Corporation

Eclipse Lyo

• Provide tools to enable adoption of OSLC and Linked Data specifications

• SDKs

– OSLC4J, OAuth, Lyo::OSLC for Perl

– OSLC provider and consumer development

• Test Suites

– Assessment reports OSLC implementations

– Coverage for Core + Change, Requirements, Quality, Asset and Automation. Performance Management tests under development.

• Sample implementations, workshops, tutorials

– Provider and consumer samples.

– Updated tutorial: http://open-services.net/resources/tutorials/integrating-products-with-oslc/

• Project update

– 1.1 available in February (Client SDK, OAuth libraries, other enhancements)

– 2.0 planned for June (new spec support, new samples, non-Java libs)

Page 19: Leveraging W3C Linked Data, OSLC, and Open Source for Loosely Coupled Application Integrations

© 2013 IBM Corporation

OSLC – http://open-services.net

Eclipse Lyo – http://eclipse.org/lyo

W3C Linked Data Platform – http://LinkedDataPlatform.org