Canvas Use-Case Documentation — Skill Instructions
Scope
This skill covers creation and improvement of:
- Markdown files (
*.md)
- PlantUML files (
*.puml)
Never edit source code files, or Helm-docs generated content (between <!--- BEGIN PARAMS ---> and <!--- END PARAMS ---> markers).
Templates
Templates are available in docs/templates/:
chart-readme-template.md — Helm chart documentation
operator-readme-template.md — Operator documentation
use-case-template.md — Use case documentation
test-component-readme-template.md — Test component documentation
plantuml-sequence-template.puml — PlantUML diagrams
Exemplar Documentation
Study these files for style and structure:
README.md — Main project README
source/operators/README.md — Operators overview
source/operators/componentOperator/README.md — Individual operator
usecase-library/UC002-Manage-Components.md — Use case example
SecurityPrinciples.md — Design document example
Canvas-design.md — Architecture overview
Terminology Standards
Always capitalize:
- "ODA Canvas" (never standalone "Canvas")
- "ODA Component"
- "Software Operators"
- "Component Management", "API Management", "Identity Management"
- "Kubernetes Operator Pattern"
- "Behaviour-Driven Development" (British spelling)
Always hyphenate:
- sub-resources, cloud-native, machine-readable, use-case (in titles)
Use backticks for:
- Custom Resource Definitions:
Component, ExposedAPI, DependentAPI
- Kubernetes resources:
Deployment, Service, ConfigMap
- Commands:
kubectl, helm, kopf
- File paths:
README.md, values.yaml
- Version identifiers:
v1, v1beta3
Bold on first use:
- Key technical concepts: operators, coreFunction, security, management
Documentation Structure Patterns
Use-Case Documentation
# {Verb} {Object} use case
Overview paragraph explaining the use case.
## Assumptions
- Bullet list of assumptions
## {Scenario name}
Description with PlantUML diagram.

[plantUML code]({relative-path-to-puml})
Link to BDD features at end.
Operator README
# {Operator Name}
Purpose/overview paragraph.
## Sequence Diagram
PlantUML diagram showing operator workflow.
## Reference Implementation
Description of implementation.
## Interactive development and Testing
Development instructions (include `kopf run --namespace=components --standalone` for Python/kopf operators).
## Build automation
CI/CD information.
Helm Chart README
# {Chart Name}
## Overview
Contextual description of what the chart does.
## Architecture
How it fits in the ODA Canvas.
<!--- BEGIN PARAMS --->
<!--- Helm-docs generated content - DO NOT EDIT --->
<!--- END PARAMS --->
## Usage Examples
Practical helm install commands.
## Troubleshooting
Common issues and solutions.
Links to:
- Related operators
- Relevant use cases
- Installation guide
PlantUML Diagram Guidelines
Output directories:
- Use cases:
usecase-library/pumlFiles/
- Design docs:
docs/pumlFiles/
- Operators:
source/operators/pumlFiles/
Naming convention:
- Use kebab-case:
uc002-install-component.puml
- Pattern:
{use-case-id}-{scenario-name}.puml
Standard markdown pattern (using local SVG):

