Huang,

Huang Kai wrote:
I mean that composite A has a component which uses composite B as
an implementation and that composite B has a component which uses
 composite A as an implementation .
I think this use case is fairly common, eg. [Employee] has a property refer to 
[Company] and [Company] has a property refer to it's [Employee]s. And when 
these two java components are in different composites, I'll have to define 
mutual referenced composite files above.


Aaargh - this is the case that I was worrying about.

OK - what you need to understand here is that using a composite to implement a component within a higher level composite is *NOT* a reference property.

Using something as an implementation is a STRUCTURAL relationship. It means that the implementation is "part of" the containing composite. Now if you view it that way, then it does *NOT* make sense for a Company to be "built from" employees and then for the employees to be "built from" a company. That is what your use case is like.

It's OK for a "Company" component to have a reference to an "Employee" component - but a reference is not the implementation of a component - it is a dependency that one component has on another.


Does that make sense?


Yours,  Mike.

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to