Written by Leigh Dodds.
In short though, FOAF is a way to describe yourself -- your name, email address, and the people you're friends with -- using XML and RDF. This allows software to process these descriptions, perhaps as part of an automated search engine, to discover information about your and the communities of which you're a member. FOAF has the potential to drive many new interesting developments in online communities. Ben Hammersely's "Click to the Clique" article for the Guardian Unlimited website further explores these ideas.
The FOAF-a-Matic is being provided as a quick and easy way for you to create your own FOAF description. Simply work through the forms on this page and complete whichever details you'd like to add to your description. As a minimum you'll need to supply your name and email address, and similarly for any friends you might add. It's worth adding a few friends to your description (but feel free to add as many as you like) because then when FOAF harvesters index your FOAF description, they'll be able to tie you all together as a network of individuals.
Note: none of the information you enter in this page is used or stored in any way. The processing is entirely client-side, so your privacy is assured.
If you have comments about this application, or further questions about FOAF, why not join the RDFWeb-dev mailing list?
Update: I'm currently writing the FOAF-a-Matic Mark 2 a desktop application for creating and managing your FOAF data.
Tell FOAF-a-matic about some people you know. Click "Add Friend" to add space to add more people. If you friend already has a FOAF description, then place a link to it in the 'seeAlso' field.
Now you've filled in the details you're ready to be turned into FOAF...
This is the easy part. Simple copy the generated FOAF description from the text box above and paste it into a file. Put the file onto your website somewhere where it's publically accessible, it's a good idea to name this file "foaf.rdf" as then a google search can be used to help discover FOAF files across the web.
Your FOAF description is now ready, you just need people to come along and read it...
The 'discovery' aspect of FOAF (i.e. how FOAF compliant applications find your description) is still an area under discussion. If you have suggestions then send them to the RDFWeb-dev mailing list. However there are three possibilities. You may want to try some or all of them.
Aaron Swartz has suggested using the HTML Link tag to point to FOAF descriptions, in a similar way that many bloggers are pointing to their RSS feeds. Here's how it should look:
<link rel="meta" type="application/rdf+xml" title="FOAF" href="foaf.rdf" />
The other recommended way to get your FOAF file indexed is to have someone else (i.e. a friend) point to it. A FOAF spider can then traverse all FOAF files. You can do this by making the following changes to your FOAF description:
rdf:RDFelement to add the RDF Schema namespace, as follows:
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:foaf="http://xmlns.com/foaf/0.1/" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#">
rdfs:seeAlsoelement for each additional file, as follows:
<rdfs:seeAlso rdf:resource="http://www.example.com/friends.xrdf"/> <rdfs:seeAlso rdf:resource="http://www.ldodds.com/webwho.xrdf"/>
Update: if your friends already have a FOAF description, then include it in the 'seeAlso' field given in the form above. You can also Refer a Friend to the FOAF-a-matic
An obvious way for applications to discover FOAF descriptions is for there to be a registry of people. I've cooked up a simple way to do this called the FOAF Bulletin Board. Simply visit the FOAFWiki, and edit the FOAFBulletinBoard page and add your name and a link to your FOAF description. I've added mine already which you can use as an example.
Applying the magic of HTML Tidy and XSLT means that applications such as Edd Dumbill's FOAFbot can process this index. Visit the FOAFBot home page for information about how to see it in action.
This work is licensed under a Creative Commons License.