Design Considerations for Report Rendering
This topic explains important differences in how rendering extensions are used and includes a list of topics that explain how each rendering extension processes a report definition. Understanding the fundamentals of report rendering and the kinds of rendering extensions that are available is necessary for making effective decisions about report design.
Report Rendering Overview
In Reporting Services, reports are based on an XML schema called Report Definition Language (RDL). This schema provides a uniform description of a report. The schema is supported by all rendering extensions that are used to output reports in specific formats. As long as a report conforms to RDL, it can be rendered through any rendering extension that supports the RDL standard.
The Report Definition Language (RDL) is an XML schema created specifically for Reporting Services. This schema describes all elements that can be used in a report. For a full description of RDL, see Report Definition Language.
The report definition you create is stored in the report server database to be retrieved and combined with data during report processing. During report processing, a call is made to a rendering extension to render the report to a specific device. The resulting report can vary from one rendering extension to the next. For example, the output from the HTML rendering extension will look very different than the output from the XML rendering extension. If your reports will be processed by multiple rendering extensions, you will need to design your reports accordingly.
Rendering Extension Comparison
Although there are no restrictions or requirements for using rendering extensions, the characteristics of each output format suggest a purpose for using the rendered report in a certain way. For example, XML and CSV rendering extensions are useful for creating reports that can be used as a data feed to another application or process, while layout rendering extensions produce reports in formats that are more familiar to report users. Knowing whether a rendering extension is closely related to another can help you make decisions about report design. For example, if you are creating reports that are optimized for physical page rendering extensions, you might want to focus on a design that works well for both output formats in that category.
The following rendering extension taxonomy shows how extensions vary in pagination behavior and the degree of interactivity. In this taxonomy, interactive rendering refers to interaction between the browser and the report server, initiating additional rendering in response to a user action (for example, a user clicks a link that opens a drillthrough report, and that report is then rendered on the report server).
- Data rendering extensions: XML, CSV
- Layout rendering extensions (interactive) HTML
- Layout rendering extensions (non-interactive, logical page renderers): Excel, MHTML
- Layout rendering extensions (non-interactive, physical page renderers): PDF, Image
In This Section
The following topics describe design considerations for various rendering extensions.
- Designing for HTML Output
Discusses design issues and considerations specific to the HTML rendering extension.
- Designing for Microsoft Excel Output
Discusses design issues and considerations specific to the Excel rendering extension.
- Designing for CSV Output
Discusses design issues and considerations specific to the CSV rendering extension.
- Designing for XML Output
Discusses design issues and considerations specific to the XML rendering extension.
- Designing for Image Output
Discusses design issues and considerations specific to the Image rendering extension.
- Designing for PDF Output
Discusses design issues and considerations specific to the PDF rendering extension.