نوید XML DOM

هر جزء یک XML مستند یک گره است.

گره

بر اساس DOM، هر جزء یک XML مستند یکگره.

DOM به این صورت تعریف شده است:

  • تمام مستند یک گره document است
  • هر XML tag یک گره element است
  • تنها متن موجود در یک element XML یک گره text است
  • هر XML attribute یک گره attribute است
  • توضیحات به عنوان گره توضیحات در نظر گرفته می‌شوند

مثال 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>