'Should a complex aggregate in one bounded context be aggregate in another bounded context?

There are two bounded contexts Context1 and Statistics.

Context1 contains SomeEntity with complex structure SomeEntity 1---* EntitiesLevel1 1---* EntitiesLevel2

Simple versions (without some fields) of SomeEntity, EntitiesLevel1 and EntitiesLevel2 are needed in Statistics context because they are used in buidling of some graphs in this context.

When changes happen in entities EntitiesLevel1 or EntitiesLevel2 (through SomeEntity) in Context1, events are sent to Statistics context.

Should I update EntitiesLevel1 and EntitiesLevel2 in Statistics context throught SomeEntity (in another words, implement in Statistics context almost the same Aggregate as in Context1 but without some fields) or SomeEntity, EntitiesLevel1 and EntitiesLevel2 should be treated as just Value Objects which can be updated separetly without using Aggregate pattern?

I'm not sure because from one side SomeEntity, EntitiesLevel1 and EntitiesLevel2 still keep their hierarchy in Statistics context and because of that they can be updated only in way that Aggregate pattern defines, but from another side these Entity.* in Statistics context are used for graphs only and Statistics context cannot change them (only handlers of events from Context1)



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source