FHIR: URI for Health Canada Drug Identification Number
- Lloyd Mckenzie
- Offline
- Posts: 132
8 years 7 months ago #1262
by Lloyd Mckenzie
Replied by Lloyd Mckenzie on topic FHIR: URI for Health Canada Drug Identification Number
A few reasons for the change:
- It takes a whole lot of training to get people to understand OIDs, how to register them, how to define the hierarchies well, to not get too fussed about ownership, etc. Lots of ongoing learning curve. (I know because I've helped numerous organizations and individuals mount that curve. I have yet to have to explain to anyone what a URL is or how to create or use them :>
- You need to formally register them, which has a cost. And registries can be somewhat flakey
- Humans can't realistically read them. Given an arbitrary OID, you have no way of knowing what it means and, unless it's in a registry, no way of finding out. And being able to look at something and know what it is has real value for interface analysts, developers and others who actually have to look at instances.
- OIDs can't resolve. It's really handy for human analysts to plop a URL into a browser and be able to go look up codes from a code system or understand the rules for properly encoding a given identifier type. You can't do that with OIDs.
- Finally, URIs are the way the world is evolving to identifying namespaces. It's the most common way of handling them in REST and and is an expectation in the semantic web world.
It's true that there's an expense of doing the mapping, but realistically there's an expense to mapping between v3 and FHIR anyhow - and converting between OIDs and URLs is just a tiny increment to that (and NamingSystem gives the infrastructure to make it easy). And the benefit of doing the conversion is that eventually you don't have to worry about dealing with OIDs at all. On the other hand, if you don't do a conversion, you're stuck with the disadvantages of OIDs and miss out on the advantages of URLs long into the future.
As a side-point, some degree of conversion will be mandatory as code systems like LOINC, SNOMED, ICD10, etc. have all been assigned official URLs and conformant systems are required to use those URLs and no other values, including the corresponding OIDs. So the conversion infrastructure will have to exist regardless of whether we come up with URLs for Canadian OIDs are not. Given that the infrastructure must exist, we may as well take advantage of it.
(I don't recall ever praising OIDs for not being human readable. Their main advantage was their uniqueness - and we don't lose that benefit with URLs.)
- It takes a whole lot of training to get people to understand OIDs, how to register them, how to define the hierarchies well, to not get too fussed about ownership, etc. Lots of ongoing learning curve. (I know because I've helped numerous organizations and individuals mount that curve. I have yet to have to explain to anyone what a URL is or how to create or use them :>
- You need to formally register them, which has a cost. And registries can be somewhat flakey
- Humans can't realistically read them. Given an arbitrary OID, you have no way of knowing what it means and, unless it's in a registry, no way of finding out. And being able to look at something and know what it is has real value for interface analysts, developers and others who actually have to look at instances.
- OIDs can't resolve. It's really handy for human analysts to plop a URL into a browser and be able to go look up codes from a code system or understand the rules for properly encoding a given identifier type. You can't do that with OIDs.
- Finally, URIs are the way the world is evolving to identifying namespaces. It's the most common way of handling them in REST and and is an expectation in the semantic web world.
It's true that there's an expense of doing the mapping, but realistically there's an expense to mapping between v3 and FHIR anyhow - and converting between OIDs and URLs is just a tiny increment to that (and NamingSystem gives the infrastructure to make it easy). And the benefit of doing the conversion is that eventually you don't have to worry about dealing with OIDs at all. On the other hand, if you don't do a conversion, you're stuck with the disadvantages of OIDs and miss out on the advantages of URLs long into the future.
As a side-point, some degree of conversion will be mandatory as code systems like LOINC, SNOMED, ICD10, etc. have all been assigned official URLs and conformant systems are required to use those URLs and no other values, including the corresponding OIDs. So the conversion infrastructure will have to exist regardless of whether we come up with URLs for Canadian OIDs are not. Given that the infrastructure must exist, we may as well take advantage of it.
(I don't recall ever praising OIDs for not being human readable. Their main advantage was their uniqueness - and we don't lose that benefit with URLs.)
Please Log in or Create an account to join the conversation.
- Iryna Roy
- Away
- Posts: 20
8 years 7 months ago #1260
by Iryna Roy
Replied by Iryna Roy on topic FHIR: URI for Health Canada Drug Identification Number
In my personal opinion and from my previous experience, this is a bad (expensive) idea. What happened to the beauty of OIDs not being human-readable we all praised in HL7 V3? We still human-read them by parts but still the idea was not to do it. This was considered as a good practice in the previous version of the standard and I see finally systems adopted it.
For the new systems, it does not matter if it is OID or URI, they don't have to change anything. However, for existing HIE, HIAL, EMR, EHR, DIS, you_name_it systems, it will be very expensive to maintain (add/update/distribute) the OID to URI mapping, and make sure the proper one is used when different interfaces are supported. Canada has a number of HL7 V2, HL7 V3 and custom interfaces. I am currently working with the DIS implementations and see how much effort/money already spent to implement current systems with OIDs. What we are proposing now is to add a complexity and use different identifiers to name the SAME code system depends on what version of the HL7 we use. I believe summer students can learn more by doing FHIR profiling for Canadian specifications. This will be very beneficial for the community.
Interested to hear opinions of other implementers of existing systems: OID, URI and both? Thank you!
Kind regards,
Iryna
For the new systems, it does not matter if it is OID or URI, they don't have to change anything. However, for existing HIE, HIAL, EMR, EHR, DIS, you_name_it systems, it will be very expensive to maintain (add/update/distribute) the OID to URI mapping, and make sure the proper one is used when different interfaces are supported. Canada has a number of HL7 V2, HL7 V3 and custom interfaces. I am currently working with the DIS implementations and see how much effort/money already spent to implement current systems with OIDs. What we are proposing now is to add a complexity and use different identifiers to name the SAME code system depends on what version of the HL7 we use. I believe summer students can learn more by doing FHIR profiling for Canadian specifications. This will be very beneficial for the community.
Interested to hear opinions of other implementers of existing systems: OID, URI and both? Thank you!
Kind regards,
Iryna
Please Log in or Create an account to join the conversation.
- Lloyd Mckenzie
- Offline
- Posts: 132
8 years 7 months ago #1259
by Lloyd Mckenzie
Replied by Lloyd Mckenzie on topic FHIR: URI for Health Canada Drug Identification Number
As a bit of context, FHIR requires the use of URIs rather than OIDs to identify code systems and identifier types. While you can use "urn:oid:[your oid here]", that approach is strongly discouraged because those URIs aren't resolvable or human-readable. So the recommendation is to develop mappings for all code and identifier systems that you use. The NamingSystem resource can be used to help manage such mappings. I think it would be a worthwhile exercise for us to go through all of the Canada-related OIDs we have in the OID registry and all of the code systems we use in the MTW and define URLs for them (if they don't already have ones defined). This would be a good summer-student task if anyone has one they're looking for useful activities for. (Or a student project if anyone's teaching standards and has a need for project ideas.)
Please Log in or Create an account to join the conversation.
- Igor Sirkovich
- Topic Author
- Offline
- Posts: 181
8 years 7 months ago #1258
by Igor Sirkovich
Hello Everyone,
We in Ontario would like to register a URI for Health Canada Drug Identification Number to be used in FHIR messages. After discussing this with Lloyd, the URI we are proposing is hl7.org/fhir/NamingSystem/ca-hc-din.
Once agreed, we will register this as a CodeSystem with HL7 FHIR to have it visible to everyone and in its metadata we'll link to the corresponding OID: 2.16.840.1.113883.5.1105.
I will appreciate your opinions in regards to this URI.
Regards,
Igor Sirkovich
We in Ontario would like to register a URI for Health Canada Drug Identification Number to be used in FHIR messages. After discussing this with Lloyd, the URI we are proposing is hl7.org/fhir/NamingSystem/ca-hc-din.
Once agreed, we will register this as a CodeSystem with HL7 FHIR to have it visible to everyone and in its metadata we'll link to the corresponding OID: 2.16.840.1.113883.5.1105.
I will appreciate your opinions in regards to this URI.
Regards,
Igor Sirkovich
Please Log in or Create an account to join the conversation.