pass a property object directly, rather than each attribute