I choose to use exposesNoNonSyntheticFields() instead of hasNonSyntheticFields() in order to stay consistent with the other methods. Changed the name of nonSyntheticFields in GroupOperation to idFields to make their purpose more clear.