گره ها (XPath Nodes)
در این بخش با «گره ها در XPath» آشنا می شوی. «گره (Node)» کوچک ترین جزء قابل اشاره در XML است. سند XML مثل یک درخت است. ریشه بالاترین عنصر است و بقیه شاخه ها و برگ ها هستند.
انواع گره ها در XPath
در XPath هفت نوع گره داریم: عنصر، ویژگی، متن، فضا نام، دستور پردازش، توضیح، و ریشه. هر کدام نقشی دارد و مسیرها می توانند آن ها را نشانه بروند.
نمونه سند و نام گره ها
<?xml version="1.0" encoding="UTF-8"?>
<bookstore>
<book>
<title lang="en">Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
</bookstore>
نکته: <bookstore> یک «گره عنصر ریشه» است. <author> یک «گره عنصر» است. lang یک «گره ویژگی» است.
مقادیر اتمی (Atomic Values)
«مقدار اتمی» یعنی داده ای بدون والد و فرزند. مثل متن داخل یک عنصر یا مقدار یک ویژگی.
در بالا، «J K. Rowling» و "en" مثال مقدار اتمی هستند.
روابط بین گره ها در XPath
والد (Parent) و فرزند (Children)
هر عنصر و ویژگی دقیقاً یک والد دارد. در مثال زیر، book والد title، author، year و price است.
<book>
<title>Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
خواهر–برادر (Siblings)
گره هایی با یک والد مشترک، خواهر–برادر هستند. title، author، year و price هم سطح اند.
نیاکان (Ancestors) و نوادگان (Descendants)
نیاکان یعنی والد و والد والد و بالاتر. نوادگان یعنی فرزندان و فرزندانِ آن ها. برای title، نیاکان book و bookstore هستند.
تمرین ذهنی سریع
- title را به عنوان فرزند book تصور کن.
- author را خواهر title بدان.
- bookstore را نیاکان همه آن ها ببین.
ادامه مطالعه
اگر تازه شروع کرده ای، صفحه مقدمه XPath را مرور کن. سپس برای قواعد نوشتن مسیرها به سینتکس XPath برو. برای دیدن DOM در عمل هم به مثال های DOM سر بزن.
جمع بندی سریع
- XML مثل یک درخت است.
- گره ها انواع متفاوت دارند.
- والد، فرزند، و خواهر–برادر مهم اند.
- نیاکان و نوادگان مسیر را ساده می کنند.