There are two use cases of arg defaultValues that can't be expressed with ocaml-graphql-server. 1. A nullable arg can never be null in the resolver. 2. A non-null arg can't have a default. Take the valid graphql schema: ```graphql type Query { field(argOne: String = "A" argTwo: String! = "B"): String! } ``` `argTwo` can't be expressed with ocaml-graphql-server. If the resolve function (in js to make it easier to demonstrate what is happening) looks like this: ```js resolve(_, {argOne, argTwo}) { return `${argOne}${argTwo}` } ``` A nullable arg can never be null in the resolver: ```graphql { field(argOne: null) } ``` ```json {"field": "B"} ``` Example of 2: ```graphql { field(argTwo: null) } ``` ```json {"errors": [{"message": "argTwo must be non-null"}]} ```