What does the "operation name" reference? : <p>I'm learning about GraphQL and I'm very interested in the <code>operation name</code> the part of the query that comes after the <code>query</code> or <code>mutation</code> (depending on the root query type). I found a couple of code examples using the operation name, and I'm confused as to where they come from? There seems to be no references in the code about them, and they seem completely arbitrary.</p>

<pre><code>query Welcome {
  echo (email: "hi@example.com")
}
</code></pre>

<p>and</p>

<pre><code>query HeroNameQuery {
  hero {
    name
  }
}
</code></pre>

<p>I don't understand why a given schema can't just contain the queries and types that follow (eg. <code>user</code>, <code>article</code>, <code>order</code>, etc.), and I don't understand the namespacing system and the operation name provides any sort of advantage.</p>

<p><a href="https://github.com/mugli/learning-graphql/blame/master/7.%20Deep%20Dive%20into%20GraphQL%20Type%20System.md#L436" rel="noreferrer">https://github.com/mugli/learning-graphql/blame/master/7.%20Deep%20Dive%20into%20GraphQL%20Type%20System.md#L436</a></p>

<p><a href="http://graphql.org/docs/queries/" rel="noreferrer">http://graphql.org/docs/queries/</a></p>
