Thanks for reply. So we have a list of all cities and positional data (guessing) which is helpful.
Not wanting to redo a wheel that must have been done many times before; ER diagramaticaly this is what I am after.
country -< region -< city
http://www.gefeg.com/edifact/d03a/s3/codes/cl1h.htm
I now have the ISO regions as per this link with the matching ISO country 2 char code. Which is easy to translate (using vim or your favourite editor) into an SQL table.
Understandably city is a big job and may not exist in 'ISO land'.