Я создал HTTP-запрос с использованием rails и HTTParty, который выглядит следующим образом...
xml = "<Member><Telephone-group><Value><PhoneNumber></PhoneNumber></Value></Telephone-group></Member>"
DeleteNumber.post("http://url/path/members/" + msid + "?securityKey=securitykey", :query => {:newValues => xml})
Цель состоит в том, чтобы удалить существующий номер мобильного (сотового) телефона из базы данных, разместив пустую строку, которая отлично работает. Однако в XML-документе, который я публикую, часто встречается несколько типов телефонных номеров, включая домашний и рабочий номера. К сожалению, все они называются одинаково, как показано ниже...
<Telephone-group type="associated" writable="true">
<Value>
<PhoneNumber>01234567891</PhoneNumber>
<PhoneType>H</PhoneType>
<PhoneTypeDesc writable="false">Home</PhoneTypeDesc>
</Value>
<Value>
<PhoneNumber>07123456789</PhoneNumber>
<PhoneType>M</PhoneType>
<PhoneTypeDesc writable="false">Mobile</PhoneTypeDesc>
</Value>
</Telephone-group>
Как я могу указать, что он удаляет только номер мобильного телефона? Я знаю, как это сделать с помощью xpath, возможно, что-то вроде "(//phonenumber)[..//phonetype = "M"]", но я не знаю, как указать это с помощью параметр http-сообщения. Любая помощь очень ценится, большое спасибо!