OPF
SpecDefinition referenceView source

Timeline

Timeline content. An array is shorthand for { "events": value }; object form carries optional name and description metadata.

Metadata

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

Field index

This definition uses the forms or value constraints below.

oneOf 1 · array<ref:TimelineEvent>

Exact constraints for oneOf 1
oneOf 1 schema
{
  "type": "array",
  "items": {
    "$ref": "#/$defs/TimelineEvent"
  },
  "minItems": 1
}

oneOf 2 · object

FieldTypeReq.DefaultDescription
namestring——Short timeline label.
descriptionstring——Optional timeline-level context.
eventsarray<ref:TimelineEvent>yes—Timeline events ordered by narrative, sequence, or chronology.

name

typestringrequirednodefault—

Short timeline label.

name.json
{
  "name": "Rollout Plan"
}

description

typestringrequirednodefault—

Optional timeline-level context.

description.json
{
  "description": "Major milestones for the regional rollout."
}

events

typearray<ref:TimelineEvent>requiredyesdefault—

Timeline events ordered by narrative, sequence, or chronology.

events[].status · Allowed values
"done""current""planned"
Exact constraints for oneOf 2
oneOf 2 schema
{
  "type": "object",
  "additionalProperties": false,
  "required": [
    "events"
  ],
  "properties": {
    "name": {
      "type": "string",
      "description": "Short timeline label.",
      "examples": [
        "Rollout Plan",
        "Migration Path"
      ]
    },
    "description": {
      "type": "string",
      "description": "Optional timeline-level context.",
      "examples": [
        "Major milestones for the regional rollout."
      ]
    },
    "events": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/TimelineEvent"
      },
      "minItems": 1,
      "description": "Timeline events ordered by narrative, sequence, or chronology."
    }
  }
}
Complete definition constraints
Schema constraints
{
  "description": "Timeline content. An array is shorthand for { \"events\": value }; object form carries optional name and description metadata.",
  "oneOf": [
    {
      "type": "array",
      "items": {
        "$ref": "#/$defs/TimelineEvent"
      },
      "minItems": 1
    },
    {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "events"
      ],
      "properties": {
        "name": {
          "type": "string",
          "description": "Short timeline label.",
          "examples": [
            "Rollout Plan",
            "Migration Path"
          ]
        },
        "description": {
          "type": "string",
          "description": "Optional timeline-level context.",
          "examples": [
            "Major milestones for the regional rollout."
          ]
        },
        "events": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/TimelineEvent"
          },
          "minItems": 1,
          "description": "Timeline events ordered by narrative, sequence, or chronology."
        }
      }
    }
  ]
}