FHIR ballot issue: Identifying an extension
Oct 15, 2012This issue is a follow on to the previous post about representing identifiers in FHIR. A FHIR extension is represented this way:
<extension xmlns="http://hl7.org/fhir">
<[**code**](null)><!-- **1..1** [id](null) Code that identifies the meaning of the extension --></code>
<[**profile**](null)><!-- **1..1** [uri](null) Profile that defines the extension --></profile>
<!-- content of the extension -->
</extension>
So an extension is identified using a system:id pair, as discussed in the previous post, only called “profile” and “code” in this case. However this is a technical identifier, and the identification of the extension should simply be a url, like this:
<extension xmlns="http://hl7.org/fhir">
<definition><!-- **1..1** uri Where to find the definition of the extension --></definition>
<!-- content of the extension -->
</extension>
Where the definition would typically follow the pattern [url of profile]#[Profile.extensionDefn.code]
like this:
<code>http://hl7.org/fhir/registry/profiles/@iso-21090#updateMode<code>
if it references a formal extension definition (as it should). (btw, the registry doesn’t exist at that url, nor have we named the ISO 21090 profile, or it’s contents)
Discussion
This is a FHIR ballot issue. Comments on this blog post are discouraged – unless to point out outright errors in this analysis. Discussion will be taken up on the FHIR email list, with substantial contributions added to this wiki page. A doodle poll will be held for the final vote – this will be announced on the FHIR email list.