bowtie-json-schema / bowtie-json-schema/bowtie

Make the JSON schema for registries constrain schemas to "a dialect known by Bowtie"

Open
#752 0 comments 0 reactions 0 assignees View on GitHub
internal low priority
Dominant language
Python
Stars
93
Forks
77
Avg merge
10h 29m
Merged PRs (30d)
40

Description

We have a schema for [JSON Schema registries](https://github.com/bowtie-json-schema/bowtie/blob/1f932546c90c7b402ebb8b4083d0e11663a57926/bowtie/schemas/models/registry.json) which for one are sent to implementation harnesses.

It constrains the keys to URIs via `propertyNames`, but doesn't constrain values to be schemas, essentially because they can be schemas in any dialect being used for the run.

We should add a constraint that the values are schemas under the known dialects for the run -- which may require some magic (a la what we do for `tag:bowtie.report,2023:ihop:__dialect__` to represent "a schema valid under the single current dialect for cases").

#44 is related in that it is this set of dialects that we want to check against.

(This is internal as it has no real user-facing change -- doing it essentially improves debugability when making changes).

Contributor guide

Open the contributing guide

Research direction

Start with bowtie/schemas/models/registry.json and compare its current propertyNames constraint with the handling of tag:bowtie.report,2023:ihop:__dialect__. Read issue #44 for how the known dialect set is defined. Done means registry values are constrained to schemas valid under the dialects available for the run, with the schema remaining usable by implementation harnesses.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
tooling
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.