XML(확장성 마크업 언어, eXtensible Marktup Language)은 전자 데이터 교환에 대한 표준을 정의한다.
XML 의 엄격한 규칙 집합을 이용하면 원래의 데이터 구조를 사람이 읽을 수 있는 텍스트 문서로 쉽게 인코딩해 정확하게 해석할 수 있다.
예)
89-344 WEBM GE
IE브라우저에서 확인시:
이것은 첫째 줄에 이 문서가 XML 문서임을 나타내고 둘째 줄부터 <transaction> 태그로 시작하고 있다.
이 시작 태그와 함께 사용하는 닫는 태그인 </transaction> 안에 중첩된 다른 태그와 텍스트는 각각 중첩 구조와 데이터를 나타낸다.
그리고 모든 태그가 <buy>와 <sell>의 shares ="nn" 나 <ticker>의 exch ="xxx" 와 같이 하나 이상의 속성="값" 형태의 엔트리로 이루어진 리스트를 포함할 수 있다.
태그, 텍스트, 속성으로 이루어진 html을 사용해 보았다면 XML의 문법이 친숙하게 느껴질 것이다.
HTML 과 XML 의 가장 큰 차이점은 사용할 수 있는 데이터의 종류가 다르다는 것이다.
HTML 문서에는 표, 이미지, 링크에 사용하는 <table> , <img> , <a> 등의 정해진 html 태그만 사용할 수 있다.
이와는 대조적으로 xml 에서는 의미가 있는 태그를 모두 사용할 수 있어 현재 사용하는 데이터의 인코딩방법을 그대로 따르거나 다른 사람이 정의한 태그를 재사용할 수도 있다.
xml과 적절한 태그 집합을 사용하면 데이터를 다음과 같이 구조화된 데이터베이스 쿼리나
|
KING 5000 |
SCOTT 3000
다음과 같이 구조화되지 않은 문서 중, 어떤 형태로도 인코딩할 수 있다.
The insured's Beetle broke through the guard rail and plummeted into a ravine. The cause was determined to befaulty bakes . Am azingly there were no casualties.
특정한 종류의 데이터를 표현하기 위해 설계된 XML 태그 집합을 XML 어휘라 한다.
아주 간단한 데이터를 표현하는 경우에는 다음과 같이 하나의 태그로 구성된 XML 어휘를 만들 수 있다.
그리고 더 복잡한 경우에는 태그를 필요한 수만큼 사용하거나 데이터의 구조를 그대로 유지하기 위해 중첩할 수도 있다.
위에서 살펴본 것처럼 XML문서는 태그와 텍스트를 이용해 데이터를 표현하는 텍스트 문자로 이루어졌다.
이 문자 자체가 텍스트 파일의 내용이 될 수 있지만 이것만 있으면 XML 문서를 어디에서나 만들 수도 있다.
XML 문서는 컴퓨터에서 실행하는 프로그램의 문자열 변수의 내용이 될 수도 있고 네트워크에서 패킷 안의 데이터 스트림, 데이터베이스 테이블의 로우에 있는 컬럼 값이 될 수도 있다.
그리고 각기 다른 태그 어휘를 사용해 데이터를 표현하더라도 모두 XML스펙에 기술된 동일한 일반 문법을 따른다.
출처: http://blog.naver.com/swmem_bjm?Redirect=Log&logNo=130144774971