However, to come up with an architecture which has separate concepts of
identity and location, there can't be any direct relationship between them
at all (other than mapping through some kind of database).
That isn't what mobile IP offers - the identity of a mobile node is
tightly coupled to the location of its home node (or if you like, the home
location of the mobile node). The two things just aren't separable.
actually, I think this is wrong.
if you map through some kind of a database then you immediately have the
question of how to find that database. and if you have to derive the
location of the database from the address of the host which you are trying
to reach, you're adding (yet) another level of indirection that has to be
maintained, is an opportunity for failure, etc. not to mention one which
doesn't much, if any, value. (other than address portability across
mapping database providers)
mobile IP doesn't require that there be any tight coupling of the
"identity" of the mobile node to the location of that database,
it just encodes the location of that mapping database in the home address
of the mobile node.