Imagine any application that needs to display data to the user and capture changes made by that user to save the modified data. One way you could build an application like this is to, once you have the data, iterate over each item of data. For example, for every member of a list you would generate the same repeating element, and then inside that element you would generate textboxes, drop-downs, and other UI elements that present data. Later, after the user made some changes, you would iterate over your generated elements, and for every one you would inspect the child elements if their data was changed. If so, you would copy the data back into the objects used for saving that data.