Location-based functionality within Drupal

Having laid out last week some of the overall location-related functionality I'd like to see within Drupal, I wanted to start a proper list of areas around which I would like to see development within the Drupal community. I'll be putting effort into creating and improving many of these, and hopefully working with others who want to help as well.

I've broken down the functionality into three sections of the data flow - incoming data, internal processing and display, outgoing data and external systems. Please feel free to leave comments on which bits you'd like to see sooner rather than later, and any extra functionality that I've missed off the list.

  • Incoming data
  1. Ability to tag individual nodes in system with location information
  • by address (functionality already exists)
  • by clicking map
  • by coordinates
  • Ability to extract location information from EXIF tags in jpg images
  • Ability to automatically extract location of items from incoming feeds
    • from RSS feeds (using the geo namespace or GeoRSS implementation)
    • from KML feeds?
    • from GML feeds?
    • Internal processing and display
    1. Ability to search near location
    • by address (currently can search near zipcodes only)
    • by city/country
    • by clicking on map (or entering coordinates)
  • Listing of similaraly tagged nodes nearby
  • Mapping
    • Simple visualisation
    • Mapping nodes on top of imagery
      • Google Maps
      • Yahoo Maps
      • Maps from a GIS (eg MapServer)
    • GIS functionality
      • Point in polygon analysis (for example, to find which region a point lies in - useful for determining which country a pair of coordinates lies in, or which administrative district a point lies in)
    • Community map creation
    • Map of nodes with ability to filter by users, buddies, location, etc
    • Outgoing data
    1. Export any Drupal page as a feed (or layer) - e.g. search terms, tags, node types etc
    • RSS feeds with location imformation embedded
    • KML feeds
    • GML layers (using WFS from OGC to allow data output capabilities to be determined)
  • Ability to filter by geographic location, user, content type etc
  • Ability to export single points
    • links to maps (functionality already exists)
    • link to Google Earth placemark (complete)
    • External systems
    1. Creation of a geocoding system that can be accessed and queried by other systems (including Drupal) through a RESTful style XML interface - similar to Mikel Maron's geocoder

    updated 16th February 2006