title: Design pattern to transform one type of data to another
body: <p>I have to call a legacy SOAP webservice that sends a raw <a href="http://msdn.microsoft.com/fr-fr/library/system.data.dataset%28v=vs.110%29.aspx" rel="noreferrer">DataSet</a>, from a clean(er) REST webservice that sends data described in JSON.</p>
  
  <p>I need to transform this raw dataset that lists my objects into a true list of objects.</p>
  
  <p>The dataset I get does not have enough informations, so the transformation is not "simple". It involves fetching additional data from the DB for each object.</p>
  
  <p>What's the best design pattern to do this? My first naive reflex would be to create a method that takes this dataset as parameter, parses it, and returns a list of objects, but I feel there must be a better way of doing this.</p>
  
  <p>I have seen the Adapter pattern, but I understand it "only" transforms an existing class into another that "looks like it". I want to completely change the data, from something akin to a table of strings with the id and name, into a true collection of instances with every useful info.</p>
  
  <h1>Update</h1>
  
  <p>I have another, similar problem coming up. We have both an old desktop application, and a new online application doing the same things, but in different ways. The save file for these two applications is very different, though.<br>
  I would like to create a convertor between these formats. The Mapper pattern, as suggested by @VS1 looks promising for this operation, but I don't think I would be able to use something as simple and straight-forward as AutoMapper. The Adapter pattern may also be of help. I'll look into these.</p>