friend of a friend

location: Us > History

the friend of a friend project

tiny foaf logoFOAF grew out of Dan Brickley's 1998-era homepage, which at the time was just an HTML page showing an RDF description of him, RDF-geek that he is. All this was when RDF was a young and obscure technology. A year or so later, when there were some actual RDF tools around to process such descriptions, this not particularly original idea turned into FOAF. DanBri and Libby Miller started the RDFWeb project as a loose umbrella for FOAF and related Semantic Web projects. The thing that made FOAF intriguing was the addition of a Web-crawling aspect. Unlike DanBri's old home page, FOAF documents were linked together. Each FOAF file could mention any number of other things, and could include an 'seeAlso' pointer to a URL which further described those things. So Dan's FOAF page linked to Libby's FOAF page, which linked to Edd's FOAF page, and so on. FOAF was an attempt to build a Web of RDF files (hence 'rdfweb'...), to move beyond examples and proof of concept and describe real people in the real Web.

The first (long obsolete) FOAF aggregator was DanBri's Perl effort, followed by Libby's Java tools based on Inkling and her RDF query work. And then Edd Dumbill wrote an IBM developerWorks article about FOAF, as well as foafbot, a FOAF harvester ('scutter') with an IRC user interface. And then somehow (Mark?) FOAF ended up all over the Weblogs, and a few months later here we are with FOAF files cropping up everywhere, FOAF this and FOAF that and FOAF next big thing and well, it's been fun. And that's without mentioning things like FoafNaut and FoafCorp and FOAF Web View and FOAF Explorer and CoDepiction and a whole load of other cool stuff people have been hacking on in the last year or so.

So FOAF remains a collaborative project, based around the FOAF mailing list (mailto:rdfweb-dev@vapours.rdfweb.org) and the collaboration tools (mail, irc, wiki, cvs, bugzilla, weblog ...) hosted at rdfweb.org. The FOAF vocabulary itself, ie. the FOAF spec, consists of a collection of RDF vocabulary definitions, and is described at the FOAF Namespace Document. The editors of the FOAF Spec are Dan Brickley and Libby Miller, but it is maintained in collaboration with the active participants of rdfweb-dev, and others who provide feedback on their implementation experience. If you'd like a say in its future, sign up to the mailing list and get involved!

FOAF is also designed, since it is an RDF vocabulary, to not require a centralized model of extension. There are already many common extensions in use for FOAF files, and these have often been proposed independently. We find that RDF nicely suits our need for a lightweight, collaborative approach, since independently designed RDF vocabularies are interoperating nicely within the RDF framework we adopted for FOAF.

FOAF is, of course, following in a long tradition; while it most closely follows the Web homepage model, it also owes a lot to finger and the Geek Code. These roots are acknowledged within FOAF itself, through the foaf:homepage, foaf:plan and foaf:geekCode properties