spatially augmenting craigslist

What you might hope to get out of this

Discovery

Spatial metadata makes you more accurately searchable. Both Google and Yahoo are indexing RSS and RDF metadata and developing local spatial search, showing you nearby services and locations. Event aggregators are rumoured to be the coming thing, publishing and collecting local calendars.

Microlocality

If you knew someone's approximate location at a time, you can send them spatially annotated stuff that might be of interest to them. They could register for certain kinds of goods and services near them to be available on a portable display. Microlocal content is like what original free network idealists like Ralf sought, too; stuff of local relevance travelling between nodes with no reference to an internet backhaul. The search engine types will want to run mobile services, too.

Interesting Meta Applications

Publishing RSS, a neighborhood uri scheme, a simple spatial ontology, encourages people to build interesting interfaces - maps, etc - to your data set. You may or may not want this.

Simple Spatial Annotation Techniques for the Web

Geoannotated RSS

An RSS 1.0 feed can be decorated with spatial and temporal metadata properties. see also the foaf:maker line indicating the owner of the message. This can be encrypted in a hash if desired. FOAF has some following among the social network sites and could be a useful 'passive social network' to plug into, for e.g. shared filtering purposes.

<rdf:RDF
 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
 xmlns="http://purl.org/rss/1.0/"
 xmlns:foaf="http://xmlns.com/foaf/0.1/"
 xmlns:dc="http://purl.org/dc/elements/1.1/"
 xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#"
 xmlns:chefmoz="http://chefmoz.org/rdf/elements/1.0/"
>
<channel rdf:about="http://craigslist.org/sfc/yrd/">
<title>craigs list yard sales in SFC</title>
<link>http://craigslist.org/sfc/gms/</link>
<dc:date>20040710T120000</dc:date>

<items>
 <rdf:Seq>
  <rdf:li rdf:resource="http://craigslist.org/sfc/gms/37067828.html"/>
  <rdf:li rdf:resource="http://craigslist.org/sfc/gms/37064663.html"/>
 </rdf:Seq>
</items>
</channel>


<item rdf:about="http://craigslist.org/sfc/gms/37067828.html">
<dc:date>20040723T120000</dc:date>
<title>HUGE moving sale!!!  Antiques!  Electronics!</title>
<chefmoz:Address>16th and Mission, San Francisco, CA</chefmoz:Address>
<dc:coverage>
	<geo:Point geo:lat="37.765029" geo:long="-122.419682"/>
</dc:coverage>	
<chefmoz:Neighborhood rdf:resource="http://craigslist.org/sfc/mis"/>
</item>

<item rdf:about="http://craigslist.org/sfc/gms/37064663.html">
<dc:date>20040723T120000</dc:date>
<title>Big Bad Garage Sale this Sunday!</title>
<chefmoz:Address>Lyon St and Post St, San Francisco, CA</chefmoz:Address>
<dc:coverage>
        <geo:Point geo:lat="37.783729" geo:long="-122.444482"/>
</dc:coverage>  
<chefmoz:Neighborhood rdf:resource="http://craigslist.org/sfc/inr"/>
<foaf:maker rdf:resource="mailto:anon-37064663@craigslist.org"/>
</item>

</rdf:RDF>

see rss

RDF/XML in HTML

There are techniques for embedding RDF spatial and temporal annotations in HTML headers.

<html>
<head>

<rdf:RDF xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos"
	 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
	 xmlns:dc="http://purl.org/dc/elements/1.1"
	 xmlns:chefmoz="http://chefmoz.org/rdf/elements/1.0/"	
	 xmlns="http://craigslist.org/2004/made/up/name#">

<Yard_Sale rdf:about="" dc:date="20040723T120000" chefmoz:Address="Lyon St and Post St, San Francisco, CA">
	<dc:coverage>
		<geo:Point geo:lat="37.783729" geo:long="-122.444482"/>
	</dc:coverage>
</Yard_Sale>
</rdf:RDF>
</head>
<body> 
</body>
</html>

see html

GeoURL

Geourl provides a lo-tek quick fix for spatial annotation on the web. An custom META tag embeds latitude and longitude, jokingly referenced as an ICBM. Geourl requires that you have coordinates, and that you register each URL with a central server. It is semi-permanently 'down for renovations' but there are plans to revive it.

Open Guides and the Chefmoz vocabulary

The Open Guide to London is a wiki city guide that exports RDF. I started a SF Guide here, but it doesn't really have a user community.

Each page is tagged with one or more neighborhoods and categories. These categories are ad-hoc, not predefined, this can be a drawback sometimes. The pages also have optional extra metadata, including address and phone number.

With the SF Openguides, we easily connected up the geocoder, which can return GPS lat and long for about 95% of U.S. addresses. There are three web service interfaces to the geocoder, the simplest of which is a RESTful one which returns lat and long in RDF.

We also plugged SF Openguides into mapbureau's RDFMapper service. RDFMapper will read any suitably annotated RSS or RDF file, and return a nice clickable Flash map.

Open Guides uses the ChefMoz vocabulary, developed for syndication of mozilla directory restaurant ratings, heavily.

metaSF and locative technologies

metaSF, like its predecessor mudlondon, uses URIs to identify things in space. The URI might map to a specific place - http://space.frot.org/metasf/St/Elsie/306 - or to a general area - http://space.frot.org/metasf/Neighborhood/SoMa - or to anything a person chooses to identify. There are no rules to the URI scheme, it's pretty adhoc. The goal is that most URIs resolve to a chunk of RDF/XML where you can learn more about the location - what neighborhoods it's in, or what venues it contains.

craigslist has a nice URI scheme, very compatible with an RDF representation. it uses numbers rather than letters to identify neighborhoods right now, but i would supply an alternative to make the uri more 'humanly meaningful' and annotate each thing with a neighborhood uri.

elsewhere, we could have geometrical representations of shapes which correspond to the neighborhoods, and you could see local events by 'sticking a pin' at your location through a stack of shapes and seeing which ones contain you.

Geocoding and making metadata

Perhaps people don't want to see that much metadata, be confronted with a hor de of fields in forms. But being able to get the address, or intersection, as a separate field would be invaluable to this - then you can get the coordinates from geocoder.us, a free service for noncommercial use.

Just publishing URIs for neighborhoods, with references elsewhere as to their approximate location as a point or shape, would be a good start, though it woul dn't get you all the joy of discovery.

References

locative packts reecommended vocabularies - includes more detail and references on the time and space vocabularies in use in the examples.

placeTimePingInterface, references to event aggregation work

SF Open Guide still in a slightly sorry state. try 'view RDF' on a given page to see their representation.