#12
General Strategy for Re-usable Schemata
You want to balance these against each other:
Re-usability
Composition
Complexity
Compactness
The "balancing decisions" should be made against your requirements and user community.