hard vs soft allocations
These are used both in resource sales as well as issues to manufacturing processes.
A soft allocation is a type of rea:Commitment which allocates a quantity of an rea:ResourceType but does not allocate any particular rea:Resources.
For example, in a stock of apples, Pavlik may have a commitment with Bob for 5k of Apples. That is, any apples, not any particular apples.
Bob may have 20kg of Apples. A soft allocation would subtract 5kg from the available quantity, but not the onhand quantity. So Bob would only have 15kg left available for other requests.
A hard allocation would put 5kg of Apples in a container for Pavlik to pick up.
The purpose of a hard allocation is to avoid somebody else coming along and taking more than 15kg of Apples, because the 5kg allocated to Pavlik was only known to the inventory system, not obvious in the bin of Apples.