Ultimele tutoriale de dezvoltare web
 

XML DOM Nodurile


În DOM, totul într-un document XML este un nod.


DOM Nodurile

Potrivit DOM, totul într - un document XML este un node .

DOM spune:

  • Întregul document este un document de nod
  • Fiecare element XML este un nod element de
  • Textul din elementele XML sunt noduri de text
  • Fiecare atribut este un nod atribut
  • Comentariile sunt noduri comentariu

DOM Exemplu

Uită - te la fișierul următor XML ( books.xml ):

×

Antet

<?xml version="1.0" encoding="UTF-8"?>
<bookstore>
  <book category="cooking">
    <title lang="en">Everyday Italian</title>
    <author>Giada De Laurentiis</author>
    <year>2005</year>
    <price>30.00</price>
  </book>
  <book category="children">
    <title lang="en">Harry Potter</title>
    <author>J K. Rowling</author>
    <year>2005</year>
    <price>29.99</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>
  <book category="web" cover="paperback">
    <title lang="en">Learning XML</title>
    <author>Erik T. Ray</author>
    <year>2003</year>
    <price>39.95</price>
  </book>
</bookstore>

Nodul rădăcină în XML de mai sus este numit <bookstore> . Toate celelalte noduri din document sunt conținute în <bookstore> .

Nodul rădăcină <bookstore> deține patru <book> noduri.

Prima <book> nodul are patru noduri: <title>, <author>, <year> și <price> , care conține un nod de text fiecare, "Everyday Italian", "Giada De Laurentiis" de "2005" "Everyday Italian", "Giada De Laurentiis" cu "Everyday Italian", "Giada De Laurentiis" , "2005" , și "30.00" .


Textul este întotdeauna stocat în Nodurile text

O eroare comună în procesarea DOM este de a aștepta un nod element conține text.

Cu toate acestea, textul unui nod element este stocat într-un nod de text.

În acest exemplu: <year>2005</year> , nodul elementului <year> , deține un nod text cu valoarea "2005" .

„2005“ este not valoarea <year> Elementul!


Fișierul XML DOM Node copac

Fișierul XML DOM vede un document XML ca un copac-structură. Structura arborelui se numește un node-tree.

Toate nodurile pot fi accesate prin copac. Conținutul lor pot fi modificate sau șterse, iar noi elemente pot fi create.

Arborele nod prezinta setul de noduri, precum și conexiunile dintre ele. Arborele pornește de la nodul rădăcină și se ramifică la nodurile de text la cel mai mic nivel al arborelui:

DOM copac nod

Imaginea de mai sus reprezintă fișierul XML books.xml .


Părinții Node, copii și Siblings

Nodurile din arborele de nod au o relație ierarhică între ele.

Termenii părinte, copil, frate si sunt folosite pentru a descrie relațiile. nodurile mamă au copii. Copiii de pe același nivel se numesc frați (brothers or sisters) .

  • Într-un copac nod, nodul de sus este numit rădăcină
  • Fiecare nod, cu excepția rădăcinii, are exact un nod părinte
  • Un nod poate avea orice număr de copii
  • O frunză este un nod care nu au copii
  • Frati sunt noduri cu același părinte

Următoarea imagine ilustrează o parte a arborelui nodului și relația dintre noduri:

copac Nod

Deoarece datele XML este structurat într-o formă de copac, acesta poate fi traversat fără a cunoaște structura exactă a copacului și fără a cunoaște tipul de date conținute în.

Vei afla mai multe despre dipozitive copac nod într-un capitol ulterior al acestui tutorial.


Primul copil - ultimul copil

Uită-te la următorul fragment XML:

<bookstore>
  <book category="cooking">
    <title lang="en">Everyday Italian</title>
    <author>Giada De Laurentiis</author>
    <year>2005</year>
    <price>30.00</price>
  </book>
</bookstore>

În XML de mai sus, <title> element este primul copil al <book> elementul, iar <price> element este ultimul copil al <book> element.

Mai mult, <book> element este nodul părinte al <title>, <author>, <year> , and <price> elements. <title>, <author>, <year> , and <price> elements.