Clemens Vasters
Introducing JSON Structure - A Better Schema
#1about 5 minutes
Why JSON Schema fails as a data definition language
JSON Schema's complexity with validation constructs like `allOf` and `anyOf` makes it a poor choice for defining data types, leading to a stalled standard.
#2about 2 minutes
Introducing JSON Structure as a type definition language
JSON Structure refactors JSON Schema into a strict type definition language with required types, named objects, and new built-in primitive types for better code generation.
#3about 2 minutes
Using new compound types like map and tuple
JSON Structure introduces formal compound types like `map` for dictionaries and `tuple` for creating efficient, compact wire formats for time-series data.
#4about 4 minutes
Defining discriminated unions and organizing types
Use the `choices` keyword for formal discriminated unions and organize schemas with namespaces and a restricted `$ref` for cleaner mapping to programming languages.
#5about 3 minutes
Managing dependencies with imports and explicit inheritance
Separate file inclusion from type referencing with `$import` and use `abstract` and `extends` for clear, unambiguous type inheritance.
#6about 4 minutes
Extending schemas with companion specifications
Add functionality through optional companion specs for internationalization, scientific units, currencies, and even re-introducing validation rules from JSON Schema.
#7about 2 minutes
How to get involved with the JSON Structure standard
JSON Structure is a new IETF draft, and community participation through filing issues and providing feedback at jsonstructure.org is encouraged.
Related jobs
Jobs that call for the skills explored in this talk.
Featured Partners
Related Videos
JSON and Beyond
Douglas Crockford
Bringing Clarity to Event Streams: Enabling Analytics and AI Through Rich Metadata
Clemens Vasters
Reasoning about Rust: an introduction to Rustdoc's JSON format
Luca Palmieri
Data is Key: Scraping Metadata from Websites
Lars Kölker
Modern software architectures
David Tielke
Tips and Tricks for Working with JSON
Dan Cranney
Lies we Tell Ourselves As Developers
Stefan Baumgartner
Demystifying Crypto & Web3: A Technical Journey Through 15 Years of Innovation
Ed Marquez
From learning to earning
Jobs that call for the skills explored in this talk.
![Senior Software Engineer [TypeScript] (Prisma Postgres)](https://wearedevelopers.imgix.net/company/283ba9dbbab3649de02b9b49e6284fd9/cover/oKWz2s90Z218LE8pFthP.png?w=400&ar=3.55&fit=crop&crop=entropy&auto=compress,format)

Senior Software Engineer [TypeScript] (Prisma Postgres)
Prisma
Remote
Senior
Node.js
TypeScript
PostgreSQL


Data Enterprise Architect (AWS + Snowflake)
Coforge
Municipality of Madrid, Spain
Amazon Web Services (AWS)
Node.js / TypeScript Engineer - Developer Tools & Libraries
Symbolica AI
Charing Cross, United Kingdom
€65K
API
Python
Node.js
TypeScript
Data Enterprise Architect (AWS + Snowflake)
Coforge
Municipality of Madrid, Spain
Amazon Web Services (AWS)
Data Architect (MongoDB)
Babel
Municipality of Madrid, Spain
Remote
Senior
Azure
MongoDB
Terraform
Amazon DynamoDB
+1
Structured Data & Knowledge Base Specialist (Competitive) at AI-powered B2B SaaS platform
Jack & Jill\u002FExternal ATS
Charing Cross, United Kingdom
Remote
HTML
JSON
YAML
JavaScript
Software Architect (Contractor) - Composable Commerce & Event-Driven Design
CobbleWeb
Edinburgh, United Kingdom
Remote
€60K
Redis
React
Node.js
+4
Data Enterprise Architect (AWS + Snowflake)
Coforge
Municipality of Madrid, Spain
Senior
ETL
NoSQL
Spark
Kafka
Azure
+4


