$schema: https://json-schema.org/draft/2020-12/schema
title: Data Structures Atlas entry
$id: https://data-structures.timohaas.de/schema.yaml
type: object
required: [id, name, category, summary, status, sources]
properties:
  id: {type: string, pattern: '^[a-z0-9][a-z0-9-]*$'}
  name: {type: string}
  aliases: {type: array, items: {type: string}}
  category: {type: string}
  summary: {type: string}
  immutable: {type: boolean}
  persistent: {type: boolean}
  mutable: {type: boolean}
  introduced: {type: string}
  status: {type: string, enum: [historical, established, active, experimental, deprecated]}
  complexity: {type: object, additionalProperties: {type: string}}
  use_cases: {type: array, items: {type: string}}
  real_world_uses: {type: array, items: {type: object, required: [system, evidence], properties: {system: {type: string}, evidence: {type: string}, url: {type: string}}}}
  implementations: {type: array, items: {type: object, required: [name, language, url], properties: {name: {type: string}, language: {type: string}, url: {type: string}}}}
  related: {type: array, items: {type: string}}
  sources: {type: array, items: {type: object, required: [title, url, kind], properties: {title: {type: string}, url: {type: string}, kind: {type: string}, accessed: {type: string}}}}
  confidence: {type: string, enum: [low, medium, high]}
  last_reviewed: {type: string}
additionalProperties: false
