Skip to content

[Feature request]: Compatibility with draft 2020-12 #81

@M-casado

Description

@M-casado

Summary

As the JSON Schemas community evolves, the latest draft 2020-12 (5 years old!) is increasingly being used. There are not that many new features in this draft, but as it is, Biovalidator is incompatible with it.

This feature request is for Biovalidator to be compatible with the latest drafts. Ideally this would be done and maintained for every new draft of JSON Schemas.

Related topic

Other

Request motivation

I'm trying to reference JSON Schemas from other resources, but if they use the draft/2020-12, Biovalidator hangs when the schemas are being returned.

Use cases

  • Using draft/2020-12 natively in one's schemas
  • Referencing draft/2020-12 in other schemas

Examples

With a $ref to a JSON Schema draft/2020-12, it should return the schema and store it in cache as it does with earlier drafts.

Additional context

As of now, the logs of Biovalidator show the following:

2025-01-22T16:13:14.638Z [info] ---------------------------------------------
2025-01-22T16:13:14.639Z [info] ------------ ELIXIR biovalidator ------------
2025-01-22T16:13:14.639Z [info] ---------------------------------------------
2025-01-22T16:13:14.639Z [info] Started server on port 3020 with base URL /
2025-01-22T16:13:14.640Z [info] Server available at http://localhost:3020/
2025-01-22T16:13:14.640Z [info] PID file is available at ***/GitHub/biovalidator/server.pid
2025-01-22T16:13:14.640Z [info] Writing logs to: ***/GitHub/biovalidator/logs/
2025-01-22T16:13:23.305Z [warn] Compiling schema with empty schema $id. Schema will not be cached.
2025-01-22T16:13:23.648Z [info] Returning referenced schema from network : https://raw.githubusercontent.com/ga4gh-beacon/beacon-v2/refs/heads/main/models/json/beacon-v2-default-model/datasets/defaultSchema.json
2025-01-22T16:13:23.819Z [info] Returning referenced schema from network : https://json-schema.org/draft/2020-12/schema

In the terminal where I had Biovalidator deployed, it simply hung at the "fetching schema reference ..." step, over and over again.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions