Ok, kao prvo, imas gresku sa <zoran:supruga> tagom, zatvaras ga sa <zoran:mentor> sto nije ispravno, svaki tag mora da se zatvori istim takvim tagom.
Drugo, namsepaceovi ne mogu da se deklarisu u headeru XML filea, tj u <?xml>. Prvo mesto na kome mozes da deklarises namespace je root element.
Dakle:
Code:
<?xml version="1.0"?>
<zoran:knjiga xmlns:zoran="http://www.zoran.com">
<zoran:naslov>Postajanje nepostojeceg</zoran:naslov>
<zoran:poglavlje1>Uvod</zoran:poglavlje1>
<zoran:poglavlje2>Postojanost</zoran:poglavlje2>
<zoran:poglavlje3>Nepostojanost</zoran:poglavlje3>
<zoran:poglavlje4>Zakljucak</zoran:poglavlje4>
<zoran:autor>Zoran Milosevic</zoran:autor>
<zoran:supruga zvanje="doc.dr">Dragana Milosevic</zoran:supruga>
</zoran:knjiga>
Jedna primedba, posto koristis samo jedan namespace, nemas potrebe za prefixima, mozes da iskoristis taj namespace kao default, a on se "nasledjuje" kroz pod tagove, i tako ce ti svi tagovi biti pod tim namespaceom:
Code:
<?xml version="1.0"?>
<knjiga xmlns="http://www.zoran.com">
<naslov>Postajanje nepostojeceg</naslov>
<poglavlje1>Uvod</poglavlje1>
<poglavlje2>Postojanost</poglavlje2>
<poglavlje3>Nepostojanost</poglavlje3>
<poglavlje4>Zakljucak</poglavlje4>
<autor>Zoran Milosevic</autor>
<supruga zvanje="doc.dr">Dragana Milosevic</supruga>
</knjiga>
Jos jedna primedba, ako koristis "objekat" na vise mesta u xml fajlu, gledaj da ih uniformises radi kasnijeg lakseg pretazivanja kroz xpath. Npr, nemoj da stavis poglavlje1, poglavlje2 itd, nego napravi podtag i koristis poglavlje sa atributom:
Code:
<?xml version="1.0"?>
<knjiga xmlns="http://www.zoran.com">
<naslov>Postajanje nepostojeceg</naslov>
<poglavlja>
<poglavlje broj="1">Uvod</poglavlje>
<poglavlje broj="2">Postojanost</poglavlje>
<poglavlje broj="3">Nepostojanost</poglavlje>
<poglavlje broj="4">Zakljucak</poglavlje>
</poglavlja>
<autor>Zoran Milosevic</autor>
<supruga zvanje="doc.dr">Dragana Milosevic</supruga>
</knjiga>
Sad mozes da iskoristis xpath
/knjiga/poglavlja/poglavlje da izvuces sva poglavlja knjige, a
/knjiga/poglavlja/poglavlje[@broj='3'] da izvuces trece poglavlje. Znaci, ne koristi imena tagova i atributa kao iteratore, nego za te svrhe koristi vrednosti istih, i zivot ce ti biti mnogo laksi kad dodjes do XPath-a i transformacija.