graphql-spec
graphql-spec copied to clipboard
GraphQL is a query language and execution engine tied to any backend service.
The [specification](https://spec.graphql.org/October2021/#sel-HAHlBLDBABAB0B7gY) states that: > A Non-Null type must not wrap another Non-Null type. In the specification we see the type `[Int!]!` used in [an example](https://spec.graphql.org/October2021/#sel-KAHlBNJDZBAABABHu0Z), which is a non-null...
As projects like Relay have shown, it's relatively common to repeat the same generic structures of types multiple times within a project. In the case of Relay, I'm talking about...
Currently http://facebook.github.io/graphql/#sec-Input-Objects reads: > This unordered map should not contain any entries with names not defined by a field of this input object type, otherwise an error should be thrown....
# Context Right now in order to reference other named types in a directive, as far as I can find, and confirmed by the [GraphqlInputType](https://github.com/graphql/graphql-js/blob/6a5f51f3bd07f3914c7f1ec01908e9e325b77d58/src/type/definition.ts#L208) definition you need to use...
(This idea was inspired by https://github.com/apollographql/federation/issues/2952 .) ### Motivating example Schema: ```graphql type A { f(arg:String!): String! } interface I { id: ID! f(arg:String!): String! } type B implements I...
This is an alternative to my most recent PR #1052 with an eye to describing the algorithm in a bit less detail to decrease the size of the spec edits....
Thanks to @BoD [for spotting a missed `.` in section 2](https://github.com/graphql/graphql-spec/pull/1069#discussion_r1516719435). This also includes a loosey-goosey detection for algorithms related to grammars in section 2, which catches this issue but...
Resolves https://github.com/graphql/graphql-spec/issues/1076 This PR adds a clarifying note for the term composite in prior versions of the spec and expands the term into `Object, Interface or Union type` wherever it...
This spec contains amendments to https://github.com/graphql/graphql-spec/pull/1010, a diffed view is available at https://github.com/mjmahone/graphql-spec/pull/3. These amendments are made from comments on the implementation PR and alterations from the new implementation -...
Examples [193](https://spec.graphql.org/draft/#example-65e7d) and [194](https://spec.graphql.org/draft/#example-33b6a) relate to executing **selection sets** serially. There has been confusion from readers that think that these examples relate to **documents** (i.e. they should have the `mutation`...