Nós DOM XML

De acordo com o XML DOM, todo o conteúdo do documento XML é

  • Todo o documento é um nó de documento
  • Cada elemento XML é um nó de elemento
  • O texto de um elemento XML é um nó de texto
  • Cada atributo é um nó de atributo
  • Os comentários são nós de comentário

Exemplo DOM

Por favor, veja o seguinte arquivo XML (books.xml):

<?xml version="1.0" encoding="UTF-8"?>
<bookstore>
<book category="美食">
  <title lang="zh">雅舍谈吃</title>
  <author>梁实秋</author>
  <press>江苏文艺出版社</press>
  <year>2013</year>
  <price>35</price>
  <ISBN>9787539962771</ISBN>
</book>
<book category="儿童">
  <title lang="zh"> O papai fox incrível</title>
  <author> Roald Dahl</author>
  <translator> Dai Wei</translator>
  <press>Editora Tomorrow</press>
  <year>2009</year>
  <price>10</price>
  <ISBN>9787533259563</ISBN>
</book>
<book category="literatura">
  <title lang="zh"> Transformar o familiar em estranho</title>
  <author> Zigmund Bauman</author>
  <author> Peter Hafner</author>
  <translator> Wang Liqiu</translator>
  <press>Editora da Universidade de Nanjing</press>
  <year>2023</year>
  <price>68</price>
  <ISBN>9787305269387</ISBN>
</book>
<book category="ciência">
  <title lang="zh"> Você gostaria de voar, como um pássaro?</title>
  <author> Richard Dawkins</author>
  <author> Yana Renzova</author>
  <translator> Gao Tianyu</translator>
  <press>Editora de Ciência e Tecnologia de Hunan</press>
  <year>2023</year>
  <price>88</price>
  <ISBN>9787571019075</ISBN>
</book>
<book category="política" cover="brochura">
  <title lang="zh"> A Democracia nos Estados Unidos</title>
  <author> Tocqueville</author>
  <translator> Dong Guoliang</translator>
  <press>Companhia Editorial Comercial</press>
  <year>1989</year>
  <price>60</price>
  <ISBN>9787100124553</ISBN>
</book>
</bookstore>

No XML acima, o nó raiz é <bookstore>.

Todos os outros nós no documento estão contidos no <bookstore>.

O nó raiz <bookstore> possui 5 nós <book>.

O primeiro <book> nó contém 6 sub-nós: <title>, <author>, <press>, <year>, <price> e <ISBN>.

Cada nó filho contém um nó de texto:

  • "雅舍谈吃"
  • "梁实秋"
  • "江苏文艺出版社"
  • "2012"
  • "48.00"
  • "9787100011105"

O texto sempre é armazenado no nó de texto

Um erro comum no processamento DOM é acreditar que o nó elemento contém texto.

No entanto, o texto do nó elemento é armazenado no nó de texto.

Neste exemplo:<year>2013</year>, o nó elemento <year> contém um nó de texto com o valor "2012".

"2012" Não é !Valor do elemento <year>

Árvore de nós do XML DOM

O XML DOM vê o documento XML como uma estrutura de árvore. Essa estrutura de árvore é chamada deÁrvore de nós.

Todos os nós podem ser acessados por meio dessa árvore. Seu conteúdo pode ser modificado ou excluído, e novos elementos podem ser criados.

Esta árvore de nós mostra a coleção de nós e suas relações. A árvore começa pelo nó raiz e, em seguida, em níveis inferiores, se ramifica para nós de texto:

Árvore de nós DOM

A figura acima representa o arquivo XML books.xml.

Nó pai, nó filho e nó irmão

Os nós na árvore de nós têm relações hierárquicas entre si.

Os termos 'pai', 'filho' e 'irmão' são usados para descrever essas relações. O nó pai tem nós filhos. Os nós filhos que estão no mesmo nível são chamados nós irmãos ou nós irmãos (irmãos ou irmãs).

  • No nó da árvore, o nó superior é chamado nó raiz
  • Além do nó raiz, cada nó tem apenas um nó pai
  • Os nós podem ter qualquer número de nós filhos
  • Folhas são nós que não têm nós filhos
  • Nós irmãos são nós que compartilham o mesmo nó pai

A figura a seguir mostra uma parte da árvore de nós e as relações entre os nós:

Árvore de nós DOM

Como os dados XML são estruturados em forma de árvore, podem ser percorridos sem conhecer a estrutura exata da árvore nem o tipo de dados contidos.

Você aprenderá mais sobre a navegação na árvore de nós em capítulos posteriores deste tutorial.

Comentários:Nó pai: Nó Pai, Nó Filho: Nó Filho, Nó Irmão: Nó Irmão.

Primeiro nó - Último nó

Por favor, consulte o seguinte fragmento XML:

<bookstore>
  <book category="美食">
    <title lang="zh">雅舍谈吃</title>
    <author>梁实秋</author>
	<press>江苏文艺出版社</press>
    <year>2013</year>
    <price>35</price>
	<ISBN>9787100011105</ISBN>
  </book>
</bookstore>

No XML acima, o elemento <title> é o primeiro nó filho do elemento <book>, e o elemento <ISBN> é o último nó filho do elemento <book>.

Além disso, o elemento <book> é o pai dos elementos <title>, <author>, <year>, <press>, <price> e <ISBN>.