schema @link(url: "https://specs.apollo.dev/federation/v2.0", import: ["@key", "@shareable", "@provides", "@external", "@tag", "@extends", "@override", "@inaccessible"]) {query: Query} type Product @key(fields: "id") @key(fields: "sku package") @key(fields: "sku variation { id }") { id: ID! sku: String package: String variation: ProductVariation dimensions: ProductDimension createdBy: User @provides(fields: "totalProductsCreated") notes: String @tag(name: "internal") } type ProductDimension @shareable { size: String weight: Float unit: String @inaccessible } type _Service { sdl: String } type ProductVariation { id: ID! } input ProductVariationInput { id: ID! } type Query @extends { _service: _Service! _entities(representations: [_Any!]!): [_Entity]! product(id: ID!): Product } type User @key(fields: "email") @extends { email: ID! @external name: String @shareable @override(from: "users") totalProductsCreated: Int @external } union _Entity = User | Product input _Any { __typename: String! id: String sku: String package: String variation: ProductVariationInput }