- From: bergi <bergi@axolotlfarm.org>
- Date: Sat, 07 Jan 2012 01:46:32 +0100
- To: Kingsley Idehen <kidehen@openlinksw.com>
- CC: public-xg-webid@w3.org
Am 07.01.2012 00:21, schrieb Kingsley Idehen: > On 1/6/12 5:46 PM, bergi wrote: >> Finally I have launched a new version of ResourceMe [1]. First you will >> see an optical difference. The design is now based on Twitter Bootstrap. >> But more important is what has changed internal and is visible to you, >> if you login. Any user with a login (WebID, Google+, Facebook) can now >> reply to my blog posts. This is implemented in a very generic way. The >> TripleAccessControl ontology [2] is used to describe which user can >> write new blog posts, which can reply to existing blog posts and which >> can just read them. Smarty [3] is used to render the content. The >> buttons to open the forms for creating new data are dynamically >> enabled/disabled via JavaScript code. An Ajax interface is used to check >> whether a user has access to write the triples for the post or not. With >> little effort also other data can be handled. >> >> >> Some thoughts/questions that came up during development: >> >> URI/URL for global existing things like anonymous agent: >> I'm using a anonymous group for users without login and anybody for any >> user with a login. Your are automatically member of one or the other >> group. Which URI/URL should be used for cases like theses? Currently I'm >> using http://localhost/agents#?. >> >> Login-button behavior: >> In a later version the login dropdown button should try to used WebID to >> login via Ajax. Only if there was a problem the dropdown menu should >> appear. >> >> Session information: >> I'm using now an Ajax interface to ask for the current session >> informations (login). Can/should these informations be stored in the >> HTML file as RDFa data? Which subject should be used? This would avoid >> one round-trip. >> >> Semantic web applications in PHP and threads: >> Multithreading is not a must for semantic web applications. More >> important for a fast page load is JavaScript code that extends the page >> with additional information via Ajax. For example the HTML code of my >> blog posts first contains only the URL of the creator, later JavaScript >> code replaces the URL with the nick. I'm using this especially for data >> that must be fetched from another server. Later I read that even Google+ >> is doing this [4]. >> >> >> [1] https://resourceme.bergnet.org/ >> [2] http://ns.bergnet.org/tac/0.1/triple-access-control >> [3] http://www.smarty.net/ >> [4] https://plus.google.com/115060278409766341143/posts/ViaVbBMpSVG >> >> > Bergi, > > My WebID fails re. your app. Same WebID verifies successfully using: > > 1. https://foafssl.org/test/WebId > 2. https://webid.turnguard.com:8443/WebIDTestServer > 3. http://id.myopenlink.net/ods/webid_demo.html. > > I am having similar problems with: > > 1. http://data.fm -- this used to work in the early days of this effort > 2. http://opentabs.data.fm . > > I clicked on the debug link you offer so as to help you diagnose this > problem. > > Notes: > > 1. my WebID will resolve to a graph with > 1 public key components > associated with it > 2. URI serving as WebID watermark in my x.509 cert. for this test: > http://kingsley.idehen.net/dataspace/person/kidehen#this > 3. Screenshot from your diagnostic service: > http://twitpic.com/842v4k/full . > > > Cert: > > -----BEGIN CERTIFICATE----- > MIIEPzCCAyegAwIBAgIBLTANBgkqhkiG9w0BAQUFADCBqzELMAkGA1UEBhMCVVMx > FjAUBgNVBAgTDU1hc3NhY2h1c2V0dHMxITAfBgNVBAoTGEtpbmdzbGV5IElkZWhl > biBOZXR3b3JrIDEcMBoGA1UECxMTUGVyc29uYWwgRGF0YSBTcGFjZTEcMBoGA1UE > AxMTS2luZ3NsZXkgVXlpIElkZWhlbjElMCMGCSqGSIb3DQEJARYWa2lkZWhlbkBv > cGVubGlua3N3LmNvbTAeFw0xMjAxMDYyMTU4MDFaFw0xMzAxMDUyMTU4MDFaMIGA > MScwJQYDVQQDEx5LaW5nc2xleSBVeWkgSWRlaGVuICguTkVUIE5ldykxCzAJBgNV > BAYTAlVTMRwwGgYDVQQKExNQZXJzb25hbCBEYXRhIFNwYWNlMSowKAYJKoZIhvcN > AQkBFhtraWRlaGVuQGtpbmdzbGV5LmlkZWhlbi5uZXQwggEiMA0GCSqGSIb3DQEB > AQUAA4IBDwAwggEKAoIBAQDPkM4RERhuX1y0nU3biGDfH6hJeOuiO/X4xq77pnFW > c0dyra8rU8o8GO9a8o5bbV83MLO8qmZ3PNErN9wG3RHacCNcDKAjJI0iZaPaLmqx > 4+U4TQB7pTTSkyYc3+LChLuroJ3HKMt5qYzqw7cjIqSwW3hksuZGkQQ1KpMUVxKS > hDexnAo7FjYnEV18A+W8L4x0d79SQfywl10oA6NRcNCpbjgKrIcnkNwQHzlJ3pUV > KUog3+QWZ5AjtbgLYfOsS1QxavIutuEkupZ5MNYDKac/3whX2EfCcRL9ZSQ+dc2z > cbV7jiReaNQ/oUQcyWWruQnpJ5CrLdwlDKOzxmY02Y17AgMBAAGjgZYwgZMwHQYD > VR0OBBYEFBDDjArYZnZzozvajVQMCBZTCivoMEMGA1UdEQQ8MDqGOGh0dHA6Ly9r > aW5nc2xleS5pZGVoZW4ubmV0L2RhdGFzcGFjZS9wZXJzb24va2lkZWhlbiN0aGlz > MC0GCWCGSAGG+EIBDQQgFh5WaXJ0dW9zbyBHZW5lcmF0ZWQgQ2VydGlmaWNhdGUw > DQYJKoZIhvcNAQEFBQADggEBACz65okZNUzUn0l9ae3a72A42tmMODjD5Q1VBnrJ > Zb5IRA+SLBRIrtX+Mo+i2151EA24V2i7CWFZm40bRzku93YQr+vJoCJos6MyGWi8 > cLbbThf6JCNIaQAYbY/hlEgKVIg4BjvH5dM5V2jYFnI3le4KUJmP3OrktV/FGEoo > RkZIe2Sa6LLOewBUmmehDiGxv390hKyCzg/O3vYly3i4v6gj5TgJY0tWul0T+fw6 > NK1Cznfq+JAcmIWfSz3ox/nI/cgVsZPIlLsdVa6SQOlDb8kxg9QlyAu+ArlzJnuu > kmbRaCXR9h3uflT146DlGieX2yA0EG9gMk79y7Hqqnu7VyE= > -----END CERTIFICATE----- > > On my local Windows machine it's working. So I dumped the response I got from your server on my local machine and on the resourceme server. It's different! Here a list of the differences I've found. First value is from my local machine, second from the resourceme server: - "Location" field of the redirect is different Location: http://kingsley.idehen.net/dataspace/raw/person/kidehen/sioc.rdf Location: http://kingsley.idehen.net/dataspace/raw/person/sioc.rdf - "Content-Type" field of the second response is different Content-Type: application/rdf+xml Content-Type: application/rdf+xml; charset=UTF-8 - "Expires" field of the second response is missing once Expires: Sat, 07 Jan 2012 00:10:45 GMT missing Do you have any idea why it's handled different? Do you check any header field in the request? Here the full header: Local Windows machine: 'HTTP/1.1 303 See Other Server: Virtuoso/06.03.3131 (Linux) x86_64-generic-linux-glibc25-64 VDB Connection: close Date: Sat, 07 Jan 2012 00:10:35 GMT Accept-Ranges: bytes TCN: choice Vary: negotiate,accept Content-Location: sioc.rdf Content-Type: application/rdf+xml Location: http://kingsley.idehen.net/dataspace/raw/person/kidehen/sioc.rdf Content-Length: 0 ''HTTP/1.1 200 OK Server: Virtuoso/06.03.3131 (Linux) x86_64-generic-linux-glibc25-64 VDB Connection: Keep-Alive Date: Sat, 07 Jan 2012 00:10:36 GMT Accept-Ranges: bytes Link: <http://kingsley.idehen.net/dataspace/raw/person/kidehen>; rel="http://xmlns.com/foaf/0.1/primaryTopic", <http://kingsley.idehen.net/dataspace/raw/person/kidehen>; rev="describedby", <http://kingsley.idehen.net/dataspace/raw/person/kidehen/sioc.nt>; rel="alternate"; type="text/n3"; title="Structured Descriptor Document (N3/Turtle format)", <http://kingsley.idehen.net/dataspace/raw/person/kidehen/sioc.n3>; rel="alternate"; type="text/rdf+n3"; title="Structured Descriptor Document (N3/Turtle format)", <http://kingsley.idehen.net/dataspace/raw/person/kidehen/sioc.json>; rel="alternate"; type="application/json"; title="Structured Descriptor Document (RDF/JSON format)", <http://kingsley.idehen.net/dataspace/raw/person/kidehen/sioc.txt>; rel="alternate"; type="text/plain"; title="Structured Descriptor Document (N-Triples format)", <http://kingsley.idehen.net/dataspace/raw/person/kidehen/sioc.turtle>; rel="alternate"; type="text/turtle"; title="Structured Descriptor Document (N3/Turtle format)", <http://kingsley.idehen.net/dataspace/raw/person/kidehen/sioc.ttl>; rel="alternate"; type="text/rdf+ttl"; title="Structured Descriptor Document (N3/Turtle format)", <http://kingsley.idehen.net/dataspace/raw/person/kidehen/sioc.jmd>; rel="alternate"; type="application/microdata+json"; title="Structured Descriptor Document (Microdata+JSON format)", <http://kingsley.idehen.net/dataspace/raw/person/kidehen/sioc.jld>; rel="alternate"; type="application/ld+json"; title="Structured Descriptor Document (JSON-LD format)" Expires: Sat, 07 Jan 2012 00:10:45 GMT ETag: "fca9cfcc2aa3de269494d67d5862f028" Content-Type: application/rdf+xml Content-Length: 25773 resourceme.bergnet.org: 'HTTP/1.1 303 See Other Server: Virtuoso/06.03.3131 (Linux) x86_64-generic-linux-glibc25-64 VDB Connection: close Date: Sat, 07 Jan 2012 00:11:48 GMT Accept-Ranges: bytes TCN: choice Vary: negotiate,accept Content-Location: sioc.rdf Content-Type: application/rdf+xml Location: http://kingsley.idehen.net/dataspace/raw/person/sioc.rdf Content-Length: 0 ''HTTP/1.1 200 OK Server: Virtuoso/06.03.3131 (Linux) x86_64-generic-linux-glibc25-64 VDB Connection: Keep-Alive Date: Sat, 07 Jan 2012 00:11:48 GMT Accept-Ranges: bytes Link: <http://kingsley.idehen.net/dataspace/raw/person>; rel="http://xmlns.com/foaf/0.1/primaryTopic", <http://kingsley.idehen.net/dataspace/raw/person>; rev="describedby", <http://kingsley.idehen.net/dataspace/raw/person/sioc.nt>; rel="alternate"; type="text/n3"; title="Structured Descriptor Document (N3/Turtle format)", <http://kingsley.idehen.net/dataspace/raw/person/sioc.n3>; rel="alternate"; type="text/rdf+n3"; title="Structured Descriptor Document (N3/Turtle format)", <http://kingsley.idehen.net/dataspace/raw/person/sioc.json>; rel="alternate"; type="application/json"; title="Structured Descriptor Document (RDF/JSON format)", <http://kingsley.idehen.net/dataspace/raw/person/sioc.txt>; rel="alternate"; type="text/plain"; title="Structured Descriptor Document (N-Triples format)", <http://kingsley.idehen.net/dataspace/raw/person/sioc.turtle>; rel="alternate"; type="text/turtle"; title="Structured Descriptor Document (N3/Turtle format)", <http://kingsley.idehen.net/dataspace/raw/person/sioc.ttl>; rel="alternate"; type="text/rdf+ttl"; title="Structured Descriptor Document (N3/Turtle format)", <http://kingsley.idehen.net/dataspace/raw/person/sioc.jmd>; rel="alternate"; type="application/microdata+json"; title="Structured Descriptor Document (Microdata+JSON format)", <http://kingsley.idehen.net/dataspace/raw/person/sioc.jld>; rel="alternate"; type="application/ld+json"; title="Structured Descriptor Document (JSON-LD format)" Content-Type: application/rdf+xml; charset=UTF-8 ETag: "0e92626a05da047d9ee34a2deeb02c7f" Content-Length: 485
Received on Saturday, 7 January 2012 00:46:54 UTC