I most exclusively use oXygen Editor for editing JSON, YAML for many reasons. This editor can accept a JSON schema to provide context sensitive editing with a defined YAML (aka like automations) to assist in knowing what is needed where and what cannot be inserted where.
I would assume that they do exist somewhere because getting message like “extra keys not allowed” implies the YAML was parsed against a Schema to determine if it is valid.
There’s an extension to Visual Studio Code designed to identify and report syntax errors. It’s called Home Assistant Config Helper. Its source code appears to contain rules for checking YAML and Jinja2 syntax.
Perhaps there’s something there you can borrow for your project.
The permalink URL for individual schemas is: https://git.sr.ht/~johnhamelink/hass-json-schema/blob/main/json-schemas/<FILENAME>. You can find the filenames by looking in the json-schemas directory in the project root.
I will setup a job to trigger the build periodically so that the schema files stay up to date.
FYI: The repo should now self update, as will the readme.md file in the project root.
I’ve setup CI so that once a day, if changes are found between the latest build and the last committed version of the schema, only then will a git commit be pushed to the repo with the changes to the schema.
I now also run the resultant JSON through jq so that they are un-minified. This makes it easier to inspect schema changes between commits.
Just want to say how much I appreciate that you have done this and made the home assistant JSON schema files more readily available and more consumable by my JetBrains IDE - I’ve only implemented for packages right now as a test and it works just great - Thank you