XML 트리

XML 문서는 HTML 문서와 마찬가지로 트리 형태의 계층 구조를 가진다.

이러한 XML 트리는 하나뿐인 루트(root)요소부터 시작하여, 각각의 자식(child) 요소에 차례대로 연결된다.

XML 트리 구조에 포함되는 모든 요소는 자신만의 자식요소를 가질 수 있다.

 

부모요소는 여러 개의 자식을 가질 수 있다.

하지만 자식요소는 단 하나의 부모요소만 가진다.

 

형제요소는 같은 트리 레벨에 존재하는 요소를 가리킨다.

, 형제 요소란 같은 부모요소를 가지는 자식 요소 간의 관계를 나타낸다.

 

조상요소는 부모 요소를 포함해 현재 요소보다 상위에 존재하는 모든 요소를 가린킨다.

자손요소는 자식 요소를 포함해 계층적으로 현재 요소보다 하위에 존재하는 모든 요소를 가리킨다.

XML 트리의 모든 요소는 자신만의 텍스트나 속성을 가질 수 있다.

<!-- XML 선언문-->
<?xml version="1.0" encoding="UTF-8"?> 
<!-- 문서에 단 하나만이 존재하는 루트 요소 생성, XML 문서에 존재하는 모든 요소의 조상요소가 된다. -->
<shop shoes="신발" type="브랜드"> 
    <shoes> 
    <!-- name, sort, cost의 세가지 자식 요소를 가지고 있다.-->
        <name>에어맥스</name>
        <sort>운동화</sort>
        <cost>199000</cost>
    </shoes>
    <shoes>
        <name>닥터마틴</name>
        <sort>워커</sort>
        <cost>179000</cost>
    </shoes>
</shop>

 

참고 : http://tcpschool.com/xml/xml_basic_structure

'언어 > xml' 카테고리의 다른 글

3. XML 설계 목적  (0) 2022.02.03
2. XML 기초  (0) 2022.02.03
1. XML이란?  (0) 2022.01.27

XML 설계 목적

1.XML은 인터넷상에서 명확하게 사용할 수 있어야 한다.

2.XML은 다양한 응용 프로그램을 지원해야 한다.

3.XMLSGML과 호환되어야 한다.

4.XML문서를 처리하는 프로그램은 손쉽게 작성될 수 있어야 한다.

5.XML에서 제공하는 옵션의 수는 최소한으로 유지되어야 한다.

6.XML문서는 인간이 읽을 수 있어야 하며, 의미가 명확해야 한다.

7. XML의 설계는 빠르게 이루어져야 한다.

8. XML의 설계는 공식적이면서 간결해야한다.

9. XML문서는 작성하기 쉬워야 한다.

10. XML 마크업의 간결성은 그다지 중요하지 않다.

 

XML의 목적

서로 호환되지 않는 데이터 타입을 사용하는 시스템 간의 데이터 교환에는 많은 시간과 노력이 발생한다

또한, 이렇게 데이터를 변환하는 과정에서 데이터의 손실이 발생하는 경우도 종종 있다.

하지만 XML은 데이터를 텍스트 형식으로 저장하므로, 소프트웨어나 하드웨어에 독립적으로 데이터를 저장하고

전달할 수 있다. 따라서 XML을 사용하면 새로운 운영체제나 프로그램, 브라우저 등에 상관없이 데이터를 안전하고 손쉽게 전달할 수 있다.

 

HTML로부터 데이터 분리

HTML 문서의 데이터를 XML 파일로 따로 저장할 수 있다.

이러한 데이터는 몇 줄의 자바스크립트 코드로도 간단히 읽어 들일 수 있으며, HTML 문서 내에서 불러온 데이터를 손쉽게 이용할 수 있다.

	<script>
		function loadDoc() {
			var xmlHttp = new XMLHttpRequest(); //XML읽어오기 
			xmlHttp.onreadystatechange = function() {
				if(this.status == 200 && this.readyState == this.DONE) {
					displayData(xmlHttp); //데이터 읽어오기
				}
			};
			xmlHttp.open("GET", "/examples/media/korean_major_cities.xml", true);
			xmlHttp.send();
		}

		function displayData(xmlHttp) {
			var xmlObj, cityList, result, idx;
			xmlObj = xmlHttp.responseXML;	// 요청한 데이터를 XML DOM 객체로 반환함. **중요**
			result = "<table><tr><th>도시 이름</th><th>행정구역</th></tr>";
			cityList = xmlObj.getElementsByTagName("city");
			for(idx = 0; idx < cityList.length; idx++) {
				result += "<tr><td>" + 
					cityList[idx].getElementsByTagName("name")[0].childNodes[0].nodeValue + "</td><td>" +
					cityList[idx].getElementsByTagName("class")[0].childNodes[0].nodeValue + "</td></tr>";
			}
			result += "</table>";
			document.getElementById("text").innerHTML = result;
		}
	</script>

 

