That's an interesting article u found there Simon :)
I've always been thinking along the lines of grid clustering. given small grid sizes, it's doesn't seem too bad and could be a great first step, probably. This is already been done, right? just having some smarts to leverage it (ie. spatial indexing is sorta doing this).
When it comes to cluster result data, I've always thinking along the lines of a Map/Reduce result .. where it's the schema data for a single result + the centre point + count.
for example, using Grid clustering (just to keep this convo simple).
Q: given a polygon (eg. a rectangle viewport for part of the city of New York) and a zoom level, display/find all the crime stats.
Sln: If a grid section of this polygon returns a cluster, all the properties would be 0/null except centre point + (cluster reduce) count. if a grid section returns a single result (count == 1), then return all the details for that reduce result. Eg. crime committed on, etc
or just like you said, the developer can choose to just return the count and the centre point and maybe a list of Id's, if count == 1 .. maybe.
i'm not very good at this stuff - not sure if i'm helping or wasting both your time. :blush: