Open main menu

Opengenome.net β

XML

Revision as of 23:12, 16 May 2006 by Ksjung (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

1996년 W3C(World Wide Web Consortium)에서 제안하였다. HTML보다 홈페이지 구축 기능, 검색 기능 등이 향상되었고 클라이언트 
시스템의 복잡한 데이터 처리를 쉽게 한다. 또한 인터넷 사용자가 웹에 추가할 내용을 작성, 관리하기에 쉽게 되어 있다.
이밖에 HTML은 웹 페이지에서 데이터베이스처럼 구조화된 데이터를 지원할 수 없지만 XML은 사용자가 구조화된 데이터베이스를 
뜻대로 조작할 수 있다. 구조적으로 XML 문서들은 SGML(standard generalized markup language) 문서 형식을 따르고 있다. XML은 
SGML의 부분집합이라고도 할 수 있기 때문에 응용판 또는 축약된 형식의 SGML이라고 볼 수 있다. 1997년부터 마이크로소프트사(社)와 
넷스케이프 커뮤니케이션스사(社)가 XML을 지원하는 브라우저 개발을 하고 있다.




XML 문서의  예:

<?xml version="1.0"?> <note> <to>철수</to> <from>다니엘</from> <heading>기억할 것!</heading> <body>이번 주 약속 잊지말길!</body> </note>

첫 번째 라인부터 살펴 보도록 하자. 이 부분은 XML 선언부로 반드시 포함시켜야 하는 부분이다. 이 부분은 사용된 문서의 XML 버전을 정의한 부분이다. 이 경우 XML 1.0 스펙을 따른다는 것을 의미한다:

<?xml version="1.0"?>

다음 라인은 이 문서의 첫 번째 요소(element)를 정의한다(이 부분은 최상위 요소(root element)임):

<note>

다음 4 라인은 최상위 요소의 자식 요소(child elements) 4개를 정의하는 부분이다(to, from, heading 및 body):

<to>철수</to> <from>다니엘</from> <heading>기억할 것!</heading> <body>이번 주 약속 잊지말길!</body>

마지막 라인은 최상위 요소의 끝을 정의하는 부분이다:

</note>



모든 XML 요소는 마침 태그(closing tag)를 가져야 한다

HTML에서는 마침 태그(closing tag)가 필요 없는 요소들도 있었다. 다음은 HTML에서 문제가 없는 코드이다:

<p>이것은 하나의 문단이다
<p>이것은 또 다른 문단이다

하지만 XML에서는 다음과 같이 마침 태그를 반드시 가져야 한다:

<p>이것은 하나의 문단이다</p> <p>이것은 또 다른 문단이다</p> 



XML 태그는 대소문자 구분이 있다

XML 태그들은 대소문자 구분을 한다. 태그 <Letter>와 태그 <letter>는 서로 다르다.

그러므로 시작 태그와 마침 태그는 반드시 대소문자를 맞춰줘야 한다:

<Message>이렇게 하면 잘못된 것이다</message>

 

<message>이렇게 해야 맞다</message>



모든 XML 요소는 중첩 원리를 잘 지켜야 한다

HTML에서 어떤 요소들은 다음과 같이 서로 부적절하게 중첩될 수 있었다:

<b><i>이 문장은 볼드체와 이탤릭체로 나타난다</b></i>

하지만 XML에서는 다음과 같이 서로 중첩을 잘 시켜줘야 한다:

<b><i>이 문장은 볼드체와 이탤릭체로 나타난다</i></b>



모든 XML 문서는 최상위 요소를 가져야 한다

모든 XML 문서는 한 쌍의 최상위 요소 태그를 포함해야 한다. 모든 다른 요소들은 이 최상위 요소 하부로 중첩되어야 한다. 모든 요소들은 자신의 하부로 자식 요소들을 가질 수 있으며 모든 요소들은 시작 태그와 마침 태그의 쌍을 정확히 이뤄야 한다. 또한 모든 하위 요소들은 자신의 부모 밑에서 순서를 잘 지켜 중첩되어 있어야 한다:

<root> <child> <subchild> </subchild> </child> </root>



속성 값은 쿼테이션(' 또는 ")으로 감싸줘야 한다

XML 요소들은 HTML에서와 마찬가지로 name과 value 속성을 가질 수 있다. XML에서 속성 값은 항상 쿼테이션(' 또는 ")으로 감싸줘야 한다. 아래 두 개의 XML 문서를 보면, 첫 번째 것은 틀렸고, 두 번째 것은 맞았다. 어떤 부분이 맞고 틀렸는지 살펴보기 바란다:

<?xml version="1.0"?> <note date=12/11/99> <to>철수</to> <from>다니엘i</from> <heading>기억할 것</heading> <body>이번 주 약속 잊지말길!</body> </note>


<?xml version="1.0"?> <note date="12/11/99"> <to>철수</to> <from>다니엘i</from> <heading>기억할 것</heading> <body>이번 주 약속 잊지말길!</body> </note>