SlideShare ist ein Scribd-Unternehmen logo
1 von 36
Downloaden Sie, um offline zu lesen
© 2013 IBM Corporation
Linked Data Platform
Arnaud J Le Hors, IBM Linked Data Standards Lead
lehors@us.ibm.com
Linked Data Platform
15 May 2013
© 2013 IBM Corporation2
Linked Data Platform
Agenda
➢ IBM Rational's ALM Integration Challenge
■ Linked Data
■ Applying Linked Data to ALM
■ Challenges of using Linked Data
■ W3C Linked Data Platform
■ Related Projects
© 2013 IBM Corporation3
Linked Data Platform
Software Development Tools : Year 2000 - point products
User complaints
–Need tools to work better
–Need tools to work together
Software
Configuration
Management
Work-item & defect
tracking (aka Change
Management)
Build automation
& management
Test automation
& management
Requirements
management
© 2013 IBM Corporation
Linked Data Platform
ALM Solution
• 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 & defect
tracking (aka Change
Management)
Build automation
& management
Test automation
& management
Requirements
management
4
Year 2005 – Application Lifecycle Management (ALM) V1
© 2013 IBM Corporation5
Linked Data Platform
Agenda
■ IBM Rational's ALM Integration Challenge
➢ Linked Data
■ Applying Linked Data to ALM
■ Challenges of using Linked Data
■ W3C Linked Data Platform
■ Related Projects
© 2013 IBM Corporation
Linked Data Platform
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 Platform
Not All Linked Data needs to be Linked Open Data (LOD)
★ Available on the web (whatever format) but with an open licence, to be Open Data
★★ Available as machine-readable structured data (e.g. excel instead of image scan
of a table)
★★★ As (2) plus non-proprietary format (e.g. CSV instead of excel)
★★★★ All the above plus, Use open standards from W3C (RDF and SPARQL) to identify
things, so that people can point at your stuff
★★★★★ All the above, plus: Link your data to other people’s data to provide context
 This does NOT mean all Linked Data must be freely available.
 Just like not all web pages are publicly available not all Linked Data needs to be.
Added in 2010 by Tim Berners-Lee: “in order to encourage people,
especially government data owners, along the road to good
linked data, I have developed this star rating system”
© 2013 IBM Corporation
Linked Data Platform
W3C Linked Data Specifications
Domain Specifications
Protocol  HTTP
Data Model  RDF
Serialization Format  RDF/XML
 Turtle
 TriG
 RDFa
 JSON-LD
Query  SPARQL
 There are other specifications that relate to the Semantic Web such as OWL that you can
use in addition but you don't need to use any of the Semantic Web features (ontologies,
inferencing, reasoning, etc) to make use of Linked Data.
© 2013 IBM Corporation9
Linked Data Platform
Agenda
■ IBM Rational's ALM Integration Challenge
■ Linked Data
➢ Applying Linked Data to ALM
■ Challenges of using Linked Data
■ W3C Linked Data Platform
■ Related Projects
© 2013 IBM Corporation
Linked Data Platform
Software
Configuration
Management
Work-item & defect
tracking (aka Change
Management)
Build automation
& management
Test automation
& management
Requirements
management
Year 2010 – IBM Rational's Breakthrough
10
Integrate with data & open protocols instead of glue code
“If the entire Web can connect like this, why wouldn't the same idea work for ALM?”
 Applying Linked Data to the ALM Integration Challenge:
 Artifacts such as defects, change requests, and tests become resources exposed as RDF
that can be linked to each other
 Tools simply access the resources via HTTP following the Linked Data principles
