Hi Chirag,
I've faced a similar issue recently. The way I've found to avoid having two schemas is by making use of the input variable "direction".
In the formatting service spec there is a direction input:
You can branch on this value to decide what you want to do based on if you want to convert to string or values, like this:
You can also override some part of the schema when calling either convertToValues or convertToString.
The only issue I have with this is that if the value in the csv is empty, the formatting service doesn't run. I'm still trying to find a way around that.
Hope this helps.
All the best,
Pedro