private TranslationMemory ReadTranslationMemory(SQLiteDataReader reader)
 {
     TranslationMemory tm = new TranslationMemory();
     tm.tmid = reader.GetInt32(0); // tmid used for update
     tm.japanese = GetSegmentFromXml(reader.GetString(4)); // source_segment
     tm.chinese = GetSegmentFromXml(reader.GetString(6)); // target_segment
     tm.tags += reader.GetString(8) + Environment.NewLine; // user
     tm.tags += reader.GetString(9) + Environment.NewLine; // date
     tm.tmname = Path.GetFileName(this.sourcePath);
     return tm;
 }
 public IEnumerable<TranslationMemory> Parse()
 {
     XmlSerializer serializer = new XmlSerializer(typeof(dataroot));
     dataroot xmlData = (dataroot)serializer.Deserialize(new XmlTextReader(XmlFilePath));
     List<TranslationMemory> result = new List<TranslationMemory>();
     foreach (var data in xmlData.Items.AsEnumerable())
     {
         TranslationMemory tm = new TranslationMemory();
         tm.tmid = Convert.ToInt32(data.id);
         tm.tmname = Path.GetFileName(this.XmlFilePath);
         tm.japanese = data.source_segment;
         tm.chinese = data.target_segment;
         tm.tags += data.creation_date + Environment.NewLine;
         tm.tags += data.creation_user + Environment.NewLine;
         result.Add(tm);
     }
     return result;
 }