Hi Sebastian.

Please see in-line comments below.

On Sep 26, 2011, at 7:46 AM, Sebastian Schaffert wrote:

Dear Jesse,

Thanks for the effort! I am just experimenting with this. If I request my own Vanity URL

http://graph.facebook.com/sebastian.schaffert

The data I get back is:

@prefix rdf: <http://www.w3.org/1999/02/22-df-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix api: <tag:graph.facebook.com,2011:/> .
@prefix og: <http://ogp.me/ns#> .
@prefix fb: <http://ogp.me/ns/fb#> .
@prefix : <http://graph.facebook.com/schema/~/> .
@prefix user: <http://graph.facebook.com/schema/user#> .
</561666514#>
        user:id "561666514" ;
        user:name "Sebastian Schaffert" ;
        user:first_name "Sebastian" ;
        user:last_name "Schaffert" ;
        user:link <http://www.facebook.com/sebastian.schaffert>


That's strange.  The data I get back is:

@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix api: <tag:graph.facebook.com,2011:/> .
@prefix og: <http://ogp.me/ns#> .
@prefix fb: <http://ogp.me/ns/fb#> .
@prefix : <http://graph.facebook.com/schema/~/> .
@prefix user: <http://graph.facebook.com/schema/user#> .
</561666514#>
        user:id "561666514" ;
        user:name "Sebastian Schaffert" ;
        user:first_name "Sebastian" ;
        user:last_name "Schaffert" ;
        user:link <http://www.facebook.com/sebastian.schaffert> ;
        user:username "sebastian.schaffert" ;
        user:gender "male" ;
        user:locale "de_DE" .



Now the problem I see here is that the URI I requested is not the same URI as used in the subject of the RDF triples. Same holds btw if I request the data using the ID including "#". Which is bad in our case because we filter out triples that do not fulfill this condition to avoid importing "invalid" data.


I'm not sure I see the issue here. http://graph.facebook.com/sebastian.schaffert is a URL at which data about the person represented by http://graph.facebook.com/561666514# can be found. Following httpRange-14, since http://graph.facebook.com//561666514# is a hash URI, the fragment (in this case, just '#') should be stripped away and http://graph.facebook.com/561666514 should return data about the person represented by http://graph.facebook.com/561666514# with 200 OK.

Also, the data should IMHO contain a @base statement defining the base for the </561666514#>, because when importing the data the original URI is sometimes no longer available.


There is no explicit base here, and that is acceptable in Turtle. The data is not (and should not be) customized to the limitations of a particular tool.

Lastly, the returned data does not contain the trailing "." required by turtle (see http://www.w3.org/TeamSubmission/turtle/#sec-grammar-grammar) .


The data I received (above) does include the trailing ".", after three more triples.

Are there plans to fix this? For me, the more readable data would look like this:

@prefix rdf: <http://www.w3.org/1999/02/22-df-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix api: <tag:graph.facebook.com,2011:/> .
@prefix og: <http://ogp.me/ns#> .
@prefix fb: <http://ogp.me/ns/fb#> .
@prefix user: <http://graph.facebook.com/schema/user#> .
<http://graph.facebook.com/sebastian.schaffert>
        user:id "561666514" ;
        user:name "Sebastian Schaffert" ;
        user:first_name "Sebastian" ;
        user:last_name "Schaffert" ;
        user:link <http://www.facebook.com/sebastian.schaffert>



Am 23.09.2011 um 14:09 schrieb Jesse Weaver:

APOLOGIES FOR CROSS-POSTING

I would like to bring to subscribers' attention that Facebook now
supports RDF with Linked Data URIs from its Graph API.  The RDF is in
Turtle syntax, and all of the HTTP(S) URIs in the RDF are dereferenceable in accordance with httpRange-14. Please take some time to check it out.

If you have a vanity URL (mine is jesserweaver), you can get RDF about you:

curl -H 'Accept: text/turtle' http://graph.facebook.com/<vanity-url>
curl -H 'Accept: text/turtle' http://graph.facebook.com/jesserweaver
If you don't have a vanity URL but know your Facebook ID, you can use
that instead (which is actually the fundamental method).

curl -H 'Accept: text/turtle' http://graph.facebook.com/<facebook-id>
curl -H 'Accept: text/turtle' http://graph.facebook.com/1340421292
From there, try dereferencing URIs in the Turtle.  Have fun!

Jesse Weaver
Ph.D. Student, Patroon Fellow
Tetherless World Constellation
Rensselaer Polytechnic Institute
http://www.cs.rpi.edu/~weavej3/






Sebastian
--
| Dr. Sebastian Schaffert          sebastian.schaff...@salzburgresearch.at
| Salzburg Research Forschungsgesellschaft  http://www.salzburgresearch.at
| Head of Knowledge and Media Technologies Group +43 662 2288 423
| Jakob-Haringer Strasse 5/II
| A-5020 Salzburg



Jesse Weaver
Ph.D. Student, Patroon Fellow
Tetherless World Constellation
Rensselaer Polytechnic Institute
http://www.cs.rpi.edu/~weavej3/index.xhtml

Reply via email to