- 1、本文档共9页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
下载
第11章 Or和N-ary关系
有几种复杂的关系在建模和实现时需要仔细地考虑。这些关系包括 O r关系和N - a r y 关系。
本章将讨论这几种关系。
11.1 Or关系
采用U M L 数据建模方法时经常会遇到这样的情况,两个关系中要么这个正确,要么另外
一个正确,而不可能两个都适合。例如,某个合同(C o n t r a c t )可以被某个组织(O rg a n i z a t i o n )
或个人(P e r s o n )接受,但是不可能同时被二者接受。这种关系的建模如图 11 - 1所示。
图11-1 Or关系的表示A
在本例中,图式表明一个合同只可能在个人与个人、组织与组织之间以及个人与组织之
间。如果我们要指定合同只能是单方面的约定,则如图 11 - 2所示。如果图中没有点线,则意
味着合同必须同时与个人和组织相关。在 P e r s o n和O rg a n i z a t i o n边上的“ 1”所指定的基数和虚
线一起表明了合同要么与个人相关,要么与组织相关。
图11-2 Or关系的表示B
这是E R D 比U M L 效果好的为数不多的地方之一。在一个很大的、复杂的图式中,类相隔
的很远,虚线将靠近合同。但是判断 O r关系是否需要一个值的唯一方法是 P e r s o n 和
O rg a n i z a t i o n边上的基数线。在E R D 中,边放在可选-强制关系出现的地方,并且易于看明白。
在采用 O r 结构的时候, O r 上所有关系的基数必须与虚线另外一端的基数和相同。在
C o n t r a c t这边,基数可以不同。虽没看到出现这种情况的实例,但是在逻辑上是可能的。例如,
第11章 Or和N-ary关系计计155
下载
可以只为P e r s o n创建一个规则,允许最多有 1 0个合同,但是对组织却不做这样的约束。本例
中,P e r s o n / O rg a n i z a t i o n关系中C o n t r a c t这边的基数将是0 . . 1 0 ,而O rg a n i z a t i o n / C o n t r a c t关系的
基数保持不变,还是 * 。更精确一点,只有P e r s o n / O rg a n i z a t i o n边的基数才必须相同。如果在
一个关系上允许 0 ,则两个关系都必须允许 0 ,否则,关系对就没有任何意义了。建模中经常
会用到O r关系,在一个具有 1 0 0 ~ 2 0 0个类的企业级数据模型中,可能存在 2 ~ 1 0个O r关系。
通过使用概化( U M L )或者子类型(E R D ),O r关系通常都可以不使用。概化将在第 1 4
章讨论。
11.2 N-ary关系
少数时候可能会在三个或者更多类之间使用单个联系。在这种情况下,单独的表示这种
关系有时是有用的。例如,自动保险政策( Insurance Policy )用U M L至少可以有两种表示方
式,这两种语法都是可行的。问题是你是否想反映保险政策是图 11 - 3 中P e r s o n 、C a r 和
C o v e r a g e之间关系的结果,或者用别的更好的方法来表示。
图11-3 三个类之间联系的U M L表示
这个关系也可以采用N - a r y 关系重新表示,如图 11 - 4所示。
本例中,没有理由要使用N - a r y 关系。编写本书的时候,我们还没有找到一个 N - a r y 关系显
然比其他关系更为清楚的例子。
图11-4 N-ary关系的U M L表示
11.3 其他联系关系
连接两个关系的虚线表明只使用其中一个关系。即使是限制关系,也需要采用大括号
您可能关注的文档
- NUTRITIONMANAGEMENT.PDF
- NutsandBoltsofTeaching,Observing,andTutoring.ppt
- nux的嵌入式高速SAR数据存储技术.PDF
- NVR8908B-Q(VGA).PDF
- NXT编程指南入门.pdf
- NX设计软件概述.pdf
- NYUSchoolofProfessionalStudies.PDF
- NyxNetworkResiliencyvia.PDF
- N间ociationd'achats-Niveau2.PDF
- Object-OrientedProgramminginJava.ppt
- 2022内科主治考试真题及答案5篇.pdf
- 2022年上海造价工程师考试真题卷二.pdf
- 2022小学学生寒假双减作业设计清单方案(详细版).pdf
- 2022年中考道德与法治二轮复习:守望精神家园 专项测试卷(部编版,含答案).pdf
- 2022年襄阳职业技术学院公共课《思想道德基础与法律修养》科目期末试卷A(有答案).pdf
- 2022年新疆师范大学计算机科学与技术专业《数据结构与算法》科目期末试卷A(有答案).pdf
- 2022年湖南冶金职业技术学院公共课《马克思主义基本原理概论》期末试卷A(有答案).pdf
- 2022信息科技课程标准解读心得体会(通用5篇).pdf
- PEP人教小学英语六年级上册单元检测试题附答案(全册).pdf
- 2022年安全生产法及相关法律知识.pdf
文档评论(0)