JSON is a very popular data exchange format, and JSON Schema an increasingly popular schema language for JSON. Evidently, schemas play an important role in implementing conceptual models. For JSON Schema, there is a first generation of tools for checking whether one schema is contained in another. This is an important task when comparing schemas, and ultimately, the conceptual models that they capture. Testing whether such tool implementations are correct is difficult, since writing test cases requires a deep understanding of the JSON Schema language. In this demo, we present the first systematically generated test suite for JSON Schema containment checking. This test suite consists of pairs of schemas where the containment relationship is known by construction. Our test suite aims at covering all language features of JSON Schema. Applying existing containment checkers (including our own implementation) to our test suite, we discovered implementation bugs not known to us. We offer our test suite to the research community as well as to tool developers, hoping to contribute to the development of JSON Schema containment checkers.

A test suite for JSON schema containment

Colazzo D.;Ghelli G.;Sartiani C.;
2021-01-01

Abstract

JSON is a very popular data exchange format, and JSON Schema an increasingly popular schema language for JSON. Evidently, schemas play an important role in implementing conceptual models. For JSON Schema, there is a first generation of tools for checking whether one schema is contained in another. This is an important task when comparing schemas, and ultimately, the conceptual models that they capture. Testing whether such tool implementations are correct is difficult, since writing test cases requires a deep understanding of the JSON Schema language. In this demo, we present the first systematically generated test suite for JSON Schema containment checking. This test suite consists of pairs of schemas where the containment relationship is known by construction. Our test suite aims at covering all language features of JSON Schema. Applying existing containment checkers (including our own implementation) to our test suite, we discovered implementation bugs not known to us. We offer our test suite to the research community as well as to tool developers, hoping to contribute to the development of JSON Schema containment checkers.
File in questo prodotto:
Non ci sono file associati a questo prodotto.

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/11563/167316
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 2
  • ???jsp.display-item.citation.isi??? ND
social impact