In a database environment, allocation is the process of copying or splitting values obtained from source data into one or multiple values and storing them in target data. For example, one can allocate the cost of rent in an organization by splitting the total rent across departments, based on how much floor space they occupy. Allocation methods today require that specific data types and steps within an allocation process are hardcoded and limited to a predefined number of, or sequence of steps.