[plantUML code]({relative-path-to-puml})
Standard actors:
- Canvas, Component, Operator, Kubernetes API, API Gateway, Identity Management, Developer, Component Vendor
Cross-Reference Validation
Always validate bidirectional links:
- Use cases ↔ BDD features:
usecase-library/UC###-*.md ↔ feature-definition-and-test-kit/features/UC###-F###-*.feature
- Operator READMEs should reference use case sequence diagrams
- Use relative paths with
./ or ../
- Always use forward slashes
- Verify target files exist
Writing Style
Follow the comprehensive writing style guide in docs/writing-style.md which covers:
- Voice and tone (active voice, imperative mood, perspective)
- Sentence structure and length variation
- Heading hierarchy and capitalization
- Code blocks, links, and list formatting
- Markdown formatting conventions
The writing style guide is the single source of truth for all documentation formatting and style decisions.
Key Reference Files
AGENTS.md — Project-level conventions
docs/writing-style.md — Comprehensive writing style guide
usecase-library/use-case-naming-conventions.md — Use-case naming conventions
Constraints
- NEVER edit source code files
- NEVER modify helm-docs generated content between markers
- NEVER create documentation without checking templates first
- NEVER use standalone "Canvas" — always "ODA Canvas"
- ALWAYS preserve existing PlantUML diagram URLs
- ALWAYS use British spelling "Behaviour-Driven Development" not "Behavior"
- ALWAYS check bidirectional cross-references when adding links
Source: tmforum-oda/oda-canvas — distributed by TomeVault.
1---2name: canvas-usecase-documentation3description: Guide for writing ODA Canvas documentation including README files, use case documents, PlantUML diagrams, and Helm chart docs. Covers templates, terminology standards, writing style conventions, cross-reference validation, and documentation structure patterns. Use this skill when creating or improving markdown documentation, use cases, or PlantUML diagrams in the ODA Canvas project. Use when this capability is needed.4---56# Canvas Use-Case Documentation — Skill Instructions78## Scope910This skill covers creation and improvement of:11- Markdown files (`*.md`)12- PlantUML files (`*.puml`)1314Never edit source code files, or Helm-docs generated content (between `<!--- BEGIN PARAMS --->` and `<!--- END PARAMS --->` markers).1516## Templates1718Templates are available in `docs/templates/`:19- `chart-readme-template.md` — Helm chart documentation20- `operator-readme-template.md` — Operator documentation21- `use-case-template.md` — Use case documentation22- `test-component-readme-template.md` — Test component documentation23- `plantuml-sequence-template.puml` — PlantUML diagrams2425## Exemplar Documentation2627Study these files for style and structure:28- `README.md` — Main project README29- `source/operators/README.md` — Operators overview30- `source/operators/componentOperator/README.md` — Individual operator31- `usecase-library/UC002-Manage-Components.md` — Use case example32- `SecurityPrinciples.md` — Design document example33- `Canvas-design.md` — Architecture overview3435## Terminology Standards3637**Always capitalize:**38- "ODA Canvas" (never standalone "Canvas")39- "ODA Component"40- "Software Operators"41- "Component Management", "API Management", "Identity Management"42- "Kubernetes Operator Pattern"43- "Behaviour-Driven Development" (British spelling)4445**Always hyphenate:**46- sub-resources, cloud-native, machine-readable, use-case (in titles)4748**Use backticks for:**49- Custom Resource Definitions: `Component`, `ExposedAPI`, `DependentAPI`50- Kubernetes resources: `Deployment`, `Service`, `ConfigMap`51- Commands: `kubectl`, `helm`, `kopf`52- File paths: `README.md`, `values.yaml`53- Version identifiers: `v1`, `v1beta3`5455**Bold on first use:**56- Key technical concepts: **operators**, **coreFunction**, **security**, **management**5758## Documentation Structure Patterns5960### Use-Case Documentation61```markdown62# {Verb} {Object} use case6364Overview paragraph explaining the use case.6566## Assumptions67- Bullet list of assumptions6869## {Scenario name}70Description with PlantUML diagram.71727374[plantUML code]({relative-path-to-puml})7576Link to BDD features at end.77```7879### Operator README80```markdown81# {Operator Name}8283Purpose/overview paragraph.8485## Sequence Diagram86PlantUML diagram showing operator workflow.8788## Reference Implementation89Description of implementation.9091## Interactive development and Testing92Development instructions (include `kopf run --namespace=components --standalone` for Python/kopf operators).9394## Build automation95CI/CD information.96```9798### Helm Chart README99```markdown100# {Chart Name}101102## Overview103Contextual description of what the chart does.104105## Architecture106How it fits in the ODA Canvas.107108<!--- BEGIN PARAMS --->109<!--- Helm-docs generated content - DO NOT EDIT --->110<!--- END PARAMS --->111112## Usage Examples113Practical helm install commands.114115## Troubleshooting116Common issues and solutions.117118Links to:119- Related operators120- Relevant use cases121- Installation guide122```123124## PlantUML Diagram Guidelines125126**Output directories:**127- Use cases: `usecase-library/pumlFiles/`128- Design docs: `docs/pumlFiles/`129- Operators: `source/operators/pumlFiles/`130131**Naming convention:**132- Use kebab-case: `uc002-install-component.puml`133- Pattern: `{use-case-id}-{scenario-name}.puml`134135**Standard markdown pattern (using local SVG):**136```markdown137138139[plantUML code]({relative-path-to-puml})140```141142**Standard actors:**143- Canvas, Component, Operator, Kubernetes API, API Gateway, Identity Management, Developer, Component Vendor144145## Cross-Reference Validation146147Always validate bidirectional links:148- Use cases ↔ BDD features: `usecase-library/UC###-*.md` ↔ `feature-definition-and-test-kit/features/UC###-F###-*.feature`149- Operator READMEs should reference use case sequence diagrams150- Use relative paths with `./` or `../`151- Always use forward slashes152- Verify target files exist153154## Writing Style155156Follow the comprehensive writing style guide in `docs/writing-style.md` which covers:157- Voice and tone (active voice, imperative mood, perspective)158- Sentence structure and length variation159- Heading hierarchy and capitalization160- Code blocks, links, and list formatting161- Markdown formatting conventions162163The writing style guide is the single source of truth for all documentation formatting and style decisions.164165## Key Reference Files166167- `AGENTS.md` — Project-level conventions168- `docs/writing-style.md` — Comprehensive writing style guide169- `usecase-library/use-case-naming-conventions.md` — Use-case naming conventions170171## Constraints172173- NEVER edit source code files174- NEVER modify helm-docs generated content between markers175- NEVER create documentation without checking templates first176- NEVER use standalone "Canvas" — always "ODA Canvas"177- ALWAYS preserve existing PlantUML diagram URLs178- ALWAYS use British spelling "Behaviour-Driven Development" not "Behavior"179- ALWAYS check bidirectional cross-references when adding links180181---182> Source: [tmforum-oda/oda-canvas](https://github.com/tmforum-oda/oda-canvas) — distributed by [TomeVault](https://tomevault.io).183<!-- tomevault:4.0:skill_md:2026-06-23 -->