XML DOM XPathResult آوٹھا
- پچھلے پیج DOM XPathExpression
- بعد کا پیج DOM XSLTProcessor
نتایج جستجوی XPath.
موضوع XPathResult
موضوع XPathResult نمایانگر مقدار یک عبارت XPath است. این نوع موضوع توسط Document.evaluate() اور XPathExpression.evaluate() باز آمد. جستجوی XPath میتواند به عنوان یک رشته، عدد، مقدار بولین، نود و لیست نود محاسبه شود. پیادهسازی XPath میتواند به چندین روش مختلف لیست نود را بازگرداند، بنابراین، این شیء برای دریافت نتیجه واقعی یک جستجوی XPath تعریف شده API پیچیدهتری دارد.
برای استفاده از یک XPathResult، ابتدا ویژگی resultType بررسی شود. این ویژگی یک مقدار XPathResult را ذخیره میکند. مقدار این ویژگی به شما نشان میدهد که باید از چه ویژگی و روشی برای تعیین مقدار نتیجه استفاده کنید. فراخوانی روشی که برای resultType تعریف نشده است یا خواندن ویژگی که برای آن تعریف نشده است منجر به خطا میشود.
IE از API XPathResult پشتیبانی نمیکند. برای اجرای جستجوی XPath در IE، به Node.selectNodes() اور Node.selectSingleNode() .
مقدارهای ثابت شیء XPathResult
این مقدارها یک نوع ممکن برای یک جستجوی XPath را مشخص میکنند. ویژگی resultType یک شیء XPathResult این مقدارها را یکی از آنها را نگه میدارد، تا مشخص کند که شیء چگونه نتیجه را نگه میدارد. این مقدارها با Document.evaluate() و XPathExpression.evaluate() استفاده میشوند تا نوع نتیجه مورد انتظار مشخص شود.
این مقدارها و معانی آنها به شرح زیر است:
- ANY_TYPE
- این مقدار را به Document.evaluate() یا XPathExpression.evaluate() ارسال کنید تا نوع نتیجه قابل قبول را مشخص کنید. ویژگی resultType این مقدار را تنظیم نمیکند.
- NUMBER_TYPE
- numbervalue نتیجه را ذخیره میکند.
- STRING_TYPE
- stringvalue نتیجه را ذخیره میکند.
- BOOLEAN_TYPE
- booleanValue نتیجه را ذخیره میکند.
- UNORDERED_NODE_ITERATOR_TYPE
- این نتیجه یک مجموعه نقاط بدون ترتیب است که میتوان به ترتیب با تکرار فراخوانی iterateNext() تا زمانی که null برمیگرداند به ترتیب به نقاط دسترسی پیدا کرد. در طول این فرآیند، مستند نباید تغییر کند.
- ORDERED_NODE_ITERATOR_TYPE
- نتیجه یک لیست از نقاط است که بر اساس ویژگیهای مستند مرتب شدهاند، میتوان به ترتیب با تکرار فراخوانی iterateNext() تا زمانی که null برمیگرداند به ترتیب به نقاط دسترسی پیدا کرد. در طول این فرآیند، مستند نباید تغییر کند.
- UNORDERED_NODE_SNAPSHOT_TYPE
- نتیجه یک لیست دسترسی تصادفی از نقاط است. ویژگی snapshotLength طول لیست را مشخص میکند و روش snapshotItem() نقاطی با نشانی مشخص را برمیگرداند. نقاط ممکن است با ترتیب ظاهر شدنشان در مستند متفاوت باشند. چون این نتیجه یک "تصویر لحظهای" است، بنابراین حتی اگر مستند تغییر کند، همچنان معتبر است.
- ORDERED_NODE_SNAPSHOT_TYPE
- 这个结果是一个随机访问的节点列表,就像 UNORDERED_NODE_SNAPSHOT_TYPE,只不过这个列表是按照文档中的顺序排列的。
- ANY_UNORDERED_NODE_TYPE
- singleNodeValue 属性引用和查询匹配的一个节点,如果没有匹配的节点则为 null。如果有多个节点和查询匹配,singleNodeValue 可能是任何一个匹配节点。
- FIRST_ORDERED_NODE_TYPE
- singleNodeValue 保存了文档中的第一个和查询匹配的节点,如果没有匹配的节点,则为 null。
XPathResult کے نمائندہ خصوصیات
یہ متعدد خصوصیات صرف resultType کا ایک معین کارکردگی محفوظ رکھتے ہوئے اور اس کی مدد سے اپنی پوری مدد فراہم کرتی ہیں، جب تک کہ آپ کسی کارکردگی کا استعمال نہ کریں جو اس کا تعین نہ کیا گیا ہو، تو اس کی مدد سے ناگاوار حالت آئیگی۔
- booleanValue
- جب resultType BOOLEAN_TYPE کا ہو تو، نتیجے کا مرتبط کارکردگی محفوظ کرنا ہوگا۔
- invalidIteratorState
- اگر resultType ITERATOR_TYPE کا کسی کانسٹنٹ میں ہو اور مستند کا تبدیل کردینا ہو تو، تو true ہوگا؛ یہ کیونکہ نتیجہ پہلے سے واپس نکالا گیا ہوگا، لہذا اس میں تکرار نہیں کی جاسکتی ہے۔
- numberValue
- جب resultType NUMBER_TYPE کا ہو تو، نتیجے کا مرتبط کارکردگی محفوظ کرنا ہوگا۔
- resultType
- XPath کی مدد سے جو کی نوعیت کا نتیجہ آتا ہے، اس کا شمار کیا جاتا ہے، اس کا مطلب یہ ہوتا ہے کہ آپ کتنی دیگر خصوصیات اور طریقوں کا استعمال کرسکتے ہیں۔
- singleNodeValue
- جب resultType XPathResult.ANY_UNORDERED_NODE_TYPE یا XPathResult.FIRST_UNORDERED_NODE_TYPE کا ہو تو، نتیجے کا مرتبط کارکردگی محفوظ کرنا ہوگا۔
- snapshotLength
- جب resultType کا UNORDERED_NODE_SNAPSHOT_TYPE یا ORDERED_NODE_ITERATOR_TYPE ہو تو، واپس نکالنے والی نیود کی تعداد مقرر کرنا ہوگا۔ اس کی مدد سے snapshotItem() کا استعمال کرنا ہوگا۔
- stringValue
- جب resultType STRING_TYPE ہو تو نتیجے کا مالامال کیا جاتا ہے۔
XPathResult آوٹھا کا طریقہ کار
طریقہ کار | وصف |
---|---|
iterateNext() | اگر resultType UNORDERED_NODE_ITERATOR_TYPE یا ORDERED_NODE_ITERATOR_TYPE ہو تو اس طریقہ کار کو استعمال کیا جاسکتا ہے۔ |
snapshotItem() | نتائج نود لیسٹ میں مخصوص انڈیکس کا نود برآمد کرنا، اس طریقہ کار کو صرف resultType UNORDERED_NODE_SNAPSHOT_TYPE یا ORDERED_NODE_SNAPSHOT_TYPE کی صورت میں استعمال کیا جاسکتا ہے۔ snapshotLength پرزنٹیج کے ساتھ اس طریقہ کار کو استعمال کیا جاسکتا ہے。 |
مربوط پیج
- پچھلے پیج DOM XPathExpression
- بعد کا پیج DOM XSLTProcessor