1998년 W3C 표준 권고안에 포함된 문자 기반의 마크업 언어.
XML은 데이터를 저장하고 전달할 목적으로 만들어졌으며, 데이터의 구조를 기술하기 위한 언어이다.
사람과 기계가 동시에 읽기 편한 구조로 되어 있으며, HTML과는 다르게 태그가 미리 정의되어 있지 않고 사용자가 직접 정의할 수 있다.
<?xml version="1.0" encoding="UTF-8" ?>
<users>
<user>
<name>안개</name>
<age>20</age>
</user>
<user>
<name>챠니</name>
<age>20</age>
</user>
<user>
<name>siner</name>
<age>20</age>
</user>
</users>
XML 문서는 HTML 문서처럼 트리(tree) 형태의 계층 구조를 가진다.
2009년 더글라스 크록포드(Douglas Crockford)가 처음으로 규정.
현재 RFC7159와 ECMA-404의 경쟁 표준에 의해 규정되고 있다.
쉽게 데이터를 교환하고 저장하기 위하여 만들어진 텍스트 기반의 데이터 교환 표준.
자바스크립트를 기반드로 만들어졌으며, 텍스트 기반이므로 다른 프로그래밍 언어에서도 JSON 데이터를 읽고 사용할 수 있다.
{"users" : [
{"name" : "안개", "age" : 20},
{"name" : "챠니", "age" : 20},
{"name" : "siner", "age" : 20}
]}
key:value
쌍으로 이루어진 데이터 형식이다.,
로 나열이 된다.{}
에 넣어 표시한다.[]
에 넣어 표시한다.차이점 | JSON | XML |
---|---|---|
닫는 태그와 주석 | 사용 안함 | 사용함 |
구문 길이 | 짧다 | 길다 |
읽기/쓰기 속도 | 빠르다 | 느리다 |
네임 스페이스 | 제공 안함 | 제공함 |
배열 | 사용 가능 | 사용 불가능 |
파싱 | Java script 표준 함수 eval() 함수로 파싱 | XML 파서로 파싱 |
데이터 표시 | 없음 | 제공 |
데이터의 무결성 | 사용자 직접 검증 | 스키마를 이용하여 검증 |
인코딩 | UTF-8 | 다양한 인코딩 형식을 지원한다. |