langsmith:110
From: W <ttn3w7u2fs mx6.ttcn.ne.jp>
Date: Mon, 30 Aug 2004 22:29:08 +0900
Subject: [langsmith:110] Re: パターン支援言語? ご意見拝聴
Takuo Yonezawa wrote: >るとです。 > >個別の関係となると >author_bookとbook_authorのテーブル2つの整合性を取らなければならなくなり >ます。 >そのような制約はどのように表現するのでしょうか? > > > お返事遅くなりました。結論から言いますと、Author : Book = 多:多 でした。 一般的に言って Aggregate P, A, B; Aggregate Q, B, A; は P, Q に制約がない場合可能(*)ですが、Pの逆がQとなる著作関係, 共著関係 では成り立たないことを忘れておりました。 ご指摘ありがとうございますm(__)m。 // W (*) 一応補足として例を載せます。展開される C++ コードは: class A { B *P_first; A *Q_next; B *Q_parent; /* X */ }; class B { B *P_next; A *P_parent; A *Q_first; /* X */ }; 集合 A = (a1, a2, a3) B = (b1, b2, b3) に対して、 P: a1 -> (b1, b2) a2 -> (b3) Q: b1 -> (a1) b2 -> (a2, a3) は可能。著作、共著関係が併記できないのは P(著作関係): a1 -> (b1, b2) とした時点で自動的に関係 Q (共著関係) で b1 -> a1 b2 -> a1 という多:1 も成り立たなければならないが、定義で Q を 1:多 と してしまっているため。 ある a in A, b in B に対して P: a -> b が成り立っても、その逆 Q: b -> a が成り立つとは限りませんが、著作・共著の場合は成り立つのにそう定義しな かったので矛盾していた、ということでした。 -- ML: langsmith quickml.atdot.net 使い方: http://www.atdot.net/~ko1/quickml
96 2004-08-21 23:23 [ttn3w7u2fs mx6.ttcn.] パターン支援言語? ご意見拝聴 97 2004-08-22 13:13 ┗[takuo aya.or.jp ] 98 2004-08-22 22:34 ┗[ttn3w7u2fs mx6.ttcn.] 99 2004-08-23 10:12 ┗[takuo aya.or.jp ] 100 2004-08-23 22:47 ┗[ttn3w7u2fs mx6.ttcn.] 101 2004-08-23 23:29 ┣[eclipse cspc.jp ] 102 2004-08-24 22:38 ┃┗[ttn3w7u2fs mx6.ttcn.] 103 2004-08-25 00:11 ┃ ┣[eclipse cspc.jp ] 107 2004-08-25 11:27 ┃ ┗[shiro lava.net ] 108 2004-08-25 13:14 ┃ ┗[shiro lava.net ] 105 2004-08-25 00:30 ┗[takuo aya.or.jp ] -> 110 2004-08-30 22:29 ┗[ttn3w7u2fs mx6.ttcn.]