/** * Constructs a new aggregate descriptor with the given category, e.g. "CONTENT". * * @param designation the descriptor type, e.g. "CONTENT" * @throws BadDataException if the designation is invalid. */ public DescAggregate(String designation) throws BadDataException { super(); idList = new TreeSet(); if (!Descriptor.isCategory(designation)) { throw new BadDataException("Bad descriptor category -- " + designation); } else { setCategory(designation); } }