A case is ad hoc when you do not instantiate it using an existing case type. Ad hoc cases are created on-demand by caseworkers when they need to handle exceptions in business processing. Using an ad hoc case does not change the case type structure in your application.