Skip to content
Novus Examples
graphql483 B

GraphQL Schema (SDL)

A GraphQL Schema Definition Language (SDL) file with queries, a mutation, object/input types, and an enum — for testing GraphQL schema parsers, linters, and code generators.

Preview — first 36 linesgraphql
"""A tiny example GraphQL schema (SDL) for testing schema parsers and codegen."""
type Query {
  "A page of users."
  users(page: Int = 1): UserPage!
  "A single user by id."
  user(id: ID!): User
}

type Mutation {
  createUser(input: NewUser!): User!
}

type User {
  id: ID!
  name: String!
  email: String!
  role: Role!
}

input NewUser {
  name: String!
  email: String!
}

enum Role {
  ADMIN
  MEMBER
  GUEST
}

type UserPage {
  page: Int!
  total: Int!
  items: [User!]!
}

Specifications

Format
GraphQL SDL
Types
Query, Mutation, User, UserPage
Enum
Role

What is a .graphql file?

GraphQL files contain schema definitions or operations written in the GraphQL Schema Definition Language, describing types, fields, queries, and mutations. The schema defines a strongly typed API contract that clients query for exactly the data they need. It is a common alternative to REST for API design.

How to use this file

Use an example GraphQL file to test schema parsers, SDL validation, code generators, and tooling that builds clients or documentation from a type definition.

How to use this file for testing

“GraphQL Schema (SDL)” is a deterministic Novus Examples fixture for API testing, Conversion testing. OpenAPI/Swagger specs, GraphQL SDL, JSON Schema, paginated and problem+json error payloads, and webhook samples — for testing API clients, mock servers, contract tests, and schema validators.

Documented properties for this file: GraphQL SDL. Compare results against paired or grouped companions on this page when present (clean↔damaged, searchable↔scanned, or format twins) so scores stay reproducible across runs.

Download the file once, keep the path stable in CI or local scripts, and treat the spec table as the contract: dimensions, seeds, field lists, and roles are intentional. Corrupt or invalid samples are labelled as such — expect parsers to fail loudly rather than silently accept them.

Data fixtures document their exact quirks — delimiters, encodings, null handling, schema, and row counts — in the spec table. Point your parser or importer at the file and assert it handles the documented edge cases; clean and deliberately-messy siblings make before/after diffs straightforward.

Generated by generation/data_dev_fixtures.py. Free for any use, no attribution required — license.