As we increasingly store content in JSON, usually via ContentHandler, there is a need for a standardized JSON validation system that meets the requirements of Wikimedia projects.
We currently have ~~two~~ three different solutions deployed to the Wikimedia cluster:
* the JsonSchema class bundled in the EventLogging extension (e.g. used for wiki pages in the `Schema` namespace on meta.wikimedia.org.)
* the json-schema library included in MediaWiki core. (e.g. used for validating `extension.json` for extension management).
* the JsonConfig extension's custom validation (e.g. use for wiki pages in the `Data` namespace on commons.wikimedia.org).
* (more if you count non-php services, like for example Eventgate which uses ajv: https://github.com/wikimedia/eventgate/blob/master/package.json#L36)
None of these are suitable for our needs. We should determine our requirements for a validator and then choose a validator to implement in core.
Full RFC here: https://www.mediawiki.org/wiki/Requests_for_comment/JSON_validation