XQuery Syntax

XQuery är känsligt för storlek på bokstäver, och XQuery element, egenskaper och variabler måste vara giltiga XML-namn.

Grundläggande syntaxregler för XQuery:

Några grundläggande syntaxregler:

  • XQuery är känsligt för storlek på bokstäver
  • XQuery element, egenskaper och variabler måste vara giltiga XML-namn.
  • XQuery strängvärden kan använda antingen enkla eller dubbla citattecken.
  • XQuery variabler definieras med "$" följt av ett namn, till exempel $bookstore
  • XQuery kommentarer skiljs av med (: och :), till exempel, (: XQuery kommentar :)

XQuery villkorsuttryck

"If-Then-Else" kan användas i XQuery.

Se exempel nedan:

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>

Observera syntaxen för "If-Then-Else": parentesen efter if-uttrycket är obligatorisk. else är också obligatorisk, men du kan också skriva "else ()".

Resultatet av de ovanstående exemplen:

<adult>Everyday Italian</adult>
<child>Harry Potter</child>
<adult>Learning XML</adult>
<adult>XQuery Kick Start</adult>

XQuery jämförelse

I XQuery finns det två sätt att jämföra värden.

  1. Allmän jämförelse: =, !=, <, <=, >, >=
  2. Värdets jämförelse: eq, ne, lt, le, gt, ge

Skillnaderna mellan dessa två jämförelsemetoder är följande:

Se nedan för XQuery uttrycket:

$bookstore//book/@q > 10

Om q-egenskapens värde är större än 10, är returnvärdet för uttrycket ovan true.

$bookstore//book/@q gt 10

Om endast en q returneras och dess värde är större än 10, returnerar uttrycket true. Om mer än en q returneras, inträffar ett fel.