تعیین محل تگ ها در سند xml

 

محل تگ ها را می توان با ادرس دهی مطلق یا نسبی پیدا کرد

ادرس مطلق با یک / شروع کی شود و در ادرس دهی نسبی اینطور نیست

با هر روشی که اقدام می کنید مسیرها ممکن شامل چند قسمت باشند که هر قسمت با یک اسلش از هم جدا می شوند

 

اگر به طور ضمنی هر قسمت در مسیر را step بنامیم انگاه

روش ادرس دهی مطلق مثل مثال زیر است :

/step/step/…

و روش ادرس دهی نسبی نیز مشابه مثال زیر است :

step/step/…

 

 

 

حالا برای پیدا کردن مسیرها باید از فرمول زیر استفاده کنین :

 

Axes name :: موردی که دنبالش هستین

 

 

مثال

child::book

 

یعنی ما تمام تگ های به نام book که فرزند تگ جاری هستند را می خواهیم

 

 

مثال

attribute::lang

 

یعنی ما تمام صفات lang مربوط به تگ جاری را می دهد

 

مثال

child::*

 

تمام تگ های فرزند تگ جاری را انتخاب می کند

 

مثال

attribute::*

 

تمام صفات تگ جاری را انتخاب می کند

 

 

مثال

child::text()

 

تمام متن های تگ های فرزند تگ جاری را انتخاب می کند

 

 

مثال

child::node()

 

تمام فرزندان تگ جاری را انتخاب می کند

 

 

مثال

descendant::book

 

تمام زادگان تگ جاری را که نام انها book است انتخاب می کند

 

 

مثال

ancestor::book

تمام تگ های book ای که اجداد تگ جاری هستند انتخاب می کنند

 

 

مثال

ancestor-or-self::book

تمام تگ های book ای که اجداد تگ جاری هستند انتخاب می کنند و همچنین خود نود را اگر اسمش book است انتخاب می کند

 

 

مثال

child::*/child::price

تمام تگ های نوه تگ جاری را اگر اسمشان price است انتخاب می کند