Web服务API设计:XML元素与属性
发布时间:2020-12-14 18:59:15 所属栏目:资源 来源:网络整理
导读:这个问题在这里已经有一个答案: XML attribute vs XML element20个 我正在为一个Web服务设计一个API,我无法决定使用XML属性,元素或混合体系结构. 让我举个例子.我们假设我有一个名为Domain的对象.这个模型有3个属性(tld,sld,trd和name本身),一个方法有效?
|
这个问题在这里已经有一个答案:>
XML attribute vs XML element20个
我正在为一个Web服务设计一个API,我无法决定使用XML属性,元素或混合体系结构. 让我举个例子.我们假设我有一个名为Domain的对象.这个模型有3个属性(tld,sld,trd和name本身),一个方法有效?如果域有效,则返回true. # I'm using ruby but
# consider this as pseudo-code
class Domain
attr_accessor :tld,:sld,:trd,:name
def valid?
true # force true
end
end
我的api称为/ domain / parser在输入中接收一个域,并返回解析的响应.第一种可能性是为每个域属性使用一个元素. <result>
<domain>
<name>www.google.it</name>
<tld>it</tld>
...
<valid>true</true>
</domain>
</result>
但是一些接口使用属性. <result> <domain tld="it" sld="google.com" trd="www" rule="*.foo" name="www.google.it" valid="true" /> </result> 不要忘记属性和价值. <result>
<domain tld="it" sld="google.com" trd="www" rule="*.foo" name="www.google.it" valid="true">
www.google.it
</domain>
</result>
在你看来,哪个是更强大,灵活和富有表现力的选择?另外,考虑回应将以XML和JSON(很快)提供. 解决方法
我使用的模式是:
>元素用于数据 如果您使用XSD架构的最多(如果不是全部)您的元数据应该在那里,但如果你没有属性是它的好地方. 所以你的例子我可能会这样做: <result>
<domain valid="true">
<name>www.google.it</name>
<tld>it</tld>
...
</domain>
</result>
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
