XML -Tutorial

XML-HOME XML-Einführung XML-Wie zu verwenden XML-Baum XML-Syntax XML-Elemente XML-Attribute XML-Namespaces XML-Anzeige XML-HttpRequest XML-Parser XML-DOM XML-XPath XML-XSLT XML-XQuery XML-XLink XML-Validierer XML-DTD XML-Schema XML-Server XML-Beispiele XML-Quiz XML-Zertifikat

XML-AJAX

AJAX-Einführung AJAX-XMLHttp AJAX-Anfrage AJAX-Antwort AJAX-XML-Datei AJAX-PHP AJAX ASP AJAX-Datenbank AJAX-Anwendungen AJAX-Beispiele

XML-DOM

DOM-Einführung DOM-Knoten DOM-Zugriff DOM-Knoten-Info DOM-Knotenliste DOM-Traversierung DOM-Navigation DOM Get-Werte DOM-Änderungsknoten DOM-Knoten entfernen DOM-Ersetzungsknoten DOM-Knoten erstellen DOM-Knoten hinzufügen DOM-Klonknoten DOM-Beispiele

XPath -Tutorial

XPath-Einführung XPath-Knoten XPath-Syntax XPath-Achsen XPath-Operatoren XPath-Beispiele

XSLT -Tutorial

XSLT-Einführung XSL-Sprachen XSLT-Transformation XSLT <Vorlage> XSLT <Wert von> XSLT <für-jeden> XSLT <sortieren> XSLT <wenn> XSLT <auswählen> XSLT anwenden XSLT auf dem Client XSLT auf dem Server XSLT XML bearbeiten XSLT-Beispiele

XQuery- Tutorial

XQuery-Einführung XQuery-Beispiel XQuery FLWOR XQuery-HTML XQuery-Bedingungen XQuery-Syntax XQuery hinzufügen XQuery-Auswahl XQuery-Funktionen

XML -DTD

DTD-Einführung DTD-Bausteine DTD-Elemente DTD-Attribute DTD-Elemente vs. Attr DTD-Entitäten DTD-Beispiele

XSD- Schema

XSD-Einführung XSD-Anleitung XSD <Schema> XSD-Elemente XSD-Attribute XSD-Einschränkungen

XSD- Komplex

XSD-Elemente XSD leer Nur XSD-Elemente Nur XSD-Text XSD gemischt XSD-Indikatoren XSD <beliebig> XSD <beliebiges Attribut> XSD-Ersetzung XSD-Beispiel

XSD -Daten

XSD-String XSD-Datum XSD Numerisch XSD Sonstiges XSD-Referenz

Webdienste _

XML-Dienste XML-WSDL XML-SOAP XML-RDF XML-RSS

Verweise

DOM-Knotentypen DOM-Knoten DOM-Knotenliste DOM NamedNodeMap DOM-Dokument DOM-Element DOM-Attribut DOM-Text DOM-CDATA DOM-Kommentar DOM-XMLHttpRequest DOM-Parser XSLT-Elemente XSLT/XPath-Funktionen

XQuery- Syntax


Bei XQuery wird zwischen Groß- und Kleinschreibung unterschieden, und XQuery-Elemente, -Attribute und -Variablen müssen gültige XML-Namen sein.


Grundlegende Syntaxregeln für XQuery

Einige grundlegende Syntaxregeln:

  • Bei XQuery wird zwischen Groß- und Kleinschreibung unterschieden
  • XQuery-Elemente, -Attribute und -Variablen müssen gültige XML-Namen sein
  • Ein XQuery-Zeichenfolgenwert kann in einfachen oder doppelten Anführungszeichen stehen
  • Eine XQuery-Variable wird mit einem $ gefolgt von einem Namen definiert, z. B. $bookstore
  • XQuery-Kommentare werden durch (: und :) getrennt, z. B. (: XQuery-Kommentar :)

Das XML-Beispieldokument

In den folgenden Beispielen verwenden wir das Dokument "books.xml" (dieselbe XML-Datei wie in den vorherigen Kapiteln).

Zeigen Sie die Datei „books.xml“ in Ihrem Browser an .


Bedingte XQuery-Ausdrücke

"If-Then-Else"-Ausdrücke sind in XQuery erlaubt.

Sehen Sie sich das folgende Beispiel an:

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>

Hinweise zur "if-then-else"-Syntax: Klammern um den if-Ausdruck sind erforderlich. else ist erforderlich, kann aber auch einfach else () sein.

Das Ergebnis des obigen Beispiels lautet:

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

XQuery-Vergleiche

In XQuery gibt es zwei Möglichkeiten, Werte zu vergleichen.

1. Allgemeine Vergleiche: =, !=, <, <=, >, >=

2. Wertevergleiche: eq, ne, lt, le, gt, ge

Der Unterschied zwischen den beiden Vergleichsmethoden wird unten gezeigt.

Der folgende Ausdruck gibt „true“ zurück, wenn eines der q-Attribute einen Wert größer als 10 hat:

$bookstore//book/@q > 10

Der folgende Ausdruck gibt „true“ zurück, wenn nur ein q-Attribut vom Ausdruck zurückgegeben wird und sein Wert größer als 10 ist. Wenn mehr als ein q zurückgegeben wird, tritt ein Fehler auf:

$bookstore//book/@q gt 10