XPath Axes (অক্ষ)
- পূর্ববর্তী পৃষ্ঠা XPath গ্রামার
- পরবর্তী পৃষ্ঠা XPath অপারেটর
XML উদাহরণ ডকুমেন্ট:
আমরা নিচের উদাহরণে এই XML ডকুমেন্টটি ব্যবহার করব:
<?xml version="1.0" encoding="ISO-8859-1"?> <bookstore> <book> <title lang="eng">Harry Potter</title> <price>29.99</price> </book> <book> <title lang="eng">Learning XML</title> <price>39.95</price> </book> </bookstore>
XPath অক্ষ:
অক্ষটি বর্তমান নোডের প্রতি নোড সমূহকে বিন্যস্ত করা যেতে পারে:
অক্ষ নাম: | ফলাফল |
---|---|
ancestor | বর্তমান নোডের সমস্ত পূর্বসূরী (পিতা, পূর্বসূরী, ইত্যাদি) চিহ্নিত করুন: |
ancestor-or-self | বর্তমান নোডের সমস্ত পূর্বসূরী (পিতা, পূর্বসূরী, ইত্যাদি) এবং বর্তমান নোডকেও চিহ্নিত করুন: |
attribute | বর্তমান নোডের সমস্ত অ্যাট্রিবিউটগুলো চিহ্নিত করুন。 |
child | বর্তমান নোডের সমস্ত সাবএলিমেন্টগুলো চিহ্নিত করুন。 |
descendant | বর্তমান নোডের সমস্ত সমস্ত নোডকে চিহ্নিত করুন (সন্তান, নাতি, ইত্যাদি): |
descendant-or-self | বর্তমান নোডের সমস্ত সমস্ত নোডকে চিহ্নিত করুন (সন্তান, নাতি, ইত্যাদি) এবং বর্তমান নোডকেও: |
following | ডকুমেন্টের বর্তমান নোডের শেষতের লেবেলের পরের সমস্ত নোডকে চিহ্নিত করুন: |
namespace | বর্তমান নোডের সমস্ত নামসপস্থ নোডকে চিহ্নিত করুন: |
parent | বর্তমান নোডের পিতৃ নোডকে চিহ্নিত করুন: |
preceding | ডকুমেন্টের বর্তমান নোডের শুরুতের লেবেলের আগের সমস্ত নোডকে চিহ্নিত করুন: |
preceding-sibling | বর্তমান নোডের আগের সমস্ত সমস্ত সমস্ত নোডকে চিহ্নিত করুন: |
self | বর্তমান নোডকে চিহ্নিত করুন: |
অবস্থানসমূহ প্রকাশ:
অবস্থানসমূহকে আক্রান্ত করা যেতে পারে সুস্পষ্ট অথবা আপেক্ষিক:
অবস্থানসমূহকে আক্রান্ত করেছে সুস্পষ্ট পথ ( / ) এবং আপেক্ষিক পথকে না। দুই ধরনের ক্ষেত্রেই, অবস্থানসমূহকে একটি বা একাধিক পদ দ্বারা বিভক্ত করা হয়:
অবশ্যক পথ:
/step/step/...
সম্পর্কিত পথ:
step/step/...
প্রত্যেক পদক্ষেপই বর্তমান নোড সমাবেশের মধ্যের নোড অনুযায়ী গণনা করা হয়
পদক্ষেপ (step) সমন্বিত:
- অক্ষ (axis)
- চিহ্নিত নোড এবং বর্তমান নোডের মধ্যে গাছের সম্পর্ক নির্ধারণ করুন
- নোড টেস্ট (node-test)
- কোনও অক্ষের ভিতরের নোডকে পরিচিত করুন
- শূন্য বা বেশি প্রতীক (predicate)
- চিহ্নিত নোড সমাবেশকে আরও বিস্তৃতভাবে পুনরুৎপাদন করুন
পদক্ষেপের গ্রামার:
অক্ষ নাম::নোড টেস্ট [প্রতীক]
ইনস্ট্যান্স
উদাহরণ | ফলাফল |
---|---|
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 সন্তান নোডগুলো চিহ্নিত করুন。 |
- পূর্ববর্তী পৃষ্ঠা XPath গ্রামার
- পরবর্তী পৃষ্ঠা XPath অপারেটর