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

XPath- voorbeelden


Laten we proberen wat basis XPath-syntaxis te leren door naar enkele voorbeelden te kijken.


Het XML-voorbeelddocument

We zullen het volgende XML-document gebruiken in de onderstaande voorbeelden.

"boeken.xml":

<?xml version="1.0" encoding="UTF-8"?>

<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>

Bekijk het bestand "books.xml" in uw browser .



Het XML-document laden

Het gebruik van een XMLHttpRequest-object om XML-documenten te laden wordt ondersteund in alle moderne browsers.

var xmlhttp = new XMLHttpRequest();

Code voor oudere browsers (IE5 en IE6) is te vinden in de AJAX tutorial.


Knooppunten selecteren

Helaas zijn er verschillende manieren om met XPath om te gaan in verschillende browsers.

Chrome, Firefox, Edge, Opera en Safari gebruiken de methode evaluatie() om knooppunten te selecteren:

xmlDoc.evaluate(xpath, xmlDoc, null, XPathResult.ANY_TYPE,null);

Internet Explorer gebruikt de methode selectNodes() om het knooppunt te selecteren:

xmlDoc.selectNodes(xpath);

In onze voorbeelden hebben we code opgenomen die zou moeten werken met de meeste grote browsers.


Selecteer alle titels

In het volgende voorbeeld worden alle titelknooppunten geselecteerd:

Voorbeeld

/bookstore/book/title

Selecteer de titel van het eerste boek

In het volgende voorbeeld wordt de titel van het eerste boekknooppunt onder het boekwinkelelement geselecteerd:

Voorbeeld

/bookstore/book[1]/title

Selecteer alle prijzen

In het volgende voorbeeld wordt de tekst van alle prijsknooppunten geselecteerd:

Voorbeeld

/bookstore/book/price[text()]

Selecteer prijsknooppunten met prijs>35

In het volgende voorbeeld worden alle prijsknooppunten geselecteerd met een prijs hoger dan 35:

Voorbeeld

/bookstore/book[price>35]/price

Selecteer titelknooppunten met prijs>35

In het volgende voorbeeld worden alle titelknooppunten geselecteerd met een prijs hoger dan 35:

Voorbeeld

/bookstore/book[price>35]/title