© 2013 IBM Corporation
Linked Data Platform
Applying Linked Data to ALM – A development tools example
TestCase 14 is blocked by Issue 973
http://srv/qm/tc/14 qm:blockedBy http://apache.org/jira/HTTPCLIENT-973
© 2013 IBM Corporation
Linked Data Platform
Applying Linked Data to ALM – A development tools example
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
Issue 973 is owned by Joe
http://apache.org/jira/HTTPCLIENT-973 dc:contributor http://joecoder.me
© 2013 IBM Corporation
Linked Data Platform
Applying Linked Data to ALM – A development tools example
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
Issue 973 is owned by Joe
http://apache.org/jira/HTTPCLIENT-973 dc:contributor http://joecoder.me
Joe is a committer for Apache
http://joecoder.me doap:committer http://apache.org
© 2013 IBM Corporation14
Linked Data Platform
Agenda
■ IBM Rational's ALM Integration Challenge
■ Linked Data
■ Applying Linked Data to ALM
➢ Challenges of using Linked Data
■ W3C Linked Data Platform
■ Related Projects
© 2013 IBM Corporation15
Linked Data Platform
Challenges of using Linked Data
■ No formal definition
■ State of the art is primarily about publishing read-only data on the web, downloaded and
updated as large dumps or via a SPARQL entry point
■ Tim Berners-Lee's four principles are a terrific foundation but don’t go far enough.
■ Developers are left with many unanswered questions:
– How do I create a resource?
• It seems obvious that you use POST to create, but what do you POST to?
– Where can I get the list of resources that already exist?
– Which vocabulary do I use?
– Which media types do I use?
– When containers get big, how do I split the information into pages?
– How do I specify ordering?
© 2013 IBM Corporation16
Linked Data Platform
Agenda
■ IBM Rational's ALM Integration Challenge
■ Linked Data
■ Applying Linked Data to ALM
■ Challenges of using Linked Data
➢ W3C Linked Data Platform
■ Related Projects
© 2013 IBM Corporation
Linked Data Platform
W3C Linked Data Platform (LDP) Working Group
 Workgroup membership spans 50 participants from 30 organizations
 Chair: Arnaud J Le Hors (IBM)
 Working towards defining a clear definition of “Linked Data”, in the form of a W3C
Recommendation
– Based on Tim Berners-Lee four principles of Linked Data
 Chartered to produce a “Linked Data Platform” specification that:
– HTTP-based (RESTful) application integration patterns using read/write Linked Data
– 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.
 Published Linked Data Platform Latest Public Working Draft on 7 March 2012
 Published Use Case & Requirements First Public Working Draft on 31 January 2013
 On track to deliver a W3C Candidate Recommendation in 2013
Details @ http://www.w3.org/2012/ldp
© 2013 IBM Corporation18
Linked Data Platform
Linked Data Platform (LDP)
■ 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 use 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
© 2013 IBM Corporation
Linked Data Platform
Linked Data Platform Resource (LDPR)
Some rules:
1. LDPRs are HTTP resources that can be created, modified, deleted and read using standard
HTTP methods (i.e., POST, PUT/PATCH, DELETE, GET).
2. LDPRs use RDF to define their states.
3. You can request a Turtle representation of a LDPR and possibly other reps (e.g., XML/RDF)
4. LDP clients use Optimistic Collision Detection on update.
5. LDPRs set rdf:type explicitly.
6. LDP clients expect to encounter unknown properties and content.
7. LDP clients do not assume the type of a resource at the end of a link.
© 2013 IBM Corporation
Linked Data Platform
http://example.org
LDP Resource – GET a simple example
Removed HTTP headers to save some space
@prefix dcterms: <http://purl.org/dc/terms/>.
@prefix ldp: <http://www.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
RequestResponse
container1
member1
member2
member3
© 2013 IBM Corporation
Linked Data Platform
Linked Data Platform Container (LDPC)
Some rules:
1. LDPCs are LDPRs
2. Clients can retrieve the list of resource members of an LDPC using GET
3. New resources are created using POST
4. Any resource can be POSTed to an LDPC – not just LDPRs
5. After POSTing a new resource to an LDPC, the new resource will appear as a member until
it is deleted.
6. Clients can retrieve information about an LDPC without retrieving a full representation of its
content, including its members.
7. On deleting an LDPC the server MAY delete member resources.
© 2013 IBM Corporation
Linked Data Platform
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://www.w3.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
RequestResponse
container1
member1
member2
member3
© 2013 IBM Corporation
Linked Data Platform
LDP Container – Create resource and add
HTTP/1.1 201 CREATED
Content-Location: http://example.org/container1/member4
POST /container1 HTTP/1.1
Host: example.org
Content-type: text/turtle
Content-length: 324
@prefix dcterms: <http://purl.org/dc/terms/>.
@prefix o: <http://example.org/ontology/>.
<>
a o:Stock;
dcterms:title “ACME Co.”;
o:value 100.00.
RequestResponse
http://example.org
container1
member1
member2
member3
+member4
© 2013 IBM Corporation
Linked Data Platform
LDP Container – Get updated
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://www.w3.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>,
<http://example.org/container1/member4>.
GET /container1 HTTP/1.1
Host: example.org
Accept: text/turtle
RequestResponse
http://example.org
container1
member1
member2
member3
member4
© 2013 IBM Corporation
Linked Data Platform
LDP Container – Slightly more complex example
# The following is the representation of
# http://example.org/netWorth/nw1
@prefix o: <http://example.org/ontology/>.
@prefix dcterms: <http://purl.org/dc/terms/>.
@prefix ldp: <http://www.w3.org/ns/ldp#>.
 
