OPF
SpecDefinition referenceView source

List Item

A flat item inside a list. Strings cover the common case, TextRun[] supports inline rich text without an object wrapper, and object form adds description and nesting depth without creating nested slide content payloads.

Metadata

Definition
#/$defs/ListItem
Form
3 alternative forms (oneOf)
Source
spec/schemas/opf.schema.json

Field index

This definition uses the forms or value constraints below.

oneOf 1 · string

Exact constraints for oneOf 1
oneOf 1 schema
{
  "type": "string"
}

oneOf 2 · array<ref:TextRun>

Exact constraints for oneOf 2
oneOf 2 schema
{
  "type": "array",
  "items": {
    "$ref": "#/$defs/TextRun"
  }
}

oneOf 3 · object

FieldTypeReq.DefaultDescription
textstring | array<ref:TextRun>yes—Text for the list item. Use a string for plain text or TextRun[] for inline rich text. TextRun items may be plain strings or formatted run objects.
descriptionstring | array<ref:TextRun>——Optional supporting detail for the list item. Use a string for plain text or TextRun[] for inline rich text.
levelinteger——Zero-based nesting level for the list item.
startinteger——Restart the list's numbering at this number for this item (counted at its level); the entries after it continue from it. Only meaningful when the payload has numbering. Paginated continuation pages use it to keep the numbers of the whole list.

text

typestring | array<ref:TextRun>requiredyesdefault—

Text for the list item. Use a string for plain text or TextRun[] for inline rich text. TextRun items may be plain strings or formatted run objects.

text.json
{
  "text": "Improve retention by 12 points"
}

description

typestring | array<ref:TextRun>requirednodefault—

Optional supporting detail for the list item. Use a string for plain text or TextRun[] for inline rich text.

description.json
{
  "description": "Focused on activation and first-value time."
}

level

typeintegerrequirednodefault—

Zero-based nesting level for the list item.

start

typeintegerrequirednodefault—

Restart the list's numbering at this number for this item (counted at its level); the entries after it continue from it. Only meaningful when the payload has numbering. Paginated continuation pages use it to keep the numbers of the whole list.

Exact constraints for oneOf 3
oneOf 3 schema
{
  "type": "object",
  "required": [
    "text"
  ],
  "additionalProperties": false,
  "properties": {
    "text": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "type": "array",
          "items": {
            "$ref": "#/$defs/TextRun"
          }
        }
      ],
      "description": "Text for the list item. Use a string for plain text or TextRun[] for inline rich text. TextRun items may be plain strings or formatted run objects.",
      "examples": [
        "Improve retention by 12 points",
        [
          "Improve retention by ",
          {
            "text": "12 points",
            "bold": true
          }
        ]
      ]
    },
    "description": {
      "oneOf": [
        {
          "type": "string"
        },
        {
          "type": "array",
          "items": {
            "$ref": "#/$defs/TextRun"
          }
        }
      ],
      "description": "Optional supporting detail for the list item. Use a string for plain text or TextRun[] for inline rich text.",
      "examples": [
        "Focused on activation and first-value time.",
        [
          "Focused on ",
          {
            "text": "activation",
            "bold": true
          },
          " and first-value time."
        ]
      ]
    },
    "level": {
      "type": "integer",
      "minimum": 0,
      "description": "Zero-based nesting level for the list item."
    },
    "start": {
      "type": "integer",
      "minimum": 1,
      "maximum": 32767,
      "description": "Restart the list's numbering at this number for this item (counted at its level); the entries after it continue from it. Only meaningful when the payload has `numbering`. Paginated continuation pages use it to keep the numbers of the whole list."
    }
  }
}
Complete definition constraints
Schema constraints
{
  "description": "A flat item inside a list. Strings cover the common case, TextRun[] supports inline rich text without an object wrapper, and object form adds description and nesting depth without creating nested slide content payloads.",
  "oneOf": [
    {
      "type": "string"
    },
    {
      "type": "array",
      "items": {
        "$ref": "#/$defs/TextRun"
      }
    },
    {
      "type": "object",
      "required": [
        "text"
      ],
      "additionalProperties": false,
      "properties": {
        "text": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "type": "array",
              "items": {
                "$ref": "#/$defs/TextRun"
              }
            }
          ],
          "description": "Text for the list item. Use a string for plain text or TextRun[] for inline rich text. TextRun items may be plain strings or formatted run objects.",
          "examples": [
            "Improve retention by 12 points",
            [
              "Improve retention by ",
              {
                "text": "12 points",
                "bold": true
              }
            ]
          ]
        },
        "description": {
          "oneOf": [
            {
              "type": "string"
            },
            {
              "type": "array",
              "items": {
                "$ref": "#/$defs/TextRun"
              }
            }
          ],
          "description": "Optional supporting detail for the list item. Use a string for plain text or TextRun[] for inline rich text.",
          "examples": [
            "Focused on activation and first-value time.",
            [
              "Focused on ",
              {
                "text": "activation",
                "bold": true
              },
              " and first-value time."
            ]
          ]
        },
        "level": {
          "type": "integer",
          "minimum": 0,
          "description": "Zero-based nesting level for the list item."
        },
        "start": {
          "type": "integer",
          "minimum": 1,
          "maximum": 32767,
          "description": "Restart the list's numbering at this number for this item (counted at its level); the entries after it continue from it. Only meaningful when the payload has `numbering`. Paginated continuation pages use it to keep the numbers of the whole list."
        }
      }
    }
  ]
}