I keep track of internal and external names for all (sub)files.
So the main model of an mpd will be found using the os filename from other files and using the FILE meta name from within the same mpd.
Nested mpd usage comes pretty much natural because I use a location stack while loading, an mpd is just a virtual folder on that stack. Access to submodels inside any mpd is limited to other models inside that same mpd though (except for the main model via the external name).
So the main model of an mpd will be found using the os filename from other files and using the FILE meta name from within the same mpd.
Nested mpd usage comes pretty much natural because I use a location stack while loading, an mpd is just a virtual folder on that stack. Access to submodels inside any mpd is limited to other models inside that same mpd though (except for the main model via the external name).