In the 2016 Base QRDA-1 HL7 IG (i.e. "HL7 CDA® R2 Implementation Guide: Quality Reporting Document Architecture Category I (QRDA I); Release 1, DSTU Release 3 - US Realm, Draft Standard for Trial Use, Volume 2 - Templates and Supporting Material, June 2015") there are these constraints:
a. If setId is present versionNumber SHALL be present (CONF:1098-6380).
a. If versionNumber is present setId SHALL be present (CONF:1098-6387).
However, in the ESAC Schematron rules there is only an assertion for CONF:1098-6387 and it has been deliberatly disabled. Here is that assertion:
<sch:assert id="a-1182-28382-c" test="not(tested_here)">If versionNumber is present setId SHALL be present (CONF:1098-6387).</sch:assert>
Note that the 'test' is "not(tested_here)".
Both of these constraints need to be enforced and neither are.