title: @apollo/federation throws an error with the example from the docs
body: <p>After running into an issue trying things out on my own, I tried the example from the docs and I ran into a similar issue, is the doc wrong, or am I doing something stupid?</p>
  
  <p>The example I am trying to execute is the one from this page: <a href="https://www.apollographql.com/docs/apollo-server/federation/introduction/" rel="noreferrer">https://www.apollographql.com/docs/apollo-server/federation/introduction/</a></p>
  
  <p>The relevant piece of code is:</p>
  
  <pre><code>const server = new ApolloServer({
    schema: buildFederatedSchema([{
      typeDefs: gql`
        extend type Query {
          me: User
        }
  
        type User @key(fields: "id") {
          id: ID!
          username: String!
        }
      `,
      resolvers: [],
    }, {
      typeDefs: gql`
        extend type Query {
          topProducts(first: Int = 5): [Product]
        }
  
        type Product @key(fields: "upc") {
          upc: String!
          name: String!
          price: Int
        }
      `,
      resolvers: [],
    }, {
      typeDefs: gql`
        type Review {
          body: String
          author: User @provides(fields: "username")
          product: Product
        }
  
        extend type User @key(fields: "id") {
          id: ID! @external
          reviews: [Review]
        }
  
        extend type Product @key(fields: "upc") {
          upc: String! @external
          reviews: [Review]
        }
      `,
      resolvers: [],
    }]),
    context: ({ req }) =&gt; ({ user: req.user }),
  })
  </code></pre>
  
  <p>Note that I left the resolvers empty on purpose, I am just trying to compile the schema.</p>
  
  <p>Here is the error I get:</p>
  
  <pre><code>GraphQLSchemaValidationError: Field "User.id" can only be defined once. Field "Product.upc" can only be defined once.
  </code></pre>
  
  <p>Can someone help me out with that?</p>