A more general variation of the argument specificator o[\x] could be that
if the argument is not present, then the command \x is executed. Then \x
should be a command declared with \DeclareDocumentCommand, but the argument
specificator should have the corresponding o[\x] removed.

So, for example, in
  \DeclareDocumentCommand \Initial {o[\InitialNoLeading]mo[\InitialNoTrailing]}
  { \MakeInitial {#1}{#2}{#3} }
one should also have the declarations
  \DeclareDocumentCommand \InitialNoLeading {mo}
  \DeclareDocumentCommand \InitialNoTrailing {om}
where the ``o'' argument specificators can have new optional argument if so
needed.

  Hans Aberg
                  * Email: Hans Aberg <mailto:[log in to unmask]>
                  * Home Page: <http://www.matematik.su.se/~haberg/>
                  * AMS member listing: <http://www.ams.org/cml/>