Experimental versions of pattern interfaces and support code for the domain layer. Not used in the application.