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.

  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.

<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:tab w:val="num" w:pos="720" />
      <w:ind w:left="720" w:hanging="360" />

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" />

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:ilvl w:val="0" />
      <w:numId w:val="2" />
    <w:t>Level one</w:t>

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. ]