No it's a lot simpler. There's a material called EGGSHELL_TEMPLATE, this is what all eggs are made of, the EGG_WHITE and EGG_YOLK are just kind of like attributes.
As it stands, all animals that lay eggs make them out of [MATERIAL_TEMPLATE:EGGSHELL_TEMPLATE], but you can designate them to lay them out of any MATERIAL_TEMPLATE, in my mod they do so out of [MATERIAL_TEMPLATE:SILK_TEMPLATE].
[LAYS_EGGS]
[EGG_MATERIAL:LOCAL_CREATURE_MAT:SILK:SOLID]
[EGG_MATERIAL:LOCAL_CREATURE_MAT:EGG_WHITE:LIQUID]
[EGG_MATERIAL:LOCAL_CREATURE_MAT:EGG_YOLK:LIQUID]
[EGG_SIZE:150]
[CLUTCH_SIZE:3:6]
Then you can do whatever you want with the eggs and if the reaction takes material from the egg reagent it will make a product of that material.
However to stop weavers making EGGSHELL thread out of chicken eggs, i use a [REACTION_CLASS:SILK_EGG] under silk, so reagents of that material can only be used in the reaction.
As for [PRODUCT_DIMENSION:1500], i don't believe that's relevant anymore, but we can trick dwarf fortress and turn the eggs into globs (like meat and fat), which will give us an arbitrary amount of "egg globs" in relativity to egg size, which can then be exchanged into an appropriate amount of thread by a second reaction.
I hope this makes sense, and i haven't horribly misunderstood...