I don't understand the original reason for using username instead of profile.name.  At first I thought maybe the concern would be that the profile.name might be zero-length.  But I wonder if the real motivation was because they were pulling out this value and then storing it for use elsewhere to be the login identifier that would be passed back in later.  Don't know, but is there any chance that this might be zero-length?