freenode/#shirakumo - IRC Chatlog
Search
13:56:19
Shinmera
I really don't understand a lot of what GraphQL offers. For example, it has all this stuff to express extra types and extensions, and what have you, but that syntax can only appear in a query, not a response (a response is always a data payload)
13:56:46
Shinmera
so I don't understand how the client would have any use for defining extensions or extra types? That seems to be stuff the server should supply
13:57:23
Shinmera
"Type system extensions are used to represent a GraphQL type system which has been extended from some original type system. For example, this might be used by a local service to represent data a GraphQL client only accesses locally, or by a GraphQL service which is itself an extension of another GraphQL service."
13:58:50
Shinmera
I understand that it has introspective capabilities to return the type definitions to the client, which is super
13:59:13
Shinmera
but those, again, do not use the extra syntax, but rather the type data is encoded in the returned payload as a strict schema
13:59:44
Shinmera
Is it some kind of server-side language part, even though GraphQL claims to solely be a query language?
14:01:55
Shinmera
"Documents are only executable by a GraphQL service if they contain an OperationDefinition and otherwise only contain ExecutableDefinition. However documents which do not contain OperationDefinition or do contain TypeSystemDefinition or TypeSystemExtension may still be parsed and validated to allow client tools to represent many GraphQL uses which may appear across many individual files."
14:03:42
Shinmera
Do I understand this right, that the GraphQL documents allow you to express /client-side/ types and extensions that the server has nothing to do with just so you have a place to stash them?
14:08:33
Shinmera
there's also interfaces, which are kinda like traits that other types can implement
14:11:19
Shinmera
I feel like all this definition syntax is only for illustration purposes or something