I've been working on getting our parcel locator to return close matches on the same street (eg. input 100 main street, mytown which doesn't exist and have 101 main street, mytown returned instead of 100 main street, someothertown) and ran across some very strange behaviour. The behaviour is 100% repeatable and I have found the pattern. I'll try to explain it as best as I can.
If you try to geocode an address of 21 King Street, Midland (which doesn't exist), you get the following returned:
251 King Street, Midland
261 King Street, Midland
291 King Street, Midland
What the locator seems to do is this:
-find all the addresses that start with the first number of the requested address - "2" in the example, AND end with the last number of the requested address - "1" in the example, BUT only if it has an extra number in between.
An example with a larger number explains things further:
Input 100 King Street and you get back:
1040 King Street
1050 King Street
1070 King Street
The locator finds all the parcels that start with the first TWO numbers of the input address AND end with the last number of the input address BUT only if they are 4 digit numbers (one more than the input street number).
Has anyone run into this behaviour before? Any ideas on how to overcome the problem? We have a dual range locator that works just fine (matches close house numbers) and it appears to have the same XML code for the house number logic.