<http://example.org/netWorth/nw1>
a o:NetWorth;
o:asset
<http://example.org/netWorth/nw1/assetContainer/a1>,
<http://example.org/netWorth/nw1/assetContainer/a2>.
 
<http://example.org/netWorth/nw1/assetContainer>
a ldp:Container;
dcterms:title "The assets of JohnZSmith";
ldp:membershipSubject <http://example.org/netWorth/nw1>;
ldp:membershipPredicate o:asset.
• Membership predicate is something other than rdfs:member (o:asset)
• Subject for members is something other than the container
© 2013 IBM Corporation
Linked Data Platform
LDP Container – Inlined members
# chopped @prefix
<http://example.org/netWorth/nw1>
a o:NetWorth;
o:asset
<http://example.org/netWorth/nw1/assetContainer/a1>,
<http://example.org/netWorth/nw1/assetContainer/a2>.
<http://example.org/netWorth/nw1/assetContainer>
a ldp:Container;
dcterms:title "The assets of JohnZSmith";
ldp:membershipSubject <http://example.org/netWorth/nw1>;
ldp:membershipPredicate o:asset.
<http://example.org/netWorth/nw1/assetContainer/a1>
a o:Stock;
o:value 10000.
<http://example.org/netWorth/nw1/assetContainer/a2>
a o:Bond;
o:value 20000.
• Statements about the member resources included with container representation response
• Note: how much is included is up to the server and application domain specific
© 2013 IBM Corporation
Linked Data Platform
LDP Container – Paging (first page)
# Request-URI: http://example.org/netWorth/nw1?firstPage
# omitted @prefix
<http://example.org/netWorth/nw1>
a o:NetWorth;
o:asset
<http://example.org/netWorth/nw1/assetContainer/a1>,
<http://example.org/netWorth/nw1/assetContainer/a2>.
<http://example.org/netWorth/nw1/assetContainer>
a ldp:Container;
dcterms:title "The assets of JohnZSmith";
bp:membershipSubject <http://example.org/netWorth/nw1>;
bp:membershipPredicate o:asset.
<http://example.org/netWorth/nw1/assetContainer?firstPage>
a ldp:Page;
ldp:pageOf <http://example.org/netWorth/nw1/assetContainer>;
ldp:nextPage <http://example.org/netWorth/nw1/assetContainer?p=2>.
<http://example.org/netWorth/nw1/assetContainer/a1>
a o:Stock;
o:value 100.00.
<http://example.org/netWorth/nw1/assetContainer/a2>
a o:Cash;
o:value 50.00.
• New ldp:Page resource
• Members of containers are paged, not HTTP responses
© 2013 IBM Corporation
Linked Data Platform
LDP Container – Paging (last page)
# Request-URI: http://example.org/netWorth/nw1/assetContainer?p=2
# omitted @prefix
<http://example.org/netWorth/nw1>
a o:NetWorth;
o:asset
<http://example.org/netWorth/nw1/assetContainer/a3>.
<http://example.org/netWorth/nw1/assetContainer>
a bp:Container;
dcterms:title "The assets of JohnZSmith";
bp:membershipSubject <http://example.org/netWorth/nw1>;
bp:membershipPredicate o:asset.
<http://example.org/netWorth/nw1/assetContainer?p=2>
a ldp:Page;
ldp:pageOf <http://example.org/netWorth/nw1/assetContainer>;
ldp:nextPage rdf:nil.
<http://example.org/netWorth/nw1/assetContainer/a5>
a o:Stock;
dcterms:title "Big Co.";
o:value 200.02.
• Last page indicated by rdf:nil
© 2013 IBM Corporation
Linked Data Platform
LDP Container – Paging (ordering)
# Request-URI: http://example.org/netWorth/nw1/assetContainer?firstPage
# omitted @prefix
<http://example.org/netWorth/nw1>
a o:NetWorth;
o:asset
<http://example.org/netWorth/nw1/assetContainer/a1>,
<http://example.org/netWorth/nw1/assetContainer/a2>.
<http://example.org/netWorth/nw1/assetContainer>
a ldp:Container;
dcterms:title "The assets of JohnZSmith";
ldp:membershipSubject <http://example.org/netWorth/nw1>;
ldp:membershipPredicate o:asset.
<http://example.org/netWorth/nw1/assetContainer?firstPage>
a ldp:Page;
ldp:pageOf <http://example.org/netWorth/nw1/assetContainer>;
ldp:containerSortPredicates (o:value).
<http://example.org/netWorth/nw1/assetContainer/a1>
a o:Stock;
o:value 100.00.
<http://example.org/netWorth/nw1/assetContainer/a2>
a o:Cash;
o:value 50.00.
• Order indicated by ldp:containerSortPredicates
• No ordinal predicate introduced, leverage domain model
© 2013 IBM Corporation
Linked Data Platform
LDP Working Group Activity
 Changes aim at making the specification:
