FHIR Chat · re-basing a vocabulary · terminology

Stream: terminology

Topic: re-basing a vocabulary


view this post on Zulip John Moehrke (Jun 21 2021 at 17:41):

I would like some guidance on changing the canonical URI used as the system for a codeSystem.

view this post on Zulip John Moehrke (Jun 21 2021 at 17:47):

Long ago in FHIR core we guessed at what the system value would be for the IHE managed codes for format code. Today the system value IHE is using is different. This difference is driven by IT facts-of-life, and norms driven by the IG Publisher tooling. It is not clear to me that this difference is overall a problem. What is the toolbox of things I can used to make this less painful?

view this post on Zulip John Moehrke (Jun 21 2021 at 17:47):

so, FHIR core thinks the system canonical URI should be

        <system value="http://ihe.net/fhir/ValueSet/IHE.FormatCode.codesystem"/>

view this post on Zulip John Moehrke (Jun 21 2021 at 17:49):

I can't go forward with that... because it is odd to have a canonical URI that lists both ValueSet in the URL, and codesystem in the id.... the root ihe.net is also not where these will go.

view this post on Zulip John Moehrke (Jun 21 2021 at 17:50):

so IHE is currently putting this codeSystem at

http://ihe.net/fhir/ihe.formatcode.fhir/CodeSystem/formatcode

view this post on Zulip John Moehrke (Jun 21 2021 at 17:51):

there is a http redirect from that FHIR core canonical URI to the IHE managed canonical URI

view this post on Zulip John Moehrke (Jun 21 2021 at 17:54):

I say "can't go forward"... but realistically, i can.. which is part of the question to the terminology group

view this post on Zulip John Moehrke (Jun 21 2021 at 17:54):

The other question is use of the .identifier with an OID system... should this OID be usable in FHIR?

view this post on Zulip John Moehrke (Jun 21 2021 at 17:56):

meaning... far longer ago, this set of code system has been given the OID 1.3.6.1.4.1.19376.1.2.3 which is what is used in all other standards where these codes are used (XDS, HL7 v3, CDA, DICOM, etc).

view this post on Zulip Robert McClure (Jun 22 2021 at 19:24):

@John Moehrke The initial short answer is one you'll not be surpriosed to here, even with you being the main IHE expert on all this: HTA is responsible for sorting out issues with external code systems. @Carol Macumber @Julie James . That said, what needs to be assertained when consiudering a canonical uri/l change is essentially how extensively (and how long) is the FHIR-published url in use? If it's not used by any guides other than yours and you can confirm, with your user base, that making a change is acceptable, then I'd say it can be considered. The fact that it is in FHIR core I don't believe means this is not possible, although the change process would be technically different. And of course, it only changes going forward. This also means we need to keep track of the different identifiers and the current, not confirmed, thinkking is for a code system we might not use nameingsystem, but instead track all that directly in the code system resource (stub or fragment, or complete -= IE: whatever we have here.) We've not settled on all this yet but I think we just use the Identifer datatype to do this.

As for using an OID: Yes we can include an OID as a business identifier for the code system. But FHIR servers all use the url as the identifier; use of the other identifiers I suspect is hit-and-miss depending on server functionality.

view this post on Zulip John Moehrke (Jun 22 2021 at 19:39):

I am not sure how far the canonical URI has been used. learning all the IGs that are profiling something is not easy, knowing to what extent that IG is implemented is even harder.

view this post on Zulip John Moehrke (Jun 22 2021 at 19:39):

I know the OID is far more used. for 15ish years worth of use.

view this post on Zulip John Moehrke (Jun 22 2021 at 19:40):

the OID is, and always has been, inside the FHIR CodeSystem as the .identifier.

view this post on Zulip John Moehrke (Jun 22 2021 at 19:41):

but, as you point out. Use of business identifier for a codeSystem as the system value is not well supported. Specifically not supported by the FHIR validator.

view this post on Zulip John Moehrke (Jun 22 2021 at 19:41):

@Grahame Grieve ? can you give me some guidance on the above situation/questions?

view this post on Zulip John Moehrke (Jun 24 2021 at 13:30):

I am looking for some advice from terminology experts --- should I keep using the original canonical URI even though it is constructed strangely (meaning it has "ValueSet" in the URI for a CodeSystem)?

http://ihe.net/fhir/ValueSet/IHE.FormatCode.codesystem
It is just a canonical URI, so is the format that important?
While FHIR aware architects will look at it and be confused, as it sure looks like it is defining a ValueSet?
Yet, this might be the one more in use today?
Is correcting the canonical URI to be better FHIR formatted be the right thing to do today?
Is there another solution?
Grahame Grieve Robert McClure Rob Hausam Ted Klein

view this post on Zulip Robert McClure (Jun 24 2021 at 14:31):

@John Moehrke Some questions to get this closed:

  • Can you be the official contact for IHE so if we determine the best approach for the canonical url, it will be acceptable to IHE (and best they will independently promote it?)
  • Of all the not great urls, I agree that one is very confusing and should be changed if possible.
  • I very much want FHIR to agree that we use the code system resource as I noted above to manage all identifiers for a code system (IE: not use nameingsystem for this) and we would mark that identifier as use = Old"

