public void processMultiplicity(Reference definition, boolean required, Type type, TypeMapping typeMapping) { MultiplicityType multiplicityType = introspectMultiplicity(type, typeMapping); if (MultiplicityType.COLLECTION == multiplicityType) { Multiplicity multiplicity = required ? Multiplicity.ONE_N : Multiplicity.ZERO_N; definition.setMultiplicity(multiplicity); } else if (MultiplicityType.DICTIONARY == multiplicityType) { Multiplicity multiplicity = required ? Multiplicity.ONE_N : Multiplicity.ZERO_N; definition.setMultiplicity(multiplicity); DataType keyType = getKeyType(type, typeMapping); definition.setKeyed(true); definition.setKeyDataType(keyType); } else { Multiplicity multiplicity = required ? Multiplicity.ONE_ONE : Multiplicity.ZERO_ONE; definition.setMultiplicity(multiplicity); } }