I apologize for sending reminders. I was just not sure if my query was somehow missed from being read. So, I was only trying to assure that its not getting missed/lost since responses to my earlier questions used to be pretty quick. But, I am sorry if it sounded impatient though. We will definitely look into the higher level of support as you indicated.
Meanwhile, with regard to your response to my query, My keycloak app calls an external TokenValidator for authentication. This TokenValidator returns an SP specific username. So, the NameID value in the SAML response need to be handled in the "application code" and the value needs to be changed to the value returned from the TokenValidator during authentication. I think using the protocol mapper, its a one time change with a certian value? But, in my setup, everytime, as part f authentication, my keycloak app calls an external tokenValidator service which will return a certain value (this value is not fixed, it could be different each time depending on various factors, example, the user passed in authentication, the settings on the TokenValidator etc).
So, I believe it needs to be handled in the code dynamically for each authentication, so when a SAML response is created on keycloak (I am not sure where and how its done internally by keycloak though), we need to be able to write some code that can be used to edit the NameID in the SAML response with a dynamic value that we fetched from a call to an external service (TokenValidator) during that specific authentication. I hope my question is more clear now. Let me know if not.