Expand description
Attribute-list validation.
Rules:
- At least one attribute.
- Attribute names are unique.
- Attribute names do not collide with dimension names — but that
cross-check happens at the schema level (the builder calls
super::dims::checkfirst, then this).