It seems like the most sensible approach here is that
advocated by Oliver and Lucian (and maybe Stefan in his last
msg?), wherein libSBML has two types of methods in certain
situations where the need arises: (a) ones that produce SBML
that has defaults filled in and (b) ones that don't. Type
(a) methods would be simply conveniences added by libSBML.
Lucian's additional idea of adding XML comments is rather
clever:
<unit kind="mole" exponent="1" scale="0" multiplier="1" />
<!-- Note: values for elements 'exponent', 'scale', and 'multiplier'
were provided by libSBML and not by the user. To prevent this
message from appearing, these elements need to be set explicitly -->