Zdrojový soubor

<book>
    
<chapter id="1">
        
<para id="1a">text content1</para>
        
<para id="1b"> text content2 </para>
        
<para id="1c">   text    content3</para>
        
</chapter>
    
<chapter xmlns="http://my.ns.com/1" xmlns:ns3="http://my.ns.com/3" id="2">
        
<para id="2a">123</para>
        
<para xmlns="http://my.ns.com/2" id="2b">456.789</para>
        
<ns3:para id="2c">456.789</ns3:para>
        
</chapter>
</book>

Aplikace jednotlivých řetězcových funkcí (XPath 2.0)

Nezávislých na kontextu

Funkce jsou aplikovány na konstanty, proto výsledek nezávisí na kontextu.
FunkceVýsledek
substring('Ahoj Nazdar Čau', 6, 3)Naz
substring-before('Ahoj Nazdar Čau', 'Nazdar')Ahoj
substring-after('Ahoj Nazdar Čau', 'Nazdar') Čau
translate('Ahoj Nazdar Čau', 'NČ', 'nč')Ahoj nazdar čau
lower-case('Ahoj Nazdar Čau')ahoj nazdar čau
upper-case('Ahoj Nazdar Čau')AHOJ NAZDAR ČAU
string-pad('Ahoj ', 3)Ahoj Ahoj Ahoj

Závislých na kontextu

Funkce jsou aplikovány na obsahy elementů, proto výsledek závisí na kontextu.
Název elementustring(.)normalize-space(.)string-length(.)starts-with(., 'text')concat(para[2], para[3])contains(., 't cont')name(.)local-name(.)namespace-uri(.)generate-id(.)
book/ text content1 text content2 text content3 123 456.789 456.789 text content1 text content2 text content3 123 456.789 456.789133falsetruebookbookd0e1
chapter/1 text content1 text content2 text content3 text content1 text content2 text content376false text content2 text content3truechapterchapterd0e3
para/1atext content1text content113truetrueparaparad0e5
para/1b text content2 text content215falsetrueparaparad0e8
para/1c text content3text content319falsefalseparaparad0e11
chapter/2 123 456.789 456.789 123 456.789 456.78946falsefalsechapterchapterhttp://my.ns.com/1d0e15
para/2a1231233falsefalseparaparahttp://my.ns.com/1d0e17
para/2b456.789456.7897falsefalseparaparahttp://my.ns.com/2d0e20
ns3:para/2c456.789456.7897falsefalsens3:paraparahttp://my.ns.com/3d0e23