metaschema.json 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. {
  2. "$schema": "https://json-schema.org/draft/2020-12/schema",
  3. "$id": "https://json-schema.org/draft/2020-12/schema",
  4. "$vocabulary": {
  5. "https://json-schema.org/draft/2020-12/vocab/core": true,
  6. "https://json-schema.org/draft/2020-12/vocab/applicator": true,
  7. "https://json-schema.org/draft/2020-12/vocab/unevaluated": true,
  8. "https://json-schema.org/draft/2020-12/vocab/validation": true,
  9. "https://json-schema.org/draft/2020-12/vocab/meta-data": true,
  10. "https://json-schema.org/draft/2020-12/vocab/format-annotation": true,
  11. "https://json-schema.org/draft/2020-12/vocab/content": true
  12. },
  13. "$dynamicAnchor": "meta",
  14. "title": "Core and Validation specifications meta-schema",
  15. "allOf": [
  16. {"$ref": "meta/core"},
  17. {"$ref": "meta/applicator"},
  18. {"$ref": "meta/unevaluated"},
  19. {"$ref": "meta/validation"},
  20. {"$ref": "meta/meta-data"},
  21. {"$ref": "meta/format-annotation"},
  22. {"$ref": "meta/content"}
  23. ],
  24. "type": ["object", "boolean"],
  25. "$comment": "This meta-schema also defines keywords that have appeared in previous drafts in order to prevent incompatible extensions as they remain in common use.",
  26. "properties": {
  27. "definitions": {
  28. "$comment": "\"definitions\" has been replaced by \"$defs\".",
  29. "type": "object",
  30. "additionalProperties": { "$dynamicRef": "#meta" },
  31. "deprecated": true,
  32. "default": {}
  33. },
  34. "dependencies": {
  35. "$comment": "\"dependencies\" has been split and replaced by \"dependentSchemas\" and \"dependentRequired\" in order to serve their differing semantics.",
  36. "type": "object",
  37. "additionalProperties": {
  38. "anyOf": [
  39. { "$dynamicRef": "#meta" },
  40. { "$ref": "meta/validation#/$defs/stringArray" }
  41. ]
  42. },
  43. "deprecated": true,
  44. "default": {}
  45. },
  46. "$recursiveAnchor": {
  47. "$comment": "\"$recursiveAnchor\" has been replaced by \"$dynamicAnchor\".",
  48. "$ref": "meta/core#/$defs/anchorString",
  49. "deprecated": true
  50. },
  51. "$recursiveRef": {
  52. "$comment": "\"$recursiveRef\" has been replaced by \"$dynamicRef\".",
  53. "$ref": "meta/core#/$defs/uriReferenceString",
  54. "deprecated": true
  55. }
  56. }
  57. }