title: Syntax Error on makeExecutableSchema: Unexpected Name "User" (GraphQL)
body: <p>I need some help to solve an error on graphql, I can't find anything on this case.</p>
  
  <p>I tried to separate my different schemas and resolvers to make it easier to maintain, but when I use makeExecutableSchema function (from graphql-tools package), a "GraphQLError: Syntax Error: Unexpected Name "User"" error is throw.</p>
  
  <p>So here is the Error : </p>
  
  <pre><code>/Users/thomasblanquet/EIP_Routs/API/routs-api/node_modules/graphql/language/parser.js:153
    throw unexpected(lexer);
    ^
  GraphQLError: Syntax Error: Unexpected Name "User"
      at syntaxError (/Users/thomasblanquet/EIP_Routs/API/routs-api/node_modules/graphql/error/syntaxError.js:24:10)
      at unexpected (/Users/thomasblanquet/EIP_Routs/API/routs-api/node_modules/graphql/language/parser.js:1490:33)
      at parseDefinition (/Users/thomasblanquet/EIP_Routs/API/routs-api/node_modules/graphql/language/parser.js:153:9)
      at many (/Users/thomasblanquet/EIP_Routs/API/routs-api/node_modules/graphql/language/parser.js:1523:16)
      at parseDocument (/Users/thomasblanquet/EIP_Routs/API/routs-api/node_modules/graphql/language/parser.js:113:18)
      at Object.parse (/Users/thomasblanquet/EIP_Routs/API/routs-api/node_modules/graphql/language/parser.js:48:10)
      at Object.buildSchemaFromTypeDefinitions (/Users/thomasblanquet/EIP_Routs/API/routs-api/node_modules/graphql-tools/dist/generate/buildSchemaFromTypeDefinitions.js:19:33)
      at makeExecutableSchema (/Users/thomasblanquet/EIP_Routs/API/routs-api/node_modules/graphql-tools/dist/makeExecutableSchema.js:26:29)
      at Object.&lt;anonymous&gt; (/Users/thomasblanquet/EIP_Routs/API/routs-api/graphql/schema.js:15:18)
      at Module._compile (internal/modules/cjs/loader.js:689:30)
  npm ERR! code ELIFECYCLE
  npm ERR! errno 1
  npm ERR! routs-api@1.0.0 start: `node server.js`
  npm ERR! Exit status 1
  npm ERR! 
  npm ERR! Failed at the routs-api@1.0.0 start script.
  npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
  </code></pre>
  
  <p>And here is my code :</p>
  
  <p>For the User schema :</p>
  
  <pre><code>const User = `
  User {
    _id: Int!
    username: String!
    email: String!
  }
  
  extend type Query {
      users: [User]
  }
  `;
  
  module.exports = User;
  </code></pre>
  
  <p>For the resolver (the model is create with sequelize and I'm using Apollo-Server-Express):</p>
  
  <pre><code>const User = require('../../server/models/user')
  const Messages = require('../messages');
  
  const resolvers = {
    Query: {
      users(parent, args, context, info) {
        parent.getUsers()
      },
  };
  
  module.exports = resolvers;
  </code></pre>
  
  <p>And finally the code to put the schemas and resolvers together :</p>
  
  <pre><code>const { makeExecutableSchema } = require('graphql-tools');
  const resolvers = require('./resolver');
  const User = require('./user/schema');
  
  const Query =
  `type Query {
    _empty: String
  }`;
  
  const Mutation =
  `type Mutation {
    _empty: String
  }`;
  
  module.exports = makeExecutableSchema({
    typeDefs: [Query, Mutation, User],
    resolvers,
  });
  </code></pre>
  
  <p>I really can't find anything about this kind of problem, thanks for helping me :)</p>