« 返回

Multiple Inheritance and Realization Approaches

組合檢視 平均檢視 瀏覽樹狀資料
相關串連 [ 前一個 | 下一個 ]
toggle
Multiple Inheritance and Realization Approaches
community class relation documentation
答覆
2014/3/27 上午 11:12
As ADOxx does not support direct multiple inheritance, this situation requires alternative implementation. The following realization proposal stem from the CIDOC-CRM project and are related to the implementation work done within the scope of the project.

The attached graphic describes the challenge of multiple inheritance from the ADOxx perspective.
附件

附件: MultipleInheritancec_Challenge.png (59.4k)

Implementation Proposal 1: Abstract Class as intermediate layer
答覆
2013/7/26 上午 10:38 作為回覆給Wilfrid Utz
The following realization proposal builds on adding an abstract class as an intermediate layer. Consider the following descibed steps, shown also graphically in the image attached. In addition a sample implementation is available in the attached package.

Sample Realisation of Solution 1: as attachment to this post


a) Abstract class is introduced to define all attributes necessary for the sub-class.
b) E has aRx and bR‘y, so it can be modelled. As bRy is semantically not the same as bR‘y, queries need to consider both (e.g. a union of bRy and bR‘y)
附件

附件: CIDOC_MultipleInheritance_Implementation-1_FINAL.zip (214.9k), MultipleInheritancec_Implementation1.png (55.5k)

ImplementationProposal 2a: Pointers as Relations
答覆
2013/7/26 上午 10:38 作為回覆給Wilfrid Utz
The following realization proposal builds on pointers as relations. Consider the following descibed steps, shown also graphically in the image attached. In addition a sample implementation is available in the attached package.

Sample Realisation of Solution 2a: as attachment to this post


a) Abstract class is introduced to define all attributes necessary for the sub-class.
b) E has aPx and bPy, so it can be modelled as pointer and can be queried by pointer name. For visual represenation of the pointer, additional drawing of generic relation is necessary. As pointers are instance attributes, the search needs to consider the query of instance attributes.
附件

附件: CIDOC_MultipleInheritance_Implementation-2a_FINAL.zip (219.8k), MultipleInheritancec_Implementation2a__.png (103.9k)

Implementation Proposal 2b: Pointers as Relations
答覆
2013/7/26 上午 10:38 作為回覆給Wilfrid Utz
The following realization proposal builds on pointers as relations. Consider the following descibed steps, shown also graphically in the image attached. In addition a sample implementation is available in the attached package.

Sample Realisation of solution 2b - Version 1: as attachment to this post
Sample Realisation of solution 2b - Version 2: as attachment to this post

a) Abstract class is introduced to define all attributes necessary for the sub-class.
b) New additional pointer is introduced.
c) E has aPx, bPy and ePy, so it can be modelled as pointer and can be queried by pointer name. For visual represenation of the pointer, additional drawing of generic relation is necessary. As pointers are instance attributes, the search needs to consider the query of instance attributes.
附件

附件: CIDOC_MultipleInheritance_Implementation-2b_1.1_FINAL.zip (223.8k), CIDOC_MultipleInheritance_Implementation-2b_FINAL.zip (221.7k), MultipleInheritancec_Implementation2b__.png (106.9k)

Implementation Proposal 3: Relation Type based resolution
答覆
2013/7/26 上午 10:38 作為回覆給Wilfrid Utz
The following realization proposal builds on relation type based resolution. Consider the sample implementation is available in the attached package.

Sample Realisation of Solution 3: as attachment to this post
附件

附件: CIDOC_MultipleInheritance_Implementation-3_FINAL.zip (215.1k), MultipleInheritancec_Implementation3_.png (69.2k)

Implementation Proposal 4: Script based resolution
答覆
2013/7/26 上午 10:39 作為回覆給Wilfrid Utz
The following realization proposal builds on a script-based resolution approach. Consider thesample implementation as available in the attached package.

Sample Realisation of Solution 4: as attachment to this post
附件

附件: CIDOC_MultipleInheritance_Implementation-4_FINAL.zip (231.2k), MultipleInheritancec_Implementation4_.png (103.3k)