XML이 뭐임?XML이 뭐임?

Posted at 2009. 1. 23. 21:03 | Posted in 프로그래밍 언어/XML
XML은 Extensible Markup Language의 약자로 데이터를 저장하고 전송하는 데 목적을 갖고 있다.

<letter>
    <to>to name</to>
    <from>from name</from>
</letter>


HTML vs. XML

HTML하고 비슷한 모양이지만 HTML과 XML은 목적이 다르다. HTML데이터를 어떻게 보여줄 것인가에 중점을 두고 있다. HTML 태그들 마다 브라우저가 브라우징하는 모습이 다른 것을 보면 알 수 있다. 그에 반해 브라우저로 암만 여러 형태의 XML 문서를 열어 봤자 그 형태는 똑같다. 이는 XML은 문서에 기술된 데이터가 무엇인가에 중점을 두고 있기 때문이다.


특징

XML 문서에 쓰이는 태그들은 작성자가 직접 정의할 수 있다. 어떤 이름을 써도 상관 없지만 XML 문법에서 정의한 naming 규칙을 따라야 한다. 또한 XML문서는 TEXT 파일이다. Text 파일은 ASCII로 구성되어 HW, SW에 독립적이기 때문에 여러 app.에서 부담 없이 처리 가능하다. 즉 보편성이 특징이다. 이와는 다르게 Binary 파일은 파일의 구조 정의가 사용되는 app.마다 다르지만 해당 app.가 빠르게 이해할 수 있다는 효율성이 장점이다.

이와 같은 특징 때문에 다음과 같은 일이 가능하다
<letter>
    <to>to name</to>
    <from>from name</from>
</letter>

이 문서에
<letter>
    <date>2009/01/21</date>
    <to>to name</to>
    <from>from name</from>
</letter>

이럴 경우 binary 파일이라면 해당 파일이 사용되는 app.라 하더라도 구조가 달라졌기 때문에 파싱 과정에서 에러가 날 가능성이 매우 높다. 하지만 XML 문서는 text 파일이기 때문에 보편적인 XML Parser를 사용하더라도 에러가 발생하지 않는다.
//