Ha strukturált amiben keresni kell, akkor az megkönnyíti a dolgokat, nem megnehezíti.
Pl. <error modul="backup" time="2010.03.25 12:43:12" message="Fatal error!"> Sok soros leírás </error>
1) Tudja ezt, sőt jobban, mint a grep. Ebben könnyű keresni bármelyik adatra, és nem kell azt az adatát kiírni. Pont a grep-nél vannak nehézségek, ha megtalálsz valamit, akkor csak a környezetét tudod kiíratni. A grepnél az összefüggések leírása már nehézkes, ha az nem egy sorban van.
2) Könnyen contains fv. segítségével.
Pl. A fenti error-ban keresünk egy szöveget ('Fred') a "Sok soros leírásban", majd írassuk ki az időket:
//error[contains(text(),'Fred')]/@time
Ezt grep-pel mutasd meg légy szíves, hogyan csinálnád?