public Collection<TaggedPropertySet> parseConfiguration() {
Map<String, TaggedPropertySet> propertySets = new HashMap<String, TaggedPropertySet>();
for (Object configurationObject : configurationObjects) {
TaggedPropertySet taggedPropertySet = createPropertySetForObject(configurationObject);
if (propertySets.containsKey(taggedPropertySet.tag())) {
TaggedPropertySet orginialSet = propertySets.get(taggedPropertySet.tag());
orginialSet.getProperties().putAll(taggedPropertySet.getProperties());
propertySets.put(taggedPropertySet.tag(), orginialSet);
} else {
propertySets.put(taggedPropertySet.tag(), taggedPropertySet);