- Renamed DigitalPlatformV2DataSource to DigitalPlatformDataSource with updated description and mappings. - Updated DigitalPlatformV2KeyContact to DigitalPlatformKeyContact, enhancing description and mappings. - Refined DigitalPlatformV2OrganizationProfile to DigitalPlatformOrganizationProfile, improving description and slot usage. - Revised DigitalPlatformV2OrganizationStatus to DigitalPlatformOrganizationStatus, clarifying description and mappings. - Changed DigitalPlatformV2PrimaryPlatform to DigitalPlatformPrimaryPlatform, enhancing description and slot definitions. - Updated DigitalPlatformV2Provenance to DigitalPlatformProvenance, refining description and mappings. - Revised DigitalPlatformV2ServiceDetails to DigitalPlatformServiceDetails, improving description and mappings. - Changed DigitalPlatformV2TransformationMetadata to DigitalPlatformTransformationMetadata, enhancing description and mappings. - Added new classes: DetectionThreshold, DeviceType, DeviceTypes, DiarizationStatus, DigitalArchive, DigitalArchiveRecordSetType, DigitalArchiveRecordSetTypes, and DigitalConfidence with appropriate descriptions and mappings. - Established rules for class descriptions, multilingual support, and slot definitions to ensure consistency and clarity across the schema.
1.5 KiB
1.5 KiB
Rule: Class File Name Must Match Class Label/Name
🚨 Critical
When a class label/name is changed, the class file name must be renamed to match.
This keeps class modules discoverable, prevents stale imports, and avoids long-term naming drift.
The Rule
-
If the primary class identifier changes, rename the file in the same edit set.
- Change triggers include updates to:
- top-level
name: - class key under
classes: - canonical class label used for module naming
- top-level
- Change triggers include updates to:
-
File naming must reflect the canonical class name.
- ✅
DigitalPlatformProfile.yamlfor classDigitalPlatformProfile - ❌
DigitalPlatformV2.yamlfor classDigitalPlatformProfile
- ✅
-
After renaming a file, update all references.
imports:in other class/slot/type files- manifests/indexes/build inputs
- any generated or curated mapping lists that include file paths
-
Keep semantic names versionless.
- Do not preserve old versioned file names when class names are de-versioned.
- Coordinate with
no-version-indicators-in-names-rule.md.
Required Checklist
- File name matches canonical class name
id:andname:are internally consistent- All import paths updated
- Search confirms no stale old file-name references remain
- YAML parses after rename
Example
Before:
# file: DigitalPlatformV2.yaml
name: DigitalPlatformProfile
classes:
DigitalPlatformProfile:
After:
# file: DigitalPlatformProfile.yaml
name: DigitalPlatformProfile
classes:
DigitalPlatformProfile: