LDP Interop via CIMBA and Virtuoso


Here's an example of how interoperability enhances our collective quest 
for a read-write dimension to the Web based on open standards from the 
W3C such as:

1. URIs  -- for denotation
2. HTTP -- for content lookup and access
3. HTTP URIs -- for denotation and connotation (naming and meaning/sense 
lookup combined i.e., just like terms in natural language)
3. RDF -- language for subject, predicate, and object based sentence / 
statement construction (representable using a variety of notations)
4. LDP -- for Read-Write operations via standardized HTTP interaction 
patterns .

Basically, we took CIMBA (and LDP based application developed by Andrei 
and Sandro Hawke) and deployed it using an instance of Virtuoso (with 
the ODS-Briefcase module enabled) [1]. Following deployment (which lead 
to some tweaks of Virtuoso HTTP server's LDP implementation and a fork 
of CIMBA [2] which exposes our tweaks), we now have a long required LDP 
based RWW interoperability demo.


[1]http://ods-qa.openlinksw.com/DAV/home/kidehen/Public/profile2.ttl#i  -- An HTTP URI (aka., WebID) that denotes me

[2]http://ods-qa.openlinksw.com/DAV/home/kidehen/Public/profile2.ttl  -- A Turtle document that describes me

[3]https://ods-qa.openlinksw.com/DAV/home/kidehen/rww-demo/  -- My Dropbox provided folder (collection) mounted to my ODS-Briefcase (which delivers Linked Data Functionality to Dropbox, Google Drive, Microsoft OneDrive, Amazon S3, Box., Rackspace, WebDAV etc.., provided storage).
[4]http://linkeddata.uriburner.com/describe/?url=http%3A%2F%2Fwww.w3.org%2Fns%2Fpim%2Fspace%23storage  -- alternative view of the description of the <http://www.w3.org/ns/pim/space#storage>  <http://www.w3.org/ns/pim/space#storage%3E>  relationship property (or predicate)

[5]http://bit.ly/1zYifYA  -- WebID description via a Linked Data browser (for better reading)

[6] http://ods-qa.openlinksw.com/cimba/index.html -- Live CIMBA instance deployed using Virtuoso (with ODS-Briefcase module enabled)

[7] https://ods-qa.openlinksw.com/DAV/home/kidehen/rww-demo/dropboxhostedblog/ch2/ -- behind the scenes look at the artifacts generated by CIMBA using LDP based RWW oriented HTTP interactions (if you click on the "login" link it will reveal a WebID authentication dialog that supports various authentication protocols e.g., WebID-TLS, TLS, Google+, Microsoft Live, Dropbox, Persona, OpenID  etc..).

You can try the CIMBA instance yourself. All that's required are the following:

[1] a WebID that resolves to a WebID-Profile document

[2] a WebID-Profile document that includes:
    -- an RDF based statement that associates your WebID with the Public Key of a locally installed X.509 certificate via an RDF based <http://www.w3.org/ns/auth/cert#key> relation where your WebID denotes the relation subject and your public key the relation object
    -- an RDF based statement that represents an <http://www.w3.org/ns/pim/space#storage> relation where your WebID denotes the relation subject and your preferred storage location URI/URL denotes the relation object

[3] an X.509 certificate and associated Private key installed to your local keystore/keychain -- this certificate should include have your WebID as the object of the SubjectAlternativeName (SAN) relation (i.e,, the value of the SAN field) which is ultimately used by the WebID-TLS authentication protocol which is basically a TLS handshake enhancement that leverages RDF based Linked Data (i.e., RDF where IRIs take the form of HTTP URIs).

<http://www.w3.org/ns/pim/space#storage> <{your-ldp-container-url}> .

In my case, in regards to this particular showcase, it takes the form:

<http://www.w3.org/ns/pim/space#storage> <https://ods-qa.openlinksw.com/DAV/home/kidehen/rww-demo/> .

Please provide feedback if you encounter any bumps or euphoric successes. The goal here is to demonstrate the powerful interoperability that AWWW enables in regards to the Web's nascent Read-Write dimension. Ideally, this showcase SHOULD be repeatable using any platform that supports:

1. WebID based entity denotation
2. WebID-Profile documents for entity identity claims description
3. WebID-TLS based authentication of identity claims
3. LDP for Read-Write oriented HTTP interactions .


Kingsley Idehen	
Founder & CEO
OpenLink Software
Company Web: http://www.openlinksw.com
Personal Weblog 1: http://kidehen.blogspot.com
Personal Weblog 2: http://www.openlinksw.com/blog/~kidehen
Twitter Profile: https://twitter.com/kidehen
Google+ Profile: https://plus.google.com/+KingsleyIdehen/about
LinkedIn Profile: http://www.linkedin.com/in/kidehen
Personal WebID: http://kingsley.idehen.net/dataspace/person/kidehen#this

Received on Monday, 21 July 2014 21:15:30 UTC