مثالهای XQuery
- صفحه قبل مقدمهای بر XQuery
- صفحه بعدی FLWOR XQuery
در این بخش، با بررسی یک مثال، برخی از نکات اساسی زبان XQuery را یاد خواهیم گرفت.
مستند نمونه XML
ما در مثالهای زیر از این سند XML استفاده خواهیم کرد.
"books.xml" :
<?xml version="1.0" encoding="ISO-8859-1"?> <bookstore> <book category="COOKING"> <title lang="en">Everyday Italian</title> <author>Giada De Laurentiis</author> <year>2005</year> <price>30.00</price> </book> <book category="CHILDREN"> <title lang="en">Harry Potter</title> <author>J K. Rowling</author> <year>2005</year> <price>29.99</price> </book> <book category="WEB"> <title lang="en">XQuery Kick Start</title> <author>James McGovern</author> <author>Per Bothner</author> <author>Kurt Cagle</author> <author>James Linn</author> <author>Vaidyanathan Nagarajan</author> <year>2003</year> <price>49.99</price> </book> <book category="WEB"> <title lang="en">Learning XML</title> <author>Erik T. Ray</author> <year>2003</year> <price>39.95</price> </book> </bookstore>
چگونه میتوانم از "books.xml" گرهها را انتخاب کنم؟
توابع
XQuery از توابع برای استخراج دادهها از سند XML استفاده میکند.
doc() برای باز کردن فایل "books.xml" استفاده میشود:
doc("books.xml")
عبارت مسیر
XQuery از عبارت مسیر برای هدایت در سند XML استفاده میکند.
عبارت مسیر زیر برای انتخاب همه عناصر title در فایل "books.xml" استفاده میشود:
doc("books.xml")/bookstore/book/title
انتخاب عنصر bookstore از /bookstore، انتخاب همه عناصر book زیر bookstore و انتخاب همه عناصر title زیر هر عنصر book
XQuery بالا میتواند دادههای زیر را استخراج کند:}
<title lang="en">Everyday Italian</title> <title lang="en">Harry Potter</title> <title lang="en">XQuery Kick Start</title> <title lang="en">Learning XML</title>
عبارت
XQuery از عبارات برای محدود کردن دادههایی که از مستند XML استخراج میشود، استفاده میکند.
عبارات زیر برای انتخاب تمام عناصر book زیر bookstore و همچنین برای انتخاب عناصر book که مقدار price آنها کمتر از 30 باشد، استفاده میشود:
doc("books.xml")/bookstore/book[price<30]
XQuery بالا میتواند دادههای زیر را استخراج کند:
<book category="CHILDREN"> <title lang="en">Harry Potter</title> <author>J K. Rowling</author> <year>2005</year> <price>29.99</price> </book>
- صفحه قبل مقدمهای بر XQuery
- صفحه بعدی FLWOR XQuery