As exceções são objetos da classe Exception, então, para criar um novo tipo de exceção, basta criar uma classe descendente da classe Exception.
Type EDataInvalida = class(Exception);
raise EDataInvalida.Create('Data Inválida');
on e: EDataInvalida do begin //Este exemplo é utilizado no Try / Exception / Finally end;
if (e is EDataInvalida) then //este exemplo é utilizado junto com o componente ApplicationEvents no evento OnException