Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 31 additions & 0 deletions spec_artifacts_iso/manifest.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -589,6 +589,37 @@ artifact_types:
required: true
assert:
level: 2
- name: Glossary
# FR-044: a project Ubiquitous-Language glossary. Its `## Terms` table
# (Term | Definition) is harvested by quire-rs and fed to the EARS
# object-aware vague-response check as accepted concrete terms.
grammar_ref: iso-spec-core
frontmatter_schema_ref: schemas/glossary-frontmatter.schema.json
defaults:
id_pattern: GLO-{next:03d}
allowed_links:
- references
- depends_on
examples: []
lint_rules_ref: []
body_extraction:
yield_pattern:
match:
terms:
from: section_body
after_heading: Terms
required: true
assert:
level: 2
terms_table:
from: table_row
under_section: Terms
required: true
assert:
columns:
- Term
- Definition
min_rows: 1
doc_kinds:
- spec
object_types: []
Expand Down
30 changes: 30 additions & 0 deletions spec_artifacts_iso/schemas/glossary-frontmatter.schema.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"required": [
"id",
"title",
"type"
],
"additionalProperties": true,
"properties": {
"id": {
"type": "string",
"minLength": 1
},
"type": {
"const": "Glossary"
},
"title": {
"type": "string",
"minLength": 1
},
"scope": {
"type": "string",
"description": "Optional: the bounded context / component this glossary serves."
},
"description": {
"type": "string"
}
}
}
29 changes: 29 additions & 0 deletions spec_artifacts_iso/skeletons/glossary.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
---
id: GLO-001
title: "Order Management Glossary"
type: Glossary
scope: order-management
---
<!-- Glossary authoring skeleton (spec-artifacts-iso, FR-044). A project's
Ubiquitous-Language vocabulary. Contract (manifest body_extraction
asserts, validated by `quire validate`):
- REQUIRED (level 2): Terms — a table with headers EXACTLY
Term | Definition, with >= 1 data row.
- The `Term` column is harvested by quire-rs and fed to the EARS
object-aware vague-response check (FR-042/043) as accepted concrete
terms, so a requirement that says "the system shall provide a
<glossary term>" is not flagged as vague.
- Define terms the project uses in a SPECIFIC way (ISO/IEC/IEEE 29148
glossary intent); common industry terms ship in the module lexicons
and need not be repeated here.
- Keep headings unique per level. -->
# [GLO-001] Order Management Glossary

## Terms

| Term | Definition |
|------|------------|
| Place | Convert a draft order into a binding purchase request. |
| Capture | Confirm payment for a placed order at the authorised amount. |
| Fulfilment | The pick, pack, and ship work that completes a paid order. |
| Cancellation window | The period during which a placed order may still be cancelled without compensation steps. |