Thank you, thank you Sergey.
It worked for me. The only thing I observed (and this is my interpretation may not be correct) is that when we do the fetch using Vector<Value>, the value is RichValue, while the edit field we defined via Array<EditString> is String. In that case, the fetch worked fine, but while editing it gave conversion error.
So at fetch I converted to String and it worked fine.
It was great help and learning to me.