私の会社ではしばらくの間XML-RPCを使用していますが、最近、単純な XML と比較して XML-RPC の利点は何なのか疑問に思っています。まず、それは恐ろしい「肥満」です。
<struct>
<member>
<name>ROOM_ID</name>
<value>
<int>1</int>
</value>
</member>
<member>
<name>CODE</name>
<value>
<string>MR-101</string>
</value>
</member>
<member>
<name>NAME</name>
<value>
<string>Math Room</string>
</value>
</member>
<member>
<name>CAPACITY</name>
<value>
<int>30</int>
</value>
</member>
</struct>
これと比較して:
<room><ROOM_ID>1</ROOM_ID><CODE>MR-101</CODE>
<NAME>Math Room</NAME><CAPACITY>30</CAPACITY></room>
またはこれでも:
<room ROOM_ID=1 CODE=MR-101 NAME=”Math Room” CAPACITY=30 />
第二に、XML-RPC はかなり普及しているように見えますが、どこにでもあるわけではなく、C++ と PHP での XML-RPC のサポートにはあまり感銘を受けません。両方の言語で試したすべてのライブラリで問題が発生しました。
第 3 に、XML-RPC と同じくらい簡単にプレーンな XML を使用してリモート プロシージャ コールを作成できるように思えます。{(2009 年 9 月 9 日): どの言語にも、言語レベルのオブジェクトを XML にシリアル化するためのライブラリがあります。XML と XML-RPC の両方で、アプリケーション レベルのスキーマを定義する必要があります。たとえば、フィールドの綴り方などです。ただし、追加のスキーマを定義する必要はありません。多くの人がプレーンな XML で RPC 呼び出しを行っています。}
では、XML-RPC の付加価値とは何でしょうか?