}
public void appendSetValue(Value value, LiteralValue literal) {
Collection<String> values = literal.getValues();
ProfileSetValueType setValue = data.addNewSetValue();
setValue.setIdref(value.getId());
if (values.size() > 1) {
// complex values are not supported
throw new UnsupportedOperationException("Value '"+value.getId()+"' has '"+values.size()+"' values.");
} else if (values.size() == 1) {
setValue.setStringValue(values.iterator().next());
} else {
setValue.setNil();
}
}