1. A computer implemented method of automatically generating Electronic Data Interchange (EDI) documents comprising the steps of: receiving a standard data model comprising EDI related data; generating data definitions for a self-describing markup language corresponding to each transaction of the EDI related data; generating self-describing markup language data using a data definition from the generated data definitions for the self-describing markup language corresponding to an EDI transaction and corresponding application data related to EDI; and automatically generating an EDI document based on the self-describing markup language data.