Datatypes R2 Issue 57
Data Types Issue 57: II.useCode
This proposal is for a useCode on II. This idea was endorsed in principle by MnM (see motion below).
To ease the adoption of HL7 v3, MnM recommends INM to add “useCode” to II. This would identify the intended scope/purpose/use of the identifier. See also the discussion around Types of Identifiers. Example concepts to be included:
- Issued by scoper/author
- Verified by scoper/author
- Used by scoper/author
- Non-player specific
- Real-world id
- Record id
- Version-specific (snapshot)
- View id
(The difference between reference and definition is that when the id is definitional the sender is conveying to the receipient all the necessary information for this context of use)
MnM would like to participate in identifying requirements, appropriate contents, definitions and usage guidelines
Default values will be set to make the attribute backwards compatible
see also Types of Identifiers
Lloyd - should be called "use" not "useCode"
Back to Data Types R2 issues
Yes, but a reference to an act isnt the same as an act.
I think there is a clear distinction between an act (that has some id) and a reference to that act. And I think this is independent of any update semantics, ie. whether or not that act would have the same id if it was changed and re-messaged.
Clinical Statement has acts in the choice box, and it has ActReference, which is a pointer-to-act. Since HL7 doesn't directly support this pointer concept, ActReference is modelled as a cut down act. The only way to know that it is a reference rather than a act is to recognise that it hasn't enough attributes to be anything else, or to use its clone name (or its act relationship clone name).
Neither of these is good practice or foolproof. But they are at least signs that allow your code to do the lookup, rather than try to cope with an act that has nothing in it.
So I don't think the ActReference construct is just a convenience. Its a distinct construct that unfortunately looks a lot like an act, due to limits of the machinery.
The proper way to do references will indeed be via II.useCode (wiki about this is at http://informatics.mayo.edu/wiki/index.php/Datatypes_R2_Issue_57 <http://informatics.mayo.edu/wiki/index.php/Datatypes_R2_Issue_57> ), which could eventually be applied to either the main CDA act choice or to ExternalActChoice.
Since it isn't in CDA R2 datatypes I don't think this is a permissible realm extension, but I'm not certain. But even if it is we still need to resolve the typeCode, inversionInd or act.code issues. So its back in the CFH court to work this through I reckon.