# Case Dialect

> A mechanism that binds file extensions to the case their language names files in and reads the same subject, variant and concern slots from the stem's word boundaries.

Record: `architecture:case-dialect`
Kind: mechanism
Layer: [Structural Core](https://banes-lab.com/records/layer/structural-core.md)
Severity: contextual
Scope: filename
Canonical: https://banes-lab.com/ontology#architecture-case-dialect

Listed in [Architecture principles](https://banes-lab.com/api/records/architecture.md), after [Externally Resolved Slot](https://banes-lab.com/records/architecture/externally-resolved-slot.md) and before [Root Spine Files](https://banes-lab.com/records/architecture/root-spine-files.md).

## Repair

- Refactored by: Declare the Dialect, Rename to the Case's Word Run
- Detected by: a dialect file whose trailing words are not a declared concern tag, or a dialect naming a case no splitter reads
- Violated by: declaring a separate vocabulary per language instead of one set of slots read through each language's case
- Measured by: dialect files that do not resolve to three declared slots
- Enforced by: naming gate, which parses a dialect's word run, and the taxonomy validator, which refuses a case no splitter reads

## Requires

- [Word-Boundary Case](https://banes-lab.com/records/lexicon/word-boundary-case.md)
- [Positional Slot Resolution](https://banes-lab.com/records/architecture/positional-slot-resolution.md)

## Reinforces

- [Closed Vocabulary](https://banes-lab.com/records/architecture/closed-vocabulary.md)
- [Portability](https://banes-lab.com/records/architecture/portability.md)

## Enables

- [Glob Resolvability](https://banes-lab.com/records/lexicon/glob-resolvability.md)

## Conflicts with

- [Concern-Swallowing Compound](https://banes-lab.com/records/lexicon/concern-swallowing-compound.md)

## Contracts

- [Dialect Resolution](https://banes-lab.com/records/algorithms/dialect-resolution.md)

## Severity

- [contextual](https://banes-lab.com/records/vocabulary/severity-contextual.md)

## Category

- [Taxonomy / Classification / Naming](https://banes-lab.com/records/architecture-category/taxonomy-classification-naming.md)

## Linked from

- [Portability / Infrastructure / Deployment](https://banes-lab.com/ontology/principles/architecture-category-portability-infrastructure-deployment.md)
- [Taxonomy / Classification / Naming](https://banes-lab.com/ontology/principles/architecture-category-taxonomy-classification-naming.md)
- [Taxonomy / Classification / Naming](https://banes-lab.com/ontology/lexicon/lexicon-category-taxonomy-classification-naming.md)
- [Taxonomy](https://banes-lab.com/ontology/algorithms/algorithms-domain-taxonomy.md)
- [Severity levels](https://banes-lab.com/ontology/schema/the-vocabulary-severity.md)

## Evidence in the code

- [parseDialect](https://banes-lab.com/source/governance/shared/matchers/filename.matcher.ts.md)
