Open main menu

Opengenome.net β

Changes

XML

8,035 bytes added, 23:12, 16 May 2006
no edit summary
<font size="2">1996년 W3C(World Wide Web Consortium)에서 제안하였다. HTML보다 홈페이지 구축 기능, 검색 기능 등이 향상되었고 클라이언트&nbsp;<br />시스템의 복잡한 데이터 처리를 쉽게 한다. 또한 인터넷 사용자가 웹에 추가할 내용을 작성, 관리하기에 쉽게 되어 있다. <br />이밖에 HTML은 웹 페이지에서 데이터베이스처럼 구조화된 데이터를 지원할 수 없지만 XML은 사용자가 구조화된 데이터베이스를&nbsp;<br />뜻대로 조작할 수 있다. 구조적으로 XML 문서들은 SGML(standard generalized markup language) 문서 형식을 따르고 있다. XML은&nbsp;<br />SGML의&nbsp;부분집합이라고도 할 수 있기 때문에 응용판 또는 축약된 형식의 SGML이라고 볼 수 있다. 1997년부터 마이크로소프트사(社)와&nbsp;<br />넷스케이프&nbsp;커뮤니케이션스사(社)가 XML을 지원하는 브라우저 개발을 하고 있다. <br /><br /></font><br /><br /><br /><strong><font color="#8b4513">XML 문서의 &nbsp;예:</font></strong>
<table cellspacing="5" width="100%" bgcolor="#efe7d6" border="0">
<tbody>
<tr>
<td><!-- % wrong tag % -->&lt;?xml version=&quot;1.0&quot;?&gt; &lt;note&gt; &lt;to&gt;철수&lt;/to&gt; &lt;from&gt;다니엘&lt;/from&gt; &lt;heading&gt;기억할 것!&lt;/heading&gt; &lt;body&gt;이번 주 약속 잊지말길!&lt;/body&gt; &lt;/note&gt; <!-- % wrong tag % --></td>
</tr>
</tbody>
</table>
<p>첫 번째 라인부터 살펴 보도록 하자. 이 부분은 <em>XML 선언부</em>로 반드시 포함시켜야 하는 부분이다. 이 부분은 사용된 문서의 XML 버전을 정의한 부분이다. 이 경우 XML 1.0 스펙을 따른다는 것을 의미한다: </p>
<table cellspacing="5" width="100%" bgcolor="#efe7d6" border="0">
<tbody>
<tr>
<td><!-- % wrong tag % -->&lt;?xml version=&quot;1.0&quot;?&gt;<!-- % wrong tag % --></td>
</tr>
</tbody>
</table>
<p>다음 라인은 이 문서의 첫 번째 요소(element)를 정의한다(이 부분은 최상위 요소(root element)임): </p>
<table cellspacing="5" width="100%" bgcolor="#efe7d6" border="0">
<tbody>
<tr>
<td><!-- % wrong tag % -->&lt;note&gt;<!-- % wrong tag % --></td>
</tr>
</tbody>
</table>
<p>다음 4 라인은 최상위 요소의 자식 요소(child elements) 4개를 정의하는 부분이다(to, from, heading 및 body):</p>
<table cellspacing="5" width="100%" bgcolor="#efe7d6" border="0">
<tbody>
<tr>
<td><!-- % wrong tag % -->&lt;to&gt;철수&lt;/to&gt; &lt;from&gt;다니엘&lt;/from&gt; &lt;heading&gt;기억할 것!&lt;/heading&gt; &lt;body&gt;이번 주 약속 잊지말길!&lt;/body&gt;<!-- % wrong tag % --></td>
</tr>
</tbody>
</table>
<p>마지막 라인은 최상위 요소의 끝을 정의하는 부분이다:</p>
<table cellspacing="5" width="100%" bgcolor="#efe7d6" border="0">
<tbody>
<tr>
<td><!-- % wrong tag % -->&lt;/note&gt;<!-- % wrong tag % --></td>
</tr>
</tbody>
</table>
<br /><hr /><font color="#8b4513"><strong>모든 XML 요소는 마침 태그(closing tag)를 가져야 한다</strong></font>
<p>HTML에서는 마침 태그(closing tag)가 필요 없는 요소들도 있었다. 다음은 HTML에서 문제가 없는 코드이다:</p>
<table cellspacing="5" width="100%" bgcolor="#efe7d6" border="0">
<tbody>
<tr>
<td><!-- % wrong tag % -->&lt;p&gt;이것은 하나의 문단이다<br />&lt;p&gt;이것은 또 다른 문단이다<!-- % wrong tag % --></td>
</tr>
</tbody>
</table>
<p>하지만 XML에서는 다음과 같이 마침 태그를 반드시 가져야 한다:</p>
<table cellspacing="5" width="100%" bgcolor="#efe7d6" border="0">
<tbody>
<tr>
<td><!-- % wrong tag % -->&lt;p&gt;이것은 하나의 문단이다&lt;/p&gt; &lt;p&gt;이것은 또 다른 문단이다&lt;/p&gt;&nbsp;<!-- % wrong tag % --></td>
</tr>
</tbody>
</table>
<br /><hr /><font color="#8b4513"><strong>XML 태그는 대소문자 구분이 있다</strong></font>
<p>XML 태그들은 대소문자 구분을 한다. 태그 &lt;Letter&gt;와 태그 &lt;letter&gt;는 서로 다르다.</p>
<p>그러므로 시작 태그와 마침 태그는 반드시 대소문자를 맞춰줘야 한다:</p>
<table cellspacing="5" width="100%" bgcolor="#efe7d6" border="0">
<tbody>
<tr>
<td><!-- % wrong tag % -->&lt;Message&gt;이렇게 하면 잘못된 것이다&lt;/message&gt;<!-- % wrong tag % --></td>
</tr>
</tbody>
</table>
&nbsp;
<table cellspacing="5" width="100%" bgcolor="#efe7d6" border="0">
<tbody>
<tr>
<td><!-- % wrong tag % -->&lt;message&gt;이렇게 해야 맞다&lt;/message&gt;<!-- % wrong tag % --></td>
</tr>
</tbody>
</table>
<br /><hr /><font color="#8b4513"><strong>모든 XML 요소는 중첩 원리를 잘 지켜야 한다</strong></font>
<p>HTML에서 어떤 요소들은 다음과 같이 서로 부적절하게 중첩될 수 있었다:</p>
<table cellspacing="5" width="100%" bgcolor="#efe7d6" border="0">
<tbody>
<tr>
<td><!-- % wrong tag % -->&lt;b&gt;&lt;i&gt;이 문장은 볼드체와 이탤릭체로 나타난다&lt;/b&gt;&lt;/i&gt;<!-- % wrong tag % --></td>
</tr>
</tbody>
</table>
<p>하지만 XML에서는 다음과 같이 서로 중첩을 잘 시켜줘야 한다:</p>
<table cellspacing="5" width="100%" bgcolor="#efe7d6" border="0">
<tbody>
<tr>
<td><!-- % wrong tag % -->&lt;b&gt;&lt;i&gt;이 문장은 볼드체와 이탤릭체로 나타난다&lt;/i&gt;&lt;/b&gt;<!-- % wrong tag % --></td>
</tr>
</tbody>
</table>
<br /><hr /><font color="#8b4513"><strong>모든 XML 문서는 최상위 요소를 가져야 한다</strong></font>
<p>모든 XML 문서는 한 쌍의 최상위 요소 태그를 포함해야 한다. 모든 다른 요소들은 이 최상위 요소 하부로 중첩되어야 한다. 모든 요소들은 자신의 하부로 자식 요소들을 가질 수 있으며 모든 요소들은 시작 태그와 마침 태그의 쌍을 정확히 이뤄야 한다. 또한 모든 하위 요소들은 자신의 부모 밑에서 순서를 잘 지켜 중첩되어 있어야 한다:</p>
<table cellspacing="5" width="100%" bgcolor="#efe7d6" border="0">
<tbody>
<tr>
<td><!-- % wrong tag % -->&lt;root&gt; &lt;child&gt; &lt;subchild&gt; &lt;/subchild&gt; &lt;/child&gt; &lt;/root&gt; <!-- % wrong tag % --></td>
</tr>
</tbody>
</table>
<br /><hr /><font color="#8b4513"><strong>속성 값은 쿼테이션(' 또는 &quot;)으로 감싸줘야 한다</strong></font>
<p>XML 요소들은 HTML에서와 마찬가지로 name과 value 속성을 가질 수 있다. XML에서&nbsp;속성 값은 항상 쿼테이션(' 또는 &quot;)으로 감싸줘야 한다. 아래 두 개의 XML 문서를 보면, 첫 번째 것은 틀렸고, 두 번째 것은 맞았다. 어떤 부분이 맞고 틀렸는지 살펴보기 바란다:</p>
<table cellspacing="5" width="100%" bgcolor="#efe7d6" border="0">
<tbody>
<tr>
<td><!-- % wrong tag % -->&lt;?xml version=&quot;1.0&quot;?&gt; &lt;note date=12/11/99&gt; &lt;to&gt;철수&lt;/to&gt; &lt;from&gt;다니엘i&lt;/from&gt; &lt;heading&gt;기억할 것&lt;/heading&gt; &lt;body&gt;이번 주 약속 잊지말길!&lt;/body&gt; &lt;/note&gt;<!-- % wrong tag % --></td>
</tr>
</tbody>
</table>
<br />
<table cellspacing="5" width="100%" bgcolor="#efe7d6" border="0">
<tbody>
<tr>
<td><!-- % wrong tag % -->&lt;?xml version=&quot;1.0&quot;?&gt; &lt;note date=&quot;12/11/99&quot;&gt; &lt;to&gt;철수&lt;/to&gt; &lt;from&gt;다니엘i&lt;/from&gt; &lt;heading&gt;기억할 것&lt;/heading&gt; &lt;body&gt;이번 주 약속 잊지말길!&lt;/body&gt; &lt;/note&gt;<!-- % wrong tag % --></td>
</tr>
</tbody>
</table>