A process of converting data from one type to another and then back to the first type while preserving the format and content of the data.