"ODSWebIDEmailVerification" . . "2017-06-13T06:03:19.762877"^^ . "a444f6d69c8c003769f09c6666f3abbc" . . . . . "ODSWebIDEmailVerification" . . . . "2017-06-29T07:30:31Z" . . "2017-06-29T07:30:31.053484"^^ . . . . . . . . . . "---+ WebID-based Email Verification in ODS\n\nVERY rough draft doc...\n\n%TOC%\n\n---++ Prerequisites\n\n 1 Get an ODS account and edit your profile, using one of these tools --\n * HTML and Javascript -- http://<cname>/javascript/users/users.html, e.g.: http://id.myopenlink.net/javascript/users/users.html\n * Virtuoso Server Pages (VSP) -- http://<cname>/vsp/users/users.vsp, e.g: http://id.myopenlink.net/vsp/users/users.vsp\n * PHP-based server pages -- http://<cname>/php/users/users.php, e.g: http://id.myopenlink.net/php/users/users.php\n\n---++ Simple Browser-based demonstration\nTo verify an email address (i.e., a mailto: scheme URI) --\n 1. Go to: http://id.myopenlink.net/mv/ or http://ods-qa.openlinksw.com/mv/ \n 2. Enter your email address\n 3. Check your mail box for a message that includes a URL to a Resource protected by a WebID-based ACL. Clicking on the URL results in the creation of a triple in the host data space, associating your WebID with the sha1sum-based hash of the verified email address. (The Graph IRI is of the form: http://<data-space-cname>/mv/data/{data-space-generated-hash}.)\n 4. Check your results with SPARQL or cURL against https://<dataspace-cname>/mv/mc.vsp?confirm=<emailHash>\n\n---++ Detailed demonstration, similar to above, using cURL on the command-line\n\n---+++ Pass Your Email Address as a URL parameter\n * entry endpoint: http://<dataspace-cname>/mv/mv.vsp\n * parameters: mbox = <email address>\n\n---++++ Example\n\n\ncurl -H \"Accept:application/json\" -i http://id.myopenlink.net/mv/mv.vsp?mbox={YourEmailAddress}\n{\"status\":\"ok\", \"message\":\"A confirmation mail was sent, please check your mail box.\"}\n\n\n\n---+++ Verify Your Email via a URL to a Resource protected by a WebID-based ACL\n\n * verification endpoint: https://<dataspace-cname>/mv/mc.vsp\n * parameters: confirm = <hash-sent-via-email>\n * authentication: use the PEM file associated with your WebID.\n\n\n---++++ Verification\n\n\n$ curl -k -H \"Accept:application/json, */*;q=0.1\" -i -E .pem: https:///mv/mc.vsp?confirm=\n{\"status\":\"verified\", \"document_url\":\"http:///mv/data/f7fa16ed3c806045faa3109e83b9e3581419fb40\"} \n\n\n * Graph IRI for data created in data space: http://<data-space-cname>/mv/data/{data-space-generated-hash}\n\n---+++ Access Example\n\n---++++ JSON\n\n\n# curl -i -L -H \"Accept: application/json\" http://ods-qa.openlinksw.com/mv/data/afacf6b868e6cb36f71d2cecc6d531a26ce1f2ef\nHTTP/1.1 303 See Other\nServer: Virtuoso/06.02.3130 (Linux) x86_64-generic-linux-glibc25-64 VDB\nConnection: close\nContent-Type: text/html; charset=UTF-8\nDate: Sat, 30 Jul 2011 20:36:16 GMT\nAccept-Ranges: bytes\nLocation: http://ods-qa.openlinksw.com/sparql?query=construct%20%7B%20%3Fs%20%3Fp%20%3Fo%20.%20%3Ft%20%3Ftp%20%3Fto%20.%20%7D%20%20from%20%3Chttp%3A%2F%2Flocalhost%2Fmv%3E%20where%20%7B%20%3Fs%20%3Fp%20%3Fo%20%20.%20%3Fs%20foaf%3AprimaryTopic%20%3Ft%20.%20%3Ft%20%3Ftp%20%3Fto%20.%20filter%20%28%3Fs%20%3D%20%3Chttp%3A%2F%2Fods-qa.openlinksw.com%2Fmv%2Fdata%2Fafacf6b868e6cb36f71d2cecc6d531a26ce1f2ef%3E%20%29%20%7D%20&format=\nContent-Length: 0\n\nHTTP/1.1 200 OK\nServer: Virtuoso/06.02.3130 (Linux) x86_64-generic-linux-glibc25-64 VDB\nConnection: Keep-Alive\nDate: Sat, 30 Jul 2011 20:36:16 GMT\nAccept-Ranges: bytes\nContent-Type: application/json; charset=UTF-8\nContent-Length: 413\n\n{\n \"http://ods-qa.openlinksw.com/dataspace/person/kidehen#this\" : { \"http://xmlns.com/foaf/0.1/mbox_sha1sum\" : [ { \"type\" : \"literal\", \"value\" : \"r6z2uGjmyzb3HSzsxtUxomzh8u8=\" } ] } ,\n \"http://ods-qa.openlinksw.com/mv/data/afacf6b868e6cb36f71d2cecc6d531a26ce1f2ef\" : { \"http://xmlns.com/foaf/0.1/primaryTopic\" : [ { \"type\" : \"uri\", \"value\" : \"http://ods-qa.openlinksw.com/dataspace/person/kidehen#this\" } ] }\n}\n\n\n---++++ Microdata+JSON\n\n\n# curl -i -L -H \"Accept: application/json\" http://ods-qa.openlinksw.com/mv/data/afacf6b868e6cb36f71d2cecc6d531a26ce1f2ef\nHTTP/1.1 303 See Other\nServer: Virtuoso/06.02.3130 (Linux) x86_64-generic-linux-glibc25-64 VDB\nConnection: close\nContent-Type: text/html; charset=UTF-8\nDate: Sat, 30 Jul 2011 20:36:16 GMT\nAccept-Ranges: bytes\nLocation: http://ods-qa.openlinksw.com/sparql?query=construct%20%7B%20%3Fs%20%3Fp%20%3Fo%20.%20%3Ft%20%3Ftp%20%3Fto%20.%20%7D%20%20from%20%3Chttp%3A%2F%2Flocalhost%2Fmv%3E%20where%20%7B%20%3Fs%20%3Fp%20%3Fo%20%20.%20%3Fs%20foaf%3AprimaryTopic%20%3Ft%20.%20%3Ft%20%3Ftp%20%3Fto%20.%20filter%20%28%3Fs%20%3D%20%3Chttp%3A%2F%2Fods-qa.openlinksw.com%2Fmv%2Fdata%2Fafacf6b868e6cb36f71d2cecc6d531a26ce1f2ef%3E%20%29%20%7D%20&format=\nContent-Length: 0\n\nHTTP/1.1 200 OK\nServer: Virtuoso/06.02.3130 (Linux) x86_64-generic-linux-glibc25-64 VDB\nConnection: Keep-Alive\nDate: Sat, 30 Jul 2011 20:36:16 GMT\nAccept-Ranges: bytes\nContent-Type: application/json; charset=UTF-8\nContent-Length: 413\n\n{\n \"http://ods-qa.openlinksw.com/dataspace/person/kidehen#this\" : { \"http://xmlns.com/foaf/0.1/mbox_sha1sum\" : [ { \"type\" : \"literal\", \"value\" : \"r6z2uGjmyzb3HSzsxtUxomzh8u8=\" } ] } ,\n \"http://ods-qa.openlinksw.com/mv/data/afacf6b868e6cb36f71d2cecc6d531a26ce1f2ef\" : { \"http://xmlns.com/foaf/0.1/primaryTopic\" : [ { \"type\" : \"uri\", \"value\" : \"http://ods-qa.openlinksw.com/dataspace/person/kidehen#this\" } ] }\n}\n\n\n\n---++++ N3\n\n# curl -i -L -H \"Accept: text/n3\" http://ods-qa.openlinksw.com/mv/data/afacf6b868e6cb36f71d2cecc6d531a26ce1f2ef\nHTTP/1.1 303 See Other\nServer: Virtuoso/06.02.3130 (Linux) x86_64-generic-linux-glibc25-64 VDB\nConnection: close\nContent-Type: text/html; charset=UTF-8\nDate: Sat, 30 Jul 2011 20:38:06 GMT\nAccept-Ranges: bytes\nLocation: http://ods-qa.openlinksw.com/sparql?query=construct%20%7B%20%3Fs%20%3Fp%20%3Fo%20.%20%3Ft%20%3Ftp%20%3Fto%20.%20%7D%20%20from%20%3Chttp%3A%2F%2Flocalhost%2Fmv%3E%20where%20%7B%20%3Fs%20%3Fp%20%3Fo%20%20.%20%3Fs%20foaf%3AprimaryTopic%20%3Ft%20.%20%3Ft%20%3Ftp%20%3Fto%20.%20filter%20%28%3Fs%20%3D%20%3Chttp%3A%2F%2Fods-qa.openlinksw.com%2Fmv%2Fdata%2Fafacf6b868e6cb36f71d2cecc6d531a26ce1f2ef%3E%20%29%20%7D%20&format=\nContent-Length: 0\n\nHTTP/1.1 200 OK\nServer: Virtuoso/06.02.3130 (Linux) x86_64-generic-linux-glibc25-64 VDB\nConnection: Keep-Alive\nDate: Sat, 30 Jul 2011 20:38:06 GMT\nAccept-Ranges: bytes\nContent-Type: text/n3; charset=UTF-8\nContent-Length: 305\n\n@prefix foaf: .\n@prefix ns1: .\nns1:this foaf:mbox_sha1sum \"r6z2uGjmyzb3HSzsxtUxomzh8u8=\" .\n@prefix ns2: .\nns2:afacf6b868e6cb36f71d2cecc6d531a26ce1f2ef foaf:primaryTopic ns1:this\n\n\n---++++ HTML+Microdata\n\n\ncurl -i -L -H \"Accept: text/html\" http://ods-qa.openlinksw.com/mv/data/afacf6b868e6cb36f71d2cecc6d531a26ce1f2ef\nHTTP/1.1 303 See Other\nServer: Virtuoso/06.02.3130 (Linux) x86_64-generic-linux-glibc25-64 VDB\nConnection: close\nContent-Type: text/html; charset=UTF-8\nDate: Sat, 30 Jul 2011 20:41:32 GMT\nAccept-Ranges: bytes\nLocation: http://ods-qa.openlinksw.com/sparql?query=construct%20%7B%20%3Fs%20%3Fp%20%3Fo%20.%20%3Ft%20%3Ftp%20%3Fto%20.%20%7D%20%20from%20%3Chttp%3A%2F%2Flocalhost%2Fmv%3E%20where%20%7B%20%3Fs%20%3Fp%20%3Fo%20%20.%20%3Fs%20foaf%3AprimaryTopic%20%3Ft%20.%20%3Ft%20%3Ftp%20%3Fto%20.%20filter%20%28%3Fs%20%3D%20%3Chttp%3A%2F%2Fods-qa.openlinksw.com%2Fmv%2Fdata%2Fafacf6b868e6cb36f71d2cecc6d531a26ce1f2ef%3E%20%29%20%7D%20&format=\nContent-Length: 0\n\nHTTP/1.1 200 OK\nServer: Virtuoso/06.02.3130 (Linux) x86_64-generic-linux-glibc25-64 VDB\nConnection: Keep-Alive\nDate: Sat, 30 Jul 2011 20:41:32 GMT\nAccept-Ranges: bytes\nContent-Type: text/html; charset=UTF-8\nContent-Length: 1558\n\n\n \n HTML Microdata document\n \n \n

