2009年 5月 1日 | 「技術編-27 null の除去」 を読む | >> 目次にもどる |
2018年 2月15日 補遺 |
TM では、サブセット を以下の 2つの クラス に分けています。
(1) 実質的 サブセット
「実質的 サブセット」 とは、セット を切断するための判断規準が 「区分 コード」 で明示されている サブセット 構成を云います。いっぽう、「形式的 サブセット」 とは、「区分 コード」 がないけれど、null が生じるので、null を除去するために構成される サブセット です。そして、「形式的 サブセット」 は、以下の 2つの構成の いずれかになります。
(1) 「共時的 (syncronique)」 [ 同時に併存する状態 ]
「赤本」 101ページ で例示した 「顧客」 は 「共時的」 な サブセット 構成ですが、同じ ページ の 「契約」 は 「通時的」 な サブセット 構成です。
なお、ウェブ の 或る ページ で、私 (佐藤正美) が、まるで、「null 撲滅旗手」 のように云われているそうですが、私は 「null に対して注意を向けるように提言している」 のであって、「null 撲滅」 などという意図は、さらさら、ない点を注意書きしておきます。null は、たとえば、「任意入力」 などのように、現実的に生じます。TM では、null を 「相違の サブセット」 で除去するようにしていますが、VE (みなし entity) [ 後日説明 ] を使って対応することもあります── undefined な null であれば 「相違の サブセット」 を使えばいいのですが、unknown な null であれば、一々 「相違の サブセット」 を構成したら記述が煩瑣になって かえって モデル が読みにくくなってしまうので、VE で対応するのが ふつう です。そして、null に対応するために VE として記述された項目──たいがいは、「任意入力」 の項目ですが──には、アトリビュート・リスト の 「制約・束縛」 欄において、「null が生じること」 を記入しておけばいい。もし、「任意入力」 の項目を派生もとの entity に戻して実装するのであれば、それでいいでしょう。ただし、その項目には 「不明 (unknown)」 な状態があることを明記しているので、null を対象にした演算をやらないように注意してほしい、ということです。単純に言えば、null は 「F-真」 の験証ができない、ということ。
□ |
[ 補遺 ] (2018年 2月15日)
取り立てて補足説明はいらないでしょう。 |
<< もどる | HOME | すすむ >> | |
目次にもどる |