This was done with a new project I started on github, called "drone-middleware". The objective of this project is to develop a platform where other developers, researchers, hobbyists can develop solutions that use uav's, probably mostly targeted in situations where you have dynamic missions like SAR missions. So it only cares about the high level drone information (heartbeat, position) and perhaps a flight plan. Such users don't care about low level uav details, they only need to know where it is and what it intends to do with maybe some tooling to draw pois and lines on a drone gcs to indicate how the operator should replan the flight.
So, only a very small bit of data is converted to a canonical model: heartbeat and position and I have no intention to do the whole lot. Just doing two is a complicated and messy process, The pprz GCS in this video transferred the rest of the data through an opaque "tunnel" on the middleware and mavlink drones do the same thing with a mavlink drone. Whatever tooling is in the middle can then subscribe to the position messages and use that to their advantage (resource planning, whatever).
Rgds,
Gerard