A deprecated feature is a DSL concept or property marked for removal while dependent domain knowledge remains usable. Deprecation protects that knowledge by warning domain experts and providing a migration path before technical removal. section 10.3.3
A practical deprecation process should:
- Report every use through a constraint whose issue explains the feature’s deprecated status, reason, removal timeline, and supported replacement. section 10.3.3
- Begin at least several releases before removal, initially using warning severity and later increasing it to error severity. section 10.3.3
- Remove remaining concept instances or property settings through an AST migration, including references to removed concept instances. section 10.3.3
- Delete the deprecated feature’s remaining implementation traces only after DSL content no longer uses it. section 10.3.3
Replacing a deprecated DSL property
A constraint reports each setting of the old property. Its message explains why the property is deprecated and how to express the same domain knowledge with supported constructs. An AST migration then transforms remaining content before the implementation deletes the property. section 10.3.3