– More broadly applicable
• Moved several restrictions to “Deployment Guide” - a set of best practices
(e.g., datatypes, common properties)
• Turtle is the default serialization format
– More precise
• Removed uncertainty (e.g., “MAY” → “MUST”)
• Changed to be more explicit and less implicit
 Samples of issues being discussed:
– Container
• Do member resources get deleted when a Container is deleted?
• How do I create a Container?
• Can Containers be nested?
• How do I find the first Container?
– Paging of Resources, not just Containers?
– Binary resources - How do I add a non-RDF resource to a Container?
– PATCH - What format to use?
© 2013 IBM Corporation
Linked Data Platform
Looking Forward
Linked Data has the potential of becoming an important application integration
model in the enterprise but several necessary and desirable features are not in
scope for LDP 1.0:
■ Security – Authentication, Access control
– WG is chartered to identify requirements and use cases
– Several technologies can already be used: OAuth, WebId, etc.
 Validation/Constraints
– RDFS and OWL are for inference not validation
– There is currently no standard technology to perform validation
 Deployment challenges
– URL changes
– Server cloning
– Cross-server query
© 2013 IBM Corporation32
Linked Data Platform
Agenda
■ IBM Rational's ALM Integration Challenge
■ Linked Data
■ Applying Linked Data to ALM
■ Challenges of using Linked Data
■ W3C Linked Data Platform
➢ Related Projects
© 2013 IBM Corporation
Linked Data Platform
LDP Implementations
SDK and supporting tools to help the community to
adopt OSLC specifications and build compliant tools
Implementation of LDP that can be extended and
deployed easily by organisations who want to publish
data or build custom applications
Marmotta
For a more complete list see:
http://www.w3.org/wiki/LDP_Implementations
Several implementations are already available:
© 2013 IBM Corporation
Linked Data Platform
Automation
Monitoring
 Community driven and governed
 400+ registered community members
 Workgroup members from 34+ organizations
 Wide range of interests, expertise, & participation
 Open specifications for numerous disciplines
 Defined by scenarios – solution oriented
 Implementations from IBM, BPs, and Others
 Based on Linked Data
Open Services for Lifecycle Collaboration
Lifecycle integration inspired by the web
Inspired by the web
Proven
Free to use and share
Open
Changing the industry
Innovative
Open Services for Lifecycle Collaboration (OSLC)
Working to improve the way software lifecycle tools share data
open-services.net
NEWS: Technical Work moving to OASIS - Look for a new OASIS Member Section!
© 2013 IBM Corporation
Linked Data Platform
© 2013 IBM Corporation
Linked Data Platform
• Based on parts of
OSLC Core
• Foundation for future
OSLC Core
Specifications
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
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
36

