The <elementSpec> element bears a usage= attribute, whose possible
mwa (mandatory when applicable)
rwa (recommended when applicable)
No mention of what this attribute means or of how to use it occurs in
either the tagdoc or in the prose of 22.4.4.
Does it have any effect on a generated schema? I am not aware of any,
but I have not tested extensively. There is no GUI to this attribute
in Roma the web application.
When an element is permitted because of membership in a model class,
I don't think its usage= attribute *can* have an effect on the
resulting RELAX NG schema. (Or at least not without heroic effort on
the part of the ODD processor to do things we probably wouldn't want
it to do.)
It is probably possible to have an ODD processor look to see if any
members of a class that is referred to in an element's content has
usage="req", and in that case write out a Schematron rule. But that
may be a lot of work, and would have an impact on the phrasing of
conformance, too. (Which changes I strongly recommend, anyway.)
I don't think the information imparted by this attribute is used in
our current reference documentation, either.