OpenApi是否有通用文件规范?

时间:2019-11-27 19:18:12

标签: json serialization yaml deserialization openapi

我注意到,您可以在其他声明的对象上使用$ref的这种形式的规范有点可用于许多用例的模式。

这个有名字吗?有图书馆吗?

对于可以将关系数据序列化为JSON / YAML文件并将其反序列化为内存中对象的情况,我认为这非常有用。

这是我所追求的一个例子:

我想序列化具有对其他对象的引用的此类。

class Node {
   Node next;
   Node prev;
}

它可以序列化为:

{
    "nodes": {
        "0": {
            "next": {
                "$ref": "#/nodes/1"
            }
        },
        "1": {
            "prev": {
                "$ref": "#/nodes/0"
            }
        }
    }
}

或者也许

{
    "next": {
        "prev": {
            "$ref": "#" // The root
        }
    }
}

从本质上讲,这是一种使用我所追求的Tree结构序列化类似Graph的数据的方法。

1 个答案:

答案 0 :(得分:0)

因此,看起来有些Json序列化程序确实支持此功能,它不是一个单独的规范-它是JSON规范中内置的功能。

请参见https://www.newtonsoft.com/json/help/html/PreserveObjectReferences.htm