I guess that each item must have a variable that in other muds is bulk (basically, the volume of each item).
I choose before the orange example, so if a normal orange has 1 in bulk, a bird feather would have in bulk 0,01 (it means that 100 feathers would occupy the same space of an orange in a pack).
A metal ring has 0,5kg and 0,2 bulk.
An orange has 0,05kg and 1 bulk.
A pack can hold 5kg and holds items up to 200 bulk.
This means the following: if items put in pack have higher bulk than pack's bulk limit, then all items do not fit there. If items put in pack have higher weight than pack's weight limit, it would break.
Btw, I've used an orange as example
I can use anyother thing... we must define an item which bulk is easy to compare to other items (dunno about orange... I am sure there is something easier to compare).