xpath Zelfstudie                
            Aan de slag met xpath
        
        
            
    Zoeken…
Opmerkingen
XPath is een taal voor het adresseren van delen van een XML-document.
Het wordt gebruikt in XSLT en is een subset van XQuery. Bibliotheken zijn ook beschikbaar voor de meeste andere programmeertalen.
XPath is een internationale standaard met specificaties gepubliceerd door W3C:
- XPath 1.0: XML Path Language (XPath), versie 1.0
 - XPath 2.0: XML Path Language (XPath) 2.0 (tweede editie)
 - XPath 3.0: XML Path Language (XPath) 3.0
 
versies
| Versie | Publicatiedatum | 
|---|---|
| 1.0 | 1999/12/16 | 
| 2.0 | 2007-01-23 | 
| 3.0 | 2014/04/08 | 
| 3.1 (W3C Kandidaataanbeveling) | 2015/12/17 | 
Voorbeeld-XML (zonder naamruimten)
Hier is een aantal voorbeeld-XML waartegen XPaths kunnen worden geschreven:
<r>
  <e a="1"/>
  <f a="2" b="1">Text 1</f>
  <f/>
  <g>
    <i c="2">Text 2</i>
    Text 3
    <j>Text 4</j>
  </g>
</r>
        Selecteer tekst
Voor de voorbeeld-XML (zonder naamruimten):
Deze XPath,
/r/f/text()
 selecteert het tekstknooppunt met deze tekenreekswaarde:
"Text 1"
 En deze XPath,
string(/r/f)
  retourneert de tekenreekswaarde van f , die ook is: 
"Text 1"
        Selecteer een element
Voor de voorbeeld-XML (zonder naamruimten):
Deze XPath,
/r/e
 selecteert dit element:
<e a="1"/>
        Algemene HTML-bewerkingen
Als de invoer HTML DOM is
<html>
    <body>
        <a>link</a>
        <div class='container' id='divone'>
            <p class='common' id='enclosedone'>Element One</p>
            <p class='common' id='enclosedtwo'>Element Two</p>
        </div>
    </body>
</html>
 Zoek een element met een specifiek ID op de hele pagina
//*[@id='divone'] # Returns <div class='container' id='divone'>
 Zoek een element met een specifieke id in een bepaald pad
/html/body/div/p[@id='enclosedone'] # Returns <p class='common' id='enclosedone'>Element One</p>
 Selecteer een element met een bepaalde ID & klasse
//p[@id='enclosedone' and @class='common'] # Returns <p class='common' id='enclosedone'>Element One</p>
 Selecteer de tekst van een bepaald element
//*[@id='enclosedone']/text() # Returns Element One
        Xpaths testen in browserconsole
Een snelle manier om uw xpath te testen is in de console van uw browserontwikkelaarstool.
Formaat is
   $x('//insert xpath here')
 $ - geeft aan dat het een selector is.
x - geeft aan dat het xpaths gebruikt
Voorbeeld:
$x("//button[text() ='Submit']")
 Wanneer deze opdracht wordt ingevoerd, retourneert deze alle elementen die knoppen zijn met tekst gelijk aan Verzenden.