Generally is a command is missing, request it and typically it is added quickly.
But of course that means it is only as up-to-date as people using it.
Similar things happen for "montage", whcih also often 'misses' a command that 'convert' has.
The problem with MSL, and many other fixed API languages, is that often there are lots of settings that can effect a specific operation.
Rant mode enabled -- sorry I got carried away...
Take composite for example, it is effected by (just of the top of my head, but I believe it is complete)...
- compose - what type of composition
- geometry - offset of overlay image to destination image
- gravity - changes from where on the destination image the geometry offset is calculated
- Future: add justification or alignment - to say what part of the overlay image the offset applies to. This is currently linked to gravity at the moment, and without it limits image placement.
- compose:outside-overlay - a per-image artifact 'define' to determine how areas outside the compose area is effected (this equivalent to the SVG compose "clip-to-self" attribute, but inverted in sense)
- channel - what channels in an image are updated in mathematical compostion (if not the default)
- alpha blending switch - enable/disable SVG alpha blending, or individual channel math (built into channel, but likely to be different in IMv7)
- write mask - three image blended composition - actually a seperate 'image properity
in IMv7 we also have a read mask though for normal composition it is equivalent to write mask, but for blur mapping, it can have a major effect.
- compose:args - a define giving the extra arguments needed for blend, dissolve, watermark, and mathematics compose methods.
- fuzz factor - used by "change_mask" composition (for GIF animation frame optimization)
- Future: I would like to add virtual pixel to allow overlay tiling. That is tile the overlay image (according to the VP setting) so it always covers the whole destination image. The enable-disable would be part of the "compose:outside-overlay" to define how compose handles areas outside the overlay area.
Now would you expect ALL these settings to be included as part of the <composite...> MSL action?
It isn't just that operator either. All these settings (plus some color settings) is also used by operators that use composition as part of there defination... For example: -flatten, -mosaic, -layers merged, -layers composite, -border, -frame, and -extent.
And believe it or not Text to Image handling can be even worse with reages to the number of settings that effect its operation, and is also growing with time. Not just for the text aspect itself, but also for the 'drawing' aspects of the text rendering.
There is also a similar though relativity separate set associated with image drawing too, though it has its own 'language' (MVG) to handle that aspect.
Basically it is impossible to put EVERY setting into every operator. It is better to be ably to set most things globally (or on a per-image bases) to keep the general operation call simpler.
MSL is one way, Command line is another. Command line is actively being updated and used, MSL is not.
Because of this, even the PHP 'imagick' interface is no longer updating, and as such PHP programmers are typically doing command line calls for most image processing need.
That is why I want to get 'pipelined operations' and co-processing options added. It expands the activally updating CLI interface to allow eben better usage of the Magick Core Library, without needing to learn a API interface that seems to always be well behind the 'bleeding edge'.