児玉さん
羽生田です.
児玉さんの言うように
わたしもパワータイプはベースクラスに対して相対的なものだと考えています.
ちょっと質問の表現が舌足らずで失礼いたしました.
今回,問題にしたかったのは,
児玉さんのモデルの「サービス」概念階層の表現形式の2重性です.
[サービス]クラスと[クリーニング]や[加工]クラスとの関係は汎化関係でモデル
化されていますよね.,
その一方で,ノートで言及しているように,[クリーニング]クラスと[ドライ:ク
リーニング]や[水洗い:クリーニング]の関係や[加工]クラスと[防水加工:加工]
や[防虫加工:加工]の関係はクラス-インスタンス関係でモデル化されています
ね.
この2番目のクラス-インスタンス関係は,微妙で誤解しやすいですが,汎化関係
の誤りではないでしょうか.つまり,防水加工も防虫加工も加工クラスのサブク
ラスとしたほうが,サービスと加工の汎化関係と整合的なのではないでしょうか
非常に微妙な違いといえますが,概念モデルやオントロジーを議論する場合,お
ろそかにはできない部分なので,ぜひ児玉さんの意見を聞かせてください.
別の例で示すと,
「自動車」クラスと「乗用車」クラスや「運搬車」クラスとの関係に汎化関係を
使っておきながら,
一方で,「乗用車」のインスタンスとして「スポーツカー:乗用車」,「運搬車」
のインスタンスとして「トラック:運搬車」とモデル化するようなものではない
でしょうか.これらは自然な概念分類の考え方からすると,やはり,スポーツカー
は乗用車のサブクラス,トラックは運搬車のサブクラスとすべきでは.
このように考えるか,整合性を重んじるのであれば,
「サービス」クラスのインスタンスとして,水洗いクリーニング,ドライクリー
ニング,防水加工,防虫加工を扱う,ようにするかのいずれかだと思います.
先のメールでわたしが,児玉さんのモデル中のサービスクラスはパワータイプだ
といったのはミスリーディングでしたが,このようにクラス-インスタンス階層
とスーパー-サブクラス階層が混じっていたので,そう思わざるを得なかった,
という面があります.
仮に水洗いクリーニング,ドライクリーニング,防水加工,防虫加工をそれぞれ
クラス扱い(*)すれば,サービスはそれらのスーパークラスといえますが,逆に
水洗いクリーニング,ドライクリーニング,防水加工,防虫加工をそれぞれオブ
ジェクトと考えれば,それらの属する「サービス種」クラスは先の「サービス」
クラスのパワータイプということになります.
今回はうまく伝わりましたでしょうか?
(*)前のメールでは,これらのクラスのインスタンスとは何か,を問題にした
かったのですが,うまく伝えられませんでしたので今回は無視します.
> >児玉さんのオブジェクト図を見ると,クリーニングクラスのインスタンス例とし
> >ては,ドライ:クリーニングや水洗い:クリーニングというオブジェクトが登場
> >していますから,これはどう見ても,やはり「クリーニング」クラスはパワータ
> >イプとしか考えられないのですが...
>
> ?パワータイプの意味がすれ違っているような気がします。
失礼しました.この箇所は書き間違いです.
やはり「クリーニング」クラスはパワータイプ
=>
やはり「サービス」クラスはパワータイプ
といいたかったのですが書き損じました.
「サービス種」クラスと呼んだ方がさらに誤解は減るとは思いますが.
以上です.