This is a quick and dirty project page for the FOAF-a-Matic Mark 2: a reworking of my original Javascript FOAF-a-matic as a desktop GUI application.

The application will be released as open source, using the Attribution license from the Creative Commons

I've included some screen shots of the work in progress and my current feature list. Comments are very welcome. Please send comments directly to me and/or the rdfweb-dev mailing list. (You can't add comments directly to this Wiki).

Features and Roadmap

See FMMark2Features for a list of features that I want to implement.

See FMRoadmap for a rough plan on how I intend to get there.


See FOAFaMaticChangelog for the dirty details.

Random Design Notes

The code is written in Java and uses the Thinlet framework for building the user interface (I've got some separate NotesOnThinlets). I'm aiming to have several versions of the application for use in different environments, e.g. background "desktop FOAF collector", authoring tool, import/export tool, applet, etc.

I'm building it in Eclipse and using Junit to write the tests. Building is done via Ant.

RDF parsing is handled using the Jena 2 toolkit.

I'm trying to make the UI as friendly as possible, having recently read About Face. I've borrowed an idea from there which means that validation errors are signalled to the user without (too many) annoying dialogs -- the UI is updated to include visual cues (change of icons and tooltips) if there were problems.

Screen Shots

Startup Screen, showing initial help text. This could probably look at little better.
Startup Screen

Personal data entry tab, entering my details...
Data Entry

Entering friends will look something like this...
Friend Data Entry

Oops forgot to enter my email address, so the software flags an error. Note the red face indicating the problem field, and the tooltip text explaining the problem in a grammatically incorrect way :)
Validation Problem

Aah, finally we've got some FOAF data to look at...
Screen view


IMPORTANT: There is a bug in beta-1 which causes the foaf:mbox property to be incorrectly serialized, so the generated results aren't correct unless' you chose to encrypt the email addresses, in which case the FOAF is correct. As this is the default I hope it hasn't bitten too many people. This will be fixed in the next release.

Things for me to read (i.e. places to steal good ideas from)...

  • FOAF Chump
  • FOAF Autocreation -- I'd considered something like this, but it relies on FOAF autodiscovery. How widely deployed is that I wonder? Could we pick up something from the RSS file as a fall-back/alternative? E.g. rss:link, dc:creator
  • msn2foaf -- Grabbing contacts from MSN messenger. Yahoo have a feature where you can download your address book as a CSV file which I was going to use. This looks like a much friendlier alternative for MSN users.
  • Using nearestAirport in FOAF -- a handy guide to using the nearestAirport property to put yourself on the FOAF map (requires SVG)
  • Eric Vitiello has some interesting stuff in his FOAF description which it would be nice to support: adding an rdf:Description, trust metrics, license, etc.

Add new attachment

In order to upload a new attachment to this page, please use the following box to find the file, then click on “Upload”.
« This page (revision-1) was last changed on 09-Sep-2003 16:04 by unknown [RSS]