بناء جملة XQuery
XQuery حساس لحالة الأحرف ويجب أن تكون عناصر XQuery والسمات والمتغيرات أسماء XML صالحة.
قواعد بناء جملة XQuery Basic
بعض قواعد النحو الأساسية:
- XQuery حساس لحالة الأحرف
- يجب أن تكون عناصر XQuery والسمات والمتغيرات أسماء XML صالحة
- يمكن أن تكون قيمة سلسلة XQuery في علامات اقتباس مفردة أو مزدوجة
- يتم تعريف متغير XQuery بـ $ متبوعًا باسم ، على سبيل المثال $ bookstore
- تعليقات XQuery محددة بـ (: و :) ، على سبيل المثال (: تعليق XQuery :)
مستند مثال XML
سوف نستخدم وثيقة "books.xml" في الأمثلة أدناه (نفس ملف XML كما في الفصول السابقة).
اعرض ملف "books.xml" في متصفحك .
تعبيرات XQuery الشرطية
يُسمح بتعبيرات "If-Then-Else" في XQuery.
ننظر إلى المثال التالي:
for $x in doc("books.xml")/bookstore/book
return if ($x/@category="children")
then <child>{data($x/title)}</child>
else <adult>{data($x/title)}</adult>
ملاحظات حول بناء جملة "if-then-else": أقواس حول تعبير if مطلوبة. else مطلوب ، ولكن يمكن أن يكون فقط ().
ستكون نتيجة المثال أعلاه:
<adult>Everyday Italian</adult>
<child>Harry Potter</child>
<adult>XQuery Kick Start</adult>
<adult>Learning XML</adult>
مقارنات XQuery
في XQuery هناك طريقتان لمقارنة القيم.
1. مقارنات عامة: = ،! = ، <، <= ،> ،> =
2. مقارنات القيمة: eq، ne، lt، le، gt، ge
يتم عرض الفرق بين طريقتي المقارنة أدناه.
يرجع التعبير التالي صحيحًا إذا كانت قيمة أي من سمات q أكبر من 10:
$bookstore//book/@q > 10
يُرجع التعبير التالي صحيحًا إذا كانت هناك سمة q واحدة تم إرجاعها بواسطة التعبير ، وكانت قيمتها أكبر من 10. إذا تم إرجاع أكثر من q ، يحدث خطأ:
$bookstore//book/@q gt 10