Yes, that makes sense.
The staging yard has Train1, Train2, and Train3. Train 2 is needed first, which means Train1 would have to be moved out, rotating the lineup to Train2, Train3, Train1. This brings up an interesting question on how the database would operate most effectively. Ideally, you'd want something set up to kill this problem before it became a problem. I've never participated in an operating session like this, so I'm going to need your input. How is train priority assigned?
Your "off world" staging would have to be part of the yard database. Let's call it YardSite3. Information entered would include: Number of tracks and total car capacity. By pulling information from the rolling stock database and engine database, you would be able to tell what is currently there. If it's merely a storage, or waiting station for completed trains, it would work just the same.
The train database wouldn't require entry by an operator. It would pull updated information from others. As industries call out certain cars and their locations, trains are made, thus making a new entry. Train5 (you could designate it with a name if needed) would include Engines X and Y, and Rolling Stock17, 33, 12, Caboose4, etc. As a train makes it's way to a destination, say Industry3...which requires dropping off Rolling Stock17, the database would have to be updated.
Actually I think the whole thing could work rather well. The trick is going to be making it easy and simple to use, and have it look good. It sounds more complicated than it really is. I personally have no real use for something like this with my small layout, but I'd be happy to make something for those who do.