WardCunningham/Smallest-Federated-Wiki — Issue #133: Interop with other systems
Author: danja
Created: 2012-02-16 21:38:06+00:00
State: open

I only came across the project today, so please bear with me :)
I'm interested in the definition of the HTTP interface, and would appreciate any relevant pointers (I've found the Concepts and JSON pages on the Wiki so far).

I'm interested not least because I've got a project under construction that I'd like to set up as a SFW peer [1]. By that I mean that although the front-end and UI may well be very different from the SFW system's, _at minimum_ I want it to support the HTTP/JSON aspects, so from the viewpoint of another SFW it looks like a regular peer and supports the r/w operations.

A slightly tangential observation: the JSON messages look very similar to RSS - inevitable I suppose, in that they're both bare-bones versions of typical Web pages. But this means that looked at the right (rather twisted) angle, it means that many existing sites already fulfill part of the SFW contract. Shove the RSS through XSLT (or whatever) to get the JSON. Kind of.

Anyhow, the way I fancy approaching this by mapping between the SWF messages and SPARQL 1.1 [2] queries. These support reading and writing to and RDF store over HTTP. I _think_ it will be pretty straightforward to set up a "headless" peer using the same approach I've used in [1], essentially a bit of HTTP middleware to template input (query) and output. I've not had a close look at how SFW works but I get the feeling that given the server-side comonents it might be straightforward to overlay the browser-side components, hence making a semi-port, if you see what I mean...

One point that isn't clear to me, with a Linked Data hat on - how are the IDs determined? Or rather, given a raw ID and the URL of an arbitrary SFW peer (and the rest of the WWW :) how does one get to the Story?

Cheers,
Danny.

[1] https://github.com/danja/seki
[2] http://www.w3.org/TR/sparql11-query/