cgamble wrote:
Under my normal development strategy for this type of issue, it isnt a problem since I use a business key instead of a primary key and the collections are value type collections (ie discardable). I have read that this is a horrible practice, but I can not figure out what the correct way to accomplish this task is. Below is concrete examples of my data structures. Any help or thoughts will be dearly valued.
What are you asking is considered "horrible practice"? If you're speaking about using technical/surrogate keys instead of business ones, then yes, it's a best practice.
It's simply because it lets you evolve your schema more easily. Even a business key modification is simpler if you use a surrogate key (you won't have to update every foreign keys on this key, for example...)