xml-rpc multiple values

pilot

Как-то не нашел Гуглом, в каких языках XML-RPC умеет понимать несколько возвращаемых из функции значений. (А вообще есть в которых не умеет — из распространенных, и что при этом происходит?).
Мне понятно только про Python и Lisp. А что в Java, C и проч?

garikus

Несколько возвращаемых значений интерпретируются как массив, разве нет?

pilot

В Lisp есть отдельная конструкция. В python в принципе "да". В C не знаю что будет. Если массив, то хорошо.

vall

тебе не кажется что это немного зависит от реализации в конкретном языке?

qsk78

Странный вопрос.
Это же все зависит от реализации. Для того же Perl'а их три штуки. По-моему во всех трех случаях упаковывается в <array>, т. к. по спецификации XML-RPC можно возвращать только один <param>.
Для Scheme я вообще сам писал реализацию, тоже упаковывал в <array>.

pilot

Очень даже кажется.
Так вопрос: "Во всех ли [общеупотребимых] реализациях для разных языков это будет корректно обработано?"
Есть ли пример когда не будет?

vall

для такой крохотной вещи как xml-rpc делать неполную реализацию стандарта смешно.
или ты что-то вне стандарта хочешь?

pilot

http://www.xmlrpc.com/spec — я почитал это и не нашел ничего про multiple values. Это не тот стандарт?

psm-home

Так что такое в твоем понимании multiple return values ?

<?xml version="1.0"?>
<methodResponse>
<params>
<param>
<value><string>South Dakota</string></value>
</param>
<param>
<value><string>Minnesota</string></value>
</param>
</params>
</methodResponse>

Такое что-то? Или array ?

pilot

Меня бы устроил такой XML. Но:
The body of the response is a single XML structure, a <methodResponse>, which can contain a single <params> which contains a single <param> which contains a single <value>.

psm-home

Я это читал, конечно. Поэтому и спросил "что такое в твоем понимании multiple return values?".

pilot

До меня дошло с n-ного раза.
в общем я_все_понял. Это и правда самые настоящие <array>. Просто я плохо соображаю. Спасибо большое всем за помощь.
Оставить комментарий
Имя или ник:
Комментарий: