Repository navigation
Expand file tree
/
Copy pathdata.yaml
More file actions
805 lines (805 loc) · 37.4 KB
/
Copy pathdata.yaml
File metadata and controls
805 lines (805 loc) · 37.4 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
- title: Using JSON Schema
url: https://books.apple.com/us/book/using-json-schema/id903248630
year: 2014
type: Books
level: beginner
summary: Learn and Apply JSON Schema by Example, with JavaScript (Node.js) and Python Programs
- title: JSON at Work
url: https://www.oreilly.com/library/view/json-at-work/9781491982389/
year: 2017
type: Books
level: intermediate
summary: A comprehensive overview of the JSON ecosystem, including JSON Schema
- title: API by Design
url: https://smizell.gumroad.com/l/apibydesign
year: 2021
type: Books
level: intermediate
summary: Introduces an approach to measure API complexity by analyzing entropy in JSON Schema definitions
- title: Configuring Umbraco on .NET Core - JSON Schema
url: https://www.youtube.com/watch?v=rpUg-oySw8g
year: 2021
type: Videos
level: intermediate
summary: >-
Configuring Umbraco on .NET Core with JSON Schema-powered autocompletions for appsettings.json
using SchemaStore
- title: API Storytelling with Ben Hutton
url: https://www.youtube.com/watch?v=4xbA82lo_lc
year: 2021
type: Videos
level: intermediate
summary: >-
This episode we sit down with Ben Hutton, the lead behind the JSON Schema community to talk
about vocabularies and other ways we validate and annotate how we tell stories we tell in the
API space
- title: What is JSON Schema
url: https://www.youtube.com/watch?v=kK-_gL7Vsc0
year: 2020
type: Videos
level: beginner
summary: >-
A basic introduction to JSON Schema showing how to auto-generate JSON Schema document from an
existing JSON document
- title: "What is a JSON Schema? Generate, Modify, and Understand a JSON Schema: Example"
url: https://www.youtube.com/watch?v=hGXxXyJmaUo
year: 2019
type: Videos
level: beginner
summary: >-
An in-depth introduction to JSON Schema including auto-generating JSON Schema documents using
QuickType.io
- title: "JSON Schema Validation: How to Validate JSON Schema with Postman?"
url: https://www.youtube.com/watch?v=X072eKtOIio
year: 2019
type: Videos
level: intermediate
summary: An introduction to JSON Schema and how to use it in Postman
- title: JSON Schema Validation in Postman
url: https://www.youtube.com/watch?v=8BfshV5n6ac
year: 2021
type: Videos
level: intermediate
summary: An tutorial of performing JSON Schema validation in Postman in API tests
- title: Master JSON Schema for OpenAPI
url: https://www.sourcemeta.com/courses/jsonschema-for-openapi/
year: 2024
type: Courses
level: intermediate
summary: >-
A comprehensive 9+ hour video course teaching advanced JSON Schema techniques for API design,
covering dynamic references, unevaluated properties, schema composition, testing, linting, and
deployment to registries
- title: "JSON Schema Tutorial: How to Write and Validate JSON Schema"
url: https://jsonviewertool.com/blog/json-schema-tutorial
year: 2026
type: Getting Started
level: beginner
summary: >-
An introduction to schema keywords and validation with JavaScript Ajv and Python jsonschema,
including dialect selection, format checking, and reporting validation errors
- title: JSON Schema Tour
url: https://tour.json-schema.org
year: 2024
type: Getting Started
level: beginner
summary: An interactive tutorial to learn JSON Schema step by step
- title: Learn JSON Schema
url: https://www.learnjsonschema.com
year: 2024
type: Getting Started
level: beginner
summary: A comprehensive JSON Schema documentation website covering all specification versions
- title: JSON Schema master reference
url: https://stephcraft.net/docs/json-schema
year: 2026
type: Getting Started
level: beginner
summary: A single page reference about JSON Schema containing intuitive code snippets
- title: JSON Schema bundling finally formalised
url: https://json-schema.org/blog/posts/bundling-json-schema-compound-documents
year: 2021
type: Articles
level: intermediate
summary: A close look at bundling and de-referencing JSON Schema documents
- title: Modeling a file system with JSON Schema
url: https://json-schema.org/learn/file-system.html
year: 2021
type: Articles
level: intermediate
summary: >-
This example shows a possible JSON Schema representation of file system mount points as
represented in an /etc/fstab file
- title: JSON Schema Validator, Generator & Editor Guide
url: https://stoplight.io/json-guide/
year: 2018
type: Articles
level: beginner
summary: >-
How the JSON and JSON Schema standards are defined and how to put them to use in your code and
in your APIs
- title: Using the JSON Schema standard for scientific applications?
url: https://cerfacs.fr/coop/json-schema-for-sci-apps
year: 2020
type: Articles
level: intermediate
summary: >-
A discussion on how to use JSON Schema to validate input, add precise documentation, auto-fill
missing parts, and create graphical user interfaces in the context of scientific applications
- title: Building a No-Code JSON Schema Form Builder with ReactJS
url: https://www.ginkgobioworks.com/2020/10/08/building-a-no-code-json-schema-form-builder/
year: 2020
type: Articles
level: intermediate
summary: >-
An update on the additional features implemented in the react-json-schema-form-builder
open-source JSON Schema form builder project
- title: "Saved by the Schema: Using JSON Schema to Document, Test, and Debug APIs"
url: https://blog.heroku.com/json-schema-document-debug-apis
year: 2019
type: Articles
level: intermediate
summary: >-
Learn how Heroku uses JSON Schema to test and document their Platform API, and how it helped
them uncover an unexpected bug, rooted in the way the Oj gem parses Big Decimals
- title: JSON Schema Validation & Expressive Query Syntax in MongoDB 3.6
url: https://www.sitepoint.com/json-schema-validation-expressive-query-syntax-in-mongodb-3-6/
year: 2018
type: Articles
level: intermediate
summary: An in-depth discussion about using JSON Schema to define collection validation on MongoDB
- title: Azure Pipelines autocomplete in PyCharm, IntelliJ, WebStorm, CLion, and Rider
url: https://tonybaloney.github.io/posts/azure-pipelines-autocomplete-in-pycharm.html
year: 2020
type: Articles
level: intermediate
summary: >-
Setting up PyCharm, IntelliJ, WebStorm, CLion and Rider to have auto-complete, syntax
highlighting and validation support of Azure Pipelines workflows
- title: Definitions for filtering properties in JSON schema
url: https://gist.github.com/LucianBuzzo/5ff9106ce3ae12fb58e4def572b9344d
year: 2018
type: Articles
level: intermediate
summary: An introduction to the problem of using JSON Schema for data filtering and querying purposes
- title: OpenAPI
url: https://www.openapis.org
type: Related Specifications
level: advanced
summary: The OpenAPI Specification embeds and extends JSON Schema for defining API requests and responses
- title: RAML
url: https://raml.org
type: Related Specifications
level: advanced
summary: The RAML specification supports modeling API data using JSON Schema
- title: W3C Web of Things
url: https://www.w3.org/WoT/
type: Related Specifications
level: advanced
summary: >-
The Web of Things (WoT) seeks to counter the fragmentation of the IoT by using and extending
existing, standardized Web technologies. WoT models data using JSON Schema
- title: AsyncAPI
url: https://www.asyncapi.com
type: Related Specifications
level: advanced
summary: >-
AsyncAPI is an open source initiative that seeks to improve the current state of Event-Driven
Architectures (EDA). The AsyncAPI specification supports data modeling using JSON Schema
- title: JSON Schema in RDF
url: https://www.w3.org/2019/wot/json-schema
type: Related Specifications
level: advanced
summary: >-
This document introduces an RDF vocabulary for JSON Schema definitions. This vocabulary provides
a stable namespace IRI for JSON Schema keywords, as well as simple axioms, defined against
schema.org's meta-model
- title: Semantic Definition Format (SDF)
url: https://datatracker.ietf.org/doc/draft-ietf-asdf-sdf/
type: Related Specifications
level: advanced
summary: >-
An IETF specification for modeling Internet of Things devices and their interactions through
Properties, Actions, and Events. SDF uses JSON to represent definitions and incorporates JSON
Schema for data validation
- title: Model Context Protocol (MCP)
url: https://modelcontextprotocol.io
type: Related Specifications
level: advanced
summary: >-
An open standard by Anthropic that enables AI systems like large language models to integrate
with external tools and data sources. MCP uses JSON-RPC 2.0 and JSON Schema for defining server
capabilities
- title: Agent2Agent Protocol (A2A)
url: https://a2a-protocol.org
type: Related Specifications
level: advanced
summary: >-
An open protocol by Google enabling communication and interoperability between agentic
applications. A2A uses JSON-RPC 2.0 over HTTP and JSON Schema for defining Agent Cards and
message structures
- title: REST API Linked Data Keywords
url: https://www.ietf.org/archive/id/draft-polli-restapi-ld-keywords-07.html
type: Related Specifications
level: advanced
summary: >-
An Internet-Draft proposing JSON Schema keywords to attach semantic information to OpenAPI and
JSON Schema documents, enabling contract-first API design with RDF type information and JSON-LD
context
- title: Type Safety with JSON Subschema
url: https://arxiv.org/abs/1911.12651
year: 2020
type: Papers
level: advanced
summary: >-
Deciding whether one schema is a subschema of another is non-trivial because of the richness of
the JSON Schema specification language. Given a pair of schemas, our approach first
canonicalizes and simplifies both schemas, then decides the subschema question on the canonical
forms, dispatching simpler subschema queries to type-specific checkers
- title: Witness Generation for JSON Schema
url: https://arxiv.org/abs/2202.12849
year: 2022
type: Papers
level: advanced
summary: >-
JSON Schema is an important, evolving standard schema language for families of JSON documents.
It is based on a complex combination of structural and Boolean assertions, and features negation
and recursion. The static analysis of JSON Schema documents comprises practically relevant
problems, including schema satisfiability, inclusion, and equivalence. These three problems can
be reduced to witness generation: given a schema, generate an element of the schema, if it
exists, and report failure otherwise
- title: What Are Real JSON Schemas Like?
url: https://link.springer.com/chapter/10.1007/978-3-030-34146-6_9
year: 2019
type: Papers
level: advanced
summary: >-
A first empirical analysis of a curated collection of real-world JSON Schemas. Knowing what real
JSON Schemas are like (to borrow from a title of a related study on DTDs) helps practitioners
and researchers in making realistic assumptions when building tools for JSON Schema processing
- title: Challenges in Checking JSON Schema Containment over Evolving Real-World Schemas
url: https://link.springer.com/chapter/10.1007/978-3-030-65847-2_20
year: 2020
type: Papers
level: advanced
summary: >-
This paper presents the results of an empirical study of the first generation of tools for
checking JSON Schema containment which is applied to a diverse collection of over 230 real-world
schemas and their altogether 1k historic versions
- title: Schema Inference for Massive JSON Datasets
url: https://hal.archives-ouvertes.fr/hal-01491765
year: 2017
type: Papers
level: advanced
summary: >-
Recent years have seen the widespread use of JSON as a data format to represent massive data
collections. JSON data collections are usually schemaless. While this ensures several
advantages, the absence of schema information has important negative consequences: the
correctness of complex queries and programs cannot be statically checked, users cannot rely on
schema information to quickly figure out structural properties that could speed up the
formulation of correct queries, and many schema-based optimizations are not possible. In this
paper we deal with the problem of inferring a schema from massive JSON data sets
- title: JSON Schema Inference Approaches
url: https://link.springer.com/chapter/10.1007/978-3-030-65847-2_16
year: 2020
type: Papers
level: advanced
summary: >-
In the context of document NoSQL databases, namely those assuming the JSON data format, this
paper focuses on several representatives of the existing inference approaches and provide their
thorough comparison
- title: Top-Down Model-Driven Engineering of Web Services from Extended OpenAPI Models
url: https://ieeexplore.ieee.org/abstract/document/9000020
year: 2018
type: Papers
level: advanced
summary: >-
Shows how OpenAPI can be extended to add implementation details inside models. These extensions
link services to assemblies of components that describe computations. Hence a top-down
development process that keeps model and implementation aligned
- title: Foundations of JSON Schema
url: https://dl.acm.org/doi/abs/10.1145/2872427.2883029
year: 2016
type: Papers
level: advanced
summary: >-
In this paper we provide the first formal definition of syntax and semantics for JSON Schema and
use it to show that implementing this layer on top of JSON is feasible in practice
- title: >-
User profile integration made easy: model-driven extraction and transformation of social network
schemas
url: https://dl.acm.org/doi/abs/10.1145/2187980.2188227
year: 2012
type: Papers
level: advanced
summary: >-
This paper presents, firstly, a semi-automatic approach to extract schema information from
instance data. Secondly, transformations of the derived schemas to different technical spaces
are utilized, thereby allowing, amongst other benefits, the application of established
integration tools and methods. Finally, as a case study, schemas are derived for Facebook,
Google+, and LinkedIn
- title: Example-Driven Web API Specification Discovery
url: https://link.springer.com/chapter/10.1007/978-3-319-61482-3_16
year: 2017
type: Papers
level: advanced
summary: >-
In this paper we present an example-driven discovery process that generates model-based OpenAPI
specifications for REST Web APIs by using API call examples. A tool implementing our approach
and a community-driven repository for the discovered APIs are also presented
- title: "Jsongen: a quickcheck based library for testing JSON web services"
url: https://dl.acm.org/doi/abs/10.1145/2633448.2633454
year: 2014
type: Papers
level: advanced
summary: >-
This article describes a systematic approach to testing behavioural aspects of Web Services that
communicate using the JSON data format. To generate random JSON data for populating tests we
have developed a new library, jsongen, which given a characterisation of the JSON data as a JSON
schema, (i) automatically derives a QuickCheck generator which can generate an infinite number
of JSON values that validate against the schema, and (ii) provides a generic QuickCheck state
machine which is capable of following the (hyper)links documented in the JSON schema, to
automatically explore the web service
- title: An Approach for Schema Extraction of JSON and Extended JSON Document Collections
url: https://ieeexplore.ieee.org/abstract/document/8424731
year: 2018
type: Papers
level: advanced
summary: >-
This paper presents an approach that extracts a schema from a JSON or Extended JSON document
collection stored in a NoSQL document-oriented database or other document repository.
Aggregation operations are considered in order to obtain a schema for each distinct structure in
the collection, and a hierarchical data structure is proposed to group these schemas in order to
generate a global schema in JSON Schema format
- title: Schema extraction and structural outlier detection for JSON-based nosql data stores
url: https://dl.gi.de/handle/20.500.12116/2420
year: 2015
type: Papers
level: advanced
summary: >-
Rather than designing the schema up front, extracting a schema in hindsight can be seen as a
reverse-engineering step. Based on the extracted schema information, we propose set of
similarity measures that capture the degree of heterogeneity of JSON data and which reveal
structural outliers in the data
- title: Definition of REST web services with JSON schema
url: https://dl.acm.org/doi/abs/10.1002/spe.2466
year: 2017
type: Papers
level: advanced
summary: >-
The aim of this article is to demonstrate how JSON Schema, and particularly the JSON Hyper
Schema extension, is suitable to describe JSON-based web services that follow the REST
architectural pattern
- title: Understanding API Complexity Through Schema Entropy
url: https://smizell.com/posts/2021/05/understanding-api-complexity-through-schema-entropy/
year: 2021
type: Articles
level: intermediate
summary: A look at API complexity by analyzing entropy of JSON Schema documents
- title: Robustness, Tolerance, and JSON Schema
url: https://smizell.com/posts/2021/07/robustness-tolerance-and-json-schema/
year: 2021
type: Articles
level: intermediate
summary: Applying the Robustness Principle and increasing schema entropy when making changes to an API
- title: Sourcemeta One
url: https://one.sourcemeta.com
type: Registries
level: intermediate
summary: >-
A self-hosted JSON Schema microservice that transforms Git repositories into searchable,
discoverable schema catalogs with a web explorer, editor integration, schema health checks, and
a rich HTTP API
- title: Sourcemeta Schemas
url: https://schemas.sourcemeta.com
type: Registries
level: intermediate
summary: A public free instance of Sourcemeta One re-offering various open source schema collections
- title: Apicurio Registry
url: https://www.apicur.io/registry/
type: Registries
level: intermediate
summary: >-
A runtime server system for storing and managing API designs and schemas including OpenAPI,
AsyncAPI, Avro, and JSON Schema with configurable content rules for evolution control
- title: >-
TILT: A GDPR-Aligned Transparency Information Language and Toolkit for Practical Privacy
Engineering
url: https://dl.acm.org/doi/10.1145/3442188.3445925
year: 2021
type: Papers
level: advanced
summary: >-
We present TILT, a transparency information language and toolkit explicitly designed to
represent and process transparency information in line with the requirements of the GDPR and
allowing for a more automated and adaptive use of such information than established, legalese
data protection policies do
- title: "JSON Schema, Schema.org, JSON-LD: What's the Difference?"
url: https://dashjoin.medium.com/json-schema-schema-org-json-ld-whats-the-difference-e30d7315686a
year: 2020
type: Articles
level: intermediate
summary: >-
An overview of the difference between JSON Schema and JSON-LD, their relationship and the role
of Schema.org
- title: "Project Cambria: Translate your data with lenses"
url: https://www.inkandswitch.com/cambria/
year: 2020
type: Articles
level: intermediate
summary: >-
A proposal for an isolated software layer that translates data between JSON Schema definitions
on demand. Translation logic is defined by composing bidirectional lenses, a kind of data
transformation that can run both forward and backward
- title: Deriving Semantics-Aware Fuzzers from Web API Schemas
url: https://arxiv.org/abs/2112.10328
year: 2021
type: Papers
level: advanced
summary: >-
Discusses JSON Schema canonicalization and JSON Schema instance derivation in the context of
property-based testing of APIs
- title: The Usage of Negation in Real-World JSON Schema Documents
url: http://bilioso.isti.cnr.it/sebd2022/preprint/SEBD_2022_Camera-ready_PDF_8.pdf
year: 2022
type: Papers
level: advanced
summary: >-
Many software tools, but also formal frameworks for working with JSON Schema, do not fully
support negation. This motivates us to study whether negation is actually used in practice, for
which aims, and whether it could, in principle, be replaced by simpler operators. We have
collected a large corpus of 80k open source JSON Schema documents. We perform a systematic
analysis, quantify usage patterns of negation, and also qualitatively analyze schemas. We show
that negation is indeed used, albeit infrequently, following a stable set of patterns
- title: JSONBuddy
url: https://www.json-buddy.com
type: Development Tools
level: intermediate
summary: A JSON editor and validator desktop application for Windows
- title: Schema Gateway
url: https://github.com/sravan27/schema-gateway
type: Development Tools
level: intermediate
summary: >-
Compile one JSON Schema into provider-ready request payloads for OpenAI, Gemini, Anthropic, and
Ollama, then lint portability issues locally, in CI, or through a hosted API
- title: >-
Implicit JSON Schema Versioning Triggered by Temporal Updates to JSON-Based Big Data in the
τJSchema Framework
url: https://link.springer.com/chapter/10.1007/978-3-031-07969-6_3
year: 2022
type: Papers
level: advanced
summary: >-
This paper proposes an approach for handling implicit schema changes triggered by temporal
updates of JSON-based Big Data. More precisely, when a user specifies a temporal JSON update
operation that modifies a snapshot JSON component assigning a valid-time timestamp to its new
value, the execution of such an operation requires the JSON component to become temporal, which
is for all intents a schema change. Thus, a new version of the τJSchema temporal characteristics
document is generated, with the addition of a new valid-time characteristic. New versions of the
temporal JSON schema and of the temporal JSON document are also accordingly created
- title: "τJSchema: A Framework for Managing Temporal JSON-Based NoSQL Databases"
url: https://link.springer.com/chapter/10.1007/978-3-319-44406-2_13
year: 2016
type: Papers
level: advanced
summary: >-
This paper proposes a framework called Temporal JSON Schema (τJSchema), inspired by the τXSchema
framework defined for XML data. τJSchema allows defining a temporal JSON schema from a
conventional JSON schema and a set of temporal logical and physical characteristics. Our
framework guarantees logical and physical data independence for temporal schemas and provides a
low-impact solution since it requires neither modifications of existing JSON documents, nor
extensions to the JSON format, the JSON Schema language, and all related tools and languages
- title: AlterSchema
url: https://alterschema.sourcemeta.com
type: Development Tools
level: intermediate
summary: Convert a JSON Schema definition between specification versions
- title: Introducing SchemaVer for semantic versioning of schemas
url: >-
https://snowplowanalytics.com/blog/2014/05/13/introducing-schemaver-for-semantic-versioning-of-schemas/#feedback
year: 2014
type: Articles
level: intermediate
summary: A proposal for a versioning convention for JSON Schema definitions based on SemVer
- title: >-
JSON BinPack: A space-efficient schema-driven and schema-less binary serialization specification
based on JSON Schema
url: https://www.jviotti.com/assets/dissertation.pdf
year: 2022
type: Papers
level: advanced
summary: >-
A survey and benchmark of JSON-compatible binary serialization specifications followed by the
introduction of JSON BinPack, a novel protocol-independent schema-driven and schema-less binary
serialization specification that is strictly-compatible with JSON and takes advantage of JSON
Schema formal definitions to produce bit-strings that are space-efficient in comparison to every
considered alternative serialization specification
- title: Using Dynamic References to Support Generic Types
url: https://json-schema.org/blog/posts/dynamicref-and-generics
year: 2022
type: Articles
level: intermediate
summary: Representing generic types from strongly-typed programming languages with JSON Schema
- title: Maintaining JSON Schemas at Scale - Jason Desrosiers
url: https://www.youtube.com/watch?v=GjJpRsVffg0
year: 2021
type: Videos
level: intermediate
summary: >-
In this talk, we will cover the keywords, concepts, and patterns for maintaining large schemas
or large collections of schemas. We'll tackle problems like how to breakdown and organize
schemas, how to bundle schemas, how to make large schemas efficient, how to get better error
messages from large schemas, and more
- title: So you think you understand JSON Schema? - Ben Hutton
url: https://www.youtube.com/watch?v=vMG0NCDifI0
year: 2021
type: Videos
level: intermediate
summary: >-
In this session you'll learn some key fundamentals, intracacies that even catch out the
experienced, and how to develop your own interoperable JSON Schema Vocabulary
- title: JSON Schema - the Good, the Bad and the Ugly
url: https://vimeo.com/222489288
year: 2017
type: Videos
level: intermediate
summary: >-
With JSON Schema you are required to define your data and the available tooling to do so is not
really great (yet). This presentation provides you with criteria to judge whether JSON Schema
could be beneficial for your project or is just too much overhead
- title: Docs! Docs! Docs!
url: https://brandur.org/nanoglyphs/031-api-docs
year: 2022
type: Articles
level: intermediate
summary: An overview of API documentation generation using Hyper Schema and OpenAPI
- title: "Forming new relationships: Contributing to Open source"
url: https://www.crossref.org/blog/forming-new-relationships-contributing-to-open-source/
year: 2022
type: Articles
level: intermediate
summary: >-
A description of adopting and extending JSON Forms, a JSON Schema based form rendering library,
to support VueJS and Vuetify.
- title: JSON Schema is a constraint system
url: https://modern-json-schema.com/json-schema-is-a-constraint-system
year: 2022
type: Articles
level: intermediate
summary: "Or: Why object-oriented programming is a mis-matched mental model for JSON Schema"
- title: What is "Modern" JSON Schema?
url: https://modern-json-schema.com/what-is-modern-json-schema
year: 2022
type: Articles
level: intermediate
summary: >-
How "modern" JSON Schema, meaning 2019-09, 2020-12, and later, can solve far more problems than
"classical" JSON Schema (draft-07 and earlier)
- title: Validating Streaming JSON Documents with Learned VPAs
url: https://arxiv.org/abs/2211.08891
year: 2022
type: Papers
level: advanced
summary: >-
This paper presents a new streaming algorithm to validate JSON documents against a set of
constraints given as a JSON schema. It proves that there always exists a visibly pushdown
automaton (VPA) that accepts the same set of JSON documents as a JSON schema
- title: Understanding JSON Schema compatibility
url: https://yokota.blog/2021/03/29/understanding-json-schema-compatibility/
year: 2021
type: Articles
level: intermediate
summary: >-
A study of open, closed, and partially-open content models when evolving schemas in a backward,
forward, or fully compatible manners
- title: Not Elimination and Witness Generation for JSON Schema
url: https://arxiv.org/abs/2104.14828
year: 2021
type: Papers
level: advanced
summary: >-
In this paper, we present an algebraic characterization of JSON Schema, obtained by adding
opportune operators, and by mirroring existing ones. We present then algebra-based approaches
for dealing with not-elimination and witness generation problems, which play a central role as
they lead to solutions for the other mentioned complex problems
- title: "JSONoid: Distributed JSON Schema Discovery"
url: https://github.com/dataunitylab/jsonoid-discovery
year: 2023
type: Papers
level: advanced
summary: A tool for distributed JSON schema discovery including many properties of the data
- title: Enhancing JSON Schema Discovery by Uncovering Hidden Data
url: https://ceur-ws.org/Vol-2971/paper11.pdf
year: 2021
type: Papers
level: advanced
summary: Enhancing discovered JSON Schemas by disambiguating data and metadata
- title: "JSONoid: Monoid-based Enrichment for Configurable and Scalable Data-Driven Schema Discovery"
url: https://arxiv.org/abs/2307.03113
year: 2023
type: Papers
level: advanced
summary: Meaningful schema information for semi-structured data
- title: Comprehending Semantic Types in JSON Data with Graph Neural Networks
url: https://arxiv.org/abs/2307.12807
year: 2023
type: Papers
level: advanced
summary: Graph neural networks for semantic type detection in JSON
- title: Fast Discovery of Nested Dependencies on JSON Data
url: https://arxiv.org/abs/2111.10398
year: 2021
type: Papers
level: advanced
summary: Efficient dependency mining algorithms for non-relational data
- title: LLMs for Schema Augmentation
url: https://michael.mior.ca/blog/llms-for-schema-augmentation/
year: 2023
type: Articles
level: intermediate
summary: >-
Large language models can be exploited to automatically augment JSON Schemas with useful
information
- title: "Unifying Business, Data, and Code: Designing Data Products with JSON Schema"
url: https://www.oreilly.com/library/view/unifying-business-data/9781098144999/
year: 2024
type: Books
level: intermediate
summary: >-
Covers topics such as writing your own JSON Schema vocabularies, understanding JSON Schema
annotations, and hosting your own JSON Schema registries. More importantly, our book teaches you
a methodology for effective data management
- title: An Analysis of Defects in Public JSON Schemas
url: https://www.cri.minesparis.psl.eu/classement/doc/A-794.pdf
year: 2023
type: Papers
level: advanced
summary: >-
Analysis of common defects found in publicly available schemas leading to recommend changes to
the spec
- title: JSON Schema CLI
url: https://github.com/sourcemeta/jsonschema
type: Development Tools
level: intermediate
summary: >-
A comprehensive command-line tool for working with JSON Schema supporting formatting, linting,
testing, bundling, and validation across all JSON Schema versions
- title: Sourcemeta Studio
url: https://github.com/sourcemeta/studio
type: Development Tools
level: intermediate
summary: >-
A Visual Studio Code extension providing professional JSON Schema tooling with real-time
linting, automatic formatting, and metaschema validation
- title: "Validation of Modern JSON Schema: Formalization and Complexity"
url: https://arxiv.org/abs/2307.10034
year: 2024
type: Papers
level: advanced
summary: >-
In this paper, we give the first formal description of Modern JSON Schema, which we consider a
central contribution of the work that we present here. We then prove that its data validation
problem is PSPACE-complete. We prove that the origin of the problem lies in dynamic references,
and not in annotation-dependent validation. We study the schema and data complexities, showing
that the problem is PSPACE-complete with respect to the schema size even with a fixed instance,
but is in PTIME when the schema is fixed and only the instance size is allowed to vary. Finally,
we run experiments that show that there are families of schemas where the difference in
asymptotic complexity between dynamic and static references is extremely visible, even with
small schemas.
- title: Machine actionable metadata models
url: https://pmc.ncbi.nlm.nih.gov/articles/PMC9525592/
year: 2022
type: Papers
level: advanced
summary: This paper discussed the use of JSON Schema to define human and machine readable metadata models
- title: "Blaze: Compiling JSON Schema for 10x Faster Validation"
url: https://arxiv.org/abs/2503.02770
year: 2025
type: Papers
level: advanced
summary: >-
This paper introduces Blaze, a JSON Schema validator compiles complex schemas to an efficient
representation in seconds to minutes, adding minimal overhead at build time. Blaze incorporates
several unique optimizations to reduce the validation time by an average of approximately 10x
compared existing validators on a variety of datasets. In some cases, Blaze achieves a reduction
in validation time of multiple orders of magnitude compared to the next fastest validator. We
also demonstrate that several popular validators produce incorrect results in some cases, while
Blaze maintains strict adherence to the JSON Schema specification.
- title: "JSONSchemaBench: A Rigorous Benchmark of Structured Outputs for Language Models"
url: https://arxiv.org/abs/2501.10868
year: 2025
type: Papers
level: advanced
summary: >-
This paper introduces JSONSchemaBench, a benchmark for constrained decoding comprising 10K
real-world JSON schemas that encompass a wide range of constraints with varying complexity. We
pair the benchmark with the existing official JSON Schema Test Suite and evaluate six
state-of-the-art constrained decoding frameworks, including Guidance, Outlines, Llamacpp,
XGrammar, OpenAI, and Gemini. Through extensive experiments, we gain insights into the
capabilities and limitations of constrained decoding on structured generation with real-world
JSON schemas.
- title: Elimination of annotation dependencies in validation for Modern JSON Schema
url: https://arxiv.org/abs/2503.11288
year: 2025
type: Papers
level: advanced
summary: >-
This paper proves that the elimination of annotation dependent keywords cannot, in general,
avoid an exponential increase of the schema dimension. We provide an algorithm to eliminate
these keywords that, despite the theoretical lower bound, behaves quite well in practice, as we
verify with an extensive set of experiments.
- title: Negation-Closure for JSON Schema
url: https://arxiv.org/abs/2202.13434
year: 2022
type: Papers
level: advanced
summary: >-
Examines how JSON Schema handles negation, demonstrates that the language lacks negation
closure, explores how recent schema drafts address this limitation, and proposes enrichments to
the language. Includes an algebraic reformulation of JSON Schema and a prototype system for
generating schema witnesses
- title: In 76% of modern OpenAPI specs, JSON Schema dominates the specification
url: https://www.sourcemeta.com/blog/json-schema-dominates-openapi/
year: 2026
type: Articles
level: intermediate
summary: >-
An empirical analysis of 4,127 real-world OpenAPI specifications showing that JSON Schema makes
up the majority of content in three-quarters of modern API documents, with the schema layer
growing more dominant as APIs mature
- title: The only schema language AI speaks is JSON Schema
url: https://www.sourcemeta.com/blog/ai-only-speaks-json-schema/
year: 2026
type: Articles
level: intermediate
summary: >-
A survey of how every major LLM provider (OpenAI, Google, Anthropic, Mistral, xAI, DeepSeek),
the Model Context Protocol, and the AI products built on top of them have all converged on JSON
Schema as the contract language for structured outputs, tool calls, and agent interoperability
- title: Every G7 government already runs on JSON Schema
url: https://www.sourcemeta.com/blog/g7-runs-on-json-schema/
year: 2026
type: Articles
level: intermediate
summary: >-
A review of how every G7 government (United States, United Kingdom, France, Germany, Italy,
Japan, and Canada), along with nine out of ten of the OECD's top digital governments, relies on
JSON Schema for its digital public infrastructure
- title: Context.dev Extract API
url: https://www.context.dev/data/extract
type: Development Tools
level: intermediate
summary: Crawl a website and extract structured data matching a caller-defined JSON Schema
- title: schema-envoy
url: https://github.com/tamerkalla/schema-envoy
type: Development Tools
level: intermediate
summary: >-
Convert a JSON Schema to an LLM provider's accepted keyword subset and get a machine-checked
report of every constraint the conversion dropped, plus a residual validator over those dropped
constraints so widened values can be rejected rather than only logged
- title: Under the hood of JSON Schema
url: https://lnkd.in/p/dA3K-yJB
year: 2026
type: Videos
level: beginner
summary: >-
A video presentation exploring the internal mechanics of JSON Schema, covering meta-schemas,
AST compilation, and memory pointers. The link to the full slide deck is available in the
comments of the LinkedIn post.
- title: What exactly is JSON Schema?
url: https://drive.google.com/file/d/1Fhz9hW6amY011HI5fk9j5GZ-DP1z_864/view?usp=sharing
year: 2026
type: Videos
level: beginner
summary: >-
This presentation discusses the very basic ideas of JSON Schema using analogies to help beginners build their concepts with greater clarity.
- title: greencheck
url: https://github.com/simin-yuan/greencheck
type: Development Tools
level: intermediate
summary: >-
Mutation testing and discriminability checks for JSON Schema validators, gates, and metrics:
deliberately damage an artefact and re-run the validator to expose mutations that escape, and
flag measurements that cannot react differently to inputs they claim to distinguish