Stream: committers
Topic: literal vs. logical vs. absolute vs. canonical references
Rob Hausam (Mar 14 2018 at 08:25):
In reading through "Using Codes in Resources" again to answer the question on CodeableConcept, I'm realizing that we're still being inconsistent in how we describe and use the various reference types (at least in the terminology documentation). In particular, we've used "logical" differently at times - sometimes synonymous with "literal" or "direct" or "absolute" and at other times synonymous with "canonical". I tried to clean this up and make it consistent in the CodeSystem and ValueSet documentation, but I still didn't yet do it entirely the same as it currently is in "Using Codes in Resources" and in "Resource References". I'm assuming that the latter ("Resource References") should (ideally) be the authoritative source on this as it's a general page (not terminology specific) and a normative candidate?
Before I made my latest changes, the R4 Draft for Comments version in the CodeSystem introduction, for example, had this:
Each code system has 2 different URLs that can be used to reference it - its logical identifier, and its location.
and
CodeSystem.id: the logical id on the system that holds the code system - this changes as it moves from server to server (this id, with the server address prepended, is called the 'literal identity' of the resource)
As I said, I've already tried to clean some of this up, but the "CodeSystem Identification" section in the current build still says that CodeSystem.id
is the logical id
, which given the other guidance appears to be "wrong". And since CodeSystem and ValueSet also are normative candidates, I think we had better try to get this cleaned up and make it consistent throughout the spec now. Any further thoughts on how we need to do that and what changes are still needed are welcome.
Rob Hausam (Mar 14 2018 at 08:40):
I just noticed that the "Resource References" page says this in two adjacent sentences:
The canonical URI remains the same when the resource is copied from server to server, while the logical id of the resource - its local identifier - usually changes as the resource is copied. The canonical URI serves as a stable logical identifier for the conformance artifact, and is the preferred way to reference a conformance or knowledge resource.
It seems that even here we're not being very logical about our use of the word "logical"!
Grahame Grieve (Mar 14 2018 at 10:39):
" its logical identifier" --> "it's canonical identifier"
Last updated: Apr 12 2022 at 19:14 UTC