info-tech-canon/infospace/schemas/practice-pattern.schema.yaml

55 lines
1,015 B
YAML
Raw Normal View History

$schema: https://json-schema.org/draft/2020-12/schema
$id: https://info-tech-canon.local/schemas/practice-pattern.schema.yaml
title: InfoTechCanon PracticePattern frontmatter
type: object
required:
- id
- title
- type
- scheme
- status
- version
- summary
properties:
id:
type: string
pattern: ^practice-pattern/[a-z0-9]+(?:-[a-z0-9]+)*$
title:
type: string
pattern: ^[A-Z][A-Za-z0-9]*$
type:
const: practice-pattern
scheme:
const: practice-pattern/0.1
status:
enum:
- draft
- candidate
- active
- deprecated
- retired
version:
type: string
pattern: ^[0-9]+\.[0-9]+(?:\.[0-9]+)?$
summary:
type: string
minLength: 1
aliases:
type: array
items:
type: string
uses:
type: array
items:
type: string
related_patterns:
type: array
items:
type: string
pattern: ^practice-pattern/
known_uses:
type: array
items:
type: string
additionalProperties: true