[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"question-web-chto-takoe-json-skhema":3},{"id":4,"slug":5,"topicId":6,"topicSlug":7,"topicName":8,"topicEmoji":9,"question":10,"answer":11,"codeLang":12,"codeSrc":12,"important":12,"commonMistakes":12,"modernUsage":12,"difficulty":13,"tags":14,"related":15,"progress":16,"seo":17},1105,"chto-takoe-json-skhema",33,"web","Web","🌍","Что такое JSON схема?","\u003C!-- grade: junior+ -->\n\nJSON Schema — язык описания структуры JSON-документа, использующий сам JSON в качестве синтаксиса.\n\nJSON Schema позволяет формально описать, какие поля должен содержать JSON-документ, какие типы данных допустимы, какие поля обязательны и какие ограничения действуют на значения. Это самоописательный язык: для обработки данных и описания их допустимости используются одни и те же инструменты сериализации\u002Fдесериализации.\n\nJSON Schema применяется для валидации входящих данных в API, генерации документации, автодополнения в IDE и кодогенерации. В Java-мире JSON Schema используется, например, для валидации запросов в REST API, а Spring поддерживает её через библиотеки вроде `json-schema-validator`. Это особенно полезно при контрактном подходе к разработке API (contract-first), когда схема определяется до реализации.\n\n\u003Cdetails>\n\u003Csummary>Пример JSON Schema\u003C\u002Fsummary>\n\n```json\n{\n  \"$schema\": \"https:\u002F\u002Fjson-schema.org\u002Fdraft\u002F2020-12\u002Fschema\",\n  \"type\": \"object\",\n  \"properties\": {\n    \"name\": {\n      \"type\": \"string\",\n      \"minLength\": 1\n    },\n    \"age\": {\n      \"type\": \"integer\",\n      \"minimum\": 0\n    },\n    \"email\": {\n      \"type\": \"string\",\n      \"format\": \"email\"\n    }\n  },\n  \"required\": [\"name\", \"email\"]\n}\n```\n\n\u003C\u002Fdetails>\n\n> **На собеседовании:** JSON Schema спрашивают редко, но если спросят — объясните, что это «контракт» для JSON-документа, описывающий допустимую структуру. Аналогия: JSON Schema для JSON — это как XSD для XML.","","junior",[7],[],null,{"title":18,"description":19,"ogTitle":18,"ogDescription":19,"keywords":20,"schemaAnswer":19,"featuredSnippetReady":21},"Что такое JSON схема? — Gymterview","JSON Schema — язык описания структуры JSON-документа, использующий сам JSON в качестве синтаксиса.",[7,13],true]