Weitere ähnliche Inhalte

Kürzlich hochgeladen

My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 

Kürzlich hochgeladen (20)

My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 

Empfohlen

Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTExpeed Software
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsPixeldarts
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Applitools
 

Empfohlen (20)

Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 

WWW2013 Linked Data Platform (LDP) 20130515

  • 1. © 2013 IBM Corporation Linked Data Platform Arnaud J Le Hors, IBM Linked Data Standards Lead lehors@us.ibm.com Linked Data Platform 15 May 2013
  • 2. © 2013 IBM Corporation2 Linked Data Platform Agenda ➢ IBM Rational's ALM Integration Challenge ■ Linked Data ■ Applying Linked Data to ALM ■ Challenges of using Linked Data ■ W3C Linked Data Platform ■ Related Projects
  • 3. © 2013 IBM Corporation3 Linked Data Platform Software Development Tools : Year 2000 - point products User complaints –Need tools to work better –Need tools to work together Software Configuration Management Work-item & defect tracking (aka Change Management) Build automation & management Test automation & management Requirements management
  • 4. © 2013 IBM Corporation Linked Data Platform ALM Solution • 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 & defect tracking (aka Change Management) Build automation & management Test automation & management Requirements management 4 Year 2005 – Application Lifecycle Management (ALM) V1
  • 5. © 2013 IBM Corporation5 Linked Data Platform Agenda ■ IBM Rational's ALM Integration Challenge ➢ Linked Data ■ Applying Linked Data to ALM ■ Challenges of using Linked Data ■ W3C Linked Data Platform ■ Related Projects
  • 6. © 2013 IBM Corporation Linked Data Platform 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
  • 7. © 2013 IBM Corporation Linked Data Platform Not All Linked Data needs to be Linked Open Data (LOD) ★ Available on the web (whatever format) but with an open licence, to be Open Data ★★ Available as machine-readable structured data (e.g. excel instead of image scan of a table) ★★★ As (2) plus non-proprietary format (e.g. CSV instead of excel) ★★★★ All the above plus, Use open standards from W3C (RDF and SPARQL) to identify things, so that people can point at your stuff ★★★★★ All the above, plus: Link your data to other people’s data to provide context  This does NOT mean all Linked Data must be freely available.  Just like not all web pages are publicly available not all Linked Data needs to be. Added in 2010 by Tim Berners-Lee: “in order to encourage people, especially government data owners, along the road to good linked data, I have developed this star rating system”
  • 8. © 2013 IBM Corporation Linked Data Platform W3C Linked Data Specifications Domain Specifications Protocol  HTTP Data Model  RDF Serialization Format  RDF/XML  Turtle  TriG  RDFa  JSON-LD Query  SPARQL  There are other specifications that relate to the Semantic Web such as OWL that you can use in addition but you don't need to use any of the Semantic Web features (ontologies, inferencing, reasoning, etc) to make use of Linked Data.
  • 9. © 2013 IBM Corporation9 Linked Data Platform Agenda ■ IBM Rational's ALM Integration Challenge ■ Linked Data ➢ Applying Linked Data to ALM ■ Challenges of using Linked Data ■ W3C Linked Data Platform ■ Related Projects
  • 10. © 2013 IBM Corporation Linked Data Platform Software Configuration Management Work-item & defect tracking (aka Change Management) Build automation & management Test automation & management Requirements management Year 2010 – IBM Rational's Breakthrough 10 Integrate with data & open protocols instead of glue code “If the entire Web can connect like this, why wouldn't the same idea work for ALM?”  Applying Linked Data to the ALM Integration Challenge:  Artifacts such as defects, change requests, and tests become resources exposed as RDF that can be linked to each other  Tools simply access the resources via HTTP following the Linked Data principles
  • 11. © 2013 IBM Corporation Linked Data Platform Applying Linked Data to ALM – A development tools example TestCase 14 is blocked by Issue 973 http://srv/qm/tc/14 qm:blockedBy http://apache.org/jira/HTTPCLIENT-973
  • 12. © 2013 IBM Corporation Linked Data Platform Applying Linked Data to ALM – A development tools example 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 Issue 973 is owned by Joe http://apache.org/jira/HTTPCLIENT-973 dc:contributor http://joecoder.me
  • 13. © 2013 IBM Corporation Linked Data Platform Applying Linked Data to ALM – A development tools example 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 Issue 973 is owned by Joe http://apache.org/jira/HTTPCLIENT-973 dc:contributor http://joecoder.me Joe is a committer for Apache http://joecoder.me doap:committer http://apache.org
  • 14. © 2013 IBM Corporation14 Linked Data Platform Agenda ■ IBM Rational's ALM Integration Challenge ■ Linked Data ■ Applying Linked Data to ALM ➢ Challenges of using Linked Data ■ W3C Linked Data Platform ■ Related Projects
  • 15. © 2013 IBM Corporation15 Linked Data Platform Challenges of using Linked Data ■ No formal definition ■ State of the art is primarily about publishing read-only data on the web, downloaded and updated as large dumps or via a SPARQL entry point ■ Tim Berners-Lee's four principles are a terrific foundation but don’t go far enough. ■ Developers are left with many unanswered questions: – How do I create a resource? • It seems obvious that you use POST to create, but what do you POST to? – Where can I get the list of resources that already exist? – Which vocabulary do I use? – Which media types do I use? – When containers get big, how do I split the information into pages? – How do I specify ordering?
  • 16. © 2013 IBM Corporation16 Linked Data Platform Agenda ■ IBM Rational's ALM Integration Challenge ■ Linked Data ■ Applying Linked Data to ALM ■ Challenges of using Linked Data ➢ W3C Linked Data Platform ■ Related Projects
  • 17. © 2013 IBM Corporation Linked Data Platform W3C Linked Data Platform (LDP) Working Group  Workgroup membership spans 50 participants from 30 organizations  Chair: Arnaud J Le Hors (IBM)  Working towards defining a clear definition of “Linked Data”, in the form of a W3C Recommendation – Based on Tim Berners-Lee four principles of Linked Data  Chartered to produce a “Linked Data Platform” specification that: – HTTP-based (RESTful) application integration patterns using read/write Linked Data – 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.  Published Linked Data Platform Latest Public Working Draft on 7 March 2012  Published Use Case & Requirements First Public Working Draft on 31 January 2013  On track to deliver a W3C Candidate Recommendation in 2013 Details @ http://www.w3.org/2012/ldp
  • 18. © 2013 IBM Corporation18 Linked Data Platform Linked Data Platform (LDP) ■ 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 use 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
  • 19. © 2013 IBM Corporation Linked Data Platform Linked Data Platform Resource (LDPR) Some rules: 1. LDPRs are HTTP resources that can be created, modified, deleted and read using standard HTTP methods (i.e., POST, PUT/PATCH, DELETE, GET). 2. LDPRs use RDF to define their states. 3. You can request a Turtle representation of a LDPR and possibly other reps (e.g., XML/RDF) 4. LDP clients use Optimistic Collision Detection on update. 5. LDPRs set rdf:type explicitly. 6. LDP clients expect to encounter unknown properties and content. 7. LDP clients do not assume the type of a resource at the end of a link.
  • 20. © 2013 IBM Corporation Linked Data Platform http://example.org LDP Resource – GET a simple example Removed HTTP headers to save some space @prefix dcterms: <http://purl.org/dc/terms/>. @prefix ldp: <http://www.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 RequestResponse container1 member1 member2 member3
  • 21. © 2013 IBM Corporation Linked Data Platform Linked Data Platform Container (LDPC) Some rules: 1. LDPCs are LDPRs 2. Clients can retrieve the list of resource members of an LDPC using GET 3. New resources are created using POST 4. Any resource can be POSTed to an LDPC – not just LDPRs 5. After POSTing a new resource to an LDPC, the new resource will appear as a member until it is deleted. 6. Clients can retrieve information about an LDPC without retrieving a full representation of its content, including its members. 7. On deleting an LDPC the server MAY delete member resources.
  • 22. © 2013 IBM Corporation Linked Data Platform 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://www.w3.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 RequestResponse container1 member1 member2 member3
  • 23. © 2013 IBM Corporation Linked Data Platform LDP Container – Create resource and add HTTP/1.1 201 CREATED Content-Location: http://example.org/container1/member4 POST /container1 HTTP/1.1 Host: example.org Content-type: text/turtle Content-length: 324 @prefix dcterms: <http://purl.org/dc/terms/>. @prefix o: <http://example.org/ontology/>. <> a o:Stock; dcterms:title “ACME Co.”; o:value 100.00. RequestResponse http://example.org container1 member1 member2 member3 +member4
  • 24. © 2013 IBM Corporation Linked Data Platform LDP Container – Get updated 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://www.w3.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>, <http://example.org/container1/member4>. GET /container1 HTTP/1.1 Host: example.org Accept: text/turtle RequestResponse http://example.org container1 member1 member2 member3 member4
  • 25. © 2013 IBM Corporation Linked Data Platform LDP Container – Slightly more complex example # The following is the representation of # http://example.org/netWorth/nw1 @prefix o: <http://example.org/ontology/>. @prefix dcterms: <http://purl.org/dc/terms/>. @prefix ldp: <http://www.w3.org/ns/ldp#>.   <http://example.org/netWorth/nw1> a o:NetWorth; o:asset <http://example.org/netWorth/nw1/assetContainer/a1>, <http://example.org/netWorth/nw1/assetContainer/a2>.   <http://example.org/netWorth/nw1/assetContainer> a ldp:Container; dcterms:title "The assets of JohnZSmith"; ldp:membershipSubject <http://example.org/netWorth/nw1>; ldp:membershipPredicate o:asset. • Membership predicate is something other than rdfs:member (o:asset) • Subject for members is something other than the container
  • 26. © 2013 IBM Corporation Linked Data Platform LDP Container – Inlined members # chopped @prefix <http://example.org/netWorth/nw1> a o:NetWorth; o:asset <http://example.org/netWorth/nw1/assetContainer/a1>, <http://example.org/netWorth/nw1/assetContainer/a2>. <http://example.org/netWorth/nw1/assetContainer> a ldp:Container; dcterms:title "The assets of JohnZSmith"; ldp:membershipSubject <http://example.org/netWorth/nw1>; ldp:membershipPredicate o:asset. <http://example.org/netWorth/nw1/assetContainer/a1> a o:Stock; o:value 10000. <http://example.org/netWorth/nw1/assetContainer/a2> a o:Bond; o:value 20000. • Statements about the member resources included with container representation response • Note: how much is included is up to the server and application domain specific
  • 27. © 2013 IBM Corporation Linked Data Platform LDP Container – Paging (first page) # Request-URI: http://example.org/netWorth/nw1?firstPage # omitted @prefix <http://example.org/netWorth/nw1> a o:NetWorth; o:asset <http://example.org/netWorth/nw1/assetContainer/a1>, <http://example.org/netWorth/nw1/assetContainer/a2>. <http://example.org/netWorth/nw1/assetContainer> a ldp:Container; dcterms:title "The assets of JohnZSmith"; bp:membershipSubject <http://example.org/netWorth/nw1>; bp:membershipPredicate o:asset. <http://example.org/netWorth/nw1/assetContainer?firstPage> a ldp:Page; ldp:pageOf <http://example.org/netWorth/nw1/assetContainer>; ldp:nextPage <http://example.org/netWorth/nw1/assetContainer?p=2>. <http://example.org/netWorth/nw1/assetContainer/a1> a o:Stock; o:value 100.00. <http://example.org/netWorth/nw1/assetContainer/a2> a o:Cash; o:value 50.00. • New ldp:Page resource • Members of containers are paged, not HTTP responses
  • 28. © 2013 IBM Corporation Linked Data Platform LDP Container – Paging (last page) # Request-URI: http://example.org/netWorth/nw1/assetContainer?p=2 # omitted @prefix <http://example.org/netWorth/nw1> a o:NetWorth; o:asset <http://example.org/netWorth/nw1/assetContainer/a3>. <http://example.org/netWorth/nw1/assetContainer> a bp:Container; dcterms:title "The assets of JohnZSmith"; bp:membershipSubject <http://example.org/netWorth/nw1>; bp:membershipPredicate o:asset. <http://example.org/netWorth/nw1/assetContainer?p=2> a ldp:Page; ldp:pageOf <http://example.org/netWorth/nw1/assetContainer>; ldp:nextPage rdf:nil. <http://example.org/netWorth/nw1/assetContainer/a5> a o:Stock; dcterms:title "Big Co."; o:value 200.02. • Last page indicated by rdf:nil
  • 29. © 2013 IBM Corporation Linked Data Platform LDP Container – Paging (ordering) # Request-URI: http://example.org/netWorth/nw1/assetContainer?firstPage # omitted @prefix <http://example.org/netWorth/nw1> a o:NetWorth; o:asset <http://example.org/netWorth/nw1/assetContainer/a1>, <http://example.org/netWorth/nw1/assetContainer/a2>. <http://example.org/netWorth/nw1/assetContainer> a ldp:Container; dcterms:title "The assets of JohnZSmith"; ldp:membershipSubject <http://example.org/netWorth/nw1>; ldp:membershipPredicate o:asset. <http://example.org/netWorth/nw1/assetContainer?firstPage> a ldp:Page; ldp:pageOf <http://example.org/netWorth/nw1/assetContainer>; ldp:containerSortPredicates (o:value). <http://example.org/netWorth/nw1/assetContainer/a1> a o:Stock; o:value 100.00. <http://example.org/netWorth/nw1/assetContainer/a2> a o:Cash; o:value 50.00. • Order indicated by ldp:containerSortPredicates • No ordinal predicate introduced, leverage domain model
  • 30. © 2013 IBM Corporation Linked Data Platform LDP Working Group Activity  Changes aim at making the specification: – More broadly applicable • Moved several restrictions to “Deployment Guide” - a set of best practices (e.g., datatypes, common properties) • Turtle is the default serialization format – More precise • Removed uncertainty (e.g., “MAY” → “MUST”) • Changed to be more explicit and less implicit  Samples of issues being discussed: – Container • Do member resources get deleted when a Container is deleted? • How do I create a Container? • Can Containers be nested? • How do I find the first Container? – Paging of Resources, not just Containers? – Binary resources - How do I add a non-RDF resource to a Container? – PATCH - What format to use?
  • 31. © 2013 IBM Corporation Linked Data Platform Looking Forward Linked Data has the potential of becoming an important application integration model in the enterprise but several necessary and desirable features are not in scope for LDP 1.0: ■ Security – Authentication, Access control – WG is chartered to identify requirements and use cases – Several technologies can already be used: OAuth, WebId, etc.  Validation/Constraints – RDFS and OWL are for inference not validation – There is currently no standard technology to perform validation  Deployment challenges – URL changes – Server cloning – Cross-server query
  • 32. © 2013 IBM Corporation32 Linked Data Platform Agenda ■ IBM Rational's ALM Integration Challenge ■ Linked Data ■ Applying Linked Data to ALM ■ Challenges of using Linked Data ■ W3C Linked Data Platform ➢ Related Projects
  • 33. © 2013 IBM Corporation Linked Data Platform LDP Implementations SDK and supporting tools to help the community to adopt OSLC specifications and build compliant tools Implementation of LDP that can be extended and deployed easily by organisations who want to publish data or build custom applications Marmotta For a more complete list see: http://www.w3.org/wiki/LDP_Implementations Several implementations are already available:
  • 34. © 2013 IBM Corporation Linked Data Platform Automation Monitoring  Community driven and governed  400+ registered community members  Workgroup members from 34+ organizations  Wide range of interests, expertise, & participation  Open specifications for numerous disciplines  Defined by scenarios – solution oriented  Implementations from IBM, BPs, and Others  Based on Linked Data Open Services for Lifecycle Collaboration Lifecycle integration inspired by the web Inspired by the web Proven Free to use and share Open Changing the industry Innovative Open Services for Lifecycle Collaboration (OSLC) Working to improve the way software lifecycle tools share data open-services.net NEWS: Technical Work moving to OASIS - Look for a new OASIS Member Section!
  • 35. © 2013 IBM Corporation Linked Data Platform
  • 36. © 2013 IBM Corporation Linked Data Platform • Based on parts of OSLC Core • Foundation for future OSLC Core Specifications 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 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 36