I have experience in this area. I denormalized most of the claim diagnosis bridge table into the claim for performance reasons. I allow up to 4 diagnosis per procedure/service and up to 4 diagnosis per claim. Then, I have a flag indicating that there are more diagnosis codes stored in the Claim-Diagnosis and/or Service-Diagnosis bridge tables. I found with our data that over 99% of all claims and services have four or less diagnosis codes.
Next, we also allowed an additional diagnosis associated with admissions, i.e. inpatient services. This is a column in the admission table identifying the admitting diagnosis associated with a patient admission. There is also an admitting physician.
But back to the point, and to recap. Our system allowed unlimited diagnosis associated with a claim and also unlimited diagnosis associated with a service (a claim line or a pre-paid encounter in the HMO world). We had four diagnosis columns in the Claim table, and four diagnosis columns in the Service table. In addition, there is a one character flag "Additional Diagnosis" Y/N whereby a Y indicated that there were more diagnosis stored in the Claim-Diagnosis bridge table. Similarly for Service and Service-Diagnosis.
-------------------------
The trouble with doing something right the first time is that noboby appreciates how difficult it was.
- Steven Wright