提问人:Shahriar 提问时间:11/10/2023 更新时间:11/12/2023 访问量:20
EERD 中的全不相交与 U 型
Total Disjoint vs U-type in EERD
问:
这两者有什么区别?我在扩展的 ERD 中看到它们,但我对有什么区别感到困惑。我把两者都读作“车辆要么是汽车,要么是卡车”。U 型(类别)是显示完全脱节的另一种方式,还是使用一种比另一种更有利?
我在网上找到的唯一一件事是:如果超类具有许多共同属性,请选择层次结构表示形式
答:
0赞
Christophe
11/12/2023
#1
有几种不同的 EERD 格式。你所描述的那个,而不是使用简单的 IsA 专业化,肯定不是最常用的:
- U 代表联盟。这意味着将超类和 .换言之,车辆的每个实例都是 Truck 的一个实例或 Car 的一个实例,或者两者兼而有之。这个逻辑是基于集合论的,因为实体对应于集合。
Vehicle
Truck
Car
- D 代表 脱节。这意味着 Vehicle 类可以专门化为 a 或 a,但实例必须是其中之一(同一 D 下的子类之间没有重叠)。事实上,当将更传统的 IsA 与多个类一起使用时,会导致歧义,即子类的元素是否可以两者兼而有之,或者它们是否互斥。
Truck
Car
您的示例将相同的配方应用于两种不同的情况。由于差异非常微妙,因此无助于理解。在第一种情况下,Vehicle 只是 Truck of Car 的同义词,它们独立于 Vehicle 定义。在第二种情况下,卡车和汽车被定义为车辆的专业化。车辆可以容纳一个由其所有专业继承的公共部件。
评论