Do I understand the argument you are making correctly?
1. GP wants to say “the input to createBook is the Book type minus bookId”
2. GraphQL does not allow one to specify the type “Book minus bookId”
3. Therefore you don’t allow it.
And maybe there is a point 2.b (which I can’t tell if you are making): we can’t have the type “book minus bookId” in our representation because we save in some “pure GraphQL” format and so can’t infer that type when we reload from a saved representation?
1. GP wants to say “the input to createBook is the Book type minus bookId”
2. GraphQL does not allow one to specify the type “Book minus bookId”
3. Therefore you don’t allow it.
And maybe there is a point 2.b (which I can’t tell if you are making): we can’t have the type “book minus bookId” in our representation because we save in some “pure GraphQL” format and so can’t infer that type when we reload from a saved representation?