참고 : http://tcpschool.com/xml/xml_intro_purpose

'언어 > xml' 카테고리의 다른 글

4. XML 구조  (0) 2022.02.03
2. XML 기초  (0) 2022.02.03
1. XML이란?  (0) 2022.01.27

XML(Extensible Markup Language)

- XML은 데이터를 저장하고 전달할 목적으로 만들어졌으며, 저장되는 데이터의 구조를 기술하기 위한 언어로

  수많은 응용 분야에서 데이터를 저장하고 전달하는 중요한 역할을 맡고 있다

 

XML 사전지식

- XML은 수많은 응용 분야에서 데이터를 저장하고 전달하는 중요한 역할을 맡고 있다

   배우기 전에 HTML, JAVASCRIPT의 기초지식이 필요하다

 

XML 이란?

XMLHTML과 매우 비슷한 문자 기반의 마크업 언어(text-based markup language)입니다.

이 언어는 사람과 기계가 동시에 읽기 편한 구조로 되어있다

그러나 XMLHTML처럼 데이터를 보여주는 목적이 아닌, 데이터를 저장하고 전달할 목적으로 만들었다.

또한, XML태그는 HTML 태그처럼 미리 정의되어 있지 않고, 사용자가 직접 정의할 수 있다,

 

XML의 특징

1. XML은 다른 목적의 마크업 언어를 만드는 데 사용되는 다목적 마크업 언어이다.

2. XML은 다른 시스템끼리 다양한 종류의 데이터를 손쉽게 교환할 수 있도록 해준다.

3. XML은 새로운 태그를 만들어 추가해도 계속해서 동작하므로, 확장성이 좋다.

4. XML은 데이터를 보여주지 않고, 데이터를 전달하고 저장하는 것만을 목적으로 한다.

5. XML은 텍스트 데이터 형식의 언어로 모든 XML 문서는 유니코드 문자로만 이루어진다.

 

XML 기반의 언어

1. XHTML 2. SVG 3. RDF 4. RSS 5. Atom 6. MathML

 

XML 표준

XML 표준화 작업은 1996W3C에서 지원하는 XML 워킹 그룹에 의해 시작된다.                                               

그 후 1997XML 1.0 초안이 완성되고, 1998년 마침내 XML 1.0 표준 권고안이 공표됐다.                                     

그 후 계속해서 틔1.0의 버전이 발표되고 있다.

 

참고 : http://tcpschool.com/xml/xml_intro_basic 

'언어 > xml' 카테고리의 다른 글

4. XML 구조  (0) 2022.02.03
3. XML 설계 목적  (0) 2022.02.03
1. XML이란?  (0) 2022.01.27

XML이란? 

- XML(Extensible Markup Language)는 W3C에서 개발된, 다른 특수한 목적을 갖는 마크업 언어를 만드는데 사용하도록 권장하는 다목적 마크업 언어이다. XML은 SGML의 단순화된 부분집합으로, 다른 많은 종류의 데이터를 기술하는 데 사용할 수 있다. 

* W3C : Word Wide Web Consortium은 웹을 위한 표준을 개발하고 장려하는 조직이다. W3C 웹사이트에서는 HTML(HyperText Markup Language), XML(Extensible Markup Language), CSS(Cascading Style Graphics) 등의 웹기술과 W3C의 운영 방식등에 대한 정보를 얻을 수 있는 곳이다.

* 마크업언어 : 마크업 언어는 태그 등을 이용하여 문서나 데이터의 구조를 명기하는 언어의 한 가지이다. 태그는 원래 텍스와는 별도로 원고의 교정부호와 주석을 표현하기 위한 것이었으나 용도가 점차 확장되어 문서의 구조를 표현하는 역할을 하게 되었따. 이러한 태그 방법의 체계를 마크업 언어라 한다.

예) <행> 여는태그 /  </행> 닫는태그

* SGML : Standard Generalized Markup Language는 문서용 마크업 언어의 정의하기 위한 메타 언어이다.

            IBM에서 1960년대에 개발한 GML(Generalized Markup Language)의 후속이며, ISO 표준이다.

 

참고 : http://tcpschool.com/xml/intro

'언어 > xml' 카테고리의 다른 글

4. XML 구조  (0) 2022.02.03
3. XML 설계 목적  (0) 2022.02.03
2. XML 기초  (0) 2022.02.03

+ Recent posts