value = converters.convert(value, type);
Path childPath = new Path.Builder(path).field(fieldToPartName(field)).build();
PropertyTranslator translator = encoder(field, value);
Set<Property> properties = translator.typesafeToProperties(value, childPath, indexed(field));
if (properties == null)
{
throw new IllegalStateException("Could not translate value to properties: " + value);
}
merged.addAll(properties);