This document contains 2 facts in HTML Microdata format.

\n

A generic web browser may not display them properly but the document can be \n saved on disk and used by some appropriate program or sent to a third party.\n Use \"Save As\" or \"Send To\" menu item of the browser; choose \"HTML\" file type, \n not \"text file\" or \"web archive\".

\n

The rest of the document may look like garbage for humans or not displayed \n by the browser.

\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
PrefixNamespace IRI
xsdhhttp://www.w3.org/2001/XMLSchema#
n2http://ods-qa.openlinksw.com/mv/data/
n3http://xmlns.com/foaf/0.1/
n4http://ods-qa.openlinksw.com/dataspace/person/kidehen#
rdfhttp://www.w3.org/1999/02/22-rdf-syntax-ns#
\n
\n
Subject Item
\n
n4:this
\n
n3:mbox_sha1sum
\n
\n r6z2uGjmyzb3HSzsxtUxomzh8u8=\n
\n
\n
\n
Subject Item
\n
n2:afacf6b868e6cb36f71d2cecc6d531a26ce1f2ef
\n
n3:primaryTopic
\n
\n n4:this\n
\n
\n \n\n
\n\n---++++ XHTML+RDFa\n\n\ncurl -i -L -H \"Accept: application/xhtml+xml\" http://ods-qa.openlinksw.com/mv/data/afacf6b868e6cb36f71d2cecc6d531a26ce1f2ef\nHTTP/1.1 303 See Other\nServer: Virtuoso/06.02.3130 (Linux) x86_64-generic-linux-glibc25-64 VDB\nConnection: close\nContent-Type: text/html; charset=UTF-8\nDate: Sat, 30 Jul 2011 20:44:59 GMT\nAccept-Ranges: bytes\nLocation: http://ods-qa.openlinksw.com/sparql?query=construct%20%7B%20%3Fs%20%3Fp%20%3Fo%20.%20%3Ft%20%3Ftp%20%3Fto%20.%20%7D%20%20from%20%3Chttp%3A%2F%2Flocalhost%2Fmv%3E%20where%20%7B%20%3Fs%20%3Fp%20%3Fo%20%20.%20%3Fs%20foaf%3AprimaryTopic%20%3Ft%20.%20%3Ft%20%3Ftp%20%3Fto%20.%20filter%20%28%3Fs%20%3D%20%3Chttp%3A%2F%2Fods-qa.openlinksw.com%2Fmv%2Fdata%2Fafacf6b868e6cb36f71d2cecc6d531a26ce1f2ef%3E%20%29%20%7D%20&format=\nContent-Length: 0\n\nHTTP/1.1 200 OK\nServer: Virtuoso/06.02.3130 (Linux) x86_64-generic-linux-glibc25-64 VDB\nConnection: Keep-Alive\nDate: Sat, 30 Jul 2011 20:44:59 GMT\nAccept-Ranges: bytes\nContent-Type: application/xhtml+xml; charset=UTF-8\nContent-Length: 1159\n\n\n\n\n\n \n RDFa+XHTML document\n \n \n

