Level 1 Model Building - Design



In the Level 1 Model for Unicorn, Size was defined as a List and the Products file imported shows a 1-to-1 relationship for Product -> Size.


Product CodeProduct NameFamily CodeSize
P001Nutzo BarCH100g
P002Raising the BarCH200g
P016Juicy Lucy gummiesSO100g


Assuming, the Product -> Size is a 1-to-many relationship, what would be the guidance in terms of the design and setting?  

E.g. Above items having more than one size.



Best Answers

  • Misbah
    Answer ✓



    Assuming you have one to many relationship for Products to Size, there can be two cases


    Case 1-  If your codes differ for each Product Name

                  Then You will have to make this as a numbered list and you can work on this list based on the codes

    Case 2 - Names & codes are same

                  Then You will have to think of coming up with the unique code for each combination.

                  You can also think of creating a hierarchy based on the Size & Products

                  You can also ponder on reversing the list meaning Keep Size as a list and add Product Codes and Names as a                   attributes


    All this depends on what is your final objective and you design accordingly.

    Hope that helps


  • JaredDolich
    Answer ✓

    Hi @Star 

    I would concur with @Misbah when it comes to deciding if your list should be numbered or regular.

    I would add a few more thoughts though.

    1. If EVERY product shared the exact same size list then normally you would not set the "parent" value for size. Just keep size as an independent list. You would be right in that assumption. For L1, however, you're asked to create the Parent / Child relationship.
    2. The biggest advantage of creating a list with a parent is the ability to aggregate the data. You can also use selective access to restrict what list items people can see / work with.
    3. If the product and size are 1:1 for ALL combinations then I would suggest using size as a property in a system module. There's really no advantage in creating a list.
    4. If the product and size are mostly 1:1 and only a small number have one to many you can denormalize the product list: Chocolate Bar - 300g and Chocolate Bar - 250g for example. This would also assume you don't want/need an aggregation.


  • Star
    Thank you.

    In Level 1 Model Building, Size is defined as a List (non-numbered) but the Products shared the same Size List. Not sure what is the advantage here.
    In a practical situation, my simple thought is that the design should be according to your suggestons in Case 1 or 2 above depending on the assumptions. Any thoughts?