Composite Family Deep Dive
selection containers, peer groups, fixed aggregates, recursive trees, and paging companions
Dark SVG source uses the VMx architecture palette and keeps arrows behind masked component boxes.
Choosing a container
- Use CompositeVM when a current child matters.
- Use GroupVM when children are peers and selection would be misleading.
- Use AggregateVM when slots are heterogeneous and fixed at compile time.
Recursive vs paged
- HierarchicalVM is the tree primitive because it carries structural metadata and mutation messages.
- PagedComposition and TokenPagedComposition are companion views over an existing source, not alternate container bases.
- Search/filter is idiomatically applied before finite paging.
Docs emphasis
- This diagram is the bridge between the family map and the Notes Workspace example.
- It explains why the framework kept several focused container types instead of flattening them.
- It also answers the common question about where paging belongs in the architecture.