我正在开发一个开放的“协议”,用于使用移动电话的动态乘车服务。 它基于XML-RPC并使用编组对象作为参数(非常像Soap)。是基于现有协议的协议还是协议?
草稿中将详细记录每个实体和操作。例如,看看在协议中使用的Prefs对象的第一个骨架。
偏好设置对象
存储由谁创造它的人设置了旅行的喜好[..]
Attribute Type Requirement
age string MAY
nonsmoking boolean MAY
gender string MAY
drive boolean MAY
ride boolean MAY
- 即使偏好设置对象的所有属性都是可选,在进行XML-RPC调用时必须提供Prefs类型的对象。在零情况下属性提供,一个空的XML-RPC结构一个空对象representend必须被提供
- 性别MUST是任何值{ 'M', 'F', 'B' 的},意为 '男', '女' 或 '两者'
以下是在协议操作中使用的一个有效的偏好设置对象:
<struct>
<member>
<name>nonsmoking</name>
<value>
<boolean>0</boolean>
</value>
</member>
<member>
<name>gender</name>
<value>
<string/>
</value>
</member>
<member>
<name>ride</name>
<value>
<boolean>0</boolean>
</value>
</member>
<member>
<name>drive</name>
<value>
<boolean>0</boolean>
</value>
</member>
<member>
<name>age</name>
<value>
<string>18-40</string>
</value>
</member>
</struct>
使用Prefs对象的操作将具有包含所有细节的HTTP POST操作的完整描述。
您会称这一个为Protocol还是API?也就是说,如果我们编写一个基于另一个协议(在本例中是XML-RPC)的协议,衍生作品又是一个协议?
我想知道,因为我将在我的学士论文谈到这一点,我不想说一些很愚蠢的:)
谢谢!
非常感谢您的澄清! – dgraziotin 2010-07-22 12:59:13