ATM, the notification is easy to use but not very flexible. You can pre-configure notification messages, use the <not:notification> templates in your forms, and the messages are sent automatically (you don't have to care for them in your usecase implementation).

I think a Java component would be more suitable for this task, maybe alongside with predefined forms:

Notifier notifier = (Notifier) manager.lookup(Notifier.ROLE);
notifier.useConfiguration(ThisUseCase.USECASE_NAME);
notifier.addMessage("Resource was published: " + resource.getUrl());

WorkflowVersion version = resource.getWorkflow().getLastVersion("submit");
User submitter = version.getExecutor();
notifier.addRecipient(submitter); 

...

notifier.send();

Some "automagic" might be useful:

GregorRothfuss : what would the to refer to? users and / or groups?

Maybe it would make sense to use Lenya users instead of plain e-mail addresses for notification. Then the notification type (mail, IM, SMS, ...) could be configured, maybe even by the recipients.

GregorRothfuss : I agree. The email address is an implementation detail and it would make sense to hide it. How is emailing a group handled? Individual emails to all group members?