ConsumerDataStandardsAustralia / dsb-schema-tools

MIT License
0 stars 4 forks source link

JSON Schema Tool

Overview

The JSON Schema Files Repository holds a comprehensive collection of JSON schema files derived from the official published Consumer Data Standards (CDS). The Data Standards Body maintains this repository of schema files to facilitate robust schema validation.

Using the JSON Schema Files

The repository is organised by release versions of the Consumer Data Standards. For instance, to find schemas related to CDS release version 1.29.0, navigate to the 1.29.0 folder located in the repository's root directory.

This tool:

The schema files can be used for a variety of purposes. For instance, they can be used to

Example: You can use these files within our Postman Collection to validate your Data Holder API schemas during CDR API testing and development process. For more information, refer to the Quick Start section below.

Quick Start

The DSB provides an easy and quick way for the Data Holders to validate their API schemas using a combination of DSB Postman Collections, the AJV (Another JSON Schema Validator) plugin configured within the Postman collection and the JSON schemas.

How They Work Together

The DSB Postman Collections will reference the latest version folder within this repository and include the postman-validation-<SECTOR>-<VERSION>.json file for API validation purposes, depending on which Postman collection file is referenced (banking/energy/common).

The postman-validation-<SECTOR>-<VERSION>.json was created with the build-sector-postman-schema-files.js utility. It combines the individual json files into a single file for better performance in Postman.

When an API call is made using Postman, the Ajv plugin automatically validates the response against the JSON schema designated for the particular API endpoint being tested. The schema acts as a "template" to ensure that the API response adheres to the required data structure and data types as specified by the CDS. If discrepancies are found (e.g., missing required fields, incorrect data types, additional properties not defined in the schema etc), AJV flags these as validation errors. The test results are displayed within Postman for debugging purposes to assist the developers or testers within the CDR Community during their CDR API testing and development process.

For more information on API testing with Postman, refer to the Postman documentation.

Reporting Issues

Encountered an issue? We're here to help. Please visit our issue reporting guidelines for submitting an issue.

Stay Updated

Join our newsletter to receive the latest updates, release notes, and alerts. Subscribe here.

License

The artefact is released under the MIT License, which allows the community to use and modify it freely.

Disclaimer

The artefacts in this repository are offered without warranty or liability, in accordance with the MIT licence.

The Data Standards Body (DSB) develops these artefacts in the course of its work, in order to perform quality assurance on the Australian Consumer Data Right Standards (Data Standards).

The DSB makes this repository, and its artefacts, public on a non-commercial basis in the interest of supporting the participants in the CDR ecosystem.

The resources of the DSB are primarily directed towards assisting the Data Standards Chair for developing the Data Standards.

Consequently, the development work provided on the artefacts in this repository is on a best-effort basis, and the DSB acknowledges the use of these tools alone is not sufficient for, nor should they be relied upon with respect to accreditation, conformance, or compliance purposes.