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'sBeetle broke through the guard rail and plummeted into a ravine.
The cause was determined to be  faulty bakes . Am
azingly there were no casualties.


특정한 종류의 데이터를 표현하기 위해 설계된 XML 태그 집합을 XML 어휘라 한다.

아주 간단한 데이터를 표현하는 경우에는 다음과 같이 하나의 태그로 구성된 XML 어휘를 만들 수 있다.




그리고 더 복잡한 경우에는 태그를 필요한 수만큼 사용하거나 데이터의 구조를 그대로 유지하기 위해 중첩할 수도 있다.


위에서 살펴본 것처럼 XML문서는 태그와 텍스트를 이용해 데이터를 표현하는 텍스트 문자로 이루어졌다.

이 문자 자체가 텍스트 파일의 내용이 될 수 있지만 이것만 있으면 XML 문서를 어디에서나 만들 수도 있다.

XML 문서는 컴퓨터에서 실행하는 프로그램의 문자열 변수의 내용이 될 수도 있고 네트워크에서 패킷 안의 데이터 스트림, 데이터베이스 테이블의 로우에 있는 컬럼 값이 될 수도 있다.

그리고 각기 다른 태그 어휘를 사용해 데이터를 표현하더라도 모두 XML스펙에 기술된 동일한 일반 문법을 따른다.



    
        
            
                
                
            
        
    


출처: http://blog.naver.com/swmem_bjm?Redirect=Log&logNo=130144774971