view this post on Zulip John Moehrke (Jun 24 2021 at 14:32):

Yes I am

view this post on Zulip John Moehrke (Jun 24 2021 at 14:33):

I am unfamiliar with namingsystem (hence why I ask experts)

view this post on Zulip John Moehrke (Jun 24 2021 at 14:35):

to be clear... I am asking onbehalf of IHE.. I am the owner of this codesystem in IHE. I am looking to have IHE do this the best way possible.

view this post on Zulip John Moehrke (Jun 24 2021 at 14:44):

Looking at NamingSystem -- is this something that would be used if we change URI? IHE or HL7 would publish that explains the transition away from the old URI to the new URI? It could also include the stable OID that is not in question, right?

view this post on Zulip Grahame Grieve (Jun 24 2021 at 18:23):

http://ihe.net/fhir/ValueSet/IHE.FormatCode.codesystem

so I have no idea what brain fart led to this being the code system.

view this post on Zulip Grahame Grieve (Jun 24 2021 at 18:25):

I don't see how the code system would be meaningfully used outside the context of IHE so I don't see why HL7 shouldn't change it if IHE asks

view this post on Zulip Grahame Grieve (Jun 24 2021 at 18:26):

Use of business identifier for a codeSystem as the system value is not well supported. Specifically not supported by the FHIR validator.

Well, it's not conformant - that's quite clear. You can make the OID the canonical URL, in which case it's not supported, it's required to be used. but the canonical URL must be used

view this post on Zulip Lloyd McKenzie (Jun 24 2021 at 20:40):

It's probably best to reach out to the implementer community by whatever means we have to see if the 'bad' URL is already in use - probably by posting on #Announcements (with discussion directed elsewhere). Any other places that seem likely to reach potential implementers would also be wise. If we get no indications of use in the HL7 community, the URL looks obviously broken and IHE has clear recommendations to use something else, I think that gives us enough cover to make the change - though we should certainly list the other as a non-preferred alternate in the NamingSystem.

view this post on Zulip John Moehrke (Jun 25 2021 at 11:57):

The majority of implementers are using the OID (XDS/XCA..). In the FHIR space there is likely lots of ONE specific code (C-CDA) being used. I suspect that even in FHIR (DocumentReference) many are using the OID. So, if there is good reason to change, I think change is good. I just saw the difference and was not sure that difference was critical enough when a canonical URI is just a canonical URI. It has a relationship to a Reference, but is defined differently.

view this post on Zulip John Moehrke (Jun 25 2021 at 12:00):

most will just look for the code and ignore the system.

view this post on Zulip John Moehrke (Jun 25 2021 at 12:02):

@Lloyd McKenzie @Grahame Grieve can you send the announcement outreach? It is far more likely to get a response if one of you send it, then if I send it.

view this post on Zulip Lloyd McKenzie (Jun 25 2021 at 13:20):

Can you share the text you'd like posted (maybe by PM)

view this post on Zulip Robert McClure (Jun 25 2021 at 14:29):

FYI @Carol Macumber @Julie James @Davera Gabriel @Reuben Daniels Please add this External code system snafu to the list of HTA items and listings. I suspect this will be a changed canonical

view this post on Zulip Michael Lawley (Jun 27 2021 at 22:42):

My personal opinion here is that the case for change is pretty weak, and the cost of change is always higher than you think (while a community may agree to the change, there will likely be data floating around for years that uses the old URI and thus any future code that touches that data will pay a cost).
Also, the fact that you've got 'codesystem' in the URI, despite the 'ValueSet' part, should be enough for anyone who's looking and concerned to work things out, especially if the URI also resolves to something human-oriented that explains the situation.

view this post on Zulip Grahame Grieve (Jun 28 2021 at 10:03):

it's true that the cost of change is hard to measure. But it's for IHE to decide in this case, and let us know what they decide. If people complain, we're just going to refer them to IHE

view this post on Zulip John Moehrke (Jun 28 2021 at 12:02):

@Grahame Grieve it is not just for IHE to decide. This codesystem URI was baked into the FHIR core long before IHE started to manage it in FHIR format. Prior to this IHE managed it with an OID. I am not too worried about IHE, most use is as facade to XDS. There is a little MHDS experimentation, mostly in LMIC. I am more worried about the non-IHE uses driven by things like us-core and all the other XXX-core. I have no visibility into any of these XXX-cores (including us-core).

view this post on Zulip Grahame Grieve (Jun 28 2021 at 12:46):

well, that means it's not just for IHE to execute, but ok, makes sense to decide to callboratively

view this post on Zulip Julie James (Jun 28 2021 at 14:49):

We will put this on the HTA agenda for 7th July. If IHE is the code system owner, it would be most helpful if an IHE representative could be present; I will presume that is you @John Moehrke ? Even though it's coming very late to the party, this external code system should go through the proper code system identification and metadata process :)

view this post on Zulip John Moehrke (Jun 29 2021 at 01:28):

Yes. I have tried many many times.


Last updated: Apr 12 2022 at 19:14 UTC