ВОПРОС ДЛЯ НОВИЧКА.
Я не так уж много работал с xml, во всяком случае, ничего подобного. У меня есть XML, как показано ниже, который я получаю, который имеет несколько пространств имен.
Мне нужно прочитать некоторые значения, а затем обновить другие, прежде чем возвращать исправленный XML с неповрежденными пространствами имен - не хочу, чтобы они удалялись.
Мне дан путь к некоторым из таких элементов, как этот cred/sub/aa
или trip/items/item[0]/customerInfo/custName
.
Но кажется, что пространства имен так просто затрудняют доступ к этим элементам.
Кто-нибудь знает, как я могу прочитать некоторые значения вроде NON-SMOKING
из custPref
или получить значение CABBAGE
из bossman/zz
.
Кроме того, я хочу иметь возможность установить такое значение, как custName
, чтобы сказать Mr. X
.
Любые идеи?
Спасибо.
<?xml version="1.0" encoding="utf-16" ?>
<A1 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<cred xmlns="https://blah-blah.com/?foobar">
<sub>
<aa>Zippo</aa>
<bb>lighter</bb>
</sub>
<reqId>
<cc></cc>
<dateOfBirth></dateOfBirth>
</reqId>
</cred>
<reqName xmlns="http://blah-blah/vader/base">qwerty</reqName>
<reqId xmlns="http://blah-blah/vader/base">12345</reqId>
<machine xmlns="http://blah-blah/vader/base">
<qqq>hello</qqq>
<www>goodbye</www>
<eee>99999</eee>
<rrr>88888</rrr>
</machine>
<monkey xmlns="http://blah-blah/vader/base">alskdjfhg</monkey>
<math xmlns="http://blah-blah/vader/base">
<language></language>
</math>
<trip xmlns="http://blah-blah/simple">
<tripOverview xmlns="http://blah-blah/vader/base">
<description></description>
<cost></cost>
</tripOverview>
<bossman xmlns="http://blah-blah/vader/base">
<zz>CABBAGE</zz>
<yy>BANANA</yy>
<xx>MELON</xx>
<ww>SYRUP</ww>
</bossman>
<items>
<item>
<itemSummary xmlns="http://blah-blah/vader/base">
<description></description>
<cost></cost>
<reference></reference>
</itemSummary>
<customerInfo xmlns="http://blah-blah/vader/base">
<custName></custName>
<custPref>NON-SMOKING</custPref>
</customerInfo>
<seatId xmlns="http://blah-blah/vader/base">1</seatId>
</item>
</items>
</trip>
</A1>