如何通过公共API合同更好地组织XML数据中任意类型的存储?

时间:2019-07-05 13:25:35

标签: xml api

我设计了带有XML格式数据的公共API。在返回API的XML对象中,存在具有任意类型的字段。如何组织数据存储,以使集成商在实现API时尽可能减少问题?最重要的是,恐怕添加新的任意类型会破坏数据协定,并且我想保持向后兼容性。

示例_1:

<Data>
    <Value xsi:type="A">
        <Desc>description<Desc/>
    <Value/>
    <Value xsi:type="B">
        <Index>1</Index>
        <Count>2</Count>
    </Value>
</Data>

Example_2:

<Data>
    <Value xsi:type="A">
        <Desc>description<Desc/>
    <Value/>
    <Value xsi:type="B">
        <Index>1</Index>
        <Count>2</Count>
    </Value>
    <Value xsi:type="C">
        <Name>Alex</Name>
    </Value>
</Data>

以这种方式延长合同是正常的做法吗? (Example_1-> Example_2)

1 个答案:

答案 0 :(得分:0)

xsi:type="B"

这是合同的严重并发症,为了简化,用简单的{string-string} []字典替换任意类型

相关问题