본문 바로가기

마크업

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.. 더보기