What assumptions does one make about addresses? I would be cautious before making very many.
In Japan there are areas larger than cities but smaller than regions. There are areas smaller than cities but larger than neighborhoods. There are areas smaller than neighborhoods. And you need all of them to form a proper address. What this means is that Android’s database is overly restrictive. It fails for Japan.
And other countries have even more screwy address schemes. Did you know in Nicaragua it’s common to describe places using the old names of buildings and the old names of streets followed by some basic directional notation? Crazy stuff!
Except that you can do what in fact people have done. You can just make one data column hold a ton of data. Sure, it’s a type error, but at least you gain the functionality you want.
As you say, this doesn’t affect the issue, but I’d be careful before assuming too much about address structure.