Hola. Esto está explicado en cualquier manual/tutorial de SQL. En la propia documentación de interbase/firebird también esta.
Has acertado en tus dos suposiciones. Las dos restantes son:
no action==> No hace nada, (comportamiento normal) con lo que si la llave en el padre trata de actualizarse mientras tiene hijos, saltará un error.
set default==> Establece el valor del campo de referencia de los hijos tome su valor por defecto (el especificado cuando se crea la tabla en la clausula default).
Hasta luego.