XML DOM 노드

XML 문서의 각 구성 요소는 노드입니다。

노드

DOM에 따르면, XML 문서의 각 구성 요소는 다음과 같습니다:노드

DOM은 다음과 같이 정의됩니다:

  • 전체 문서는 문서 노드입니다
  • 각 XML 태그는 요소 노드입니다
  • XML 요소에 포함된 각 속성은 속성 노드입니다
  • XML 요소에 포함된 텍스트는 텍스트 노드입니다
  • 비고는 비고 노드입니다

DOM 인스턴스

아래의 XML 파일(books.xml)을 확인해 주세요:

<?xml version="1.0" encoding="ISO-8859-1"?>
<bookstore>
<book category="children">
  <title lang="en">Harry Potter</title> 
  <author>J K. Rowling</author> 
  <year>2005</year> 
  <price>29.99</price> 
</book>
<book category="cooking">
  <title lang="en">Everyday Italian</title> 
  <author>Giada De Laurentiis</author> 
  <year>2005</year> 
  <price>30.00</price> 
</book>
<book category="web">
  <title lang="en">Learning XML</title> 
  <author>Erik T. Ray</author> 
  <year>2003</year> 
  <price>39.95</price> 
</book>
<book category="web">
  <title lang="en">XQuery Kick Start</title> 
  <author>James McGovern</author> 
  <author>Per Bothner</author> 
  <author>Kurt Cagle</author> 
  <author>James Linn</author> 
  <author>Vaidyanathan Nagarajan</author> 
  <year>2003</year> 
  <price>49.99</price> 
</book>
</bookstore>

위의 XML에서 루트 노드는 <bookstore>입니다. 문서의 모든 다른 노드는 <bookstore>에 포함됩니다.

루트 노드 <bookstore>는 네 개의 <book> 요소를 가집니다.

첫 번째 <book> 요소는 네 개의 노드를 가집니다:<title>, <author>, <year> 및 <price>로, 각 노드는 "Harry Potter", "J K. Rowling", "2005" 및 "29.99"와 같은 텍스트 노드를 포함합니다.

텍스트는 항상 텍스트 노드에 저장됩니다

DOM 처리에서 일반적인 오류는 요소 노드가 텍스트를 포함하고 있다고 생각하는 것입니다.

그러나 요소의 텍스트는 텍스트 노드에 저장됩니다.

이 예제에서:<year>2005</year>,요소 노드 <year>는 "2005" 값의 텍스트 노드를 가지고 있습니다.

"2005" 아니요 <year> 요소의 값을!