# Agnostic-First Vocabulary

> A design rule that a domain-specific role word is admitted only where no domain-neutral role already covers it.

Record: `architecture:agnostic-first-vocabulary`
Kind: principle
Layer: [Structural Core](https://banes-lab.com/records/layer/structural-core.md)
Severity: mandatory
Scope: repository, vocabulary
Canonical: https://banes-lab.com/ontology#architecture-agnostic-first-vocabulary

Listed in [Architecture principles](https://banes-lab.com/api/records/architecture.md), after [Layer Spine Precedence](https://banes-lab.com/records/architecture/layer-spine-precedence.md) and before [Guided Vocabulary Refusal](https://banes-lab.com/records/architecture/guided-vocabulary-refusal.md).

## Repair

- Refactored by: Classify to the Meta Concern
- Detected by: a domain tag whose role a declared agnostic concern already covers
- Violated by: restating an agnostic role in local domain dialect
- Measured by: domain-tag share of the vocabulary
- Enforced by: [rejection table](https://banes-lab.com/records/lexicon/rejection-table.md), developer approval

## Requires

- [Is-A Test](https://banes-lab.com/records/lexicon/is-a-test.md)
- [Rejection Table](https://banes-lab.com/records/lexicon/rejection-table.md)

## Reinforces

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

## Enables

- [Discoverability](https://banes-lab.com/records/lexicon/discoverability.md)

## Conflicts with

- [Vocabulary Inflation](https://banes-lab.com/records/lexicon/vocabulary-inflation.md)
- [Nominalized Process Word](https://banes-lab.com/records/lexicon/nominalized-process-word.md)
- [Saturated Role Tag](https://banes-lab.com/records/lexicon/saturated-role-tag.md)

## Severity

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

## Category

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

## Reinforced by

- [Guided Vocabulary Refusal](https://banes-lab.com/records/architecture/guided-vocabulary-refusal.md)

## Linked from

- [Taxonomy / Classification / Naming](https://banes-lab.com/ontology/principles/architecture-category-taxonomy-classification-naming.md)
- [Quality Attributes](https://banes-lab.com/ontology/lexicon/lexicon-category-quality-attributes.md)
- [Taxonomy / Classification / Naming](https://banes-lab.com/ontology/lexicon/lexicon-category-taxonomy-classification-naming.md)
- [Severity levels](https://banes-lab.com/ontology/schema/the-vocabulary-severity.md)
