<moduleRef> element supports pulling in a subset of the elements belonging to that module by means of the @except and @include attributes. Because it is limited to elements, this does not give the ODD user the ability to use this mechanism to exclude/include classes or macros (eg datatypes). This seems inconsistent.
The downside of regularizing this is that it means any ODD which currently uses the feature may have an unexpected, dramatic, and hard-to-diagnose change; if it currently says
<moduleRef key="moduleX" include="foo bar"/>, and moduleX includes some class definitions, the schema will include the classes. If we changed the semantics of @include, then the same ODD would no longer include those classes. The user of @except would be unaffected.
The argument in favour is transparency and consistency.