locked
Geocoding: Query vs Address and Postcode vs Full Address

    Question

  • I am using the VE web service to perform geocoding for addresses entered in to my application. We are using the longitude and latitude to calculate distance between locations in the UK.

    My question really relates to the advantages of using "Address" to enter the address information vs "Query" when sending the geocode request. I'm particularly interested in people’s views that have used the service in the UK and how accurate they have found either method.

    Ideally for simplicity sake I am considering just passing Postcode through the "Query" property with ", UK" appended to it but I am concerned that this may not give accurate enough results and am unsure as to the size of area covered by a postcode in the UK? Has anybody ever found a valid postcode that did not geocode or can I assume that if the postcode is valid I will always be able to get a result and hence if the geocode service returns no result then the postcode is invalid?


    My other option is to pass the whole address into the web service using the Address property  and hopefully achieving better accuracy. In this case my biggest worry is that the web service turns out to be very picky about matching the address and regularly refuses to match address entered by my users this will obviously not go down to well with them.  I'm not even sure if passing in the street address will increase the accuracy in the UK? I know in the US accuracy down to the individual roof top is supported but I don't know if this is the case in the UK?

    One more question is it possible to use the web service as an address cleaner whilst doing the geocode?

    Monday, January 19, 2009 5:40 PM

Answers

  • This is a tricky one, for commerical apps I don't recommend relying on the AJAX control's find() method for automated tasks. You really do have to get your users involved in the process. Get them to enter the address (or have it pre-filled for them with , UK to be helpful), show them the disambiguation dialog and visual confirmation of the location they have selected with UI to easy change. Cover the possibility that the find() method geocodes a location on the other side of the planet.

    The VEWS (WCF Web Service) lets you do things little more programatically setting many more options and processing server side. I recommend this for background process, for example geocoding every record entered into the system. Even with this I still recommend a way to show the user what has been geocoded and let them confirm or change it.

    Postcode is great for setting the overall view of the map, not great for putting a pushpin down. In Australia some centriods of the postcode are 1KM out to sea ;)

    John. 
    Windows Live Developer MVP - www.soulsolutions.com.au - follow http://twitter.com/virtualearth for latest VE news.
    Monday, January 19, 2009 10:16 PM
    Moderator
  • A single postcode may cover up to about 100 properties. The accuracy with which you can describe a postcode as being at a singular location therefore depends on how densely packed the properties are in the particular area. In London, you're never more than a couple of hundred feet - in Northern Scotland, possibly several miles.

    If you can use address + postcode you should get a much better result.
    Monday, January 19, 2009 5:59 PM
    Moderator
  •  Another thing to bear in mind if you will eventually find postcodes that VE does not recognise, as postcode update databases come our quarterly there will always be some new postcodes it doesnt have and Im also not sure how often VE's data is updated even if the postoffice data is released quarterly

    We do a postcode lookup initially (as its more reliable in our experience) then an address lookup if that fails.

    Brian @ Earthware - UK interactive mapping web developers http://www.earthware.co.uk/blog | http://www.twitter.com/earthware
    Tuesday, January 20, 2009 8:41 AM
    Moderator

All replies

  • A single postcode may cover up to about 100 properties. The accuracy with which you can describe a postcode as being at a singular location therefore depends on how densely packed the properties are in the particular area. In London, you're never more than a couple of hundred feet - in Northern Scotland, possibly several miles.

    If you can use address + postcode you should get a much better result.
    Monday, January 19, 2009 5:59 PM
    Moderator
  • This is a tricky one, for commerical apps I don't recommend relying on the AJAX control's find() method for automated tasks. You really do have to get your users involved in the process. Get them to enter the address (or have it pre-filled for them with , UK to be helpful), show them the disambiguation dialog and visual confirmation of the location they have selected with UI to easy change. Cover the possibility that the find() method geocodes a location on the other side of the planet.

    The VEWS (WCF Web Service) lets you do things little more programatically setting many more options and processing server side. I recommend this for background process, for example geocoding every record entered into the system. Even with this I still recommend a way to show the user what has been geocoded and let them confirm or change it.

    Postcode is great for setting the overall view of the map, not great for putting a pushpin down. In Australia some centriods of the postcode are 1KM out to sea ;)

    John. 
    Windows Live Developer MVP - www.soulsolutions.com.au - follow http://twitter.com/virtualearth for latest VE news.
    Monday, January 19, 2009 10:16 PM
    Moderator
  •  Another thing to bear in mind if you will eventually find postcodes that VE does not recognise, as postcode update databases come our quarterly there will always be some new postcodes it doesnt have and Im also not sure how often VE's data is updated even if the postoffice data is released quarterly

    We do a postcode lookup initially (as its more reliable in our experience) then an address lookup if that fails.

    Brian @ Earthware - UK interactive mapping web developers http://www.earthware.co.uk/blog | http://www.twitter.com/earthware
    Tuesday, January 20, 2009 8:41 AM
    Moderator
  • Hi everyone and thanks for your replies.

    I did some testing last night and from my limited testing  the "Entity Code" of the result returned is always "Postcode1" regardless of if I use the Query or Address property to perform the search and this doesn't change if I input a whole address or just a postcode. This would seem to suggest that the accuracy is only down to the postcode level regardless as long as the postcode is matched in the query and this is not refined by the inclusion of the house number?

    I think the route I am going to go down is to try to geocode the whole address as I seemed to always get a match this way.


    Ross Mason | Inflecto Systems | http://www.inflecto.co.uk
    Tuesday, January 20, 2009 11:34 AM
  • This is a great post, but it doesn't seem to answer the questions..!

    I noticed that in most mapping sites (mapquest, maps.live.com, google) I can type in "kenabunkport maine" (this is misspelled) and get the correct location on the map.  However, when I use VE, I get the center of the United States!

    1.  Is there a diffence between "query" and "Address"?  I have found none so far.
    2.  Is there a way to geocode with words spelled incorrectly?

    I am converting an app from Mapquest to Microsoft VE.  It has been dificult becuase the API site for Microsoft does not give any advice on how to access the services.

    Any help?
    Tuesday, February 24, 2009 4:46 PM