Best of Marketing

20
LDP in Apache Marmotta http://marmotta.apache.org/events/iswc20 14

description

Marketing and tips and tricks. Share it in your social media please. Visit: http://www.slideshare.net/

Transcript of Best of Marketing

LDPin

Apache Marmottahttp://marmotta.apache.org/events/iswc2014

@wikier

http://linkedin.com/in/sergiofernandez

http://www.wikier.org

Who Am I

Committer at the Apache Software Foundation

also…

Member of the LDP working group at W3C

Senior Researcher at Salzburg Research

Partner Technology Manager at Redlink GmbH

Sergio

Fernández

a set of best practices and simple approach for a read-write Linked Data architecture, based on HTTP access to web resources that describe their state using the RDF data model

What is LDP?

Linked Data Platform 1.0http://www.w3.org/TR/ldp/ W3C Last Call Working Draft 16 Sep 2014

A bit of history….

2007 Linked Data Design Issueshttp://www.w3.org/DesignIssues/LinkedData.html

2010 Linked Media Principleshttps://code.google.com/p/lmf/wiki/PrinciplesLinkedMedia

2011 Linked Data Basic Profile 1.0http://www.w3.org/Submission/ldbp/

2012 Linked Data Platform 1.0http://www.w3.org/2012/ldp/

Linked Data1. Use URIs as names for things2. Use HTTP URIs so that people can look up those names3. 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

LDP provides clarifications and extensions of the rules of Linked Data principles, providing a specification that describes the use of HTTP for accessing, updating, creating and deleting resources from servers that expose their resources as Linked Data

Terminology● Linked Data Platform Resource (LDPR)

an HTTP resource● Linked Data Platform RDF Source (LDP-RS)

an LDPR whose state is fully represented in RDF, corresponding to an RDF graph

● Linked Data Platform Non-RDF Source (LDP-NR)an LDPR whose state is not represented in RDF

● Linked Data Platform Container (LDPC)a LDP-RS representing a collection of LDPR

● Linked Data Platform Basic Container (LDP-BC)an LDPC that defines a simple link to its contained resources

● Linked Data Platform Direct Container (LDP-DC)an LDPC that adds the concept of membership, allowing the flexibility of choosing what form takes

● Linked Data Platform Indirect Container (LDP-IC)an LDPC similar to a LDP-DC that is also capable of having members whose URIs are based on its contained documents rather than the URIs assigned to those documents

LDP Hierarchy

LDP server and resources

a LDP server manages two kinds of resources:

● those resources whose state is represented using RDF (LDP-RSs)

● and those using other formats (LDP-NRs)

Such servers do not impose any restriction on LDPRs and generally act as storage systems without any domain specific application logic and vocabularies.

LDP concepts in a glance

● LDP covers read and write interactions with resources

● Writable aspects include creation of new resources (using POST or PUT), updates (using PUT or PATCH), and deletion of resources.

● Resource creation is an essential feature providing structured creation of resources.

● During creation the created resource is added to its Container and a containment link between the Container and the new entry is made.

LDP Containers

a LDPC is a specialization of a LDP-RS representing a collection of links to other resources

responds to client requests for creation, modification, and/or enumeration of its members

The simplest container is the Basic Container (LDP-BC). It defines the basic containment described using a generic vocabulary. This can be used in a generic storage service to manage a containment hierarchy of arbitrary resources

LDP Containers (II)

Containers can contain other containers. This can be done by POSTing (a child) container representation to a (parent) container.

LDP Direct Containers

A Direct Container is a specialisation of a Basic Container.

Additional assertions called membership triples which use a domain-specific vocabulary are made by a Direct Container as part of the creation process.

The membership triples augment the containment triples maintained by all containers.

LDP-DCs are used for the management custom scenarios, where use of existing vocabulary is preferable.

LDP Containers applications

Direct Container membership triples can be about subjects other than the Container resource.

LDP Containers applications (II)

Also different facets of a Resource be managed using multiple Containers.

LDP protocol particularities

● LDP defines two interaction models:○ LDPC by default, which creates a

container accepting the creation of resources

○ LDPR creates resources which does not accept creation of new resources.

● LDP reuses some things from Atom (RFC 5023):○ The Slug header is used for requesting

naming resources on creation○ The Prefer header is used optionally by

clients to supply a hint to help the server form a response that is most appropriate

LDP in Apache Marmotta

● Since version 3.2.0 Marmotta is compatible with LDP 1.0 drafts

● Although not full support: ○ LDP-DC and LDP-IC are not (yet?)

supported

● LDP support is provided under /ldp○ requests to /resource are still managed

following the old Linked Media Principles

References:

● Linked Data Platform 1.0

http://www.w3.org/TR/ldp/

W3C Last Call Working Draft 16 September 2014

● Linked Data Platform 1.0 Primer

http://www.w3.org/TR/ldp-primer/

W3C First Public Working Draft 26 June 2014

● Linked Data Platform Best Practices and Guidelines

http://www.w3.org/TR/ldp-bp/

W3C Working Group Note 28 August 2014

● Linked Data Platform Implementation Conformance Report

https://dvcs.w3.org/hg/ldpwg/raw-file/default/tests/reports/ldp.html

Unofficial Draft 15 October 2014

● Linked Data Platform 1.0 Test Cases

https://dvcs.w3.org/hg/ldpwg/raw-file/tip/tests/ldp-testsuite.html

Unofficial Draft 15 October 2014

http://marmotta.apache.org/events/iswc2014

acknowledgments to the MICO FP7 project (grant no. 610480)

grazie!

CC BY-SA 3.0

http://www.flickr.com/photos/21572939@N03/2090542246/