FHIR Chat · ConceptMap.source[x] URI vs Canonical · implementers

Stream: implementers

Topic: ConceptMap.source[x] URI vs Canonical


view this post on Zulip James Agnew (Mar 12 2018 at 13:24):

I am trying to wrap my head around the scope of the new Canonical datatype as it relates to the ConceptMap.source[x] field (and others like it).

Essentially I'm wondering under what circumstances one would use .sourceUri, since I can now put non-URL URIs into the canonical datatype.

view this post on Zulip Bryn Rhodes (Mar 12 2018 at 14:24):

If the source is an actual FHIR ValueSet resource, you would use sourceCanonical, but if the source is a ValueSet, but not a FHIR resource (as in a valueset in the VSAC, identified by an OID), then you would use sourceUri.

view this post on Zulip Bryn Rhodes (Mar 12 2018 at 14:25):

My understanding is canonical is always and only used to reference FHIR resources that have a canonical identifier (i.e. a url element).

view this post on Zulip Rob Hausam (Mar 12 2018 at 14:44):

That's my understanding of the intent as well - that 'canonical' should always point (and should normally resolve) to a FHIR resource. But I'm also noting that we don't actually say that in the documentation for the 'canonical' data type (http://build.fhir.org/datatypes.html#canonical) or on the 'Canonical URLs' page (http://build.fhir.org/references.html#canonical).

view this post on Zulip Yunwei Wang (Mar 12 2018 at 16:25):

What does it mean a "FHIR ValueSet resource"? Is that a ValueSet registered with FHIR or any ValueSet which can be return via FHIR ValueSet endpoint?

view this post on Zulip Yunwei Wang (Mar 12 2018 at 16:27):

If a terminology server returns a VSAC value value from ValueSet endpoint, should that be referenced as sourceUri or sourceCanonical?

view this post on Zulip Lloyd McKenzie (Mar 12 2018 at 17:05):

Anything experessed in FHIR form.

view this post on Zulip Yunwei Wang (Mar 12 2018 at 17:46):

Can it be generalized as using canonical for resource identified by url, using uri for resource identified by OID/UUID?

view this post on Zulip James Agnew (Mar 12 2018 at 17:56):

Sounds like necessarily that wouldn't be correct, since technically a non-FHIR valueset could be identified by a URL and a FHIR ValueSet could have an OID as an identifier.

view this post on Zulip James Agnew (Mar 12 2018 at 17:57):

We should definitely clarify this usage in the canonical definition though, assuming that's the intent.

view this post on Zulip Yunwei Wang (Mar 12 2018 at 18:05):

But you cannot use OID in canonical. Right?
What I mean is identify a ValueSet using OID.

view this post on Zulip John Moehrke (Mar 12 2018 at 18:16):

URI encoded OID --> urn:oid:1.1.1.1.1.1 See https://healthcaresecprivacy.blogspot.com/2011/02/creating-and-using-unique-id-uuid-oid.html

view this post on Zulip Yunwei Wang (Mar 12 2018 at 18:17):

@John Moehrke I know that can be used for uri. Can it also be used for canonical?

view this post on Zulip Grahame Grieve (Mar 12 2018 at 19:37):

yes

view this post on Zulip Grahame Grieve (Mar 12 2018 at 19:39):

I'm not entirely sure when you'd use sourceCanonical either - we allow a bdining to a non-FHIR value set, for some special cases where there value set is a slippery beast but I don't see how you could concept map them... also, I was working on this on the plane.... we don't really need to allow a choice of URI anymore... we can just require a value set and gin up a value set resource now

view this post on Zulip Rob Hausam (Mar 12 2018 at 19:43):

Yeah, I've been wondering about some of that. We should make it as clear and simple as we can. Do you have some plans?

view this post on Zulip Grahame Grieve (Mar 12 2018 at 19:46):

don't know. it's too late for the draft - so I guess it will be a ballot item that causes substantiative changes

view this post on Zulip Yunwei Wang (Mar 12 2018 at 19:51):

The newly introduced canonical is confusing. But as a non-profiler, I feel there is not much to worry about. I can continue to use urls on where I used before. Then I don't know why there is need for this new data type. Maybe I should re-read the whole thread about canonical.

view this post on Zulip Eric Haas (Mar 12 2018 at 20:10):

Can you clarify....does "we don't really need to allow a choice of URI anymore...." mean source[x] becomes [source] with type 'Reference' or just back to 'uri'?

view this post on Zulip Grahame Grieve (Mar 12 2018 at 20:17):

nah would be just source : canonical

view this post on Zulip Eric Haas (Mar 12 2018 at 20:18):

OK that was a bit confusing because you started your comment with "I'm not entirely sure when you'd use sourceCanonical either ..."

view this post on Zulip Grahame Grieve (Mar 12 2018 at 20:19):

duh, should have been sourceUri

view this post on Zulip Michael Lawley (Mar 14 2018 at 00:52):

I'm not really sure why you'd ever want to us a URL rather than a URI to reference a ValueSet from ConceptMap.source

I also worry about a URI like urn:foo|a with a version = x|y and thus a canonical looking like urn:foo|a|x|y and then the need to try every possible split on the | to resolve it.


Last updated: Apr 12 2022 at 19:14 UTC