Paul,
It sort of depends on what your data look like. If it's just a few fields that are different, I would just jam them all in one table--hard drives are pretty cheap these days. But if it's a bunch of fields, then yes, your table structure sounds sound.
Clearly, a strict reading of normalization tells you that what you've done is correct. But real world applications require a bit of softening from time to time. There will be a lot more querying to do with the structure you've described than if you drop all those fields into one table, and that may or may not be more onerous than having blank fields in each of your records.
It sounds like you've got a pretty good grip on normalization issues, but if you're looking for something to read, check out the "Fundamentals" article on my website. I didn't write it, so it's OK if I tell you that it's really excellent <g>.
Jeremy
==
Jeremy Wallace
AlphaBet City Dataworks
Affordable Development, Professionally Done
Please post in the appropriate forum with a descriptive subject; code and SQL, if referenced; and expected results. See thread181-473997 for more pointers.