A computer-implemented method for synthesizing information and application user interface elements into a continuous stream form, the method comprising: an act of determining, by a logic component, that a particular node (604A, 603B, 602C, 602D) of an instance of a transformation chain class has changed; an act of identifying, by the logic component, characteristics of multiple candidate devices (501, 502, 503, 504, 505, 506) on which at least a version of changed output may be rendered, referring to a device registry and/or inquiring the devices (501, 502, 503, 504, 505, 506) directly in order to determine a rendering capability of each of the devices (501, 502, 503, 504, 505, 506); an act of selecting, by a system (100, 1100), at least one of the candidate devices (501, 502, 503, 504, 505, 506) on which to render at least the version of the changed output based on the identified characteristics in order to maximise the usability of the output; an act of receiving the output by a presentation service; an act of determining a level of cinematicity to apply to the output by the presentation service; an act of adjusting, by the presentation service, the level of cinematicity to be applied to the output when the at least one device renders the output, by applying the cinematicity and causing cinematic output to be rendered by the presentation service, wherein the level of cinematicity refers to a number of cinematic techniques being used, combined with a degree to which each cinematic technique is used, the cinematic techniques comprising at least one of adjusting a degree of movement of user interface elements on a user interface, using backdrops that relate to a topic being presented, using jump cuts changing multiple layers of the user interface to present the information in a different manner, providing of forward and rewind features, and panning and changing of a perspective with respect to two-dimensional settings or three-dimensional settings, wherein higher levels of cinematicity use higher degrees of movement in presenting movement of user interface elements representing the output, and lower levels of cinematicity use lower or no movement of user interface elements representing the output. an act of determining, by a logic component, that a particular node (604A, 603B, 602C, 602D) of an instance of a transformation chain class has changed; an act of identifying, by the logic component, characteristics of multiple candidate devices (501, 502, 503, 504, 505, 506) on which at least a version of changed output may be rendered, referring to a device registry and/or inquiring the devices (501, 502, 503, 504, 505, 506) directly in order to determine a rendering capability of each of the devices (501, 502, 503, 504, 505, 506); an act of selecting, by a system (100, 1100), at least one of the candidate devices (501, 502, 503, 504, 505, 506) on which to render at least the version of the changed output based on the identified characteristics in order to maximise the usability of the output; an act of receiving the output by a presentation service; an act of determining a level of cinematicity to apply to the output by the presentation service; an act of adjusting, by the presentation service, the level of cinematicity to be applied to the output when the at least one device renders the output, by applying the cinematicity and causing cinematic output to be rendered by the presentation service, wherein the level of cinematicity refers to a number of cinematic techniques being used, combined with a degree to which each cinematic technique is used, the cinematic techniques comprising at least one of adjusting a degree of movement of user interface elements on a user interface, using backdrops that relate to a topic being presented, using jump cuts changing multiple layers of the user interface to present the information in a different manner, providing of forward and rewind features, and panning and changing of a perspective with respect to two-dimensional settings or three-dimensional settings, wherein higher levels of cinematicity use higher degrees of movement in presenting movement of user interface elements representing the output, and lower levels of cinematicity use lower or no movement of user interface elements representing the output.