@Override
 public TagDefinition getTagDefinition(final UUID tagDefinitionId, final TenantContext context)
     throws TagDefinitionApiException {
   final TagDefinitionModelDao tagDefinitionModelDao =
       tagDefinitionDao.getById(
           tagDefinitionId,
           internalCallContextFactory.createInternalTenantContextWithoutAccountRecordId(context));
   return new DefaultTagDefinition(
       tagDefinitionModelDao, TagModelDaoHelper.isControlTag(tagDefinitionModelDao.getName()));
 }
 @Override
 public TagDefinition createTagDefinition(
     final String definitionName, final String description, final CallContext context)
     throws TagDefinitionApiException {
   if (definitionName.matches(".*[A-Z].*")) {
     throw new TagDefinitionApiException(ErrorCode.TAG_DEFINITION_HAS_UPPERCASE, definitionName);
   }
   final TagDefinitionModelDao tagDefinitionModelDao =
       tagDefinitionDao.create(
           definitionName,
           description,
           internalCallContextFactory.createInternalCallContextWithoutAccountRecordId(context));
   return new DefaultTagDefinition(
       tagDefinitionModelDao, TagModelDaoHelper.isControlTag(tagDefinitionModelDao.getName()));
 }