Class<?> propertyType = persistentProperty.getType();
String type = uncapitalize(propertyType.getSimpleName());
ResourceMapping propertyMapping = metadata.getMappingFor(persistentProperty);
ResourceDescription description = propertyMapping.getDescription();
String message = resolveMessage(description);
Property property = persistentProperty.isCollectionLike() ? //
new ArrayProperty("array", message, false)
: new Property(type, message, false);