public function __construct($id = '')
 {
     $this->rolesClass = 'Api\\Model\\Languageforge\\Semdomtrans\\SemDomTransRoles';
     $this->appName = LfProjectModel::SEMDOMTRANS_APP;
     $this->semdomVersion = self::SEMDOM_VERSION;
     $this->sourceLanguageProjectId = new IdReference();
     // This must be last, the constructor reads data in from the database which must overwrite the defaults above.
     parent::__construct($id);
 }
 public function __construct($id = '')
 {
     $this->appName = LfProjectModel::LEXICON_APP;
     $this->rolesClass = 'Api\\Model\\Languageforge\\Lexicon\\LexiconRoles';
     $this->inputSystems = new MapOf(function ($data) {
         return new InputSystem();
     });
     $this->config = new LexConfiguration();
     // default values
     $this->inputSystems['en'] = new InputSystem('en', 'English', 'en');
     $this->inputSystems['th'] = new InputSystem('th', 'Thai', 'th');
     $this->languageCode = $this->config->entry->fields[LexiconConfigObj::LEXEME]->inputSystems[0];
     // This must be last, the constructor reads data in from the database which must overwrite the defaults above.
     parent::__construct($id);
 }