The hierarchy that the wallet actually uses could be anything.Maybe the solution is to have a defined way to import an unknown wallet?Given a blockchain and a root seed, it should be possible to find all the addresses for that root seed.
This means that the gap space and a search ordering needs to be defined.