hl7au / au-fhir-pd

Australian context FHIR profile for provider directory services
MIT License
5 stars 7 forks source link

Mandate identifiers #46

Closed robeastwood-agency closed 9 months ago

robeastwood-agency commented 10 months ago

This PR firstly addresses the cleanup of a number of issues related to identifier definitions, as documented here: https://github.com/hl7au/au-fhir-pd/issues/45

And over and above those changes, the feature to mandate at least 1 known identifier was implemented; see feature request here: https://github.com/hl7au/au-fhir-pd/issues/36

The feature was implemented by:

  1. changing identifier cardinality on each profile to 1..* and
  2. adding an invariant on each profile whereby at least one of the known identifiers (inherited from AU Base or introduced in this PD IG) must be present.

To support this change, each profile has narrative describing this change in order to make it more prominent.

Note also that in a meeting with @brettesler-ext and @jakubsielewicz , on Wed 6 Dec 2023, it was decided that the PD Location profile identifier invariant should not be made mandatory but only as a warning. Therefore this invariant has constraint severity as 'warning' instead of 'error'.

To support these changes, some of which are breaking changes, the changelog has been comprehensively updated to describe changes related to identifiers and specifically call out what the breaking changes are.

Each of the profiles were tested across a wide sweep of possible scenario test cases, all of which result in the correct validation behaviour (passing and failing).