JSON : JavaScript Object Notation
XML : EXtensible Markup Language
JSON이 최신 기술이고 더 가볍고 빠르고 장점이 많다.
하지만? 데이터의 무결성을 사용자가 직접 검증해야한다는 단점이 있음.
검증 키워드 | 설명 |
---|---|
type | 유효한 데이터의 타입을 명시함. |
properties | 유효한 데이터 이름과 값의 쌍들을 명시함. |
required | 명시한 배열의 모든 요소를 프로퍼티로 가지고 있어야만 유효함. |
minimum | 최솟값 이상의 숫자만 유효함. |
maximum | 최댓값 이하의 숫자만 유효함. |
multipleOf | 명시한 숫자의 배수만 유효함. |
maxLength | 명시한 최대 길이 이하의 문자열만 유효함. |
minLength | 명시한 최소 길이 이상의 문자열만 유효함. |
pattern | 명시한 정규 표현식에 해당하는 문자열만 유효함. |
{
"title": "강아지 스키마",
"description": "이 스키마는 강아지에 관한 데이터를 검증하기 위해 작성된 스키마임.",
"type": "object",
"properties": {
"name": {"type": "string"},
"family": {"type": "string"},
"age": {"type": "integer"},
"weight": {"type": "number"},
"owner": {
"type": "object",
"properties": {
"ownerName": {"type": "string"},
"phone": {"type": "string"}
}
}
}
}
출처
AWS : http://www.tcpschool.com/json/json_schema_schema
TCP School : https://aws.amazon.com/ko/compare/the-difference-between-json-xml/