Modify Members of a Reference Set
Purpose
There are a number of reasons for modifying members of a reference set in an extension (depending on the type of reference set), including:
Updating map records to
Refine map rules or map advice
Change the target of a map
Changing the acceptability of a description in a language reference set
Changing the order of subset members specified in an | Ordered type reference set|
Principles
Principles for modifying reference sets include:
Reference sets can be modified by
Adding or inactivating reference set members. Please refer to the guidance on Add Members to a Reference Set or Remove Members from a Reference Set.
Modifying mutable attribute values of reference set members. To see what attributes are mutable for each reference set type, please refer to the specification of the specific reference set type in the reference set release files specification. If the reference set type is a locally defined reference set, please consider any mutability constraints on the individual attributes.
Don't modify immutable attributes of a reference set.
In the case where the modification of an immutable attribute is required, this should be done by inactivating the reference set member and creating a new reference set member with the required, updated values.
If circumstances require you to modify reference set members that belong to another module than the producers extension, following options exist:
Inactivating the specific reference set member in your own module and create a new reference set member with the updated value
The benefit of this approach is that you retain the definition and representation of the reference set member as it was intended by its original authors, and the new reference set member will be easily identified as a local reference set member, as the identifier of that reference set member is not available in the original reference set
Create a new version of the specific reference set member in your own module, and make the necessary modifications
Process
The table below provides a summary of the process to follow when modifying an existing member in a Reference Set.
Table: Modify reference set member
Concept
The metadata concept representing the reference set is retained
Reference Set
A new reference set row is created and the id is retained from the previous version of the refset member.
Versioning and module identification attributes are set accordingly:
effectiveTime is set to the date the extension will be published
active is set to reflect the status of the reference set member, i.e. '1' for active and '0 'for inactive
moduleId is set to identify a module managed by the extension producer
Attributes common for all reference set types are set accordingly:
refsetId is retained as the value from the previous version of this refset member. A member cannot move from one reference set to another
referencedComponentId id retained as the value from the previous version of this refset member. A member cannot change the component which it refers to.
In this case, the existing member record should be inactivated, and a new one created.
Attributes specific to the reference set type are set accordingly:
additional attributes - may be updated with a value, of type (and possibly range) limited by the descriptor record for this Reference Set attribute
Last updated