code: private static ImmutableSet<RelationID> attributeOccurrencesUnion(QuotedID id,
                                                                        RAExpressionAttributes re1,
                                                                        RAExpressionAttributes re2) {
  
          ImmutableSet<RelationID> s1 = re1.attributeOccurrences.get(id);
          ImmutableSet<RelationID> s2 = re2.attributeOccurrences.get(id);
  
          if (s1 == null)
              return s2;
  
          if (s2 == null)
              return s1;
  
          return ImmutableSet.<RelationID>builder().addAll(s1).addAll(s2).build();
      }
docs: treats null values as empty sets
  
  @param id a {@link QuotedID}
  @param re1 a {@link RAExpressionAttributes}
  @param re2 a {@link RAExpressionAttributes}
  @return the union of occurrences of id in e1 and e2