@Override
 public Boolean caseAssignment(Assignment object) {
   if (GrammarUtil.isMultipleAssignment(object)) return Boolean.FALSE;
   checkAssignment(object, object.getFeature());
   if (GrammarUtil.isMultipleCardinality(object)) checkAssignment(object, object.getFeature());
   return Boolean.FALSE;
 }
 @Override
 public Boolean caseAction(Action object) {
   assignedFeatures = newMultimap();
   if (GrammarUtil.isMultipleAssignment(object)) return null;
   if (object.getFeature() == null) return Boolean.FALSE;
   checkAssignment(object, object.getFeature());
   return Boolean.FALSE;
 }