Preformatted Text


Used for preformatted text, such as computer code, in which white space (such as tabs, line feeds, and spaces) should be preserved

This element’s content typically is displayed or printed in a monofont to preserve character alignment.


The position attribute may be used to indicate whether this element must be anchored at its exact location within the text or whether it may float, for example, to the top of the next page, next column, to the end of a logical file, or within a separate window. For the typical <preformat> element, the “float or anchor” decision will be governed by the size of the object. For example, short code fragments are typically anchored whereas full programs are typically placed elsewhere such as in a separate window or at the end of the article.


alternate-form-of Alternate Form of Graphic, Media Object, Etc.
id Identifier
position Position
preformat-type Type of Preformatted Text
xml:lang Language
xml:space Space

Related Elements

Poetry may be tagged with the <preformat> element if spacing is critical, but usually poetry should be tagged with the <verse-group> element, which may not preserve the exact indentation, but is likely to be displayed in a proportional font.

Model Information

Content Model

<!ELEMENT  preformat    %preformat-model;                            >


Any combination of:

This element may be contained in:

<app> Appendix; <body> Body of the Article; <boxed-text> Boxed Text; <chem-struct> Chemical Structure (Display); <chem-struct-wrapper> Chemical Structure Wrapper; <disp-formula> Formula, Display; <fig> Figure; <named-content> Named Special (Subject) Content; <p> Paragraph; <sec> Section; <table-wrap> Table Wrapper; <td> Table Data Cell (XHTML table model); <th> Table Header Cell (XHTML table model)

Tagged Example

<p>Trees, of course, are hardly a random choice for our 
methodology.... Hierarchical trees have been understood as a 
way of viewing document structures since the earliest days of 
SGML development. Our initial tree structure was very simple:
&lt;!ELEMENT  implications  (tree+) &gt;
&lt;!ELEMENT  tree          (root, branches) &gt;
&lt;!ELEMENT  root          (term, synonym?) &gt;
&lt;!ELEMENT  branches      (term | (term, synonym) | tree)* &gt;
Terms are the literal strings for which the Ferret engine searches; they 
are the most specific expressions to be found in real documents of the 
concepts on which classifications rules act.</p>...