In this chapter, I try to work out what a converter must be able to do in order to convert data of syntax X to data formatted by syntax Y. In the previous sentence, we have the answer to that question nearly on the desk. A converter must be able to read data of syntax X, transfer them and write the output in syntax Y. That leads me to the conclusion, that a converter is mainly constructed of three parts:
A reading module
The converter core module
A writing module
The modules may be implemented as shared objects which can be dynamically linked to the core module.