XML -zelfstudie

XML HOME XML-introductie XML Hoe te gebruiken XML-structuur XML-syntaxis XML-elementen XML-kenmerken XML-naamruimten XML-weergave XML HTTP-verzoek XML-parser XML-DOM XML XPath XML XSLT XML XQuery XML XLink XML-validator XML-DTD XML Schema XML-server XML-voorbeelden XML-quiz XML-certificaat

XML AJAX

Ajax-introductie AJAX XMLHttp Ajax-verzoek Ajax-reactie AJAX XML-bestand AJAX PHP Ajax ASP AJAX-database AJAX-toepassingen Ajax-voorbeelden

XML-DOM

DOM-introductie DOM-knooppunten DOM-toegang DOM Node Info Lijst met DOM-knooppunten DOM doorkruisen DOM-navigatie DOM Waarden ophalen DOM-wijzigingsknooppunten DOM Knooppunten verwijderen DOM Knooppunten vervangen DOM Knooppunten maken DOM Knooppunten toevoegen DOM-kloonknooppunten DOM-voorbeelden

XPath- zelfstudie

XPath-introductie XPath-knooppunten XPath-syntaxis XPath-assen XPath-operators XPath-voorbeelden

XSLT- zelfstudie

XSLT-introductie XSL-talen XSLT-transformatie XSLT <sjabloon> XSLT <waarde-van> XSLT <voor elk> XSLT <sorteren> XSLT <if> XSLT <kiezen> XSLT toepassen XSLT op de client XSLT op de server XSLT Bewerk XML XSLT-voorbeelden

XQuery- zelfstudie

XQuery-introductie XQuery-voorbeeld XQuery FLWOR XQuery HTML XQuery-voorwaarden XQuery-syntaxis XQuery toevoegen XQuery selecteren XQuery-functies

XML -DTD

DTD Introductie DTD-bouwstenen DTD-elementen DTD-kenmerken DTD Elements vs Attr DTD-entiteiten DTD-voorbeelden

XSD- schema

XSD-introductie XSD Hoe kan ik? XSD <schema> XSD-elementen XSD-kenmerken XSD-beperkingen

XSD- complex

XSD-elementen XSD Leeg Alleen XSD-elementen Alleen XSD-tekst XSD gemengd XSD-indicatoren XSD <elke> XSD <anyAttribute> XSD-vervanging XSD-voorbeeld

XSD- gegevens

XSD-string XSD-datum XSD Numeriek XSD Diversen XSD-referentie

Webservices _

XML-services XML-WSDL XML SOAP XML-RDF XML-RSS

Referenties

Typen DOM-knooppunten DOM Node DOM-knooppuntlijst DOM NamedNodeMap DOM-document DOM-element DOM-kenmerk DOM-tekst DOM CDATA DOM-opmerking DOM XMLHttpRequest DOM-parser XSLT-elementen XSLT/XPath-functies

XQuery- functies


XQuery 1.0, XPath 2.0 en XSLT 2.0 delen dezelfde functiebibliotheek.


XQuery-functies

XQuery is gebouwd op XPath-expressies. XQuery 1.0 en XPath 2.0 delen hetzelfde datamodel en ondersteunen dezelfde functies en operators.

XPath-operators

XPath-functies

U kunt ook uw eigen functies definiëren in XQuery.


XQuery-gegevenstypen

XQuery deelt dezelfde gegevenstypen als XML Schema 1.0 (XSD).

XSD-string

XSD-datum

XSD Numeriek

XSD Diversen


Voorbeelden van functie-aanroepen

Een aanroep van een functie kan verschijnen waar een uitdrukking kan verschijnen. Kijk naar de voorbeelden hieronder:

Voorbeeld 1: In een element

<name>{upper-case($booktitle)}</name>

Voorbeeld 2: In het predikaat van een paduitdrukking

doc("books.xml")/bookstore/book[substring(title,1,5)='Harry']

Voorbeeld 3: In een let-clausule

let $name := (substring($booktitle,1,4))


Door de gebruiker gedefinieerde functies van XQuery

Als u de XQuery-functie die u nodig hebt niet kunt vinden, kunt u deze zelf schrijven.

Door de gebruiker gedefinieerde functies kunnen in de query of in een aparte bibliotheek worden gedefinieerd.

Syntaxis

declare function prefix:function_name($parameter as datatype)
as returnDatatype
{
 ...function code here...
};

Opmerkingen over door de gebruiker gedefinieerde functies:

  • Gebruik het sleutelwoord declare function
  • De naam van de functie moet worden voorafgegaan
  • Het datatype van de parameters is grotendeels hetzelfde als de datatypes gedefinieerd in XML Schema
  • De hoofdtekst van de functie moet worden omgeven door accolades

Voorbeeld van een door de gebruiker gedefinieerde functie gedeclareerd in de query

declare function local:minPrice($p as xs:decimal?,$d as xs:decimal?)
as xs:decimal?
{
let $disc := ($p * $d) div 100
return ($p - $disc)
};

Below is an example of how to call the function above:

<minPrice>{local:minPrice($book/price,$book/discount)}</minPrice>