FHIR Chat · Use of NamingSystem in an IG? · IG creation

Stream: IG creation

Topic: Use of NamingSystem in an IG?


view this post on Zulip Bob Milius (Apr 02 2020 at 15:08):

I recently became aware of NamingSystem and am wondering about its proper use in an IG. From the spec

The NamingSystem resource identifies the existence of a code or identifier system, and its possible and preferred identifiers. The key difference between the resources is who creates and manages them - CodeSystem resources are managed by the owner of the code system resource, who can properly define the features and content of the code system. NamingSystem resources, on the other hand, are frequently defined by 3rd parties that encounter the code system in use, and need to describe the use, but do not have the authority to define the features and content. Additionally, there may be multiple authoritative NamingSystem resources for a code system, but there should only be one CodeSystem resource.

So it sounds like if I'm using an external code system that I don't have authority over (e.g., http://www.genenames.org or http://www.ncbi.nlm.nih.gov/clinvar) to be used in a CodeableConcept, I should describe it in a NamingSystem in the IG. Is this correct?

view this post on Zulip Lloyd McKenzie (Apr 02 2020 at 15:10):

NamingSystem is the only choice for identifier systems. For code systems, you have a choice of CodeSystem or NamingSystem. CodeSystem allows you to convey more detail about the behavior of the code system, even if you don't have the content. There's no strict requirement that you be the authoritative source to be able to expose metadata or content using CodeSystem. NamingSystem is primarily about knowing what the identifiers are and supporting translation between them. CodeSystem is more about use by terminology services. In theory, you might have both. @Rob Hausam, has vocab come up with any clearer guidance about when to use CodeSystem vs. NamingSystem vs. both?

view this post on Zulip Bob Milius (Apr 02 2020 at 15:19):

@Lloyd McKenzie , I'm having a some difficulty reconciling these two

There's no strict requirement that you be the authoritative source to be able to expose metadata or content using CodeSystem

and from the NamingSystem spec

CodeSystem resources are managed by the owner of the code system resource, who can properly define the features and content of the code system

I can see multiple IGs describing genenames.org. Would each on have its own CodeSystem describing it?

view this post on Zulip Lloyd McKenzie (Apr 02 2020 at 15:23):

Just as there can be multiple Condition instances talking about the same problem (from the perspective of different providers/systems), you can also have different CodeSystem instances talking about the same CodeSystem. Ideally, every code system author would produce a single authoritative CodeSystem instance that would simply be propagated and cached. However, there are lots of CodeSystem authors that aren't FHIR-aware (or HL7-aware or even terminology-aware), so that ideal state is hard to get to. In some cases, HL7 takes on responsibility for publishing external terminologies in a standards-friendly way, but that's not always possible (for technical, licensing and/or workload reasons).

view this post on Zulip Patrick Werner (Apr 02 2020 at 15:52):

Thanks for the clarification. I also only used NamingSystems for Identifier Namespaces. But i agree with Bob: the guidance on the NamingSystem Page is misleading in the part about CodeSystems

view this post on Zulip Patrick Werner (Apr 02 2020 at 15:54):

I already asked in the hapi thread, but as we are talking about it now: In R5 NamingSystem has a canonicalUri. I expected that this uri would be the same as one of the uniqueIdentifiers, but it isn't.
Related question: it would be nice to be able to bind Identifier to NamingSystems like we are binding CodeableConcepts to ValueSets.

view this post on Zulip Vassil Peytchev (Apr 02 2020 at 15:56):

Patrick Werner said:

Related question: it would be nice to be able to bind Identifier to NamingSystems like we are binding CodeableConcepts to ValueSets.

Is this not possible with slicing?

view this post on Zulip Patrick Werner (Apr 02 2020 at 15:57):

you could slice an Identifier and fix the System to a string, but not to a NamingSystem, which could contain several system strings for the same Namingsystem

view this post on Zulip Rob Hausam (Apr 02 2020 at 16:48):

@Lloyd McKenzie Vocab WG has had some discussions on different occasions, but so far we haven't developed clearer specific guidance about when to use CodeSystem vs. NamingSystem vs. both, although we definitely agree that there is a need for that. We should be able to bring up the issue on the call today if we're ready to try to move that forward. But FHIR-I currently owns the NamingSystem resource. How would you suggest would be best to proceed (in both WGs, and otherwise)?

view this post on Zulip Lloyd McKenzie (Apr 02 2020 at 16:50):

If we have clear guidance on when to use each (which probably best comes from the vocab WG), I'm pretty sure FHIR-I will be happy to update the intro section of the NamingSystem resource to cover it

view this post on Zulip Lloyd McKenzie (Apr 02 2020 at 16:50):

@Patrick Werner I argued long and hard against putting a canonical URL on NamingSystem because I figured it would inevitably be confusing - because it's not actually one of the URIs you can use in the 'system' element :(

view this post on Zulip Patrick Werner (Apr 02 2020 at 17:52):

Lloyd McKenzie said:

Patrick Werner I argued long and hard against putting a canonical URL on NamingSystem because I figured it would inevitably be confusing - because it's not actually one of the URIs you can use in the 'system' element :(

I agree on the confusing part. If there was a Binding Identifier -> NamingSystem.uri i could see the benefit here. As i can declare a binding to multiple system uris without multiple slices.

view this post on Zulip Patrick Werner (Apr 02 2020 at 17:54):

But having the same canonical uri as one of the uniqueId.values would be possible? I naturally would do it that way.

view this post on Zulip Lloyd McKenzie (Apr 02 2020 at 19:55):

You can, but if that identifier then gets deprecated - as may happen - you can't very well change the canonical URL

view this post on Zulip Grahame Grieve (Apr 02 2020 at 19:55):

I think it would be inappropriate - the canonical URI on the naming system represents the identify of the naming statement

view this post on Zulip Patrick Werner (Apr 02 2020 at 20:42):

Then a naive question: what's the benefit of the canonical url? I can't bind to it as far as i understood. So is there a use-case for it?

view this post on Zulip Grahame Grieve (Apr 02 2020 at 20:46):

without a canonical URL, there's no real way to refer to it as as statement. And we have all sorts of infrastructure that manages content and refers to it via canonical URLs. Except for Naming system, that never fits into that infrastructure because of this

view this post on Zulip Jens Villadsen (Apr 03 2020 at 06:18):

I've used NamingSystem to document origin of the identifier and other stuff - but it will only act as a sort of documentation

view this post on Zulip Robert McClure (Apr 07 2020 at 16:00):

@Rob Hausam @Grahame Grieve @Lloyd McKenzie @Ted Klein @Carol Macumber NamingSystem needs to be discussed in vocab ASAP. It seems to me we need to restrict the use of namingsystem to very few use cases (honestly I think it should disappear), open up the use of codesystem to include how it is used in the majority of cases now which is as an artifact created by a FHIR "designer" to represent something they need but do not control, and then clean up the documentation. IMHO I think we need to use codesystem for a wider range of situations then our documentation currently indicates. We might want to move this discussion (again) to terminology stream?

view this post on Zulip Rob Hausam (Apr 07 2020 at 16:11):

We can certainly move the discussion of the use (or not) of NamingSystem with code systems to the terminology stream.

view this post on Zulip Lloyd McKenzie (Apr 07 2020 at 16:30):

Conversation moved here: https://chat.fhir.org/#narrow/stream/179202-terminology/topic/NamingSystem


Last updated: Apr 12 2022 at 19:14 UTC