space 图 - 对象可以有多个父对象吗?如何移动它们?有哪些包含选项?

space graph - can objects have multiple parents, how to move them, and what include options are there?

披露:这个在 msdn 上有点陈旧 您好,spacePaths=string[] 属性表明 space 对象可以有多个父对象。一个对象可以有多个路由。但是 space 只有一个父对象……是哪一个? "moving" 是通过简单地 运行 对具有不同父 ID 的 space 对象的 Patch 实现的图形中的对象吗? 是否有关于不同 api 的可用 "includes" 的文档?例如,如果您将 "fullpath" 添加到查询中,则包含 space 对象的 spacePaths 属性...有没有办法获得完整的对象模型 - 包含的默认值通常是none。 亲切的问候,格雷戈尔

space被表示为一棵树,因此每个space只能有0个或1个parent。您可以通过更改其 parentSpaceId 属性来移动 space,但是当它具有值时,apparently 您无法删除它...错误或设计?

在我当前的测试数字孪生中,spacePaths 属性始终只包含 1 个项目,正如我所期望的那样。在树中放置多个 parent 对我来说没有意义。我也没有找到任何相关文件,也许什么时候会正式发布?它是一个数组这一事实确实令人费解。

抱歉帮不上什么忙。

干杯, 弗雷德

目前它是通过父 Space ID 的树。我们正在内部讨论如何最好地支持多对多关系,同时保持拓扑结构的简单性。与此同时,我们确实看到树为开发人员启用了许多核心场景,并且在某些情况下,我们看到人们通过使用可扩展属性来标记其他相关空间来围绕单亲关系构建。 extended types/ontologies 在创建 spaceObject 类型方面存在一般扩展拓扑的限制;我们正在寻求改进本体,并在 planning/requests 中牢记这一点。作为旁注,如果你想要求新的 features/concepts 我建议发帖到 feedback.azure.com: https://feedback.azure.com/forums/916621-azure-digital-twins 因为我们正在积极使用它来通知我们的场景:)

定义 "parents" 的可能选项之一,例如 "children" 来处理 space 的多个父代,而不是 parentSpaceId。或使用边缘有关系。应该有一种方法可以添加到 spaceID 的 Parents。

当然需要space的图形模型。

第一个问题(是树还是图):它是一棵树,有一些方法可以通过应用自定义属性来绕过单亲限制。

第二个问题(如何移动space个元素):space个元素可以通过使用新的parentSpaceId属性进行修补来移动。更改parentSpaceId权限时会相应调整。

第 3 个问题("includes" 选择是什么):include 有点棘手,但是研究它们的一个好方法是使用 swagger 文档和 "try" 不同的路由(对于实例获取:/api/v1.0/spaces)。那些 "includes" 是下拉菜单,它们填充了可用的选项。

避免回应其他答案:感谢 Fred 和 Bobbie 的见解。