Changes between Version 27 and Version 28 of openEHR XML-schemas - Release 1.0.1
- Timestamp:
- Aug 12, 2007, 1:21:32 AM (17 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
openEHR XML-schemas - Release 1.0.1
v27 v28 118 118 Multiple Inheritance 119 119 120 openEHRの参照モデルでは,多重継承を使っているところがいくつかある。すべての場合で,単一継承によるサブタイプで代替可能な関係(たとえば'is-a')ではあるが,機能の継承(たとえば'has-a')や多重継承が常に用いられることもある。参照モデルでは,rm.data_types.quantity.DV_INTERVALやrm.data_types.qualntity.date_timeクラスなどはこのような継承を使っている。 120 openEHRの参照モデルでは,多重継承を使っているところがいくつかある。すべての場合で,単一継承によるサブタイプで代替可能な関係(たとえば'is-a')ではあるが,機能の継承(たとえば'has-a')や多重継承が常に用いられることもある。参照モデルでは,rm.data_types.quantity.DV_INTERVALやrm.data_types.qualntity.date_timeクラスなどはこのような継承を使っている。後者ではインターフェースのみを継承してXMLスキーマでの透過性はない。ほかの(DATA_VALUEの)継承ではスキーマを処理するために可視化されていなければならないので,前者ではDV_INTERVAL<T>を使って直接包含することでInterval<T>を継承している。 121 121 122 122 There are a couple of places where multiple inheritance occurs in the openEHR reference model. In all cases, only one inheritance branch corresponds to subtyping in the substitutability (i.e. 'is-a') sense; the other branches are always 'facility' or 'mix-in' inheritance. In the RM, classes inheriting in this way include rm.data_types.quantity.DV_INTERVAL and the rm.data_types.quantity.date_time classes. The latter inherit only interface, which has no visibility in XML-schema. For the former, the inheritance of Interval<T> by DV_INTERVAL<T> is done in the schema simply by direct inclusion, since the other branch of inheritance (of DATA_VALUE) is the one which must be visible to schema processing.