[bug-fix] leaves undefined and === '' alone. (undefined is used for properties that are undefined, as opposed to set to null purposely for unlinking)