I guess he want's to differenciate between the real lastKnownName and the current name.

I didn't had a look on the lastKnownName update sequence yet, but i guess we should check which value is stored in that tag. 
1) The name of the player when he last joined
(when online -> lastKnownName = name)
2) The name of the player that he had used before using this name when he last left
(when offline -> lastKnownName = name)
3) The name of the player that he had used before using this name at all on this server
(always -> lastKnownName != name)