Hello! You are correct that this “merged and shared subgraph field” pattern is not currently supported in Apollo Federation, with some details covered in this thread.
I believe the most common pattern is: Whichever subgraph does resolve Query.books
(or similar field) has access (whether direct or indirect) to all data sources necessary to fetch all possible Book
objects.