Embedding FOAF in Atom
One of the people I had the pleasure of meeting at FOO Camp was Dan Brickley, the prime mover behind FOAF. He gave a session where he talked about the experience he had in developing FOAF, the challenges that they faced, and the motivations behind the solutions they came up with.
Later in the day, he cornered me (in the nicest possible way, of course) to discuss integration with Atom. I suggested that he draft a proposal for the atom-syntax mailing list which hopefully should appear in the next few days (hint, hint, nudge, nudge). Meanwhile, I have done a quick prototype. My Atom feeds now contain FOAF data when the author is a person.
At the moment, I am storing some of the same data redundantly in both the Atom and FOAF namespaces. This is clearly suboptimal. What I expect is that we will come to one of the following conclusions:
- Integration with FOAF is a big win, and it makes sense to defer to FOAF whenever possible.
- Embedding FOAF is not the right answer, but keeping the element names and semantics consistent with FOAF is a good idea.
- Interesting experiment, but not worth pursuing
Meanwhile, this enables queries using FOAF elements. For example: here is a list of blog entries that Dan Brickley has commented on.
FOAF is characterized as being "machine-readable home pages". Having this information within a feed would enable aggregators to display additional data about the author of the entry being viewed, for example: their personal info, online accounts / IM, projects and groups.