I spent some time programming a school's admin system. Whilst we never encountered that problem with addresses, we did have to accomodate international formats. And how addresses mapped to individuals and how individuals made up families were very complex problems. I still don't think we ever truly explored what was possible with that, although what we did come up with vastly better than all the various 'family' concepts of our main competitors.