ROM elements
ROM elements are defined in a set of hierarchies. Abstract elements, which cannot be used directly in a BIRT file, are at the top of each hierarchy. These elements define key characteristics of concrete elements in the same way that abstract classes in Java define methods and variables that a concrete class implements. Report designs are made of concrete elements that derive from the abstract elements.
Primary ROM elements
The primary ROM elements consist of abstract elements from which other elements derive and concrete elements that provide the overall file definition.
The following elements are the abstract components that form the basis for understanding ROM:
*DesignElement
DesignElement defines basic features of ROM elements. DesignElement represents any component of a report design that has properties and defines the available property types. Property types include name-value pairs, methods, and user-defined properties.
*ReportElement
ReportElement extends DesignElement to represent any item that can be named and customized. Most components in ROM derive from ReportElement, including the elements that are visible in the user interface, such as data sets, styles, master pages, and report items.
*DataSet
DataSet extends ReportElement to define the fundamental properties of a data set relating to columns and parameters.
*DataSource
DataSource extends ReportElement to define the methods that a concrete data source element must support.
*ReportItem
ReportItem is the base element for the visual elements. This element extends ReportElement to include characteristics such as data set, data column, and parameter bindings, position and size, and bookmark and table of contents values. ReportItem uses a style to provide visual characteristics, such as font and background color, for the element as it appears in a report.
*Listing
Listing is the abstract base element that extends ReportItem for list and table items. Both items support filtering, sorting, and methods.
*MasterPage
MasterPage defines the basic properties of a page, such as size, margins, and orientation.
The following concrete elements describe the root element of a BIRT file:
*ReportDesign
ReportDesign contains information about a report design, defining properties that describe the design as a whole. Report design properties do not support inheritance because a design cannot extend another design. ReportDesign is the root element of a report design or a template.
*Library
Library is similar to ReportDesign, extending LayoutModule, but has a different set of slots and does not have methods.