JSON 基于链接数据的模式嵌套

JSON schema nesting based on linked data

我从链接数据平台中提取了数据集。 数据集如下所示:

label relationClass
Organization Department
Department Employee

我想基于此数据创建一个 JSON 架构,其中对象之间的层次结构是嵌套的。

层次结构的分解看起来像这样:

组织

最终解析应该导致 JSON 架构如下所示:

{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "organization": {
      "type": "object",
      "properties": {
        "department": {
          "type": "object",
          "properties": {
            "employee": {
              "type": "object"
            }
          }
        }
      }
    }
  }
}

有人可以提供实现此目标的最有效方法吗?

它看起来像一个经典的树结构。为了获得最佳性能,您将检查它一次并从中构建一个 tree/directed 图,然后按顺序递归遍历以将节点的所有子节点创建为对象。

搜索 'build tree from list of pairs' 得到以下 SO 问题和有效答案: