Verbesserung
Top-Thema
Wichtig
Kleinigkeit
Wichtig
Wichtig
#24728
Typ-Default von Attribut-Annotationen optional vererben
TLAttributeAnnotation`s (Annotationen an Attributen im Modell) werden standardmäßig vom Attribut-Typ "geerbt". D.h. wenn eine solche Annotation nicht direkt an einem Attribut gesetzt ist, wird die Annotation verwendet, die am Attribut-Typ gesetzt ist (wenn dort eine gesetzt ist). Mit #24139 kann diese Vererbung durch die Meta-Annotation `NoTypeDefault an der TLAttributeAnnotation unterbunden werden.
Verbesserung
Ist die Annotation auch am Ziel-Typ des Attributes nicht gesezt, kann man wollen, dass dann diejenige Annotation gilt, die am ersten Obertyp des Attribut-Zieltyps gesetzt ist (entlang der Ketter der primären Obertypen des Attribut-Zieltyps).
Dies kann durch die Annotation @DefaultStrategy(Strategy.PRIMARY_GENERALIZATION) an der TLAttributeAnnotation erreicht werden.
Code-Migration
Die Annotation @NoTypeDefault muss durch @DefaultStrategy(Strategy.NONE) ersetzt werden.
Test
- Export-Binding-Annotation com.top_logic.model.io.annotation.TLExportBinding