A Relay abstraction is the ideal. Where query fragments are statically defined where possible and synced in as they become a part of the component tree. E.g., new roots and the tree of data descending from that root.