[v4] Graphql Schema Changes

Would someone be able to shed some light on why changes were made to the graphql schema that adds unnecessary nesting and re-shapes the types. I have been using graphql since its alpha release and have never seen anyone implement graphql schemas the way Strapi did with v4. I think I understand the intention and what was trying to be accomplished but fields and types should remain as flat as possible without nesting things under things like data and attributes.

Screen Shot 2021-12-21 at 2.57.12 PM

Here is a link to the code where things are being nested under data: