πŸ•ΈοΈ API Patterns and Practices: GraphQL
Chapters Examples Bibliography GitHub β†—
Home / The Schema: SDL & the Type System
Part 2 3 chapters

The Schema: SDL & the Type System

Model the tracking view in SDL and make one canonical schema the contract both stacks export and are checked against.

Chapter 3

SDL and the type system in depth

The kinds of type a GraphQL schema is built from (scalars, enums, objects, interfaces, unions, input types and their wrappers), how a selection maps onto them, and how SmallRye and Strawberry express each one code-first.

16 min readRead β†’
Chapter 4

Nullability and null propagation

What a null means in a GraphQL response, how list and non-null wrappers decide where a failure lands, and how the tracking schema places its nullable fields so one failed source costs a field instead of the page.

15 min readRead β†’
Chapter 5

Schema-first / contract-first

How the tracking view keeps two code-first schemas aligned with one canonical SDL: export each stack's schema, diff it in two directions with GraphQL Inspector, lint the contract, and watch seeded drift fail the gate.

17 min readRead β†’
← Previous part Why GraphQL & the Decision Lens Next part β†’ Execution: Resolvers, Queries & Mutations

API Patterns and Practices: GraphQL

Designing GraphQL APIs well, with runnable examples in Quarkus SmallRye GraphQL and Python Strawberry against one canonical SDL contract.

Site

  • Outline
  • Bibliography

Reference

  • GraphQL β†—
  • GraphQL specification β†—
  • SmallRye GraphQL β†—
  • Strawberry β†—
  • View on GitHub β†—
  • Issues β†—
Open source Β· MIT Last built 2026-10-17