You are viewing ljfoaf

LiveJournal FOAF - Importing FOAF data

Dec. 24th, 2004

03:51 pm - Importing FOAF data

Previous Entry Share Next Entry


I'm curious, is there now or is there planned to be a way for LiveJournal to import FOAF data? The Manage User Info screen lets you input a FOAF URL, but the explanatory text there says merely that requests for the built-in FOAF URL on LiveJournal will redirect to that URL if it is provided. I imagine that certain information, such as the "knows" data, would have to be ignored, but other things, like the user's interests, bio, and homepage, could be updated.


[User Picture]
Date:December 24th, 2004 09:06 pm (UTC)
I wrote some code for it at one point, and even got approval to work on the project as part of FOAFnet, but at that point I was completely tired of even thinking about working on LJ stuff.

I'm not sure whether a well written patch would be accepted: the hard part of it is that the full range of FOAF (RDF) is pretty complex, and parsing it would introduce dependancies into LiveJournal which are non-trivial, even if you only used something like RDF::Simple.

Do you have any experience with RDF?
(Reply) (Thread)
[User Picture]
Date:December 24th, 2004 09:24 pm (UTC)
No; because of investigating FOAF I ended up reading through some of the RDF Primer today, but the closest thing I've worked with is the UPS SOAP protocol.

It does seem like complexity and new dependencies could be a problem. Just the fact that some predicates appear to be usable either as attributes OR as nested tags seems like it would be a headache to parse. Still, LiveJournal reads external RSS. Is it the case that RSS is more rigidly structured?
(Reply) (Parent) (Thread)
[User Picture]
Date:December 24th, 2004 09:38 pm (UTC)
RSS is an XML format, with a specific structure, that's right. RDF, for example, can do this:

<foaf:Person rdf:nodeID="crschmidt">
<foaf:name>Christopher Schmidt</foaf:name>
<rdf:Description rdf:nodeID="crschmidt">

Now, when you come right down to it, there are no tools out there that do that other than something that is spitting data out of a database (for example, my redlandbot data dumps come out like that), however, that is valid, and means the same thing as putting it all in one foaf:Person node.

RSS doesn't let you do that.

FOAFnet is a way of saying "look: this is the way it's going to be, in this order, and you must use these properties". It's kind of a way of making a standard for FOAF that is like RSS, so you don't need full RDF parsers to take care of the data.

However, FOAFnet's primary contributor on the LJ side of things is me. See previous comment re being burned out on LJ development ;)
(Reply) (Parent) (Thread)