protected function makeTagRec($data)
 {
     $tag = new Tag();
     $tag->setTagName($data['tag_name']);
     $tag->setVisible($data['visible']);
     $tag->setLocked($data['locked']);
     foreach ($data["tag_translation"] as $source) {
         $trans = new Translation();
         $trans->setLocale($source['translation']);
         $trans->setName(Translation::$availableLocales[$source['translation']]);
         $tagSource = new TagTranslation($tag, $trans);
         $tagSource->setName($source["title"]);
         $tagSource->setDescription($source["description"]);
         $tag->getTranslatedTags()->add($tagSource);
     }
     foreach ($data['children'] as $child) {
         $tmp = $this->makeTagRec($child);
         $tag->addChild($tmp);
     }
     return $tag;
 }