XQL

от Уикипедия, свободната енциклопедия
XQL
ПарадигмаЕзик за заявки
Реализиране през1990-те
АвторW3C
Типизация на даннитеслаба
Програмни диалектиXQuery
Повлиян отXPath, XML-QL
ПовлияваXPath Full-Text
Уебсайтwww.ibiblio.org/xql

XQL (произнася се [екс-кю-ел], от англ. eXML Query Language – това е език за запитвания, специално разработен за работа с XML документи. Той е тясно свързан с XPath като неговите основни конструкции кореспондират на основните структури в XML.

Дизайнът на XQL е повлиян от по-рано предложен от W3C език за заявки към XML документи наречен XML-QL. Мотивацията за този дизайн се базира на това, че XML притежава свой вграден модела на данните, който е различен както от този на традиционните релационни бази данни, така и от този на обектно или обектно-реалционно ориентираните.

Синтаксис[редактиране | редактиране на кода]

В XQL един документ представлява подредено дърво с означени възли, които представят елементи, атрибути, инструкции за обработка и коментари. Всички заявки се извършват в аспект родител-наследник и наследник-предшественик в дървовидната структура на документа.

Заявките в XQL връщат като резултат XML елементи от един или повече XML документа: Обикновените низове се интерпретират като имена на такива елементи.

table

Тази заявка връща като реултат всички <table> елементи от документа.

front/author

Операторът за наследници „/“ означава йерархията в документ – резултатът от тази заявка са всички <author> елементи, които са наследници на <front>. Друг оператор, касаещ йерархията е „//“, който дава достъп до елементи на произволно ниво в йеарахията на документа, започвайки от зададения елемент.

За конкретизиране на търсения разултат XQL дава възможност за задаване на филтри чрез оператора „=“:

front/author='Иван Вазов'

Така зададена, заявката има разултат всички <author> елементи, които са преки наследници на <front> със съдържание „Иван Вазов“.

Имената на атрибутите се означават с „@“ и се третират като преки наследници на елементите, към които принадлежат:

front/author/address/@type='email'

Различни условия могат да се задават с използване на логически оператори:

front/author='Павел Вежинов'[@gender='male' and @shoesize='9EEEE']

XQL дава достъп и по нива в даокумента:

section[@level='4'][1 to 3]

Резултат от изпълнението на тази заявка са първите 4 елемента, чиито атрибут за ниво level има стойност 4, т.е. първите четири елемента от ниво 4 в XML дървото.

Стандарти свързани с XQL[редактиране | редактиране на кода]

XQL е съобразен със следните стандарти за бази данни

  • SQL [ANSI X3]
  • OQL [ODMG].
  • XPath
  • DOM (Document Object Model – Обектен документен модел) – стандартен обектен модел за програмен достъп до XML документи

Външни препратки[редактиране | редактиране на кода]