This is an exercise in data modeling, more so than cooking.
What you are describing is the design of your database.
You are on the right track.
You will want to consider how many of each of the fields you need to have. For example:
- Quantity - Unique [there will be exactly one of these]
- Quantity unit - Unique [exactly one]
- Brand - Unique [optional] (either one or none)
- Variation (or style, or preparation-note) - Non-unique [optional] (0,
1, or many)
- Ingredient - Unique
- Initial cooking temperature - Unique
- I.c.t. Units - Unique
- Preparation Instructions - (you have a decision whether to make one block text, or a series of fields which may or may not be used)
- Cooking Instructions - (same as Prep. Instruction)
- Cooling Instrutions... et cetera
ADDITIONAL:
To your question about when multiple modifiers might be used with an ingredient:
You might have an ingredient which is expected to be prepared at the time of cooking. So: "minced onions, blanched". It would seem that order might be important to you here, as well. As you see here, there are two styles (I just realized 'modifier' might be a more all-encompassing field-name).
So you might typically see the descriptive nature of the ingredient listed like this (although maybe not the exact verbiage - I'm not sure if this exact ingredient has ever been listed). So you would have to make a decision as to whether you could have 0+ modifiers listed before the ingredient, format with a comma, then have 0+ commas after the ingredient.
Naturally the comma would only appear if there were >=1 modifiers listed after the ingredient.
Since I have thought about how infrequent you might see minced onions, blanched...you might instead see shredded red potatoes, salted and peppered. There are many considerations with respect to how modifiers could used, to be sure.
One more word - in database design, you'll want to take as much time as you can to develop pre-authoring/programming. Any minor change to the database schema could cause you to have to start all over again. :)