본문 바로가기

xml

XML다루기 - 6. XML 의 장점과 단점 사람들은 다음과 같은 XML의 장점에 열광하고 있습니다. 간편성 호환성 확장성 누구나 알 수 있는 Context 정보 내용과 표현의 분리 데이터의 비교와 연산이 간편 이렇게 주욱 나열해 놓으니 무슨 소리인지 잘 감이 안 오시겠죠. 하나하나 간단히 설명 드리겠습니다. 간편성 일단 간편성이란, XML의 단순한 문법과 형식을 뜻합니다. Tagging과 tree구조라는 것만 잘 알면 XML구조의 전부를 이해했다고도 할 수 있지요. 그리고 XML파일은 텍스트 형식이기 때문에 컴파일도 필요하지 않은 아주 간편한 언어입니다. 호환성 유니코드로 작성되는 텍스트 형식이기 때문에, XML문서는 호환성도 매우 좋습니다. XML문서는 유니코드를 인식하는 모든 운영 체제 상에서 호환성 있는 문서가 됩니다. 확장성 확장성은 HT.. 더보기
XML다루기 - 5. 만들어진 XML 문서 알맞게 처리하기 5-1. 파싱(Parsing)이란? 지금까지 우리는 DTD를 이용해 새로운 마크 업 언어를 개발하는 방법과, 개발된 마크 업 언어를 가지고 XML 문서를 작성하는 방법에 대해 공부했습니다. 이렇게 작성된 XML 문서를 어떻게 하면 본래의 목적에 맞게 사용할 수 있을까요? 즉, 데이터를 효과적으로 관리하고 처리하려는 목적에 맞게 말입니다. 그것을 위해 응용프로그램과 XML 파서(Parser)가 존재합니다. 응용프로그램(Application Program)은 data를 알맞게 쓰고자 하는 프로그램이고, XML으로 구성된 data들을 응용프로그램이 유용하게 쓰기 좋은 형태로 만들어주는 것이 바로 XML파서입니다. 파싱이란 무엇일까요? 사실 파싱을 한글로는 정확히 번역할 수가 없기 때문에 쉽게 이해하기 힘들 것.. 더보기
XML다루기 - 4. DTD로 마크 업 언어 만들기 XML이란 마크 업 언어를 만드는 메타언어라고 앞에서 얘기했습니다. 그러면 어떤 방식으로 새로운 마크 업 언어를 만들 수 있을까요? 바로 DTD(Document Type Definition)를 이용하는 것입니다. 여기서 잠깐 유효한(Valid) 문서라는 개념을 소개하겠습니다. Well-formed 문서와 Valid 문서 XML문서는 DTD의 포함 여부에 따라서 Well-formed 문서와 Valid문서로 나눌 수 있습니다. XML 스펙을 보면 XML 문서가 갖추어야 할 조건들을 설명하고 있습니다. 어떤 XML문서가 그 조건을 잘 지키고 있다면 그 문서를 Well-formed라고 하는 것이지요. 모든 tag는 시작과 끝이 있어야 한다 는 것은 그러한 조건 중 한 예입니다. 그렇다면 Valid 문서란 무엇일.. 더보기
XML다루기 - 3. XML 문서란? XML문서라…… 분명히 XML은 그 자체가 data를 관리하는 언어가 아닌 언어를 만드는 메타-언어라고 배웠습니다. 그렇다면 왜 XML로 만든 markup-language의 이름을 쓰지 않고 그냥 XML문서라고 칭할까요? 사실 큰 이유는 없습니다. 실제로 markup-language의 이름을 쓰는 경우도 있어요. WML, cXML, 8MIL 등등 이 그것입니다. 다만, 우리가 XML을 써서 만들 수 있는 markup language가 무수히 많은데 그것의 이름을 일일이 붙이기가 난감해서 그냥 XML로 개발한 언어로 만든 문서들을 XML문서라고 부르는 것입니다. 사실 엄밀히 얘기하면 XML문서라는 표현이나 *.xml이란 확장자는 옳지 못합니다. 위에서 예시로 든 xml파일의 경우, BML이란 언어로 만들어.. 더보기
XML다루기 - 2. XML이란 XML을 저는 아래와 같이 정의하겠습니다. 언어를 만들기 위한 언어라니 조금 이상하지요? 앞에서 XML이란 것이 data를 다루기 위한 언어라는 것은 말했었는데요. 그런데 XML이란 것이 사실 data를 직접 관리하거나 분류하지는 않습니다. 그러한 작업을 하는 언어를 만들어내는 것이 바로 XML이지요. 다시 말하면 XML이란 언어를 만들어내는 언어인 것입니다. (이러한 언어를 Meta-Language 라고 합니다.) 만들어 낸다는 표현이 조금 모호할 수 있겠습니다. 좀더 분명히 얘기하면 새로운 markup language의 문법을 XML이 정의한다고 할 수 있겠네요. 정의하는 방법에 대해선 조금 뒤에 DTD(Document Type Definition)을 설명할 때 말씀 드리겠습니다. 이제 위의 Defi.. 더보기