Upload
steve-speicher
View
1.638
Download
0
Tags:
Embed Size (px)
DESCRIPTION
Citation preview
© 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 @mffiedler
© 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
© 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
© 2013 IBM Corporation
Year 2010 – Linked Data and OSLC – A major breakthrough
Learned to integrate with open REST-based protocols instead of glue
@ http://open-services.net
Software Configuration Management
Work item & bug tracking
Build automation & management
Test automation & management Requirements
management
© 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
© 2013 IBM Corporation
Linked Data – What is it?
TestCase 14 is blocked by Issue 973 http://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 Apache http://joecoder.me doap:committer http://apache.org
Issue 973 is owned by Joe http://apache.org/jira/HTTPCLIENT-973 dc:contributor http://joecoder.me
© 2013 IBM Corporation
Lifecycle Tool Change Management
Lifecycle Tool Quality Management
Lifecycle Tool Requirements Management
Service Management Help Desk
Service Management Deployment
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
© 2013 IBM Corporation
REST W3C Linked Data
OSLC Specifications: Layered Cake and Independently Adoptable
OSLC Core
Change Management Quality Management Dom
ains
C
omm
on
Performance Monitoring Automation
Provides common and core needs
New domains as needed
Keep scope simple, learn and iterate
© 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
© 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
© 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 – agreement on direction, editor to make changes ■ 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.
§ Details @ http://www.w3.org/2012/ldp
© 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?
© 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.1 Host: example.org Accept: text/turtle
Req
uest
R
espo
nse
container1
member1
member2
member3
© 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?
© 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.1 Host: example.org Accept: text/turtle R
eque
st
Res
pons
e
container1
member1
member2
member3
© 2013 IBM Corporation
OSLC’s Big Picture
Open Services for Lifecycle Collaboration Lifecycle 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
Proven Free to use and share
Open Changing the industry
Innovative
OSLC:
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
© 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
© 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)
© 2013 IBM Corporation
ü OSLC – http://open-services.net
ü Eclipse Lyo – http://eclipse.org/lyo
ü W3C Linked Data Platform – http://LinkedDataPlatform.org