If a submit button is clicked, the corresponding object ITPSubmitButton will send a message notifying this event. This message will be picked up by an instance of the class ITPForm, which will then start the process of submitting the form. This involves a call to the function prepareForSubmission, which is defined by ITPPageElement for each child of the element ITPForm. Once a child has completed its preparation, it will report this by calling the function readyForSubmission on its parent, passing the validity of its answer. This mechanism therefore allows for asynchrony, which is for instance used by the class ITPETBQuestion.
If all answers are valid, the object ITPForm will simply submit the HTML form. It is not responsible for sending any of the answers of its children. During preparation an element should make sure that its answer will be part of the HTML form that is submitted e.g., through a hidden element on the page.