# YAML Schema for source type type: object properties: type: type: string const: "types/source.md" description: Must reference the source type-spec source_type: type: string enum: [article, document, notes, spec, image] default: notes description: The category of source material author: type: string description: Author of the source material minLength: 1 raw_files: type: array items: type: string description: List of raw file paths this source covers minItems: 1 source_url: type: [string, "null"] description: Upstream URL for external sources format: uri source_language: type: string pattern: "^[a-z]{2}$" description: >- ISO 639-1 code for the language of the raw material, e.g. de, en, fr. The page itself is written in the KB language regardless; this records what had to be translated. Optional - absent on pages predating the rule. date: type: string format: date pattern: "^\\d{4}-\\d{2}-\\d{2}$" description: Publication or creation date in YYYY-MM-DD format tags: type: array items: type: string description: Navigation tags for categorization entities: type: array items: type: string description: Entity titles mentioned in this source concepts: type: array items: type: string description: Concept titles mentioned in this source summary: type: string description: 1-line summary for index.md minLength: 1 required: - type - source_type - author - raw_files - date - summary additionalProperties: false