# Example GraphQL partial schema
# Everything before the PARTIAL section is ignored
# Such partials are aggregated into a composite GraphQL schema,
# named "output" below.

PARTIAL: Example GraphQL schema partial
The contents of the PARTIAL section are not included in the output.
The text that follows PARTIAL is a description of this partial.
PARTIAL is the only required section.

REQUIRES: base.scalars, base.schema
The REQUIRES section indicates partials which are required for this
one to be valid. Its contents are not included in the output.

PROLOGUE:
The prologue content of all partials is concatenated in the aggregated schema
before all other sections.

QUERY:
The optional query sections of all partials are aggregated in a query {} section in the output.

MUTATION:
The optional mutation sections of all partials are aggregated in a mutation {} section in the output.

TYPES:
The types sections of all partials are aggregated in the output, after the QUERY and mutation
sections.