Details
-
Technical Correction
-
Resolution: Persuasive
-
Medium
-
FHIR Core (FHIR)
-
R4
-
FHIR Infrastructure
-
References
-
2.3.0.8
-
-
Correction
-
R5
Description
In the section "Contained Resources" on the page for the Reference datatype, we see that contained resources can reference their containers using the special "#" syntax:
(begin quote)
For a resource that references the container, the reference is "#", like this:
<Patient xmlns="http://hl7.org/fhir"> <id value="something"/> <contained> <Provenance> <!-- no id necessary (though still allowed) --> <target> <reference value="#"/> </target> </Provenance> </contained> <!-- other attributes --> </Patient>
(end quote)
However, the invariant ref-1 states:
reference.startsWith('#').not() or (reference.substring(1).trace('url') in %rootResource.contained.id.trace('ids'))`
The part reference.substring(1) will in this case result in the empty string, which will not be found in the %rootResource.contained.id collection.
So, I think the business rule will trigger for this kind of reference, and we should adapt ref-1 to make this possible.
Attachments
Issue Links
- relates to
-
FHIR-37793 Invariant ref-1 incorrectly fails on references with display only
- Published