Whenever I’m in a project that has an export engine, it comes down to this, What format? The real question in my mind is for what purpose?
Ignore the obvious answer. Lets look at the person who is going to import the data. Typically the person who is importing the data is doing so into another application that I have not written a bridge for, and that person is more time that not a typical word processing level user. They know word and email, but anything else, and they call the geek squad. Many of us jokingly call these people 1212s. that is because their VCR is still blinking 12:00.
Don’t get me wrong, this is not meant to be derogatory. Read Alan Cooper’s book on the “Inmates Are Running The Asylum”. It is a simple case of cognitive friction. The use want’s his data into another program that he knows well, and does not want to learn something that will do it. What are you to do.
Some developers ague: I can’t support everything, it’s too expensive to do so. My ROI will drop to 0. etc…
I have to agree. But there is always a solution, if one is willing to investigate it. I do not have it totally yet, but in the mean time consider this:
Make a generic framework that will handle mapping models. Then when you make a map model for one program, you may be able to use it for others. This is not a new concept. It is called Biztalk, and there are also third party program that do they same in smaller scale.
Don’t let yourself be limited there, assume that you can figure out something better, and move on it.