We would like to have a way to describe composition links between resources and to have the same benefits on such linked resources as if they were values, namely be able to include them in the main resource's list of contributors as in #780.
Compounded resources are resources that have a composition link; the object of the link can not exist without the subject.
For example, a biography is a class composed of events, an event is a date and a place.
@benjamingeer and @subotic explained that exploring the graph is an exponential complexity, so adding a level to current one would be too expensive.
Flattening the graph
@benjamingeer fancied a way to flatten the graph and keep the complexity of exploring the compounded values by adding a redundant back link to the root resource:
This could be tried out to check if it is reactive enough.
@benjamingeer adds that maybe all the compounded resources could be changed in an atomic transaction by acquiring locks on resources in a deterministic order.
Compounded Resources
We would like to have a way to describe composition links between resources and to have the same benefits on such linked resources as if they were values, namely be able to include them in the main resource's list of contributors as in #780.
Compounded resources are resources that have a composition link; the object of the link can not exist without the subject.
For example, a biography is a class composed of events, an event is a date and a place.
Event
born
has no existence but inEinsteinBio
.Complexity
@benjamingeer and @subotic explained that exploring the graph is an exponential complexity, so adding a level to current one would be too expensive.
Flattening the graph
@benjamingeer fancied a way to flatten the graph and keep the complexity of exploring the compounded values by adding a redundant back link to the root resource:
This could be tried out to check if it is reactive enough.