Autor Zpráva
Misa
Profil *
Dobrý den,

mám problém se zpracováním XML z úřadu práce.

XML začíná takto:
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="volnamista.xsl" ?>
<VOLNAMISTA xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://portal.mpsv.cz/xml/exportvm" xsi:schemaLocation="http://portal.mpsv.cz/xml/exportvm http://portal.mpsv.cz/xml/exportvm/volnamista-2-0.xsd"; aktualizace="2010-06-25T00:59:18" verze="2.0" detailvm="http://portal.mpsv.cz/vm/">
<VOLNEMISTO id="145000000166937" ref="PIA166937U" uid="1845850734" dlouhoNeobsazeny="N" celkemVm="1" zmena="2010-06-16T05:51:06" jakKontaktovat="1" autor="1">
<PROFESE />
...
</VOLNEMISTO>
<VOLNEMISTO>...</VOLNEMISTO>

Při zpracování využívám XPathNavigator
Dim document As New XPathDocument(readStream)
Dim nav As XPathNavigator = document.CreateNavigator

pro k prochazení uzlů používám
For Each node As XPathNavigator In nav.Select("//VOLNEMISTO")

Problém je v tom, že mi nechce najít VOLNEMISTO a ihned z For Eache vyskočí

Problém dělá hlavním prvek VOLNAMISTA a xmlns="http://portal.mpsv.cz/xml/exportvm", pokud smažu hodnotu v uvozovkách a nechám je prázdné tak mi to For Each v pořádku projde, ale stačí abych v uvozovkách nechala mezeru či zadala jakokoliv jinou hodnotu tak mi z cyklu vyskočí.

Děkuji za pomoc.
Joker
Profil
Misa:
XPath to nenajde, protože tam nemáte namespace. XPath cesta k tomu prvku není "//volnemisto", ale "//xsi:volnemisto" a ještě předtím musíte definovat namespace xsi.


Tenhle příklad na MSDN by měl obsahovat vše potřebné, jak na to.
Misa
Profil *
Dobrý den,

děkuji za radu. Navedlo mě to na to co přesně potřebuji. Našla jsem sice v C#, ale presně to co jsem potřebovala. Přikládám odkaz, kdyby měl někdo jiný stejný problém. http://support.microsoft.com/kb/318545/cs

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0