跳转至
For the complete DHIS2 documentation index, see llms.txt.

关系模型

关系表示跟踪器模型中两个实体之间的链接。关系被视为DHIS2中的数据,并且基于关系类型,类似于被跟踪实体实例基于被跟踪实体类型的方式。

关系始终包括两个实体,并且这些实体可以包括“跟踪的实体实例”,“注册”和“事件”,以及这些的任意组合。请注意,当前应用程序中并非所有这些组合都可用。

另外,关系可以定义为单向或双向。 唯一的功能差异是当前这些功能需要不同的级别 创建的权限。单向关系要求用户拥有数据 对“从”实体的写访问和对“至”实体的数据读访问, 双向关系需要双方的数据写访问权限。

关系类型

关系类型是关系具有的属性的定义。 关系始终包含两个方面,分别称为“从”和“到”,以及 每边可以包含哪些实体由关系确定 类型。确定每个属性可以包含的属性称为 约束,分别来自fromConstraint和toConstraint。这些约束是 在以后处理数据时很重要,以了解之间的关系 可以也不能包含。

关系类型中定义的每个约束都包含几个 属性。主要属性是关系实体,它决定什么 关系可以包含的一种实体。实体可以是 每个约束如下:

  • 跟踪实体实例
  • 注册
  • 事件

根据您选择的关系实体的类型,可以选择 每个约束的其他限制。下表说明了 您可以配置不同的组合:

跟踪实体实例 注册 事件
追踪实体类型 需要 可选的 --
程序 -- 需要 --
程序阶段 -- 需要 可选的

这些额外的限制要求实体匹配限制 在创建之前进行设置。例如,如果您的关系是 母亲和孩子,两个约束都将具有所需的跟踪实体 将类型设置为“人”,并且可以选择将“入学率”设置为“孕产妇健康” 程序和子程序。这样,仅跟踪实体实例 属于“人”类型并且已注册所需程序的人员 被包括在这些关系中。

除了关系类型可以具有的约束外,每个关系 可以设置为双向,真或假。如果该属性设置为false,则 关系被视为单向的。如前所述,唯一 这些关系之间的功能差异是访问的严格程度 创建或更新它们时-双向是最严格的。人际关系 根据关系是否在UI中呈现不同 是双向或单向的。

关于双向关系要注意的一件事是 “从”和“到”两面在数据库中仍然很重要,这意味着每个实体 必须匹配该侧的约束。但是,从用户角度来看, 在每个方面,每个实体的存储都是无关紧要的。