Some initial work to address RADx metadata management task XA6.1.
This work will support the evolution of instances when their template is modified.
The initial goal is to check all instances of a template against a modified version of that template.
This check will determine if a change is non-breaking and if it is to provide the option of 'promoting' instances to conform to the new template.
If the change is a breaking one (e.g., a field is removed from a template) some options may need to be presented to the user (e.g., promote an instance deleting the field from it or leaving the instance as is).
Other changes could be far more complex (e.g., cardinality changes for multi-instance fields and elements, datatype changes for fields, string length specification changes, value constraint changes). Need to come up with a list of these possible changes.
Some initial work to address RADx metadata management task XA6.1.
This work will support the evolution of instances when their template is modified.
The initial goal is to check all instances of a template against a modified version of that template.
This check will determine if a change is non-breaking and if it is to provide the option of 'promoting' instances to conform to the new template.
If the change is a breaking one (e.g., a field is removed from a template) some options may need to be presented to the user (e.g., promote an instance deleting the field from it or leaving the instance as is).
Other changes could be far more complex (e.g., cardinality changes for multi-instance fields and elements, datatype changes for fields, string length specification changes, value constraint changes). Need to come up with a list of these possible changes.