Well it is another possibility, but I found I bit strange having a class which is simply a wrapper of a Map with same operations, but also with some specific add methods (one for each option and attribute). But it is true that this approach is easier for the programmer that wants to use it.