This document contains 2 facts in XHTML+RDFa format.

\n

A generic web browser may not display them but the document can be saved \n on disk and used by some appropriate program or sent to a third party. \n Use \"Save As\" or \"Send To\" menu item of the browser; choose \"HTML\" file type, \n not \"text file\" or \"web archive\".

\n

The rest of the document may look like garbage for humans or not displayed \n by the browser.

\n
\n
r6z2uGjmyzb3HSzsxtUxomzh8u8=
\n
\n
\n
\n
\n \n\n\n\n---++++ RDF/XML\n\n\ncurl -i -L -H \"Accept: application/rdf+xml\" http://ods-qa.openlinksw.com/mv/data/afacf6b868e6cb36f71d2cecc6d531a26ce1f2ef\nHTTP/1.1 303 See Other\nServer: Virtuoso/06.02.3130 (Linux) x86_64-generic-linux-glibc25-64 VDB\nConnection: close\nContent-Type: text/html; charset=UTF-8\nDate: Sat, 30 Jul 2011 20:56:06 GMT\nAccept-Ranges: bytes\nLocation: http://ods-qa.openlinksw.com/sparql?query=construct%20%7B%20%3Fs%20%3Fp%20%3Fo%20.%20%3Ft%20%3Ftp%20%3Fto%20.%20%7D%20%20from%20%3Chttp%3A%2F%2Flocalhost%2Fmv%3E%20where%20%7B%20%3Fs%20%3Fp%20%3Fo%20%20.%20%3Fs%20foaf%3AprimaryTopic%20%3Ft%20.%20%3Ft%20%3Ftp%20%3Fto%20.%20filter%20%28%3Fs%20%3D%20%3Chttp%3A%2F%2Fods-qa.openlinksw.com%2Fmv%2Fdata%2Fafacf6b868e6cb36f71d2cecc6d531a26ce1f2ef%3E%20%29%20%7D%20&format=\nContent-Length: 0\n\nHTTP/1.1 200 OK\nServer: Virtuoso/06.02.3130 (Linux) x86_64-generic-linux-glibc25-64 VDB\nConnection: Keep-Alive\nDate: Sat, 30 Jul 2011 20:56:06 GMT\nAccept-Ranges: bytes\nContent-Type: application/rdf+xml; charset=UTF-8\nContent-Length: 641\n\n\n\n\n \n\n\n r6z2uGjmyzb3HSzsxtUxomzh8u8=\n\n\n\n\nCategoryInternal " . . "ODSWebIDEmailVerification" . "2017-06-13T06:03:19Z" . .