Users want a way to describe richer content models than is currently possible with the Fedora 3.1 DS-COMPOSITE-MODEL. One project that is beginning to address this is here:
https://fedora-commons.org/confluence/display/DEV/Fedora+Enhanced+Content+Models
However, Fedora's out-of-box DS-COMPOSITE-MODEL should also support cardinality and optional datastreams. e.g. max and min, with some datastream # naming convention.
The very restricted DS-COMPOSITE-MODEL datastream is an old Fedora problem. The fundamental problem is that DS-COM... was not made for content modelling. Rather, it was made for binding disseminators to datastreams in the CMA architecture.
Extending to optionals and cardinality, while maintaining the disseminator binding have proved hard. The recent introduction of RELS-INT, https://fedora-commons.org/jira/browse/FCREPO-441, could lead to an ontology-like description of datastreams, as rather ramblingly outlined in http://www.mail-archive.com/fedora-commons-developers@lists.sourceforge.net/msg00418.html