@codelaw/rules-data / codelaw-rules-data

data/schemas/*.json are derived from the JSON schemas of SchemaStore
(https://github.com/SchemaStore/schemastore, served at https://json.schemastore.org),
as published on 2026-10-20: package.json, tsconfig.json, pyproject.json,
github-workflow.json and github-action.json — Copyright the SchemaStore
contributors, licensed under the Apache License, Version 2.0; a copy of the
licence is in licenses/SchemaStore-Apache-2.0.txt.
Modification: the annotation-only keywords (description, markdownDescription,
markdownEnumDescriptions, enumDescriptions, title, default, examples, $comment,
deprecationMessage, errorMessage, tsType, allowTrailingCommas and the x-*
editor keys) were removed and each file was written without whitespace; every
validation keyword is as published.

The Markdown rules are reimplementations written for codelaw. Their
`ported_from:` fields name the markdownlint rules (version 0.42.0,
https://github.com/DavidAnson/markdownlint — Copyright (c) David Anson,
released under the MIT License) whose documented behaviour they reproduce; no
markdownlint code or documentation text is included.

The ordering conventions of `json/package-scripts-sorted` and
`json/package-deps-sorted` follow
sort-package-json (https://github.com/keithamus/sort-package-json, MIT License);
no code from it is included.

The JSON, YAML and TOML rules are written from the format specifications
(RFC 8259, YAML 1.2.2, YAML 1.1, TOML 1.0.0) and the Python packaging
specifications (PEP 503, PEP 621). No code, documentation text, options or
messages are taken from yamllint (GPL-3.0). One rule name coincides with one of
yamllint's: `yaml/document-start` and yamllint's `document-start` both describe
the `---` document marker; the rule's behaviour and text are codelaw's own.
