Common Formatting Objects

Common Formatting Objects

• page-sequence–a major part (such as front or body) in which the basic page layout may differ from other parts

• flow–a chapter- or section-like division within a page-sequence

• block–a paragraph (or title or block quote, etc.)

• inline–e.g., a font change within a paragraph

• wrapper–a “transparent” object usable as either a block or inline object that has no effect other than to provide a place to hang inheritable properties

• list FOs–list-block, list-item, list-item-label, list-item-body

• graphic–references an external graphic object

• table FOs–mostly analogous to the standard (CALS, OASIS, HTML) table models

Basic properties
• font properties

• margin and spacing properties

• border and padding properties

• keeps/breaks

• horizontal alignment/justification

• indentation

• more formatting object specific properties

Formatting properties
When taken as a whole, the various formatting objects in an XSL-FO document specify the order in which content is to be placed on pages. However, formatting properties specify the details of formatting such as size, position, font, color, and a lot more. Formatting properties are represented as attributes on the individual formatting object elements.
The details of many of these properties should be familiar from CSS. Work is ongoing to ensure that CSS and XSL-FO use the same names to mean the same things. For example, the CSS font-family property means the same thing as the XSL font-family property; and although the syntax for assigning values to properties is different in CSS and XSL-FO, the meaning of the values themselves is the same.
To indicate that the fo:block element is formatted in some approximation of Times, you might use this CSS rule:
fo:block {font-family: ‘New York’, ‘Times New Roman’, serif}
The XSL-FO equivalent is to include a font-family attribute in the fo:block start tag in this way:
<fo:block font-family=”‘New York’, ‘Times New Roman’, serif”>
Although this is superficially different, the style name (font-family) and the style value (‘New York’, ‘Times New Roman’, serif) are the same. CSS’s font-family property is specified as a list of font names, separated by commas, in order from first choice to last choice.
XSL-FO’s font-family property is specified as a list of font names, separated by commas, in order from first choice to last choice. Both CSS and XSL-FO quote font names that contain white space. Both CSS and XSL-FO understand the keyword serif to mean an arbitrary serif font.
Scroll to Top