<preformat> Preformatted Text

Text in which spaces, tabs, and line feeds must be preserved. Content is typically displayed in monofont to preserve character alignment.

Usage/Remarks

The <preformat> element is typically used for machine-related communication such as man-machine dialogs and error message reports with descriptions, in which whitespace such as tabs, line feeds, and spaces should be preserved.
The MathML elements to describe equations are not permitted within <preformat>. If equations are encountered within computer code, they can be tagged using the element <named-content> to preserve the fact that they were equations or the element <styled-content> to preserve that fact that they were set in a math font.
Position
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 fragments are typically anchored whereas longer preformats such as ASCII art are typically placed elsewhere such as in a separate window or at the end of the document.
Related Elements
Best Practice: Although it is possible to use <preformat> to tag any format-preserving object, some of these objects have semantic elements that should be used in preference. For example:
  • Poetry and verse should usually be tagged with the <verse-group> element, which may not preserve the exact indentation, but is likely to be displayed in a proportional font.
  • Programming code, pseudo-code, DTDs and Schemas, and XML instances should be tagged with the <code> element, making full use of its attributes to identify the type of code.
  • Equations and math are typically tagged with <disp-formula> or <inline-formula>.
Attributes
orientation (default = portrait)
position (default = float)

Base Attributes

Miscellaneous non-JATS-specific Attributes

xml:space (fixed value = preserve)
Models and Context
May be contained in
Description
Any combination of:
Content Model
<!ELEMENT  preformat    %preformat-model;                            >
Expanded Content Model

(#PCDATA | alt-text | long-desc | email | ext-link | uri | inline-supplementary-material | related-article | related-object | hr | bold | fixed-case | italic | monospace | overline | overline-start | overline-end | roman | sans-serif | sc | serif | strike | underline | underline-start | underline-end | ruby | alternatives | inline-graphic | inline-media | private-char | chem-struct | inline-formula | tex-math | mml:math | abbrev | index-term | index-term-range-end | milestone-end | milestone-start | named-content | styled-content | fn | target | xref | sub | sup | x | attrib | permissions)*

Tagged Samples
Error message
...
<preformat preformat-type="dialog">
 C:\users\lap make
   'make' is not recognized as:
     - an internal or external command
     - an operable program
     - a batch file
</preformat>
...
Poem
...
<preformat preformat-type="poem">
 it&rsquo;s
 spring
 and

     the
          goat-footed

 balloonMan  whistles
 far
 and
 wee
</preformat>
...
Poem
Probably better tagged as a <verse-group>
...
<body>
 <disp-quote>
  <preformat>... who would fardels bear,
   To grunt and sweat under a weary life,
   But that the dread of something after death,
   The undiscover&rsquo;d country from whose bourn
   No traveller returns, puzzles the will
   And makes us rather bear those ills we have
   Than fly to others that we know not of?</preformat>
  <attrib>William Shakespeare, Hamlet, Act III,
   Scene IV</attrib>
 </disp-quote>
 <p>Shakespeare well understood the underpinning of
  our society&rsquo;s tenacious need to cling to life:
  the fear of death, the fear of the unknown.  Yes, we
  acknowledge death is part of nature&rsquo;s cycle,
  but even as we do so, we struggle ...</p>
 <sec>...</sec>
</body>
...
Small table
Better tagged as <array>
...
<list list-type="bullet">
 ...
 <list-item id="bid.101">
  <p>Each 3D Domain identified in an MMDB record is
   assigned a unique integer identifier that is appended to 
   the Accession number of the chain to which it belongs 
   (e.g., 1B8G A 2). This new Accession number becomes 
   its identifier in Entrez 3D Domains. New 3D Domain 
   identifiers are assigned whenever a new MMDB-ID is 
   assigned.</p>
 </list-item>
 <list-item id="bid.102">
  <p>For conserved domains, the Accession number is
   based on the source database:
   <preformat>
    Pfam:          pfam00049
    SMART:         smart00078
    LOAD:          LOAD Toprim
    CD:            cd00101
    COG:           COG5641
   </preformat>
  </p>
 </list-item>
</list>
...