Problems that arise from health-care management, rather than from a disease process, are now recognized as making a substantial contribution to patient morbidity and mortality and to the cost of health care. However, most classifications of these problems do not provide sufficient detail to allow comparisons or to develop better strategies for the prevention, detection and management of these problems. A 'Generic Occurrence Classification' was developed to record their salient features, place them in context and elicit any system or human error-based contributing factors. This was done by an iterative process in which 'natural categories', identified from over 2000 incidents and 800 adverse events, were placed in a hierarchical structure created using software written in Microsoft Visual Basic; data were stored in a Microsoft Access database. This was shown to be a valid and reliable way to compare incidents and accidents from different sources and to allow sufficient detail to be retrieved to develop preventive strategies.