ВЪВЕДЕНИЕ
След като се запознавахме с XPath сега ще ви предсавя и езиците направени от неговите фрази.Първият е XQuery.Най-лесния начин да се даде определение е да се каже че XQuery се отнася към XML както SQL към базта данни.Той е направен да проверява информацията в XML.Този език търси и извлича елементи и атрибути от документите.Ето един пример на въпрос, който XQuery може да разреши:"Select all CD records with a price less than $10 from the CD collection stored in the XML document called cd_catalog.xml"
XQuery и XPath споделят еднакви модели и поддържат еднакви функции и оператори.Ако вече сте разбрали XPpath то тогава няма да имате никакъв проблем да разберете и XQuery.Този език може да с използва за много различни неща.Ето някои от най-използваните:
Извлича информация за да я използва в Уеб Сървъри
Генерира сбит доклад
Трансформира XML в XHTML
Търси документи за съответната информация
Ето един пример:
CODE1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
| <?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> |
Ето как можете да изберете някои възлови точки в този пример:
1.Функциите - XQuery използв3а функции за да извлича информация от документа.Функцията doc() се използва за да отвори "book.xml":
CODE2.Фрази - Този език използва фразите за да се движи през елементите на XML документа.Следващата фраза се използва за да избере всички главни елементи в "book.xml":
CODE1
| doc("books.xml")/bookstore/book/title |
/bookstore избира елемента bookstore, /book избира всички book елементи под bookstore,и /title избира всички title елементи под book.XQuery в горния прмер ще извлече това:
CODE1
2
3
4
| <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> |
3.Предположения - XQuery използва предположенията за да ограничи извлечената информация.Следващото предположение ще избере всички book елементи, които са под bookstore елементът и имат стойност по-малка от 30:
CODE1
| doc("books.xml")/bookstore/book[price<30] |
Xquery горе ще извлече това:
CODE1
2
3
4
5
6
| <book category="CHILDREN">
<title lang="en">Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book> |