hi Hassan,
..thanks for your feedback....to answer your inquiry: i have some developers using this to "say"/mean : "hey, consumer, i have this request and for now it returns a resource that is 80% complete, but later i am going to add more to achieve 100% of what the business wants"..... so they return 501
so, well, IMHO, it would not do that and instead say return 400 with the proper response msg "hey, sorry, i don't support what you are trying to do with this request"
...simple
..it gets worst when people think they can elicit certain "retry" behavior from their consumers.
rgds,
Miguel