protected function initPropertyTranslations($domain = NULL) {
    $entityMeta = $this->getEntityMeta();
    $translator = $this->translationContainer->getTranslator();

    $this->on('init.labeler', function ($labeler) use ($domain, $entityMeta, $translator) {
      foreach ($entityMeta->getSetMeta()->getKeys() as $propertyName) {
        $property = $entityMeta->getPropertyMeta($propertyName);
        $labeler->label(
          $property->getName(),

          $translator->trans(
            sprintf('entities.%s.%s', $entityMeta->getEntityName(), $property->getCanonicalName()),
            array(),
            $domain ?: 'project'
          )
        );
      }
    });
  }