# Architecture principles whose category is Metadata / Self-Description / Declarative Systems

> 8 records

This index as JSON: https://banes-lab.com/json/api/facets/architecture/category/metadata-self-description-declarative-systems

## Entries

- [Self-Describing Architecture](https://banes-lab.com/records/architecture/self-describing-architecture.md): A design rule that each module declares its name, version, capabilities and requirements in metadata that tools and the runtime can read.
- [Self-Describing API](https://banes-lab.com/records/architecture/self-describing-api.md): A design rule that an API publishes machine-readable descriptions of its operations, payloads and errors.
- [Self-Describing Structures](https://banes-lab.com/records/architecture/self-describing-structures.md): A design rule that a data structure carries its own type tags and field names, so a reader can interpret it without outside knowledge.
- [Metadata-Driven Design](https://banes-lab.com/records/architecture/metadata-driven-design.md): An approach in which behavior such as forms, routes or plugins is generated from validated metadata instead of written case by case.
- [Declarative Configuration](https://banes-lab.com/records/architecture/declarative-configuration.md): A design rule that a system's settings are declared as validated data, and the system configures itself from that data.
- [Convention over Configuration](https://banes-lab.com/records/architecture/convention-over-configuration.md): A design rule that a framework infers settings from stable naming and placement conventions, and explicit configuration covers only the exceptions.
- [Capability Declaration](https://banes-lab.com/records/architecture/capability-declaration.md): A mechanism by which a plugin or service lists the operations it supports, so callers test the list instead of probing for methods.
- [Manifest-Based Design](https://banes-lab.com/records/architecture/manifest-based-design.md): A design pattern that loads modules or plugins from a validated manifest listing each entry, version and dependency.
