Numbering

Numbering refers to symbols - Arabic numerals, Roman numerals, symbol characters ("bullets"), text strings, etc. - in WordprocessingML that are used to label individual paragraphs of text.

example:
  1. This is a paragraph with numbering information.

  • This is also a paragraph with numbering information.

The basis for all numbering in WordprocessingML is specified via two structures:

  • abstract numbering definitions

  • numbering definition instances

Abstract numbering definitions define the appearance and behavior of a specific set of numbered paragraphs in a document. Because this construct is abstract, they are not be directly referenced by document content, but rather they must be inherited by a numbering definition instance, which itself is referenced by document content.

example:
<w:abstractNum w:abstractNumId="4">
  <w:nsid w:val="FFFFFF7F" />
  <w:multiLevelType w:val="singleLevel" />
  <w:lvl w:ilvl="0">
    <w:start w:val="1" />
    <w:lvlText w:val="%1." />
    <w:lvlJc w:val="left" />
    <w:pPr>
      <w:tabs>
        <w:tab w:val="num" w:pos="720" />
      </w:tabs>
      <w:ind w:left="720" w:hanging="360" />
    </w:pPr>
  </w:lvl>
</w:abstractNum>

This <abstractNum> element defines an abstract numbering definition which defines a set of numbering properties. It is inherited by any numbering definition instance which inherits from an <abstractNumId> equal to 4:

<w:num w:numId="2">
    <w:abstractNumId w:val="4" />
</w:num>

This <num> element defines an numbering definition instance which may define overrides to the abstract numbering definition (in this case it does not), and is used by any paragraphs with a <numId> equal to 2:

<w:p>
  <w:pPr>
    <w:numPr>
      <w:ilvl w:val="0" />
      <w:numId w:val="2" />
    </w:numPr>
  </w:pPr>
  <w:r>
    <w:t>Level one</w:t>
  </w:r>
</w:p>

The resulting paragraph will inherit the properties of level 0 in the numbering definition instance of 2 which is simply a instance of the abstract numbering definition of 4. ]