This wiki has undergone a migration to Confluence found Here
<meta name="googlebot" content="noindex">

Difference between revisions of "CTS2 DSTU Corrections and Enhancements"

From HL7Wiki
Jump to navigation Jump to search
 
(49 intermediate revisions by 2 users not shown)
Line 7: Line 7:
 
|-
 
|-
 
| 1
 
| 1
| Hierarcy in Concept Domain
+
| Hierarchy in Concept Domain
| There is no hierarchy present in the ConceptDomains in the conceptual modelThis can be achieved in two ways.  
+
| The hierarchy is missing in ConceptDomain classThere are two way in which this can be resolved:  1. Adding a recursive link to indicate the parent-child relationships 2. Adding a class called ConceptDomainAssociation between concepts domains. This will allow for finer typing of the relationships between concept domains, not just parent-child relationships.
The simplest way is by adding a recursive link in the conceptual diagram, as well as mentioning this fact in the Core Principle text. There is another way through which this can be achieved, by adding associations between concepts domains. This will allow for finer typing of the relationships between concept domains, not just parent-child relationships.  
+
 
|  
+
| The sense of the WG is that the association between concept domain is a ‘proper part’, not a recursive ‘is-a’, but also not a typed associative class linkage either.  Ana and Nicola will do some paperwork preparation and bring it forward on the next call for a decision.
 
|-
 
|-
 
|}
 
|}
Line 26: Line 26:
 
| 1
 
| 1
 
| Binding to a single code.
 
| Binding to a single code.
| The way the HL7 CTS2 Conceptual model is now does not allow for the binding of a single code; the binding being done through a ValueSetContextBindingUse a link between the CodeSystemConceptCode and ValueSetContextBinding.
+
| A link between Code System Node and (ValueSetContext)Binding allowing for the possibility to have the binding of a single code to a Usage Context or a Concept DomainThis is particularly useful in the cases where we have a value set that contains only one code and must have an OID such as in Anatomic Pathology for example.
|  
+
| We recommended that CTS2 not deal with Single Code Binding, as this us only used in Model Binding, and there are other complexities with Value Sets that may contain only one code
 
|-
 
|-
 
| 2
 
| 2
| Change ValueSetContextBinding into Binding
+
| Change the wording "ValueSetContextBinding" into "Binding"
| The binding is not just done through just the value sets as mentioned it can be done through a code. Furthermore, there are value sets that are not bound to the UsageContext only but also to the Concept Domain (like in the MIF file). Use a link between the CodeSystemConceptCode and ValueSetContextBinding.
+
| CTS2:  ValueSetContextBinding.  Core Principles: ContextBinding. However, the functional model supports binding for vale sets and directly codes (enhancement number 1) and between usage context and concept domains in equal measure.  A more appropriate name in this case is just “Binding”.
|  
+
| Carmela suggests that the name for the binding should be changed to just ‘contextBinding’, and this seems good.   
 
|-
 
|-
 
| 3
 
| 3
 
| Change Cardinality in Binding from 1 to 0..1
 
| Change Cardinality in Binding from 1 to 0..1
| The creation and definition of a concept domain is done by HL7.  Many templates are made by IHE and not by HL7.  Binding takes places generally between a template and a value set (or a version of a value set). The concept domain is “forgotten”, or implicitly included in the template via the context it describes (in its title, or the subject described in the template, or in the text of the template). This means that in reality we only bind two entities (no Concept Domain).   Replace 1 by 0 so that there is a binding between two entities possible  
+
| There are many templates generated by IHE.  Binding takes places generally between a template and a value set (or a version of a value set). The concept domain is “forgotten”, or implicitly included in the template via the context it describes (in its title, or the subject described in the template, or in the text of the template). This means that in reality we only bind two entities (no Concept Domain). Replace 1 by 0 so that the binding between two entities possible.
 +
| Ok to relax cardinality for Concept Domains but not sure about Usage Context.  To be further discussed.
 +
|-
 +
| 4
 +
| Addition of a new class EntityVersionCodeSystemVersionMembership
 +
| This new association class provides a more robust way of linking Entity Version to Code System versions.
 +
|
 +
|-
 +
| 5
 +
| Add an id of an Association Type. 
 +
| An identifying attribute added to the class AssociationType as associationKind is not specific enough.
 +
|
 +
|-
 +
| 6
 +
| Additions to the Value Set Class to be able to support FHIR functionality
 +
|
 +
* The possibility of a value set restricting another value set.
 +
* Adding the possibility of a value set version to be authored (provenanceDetails might not be a strong enough representation).
 +
* Adding an attribute contentDefinition so that the ConceptSet and Filter can be functionally supported.
 +
|
 +
|-
 +
| 7
 +
| Hierarchy in Jurisdictional Domains
 +
| Add a means to express hierarchy in Jurisdictional Domains by adding a JurisdictionalDomainAssociation class.
 +
|
 +
|-
 +
| 8
 +
| Rename List Concept Domain Bindings
 +
| Change List Concept Domain Bindings  to just List Bindings so that it can show the Usage Context binding too.
 +
|
 +
|-
 +
| 9
 +
| Return Code System Version Details
 +
| This is an oversight.  The Return Code System Details operation is present; it is a natural conclusion Return Code System Version Details was omitted.  This is present in the PIM.
 +
|
 +
|-
 +
| 10
 +
| List Code System Supplements
 +
| Again, this seems to be an oversight.
 +
|
 +
|-
 +
| 11
 +
| Return Code System Supplement Details
 +
| Oversight.
 +
|
 +
|-
 +
| 12
 +
| List Jurisdictional Domains
 +
| It is logical that in an environment with multiple juridictional domains, they should be listed.
 
|  
 
|  
 
|-
 
|-
 
+
| 13
 +
| Return Jurisdictional Domain Details
 +
| Oversight.
 +
|
 +
|-
 +
| 14
 +
| Return Service Details
 +
| An operation returning information about the CTS2 service.  This is present in CTS, and in the PIM, so it could be an oversight.
 +
|
 +
|-
 +
| 15
 +
| Conformance Criteria 
 +
| The SFM is totally silent of what must be provided by an implementation allowing for declaring it conformant.
 +
To the minimum extend, a single function listing all codesystems is enough. To the other extend all functions must be provided. The real necessity is something in the middle: The specific set of functions must be marked. Therefore, a classification and/or prioritization according the functions must be provided.
 +
A solution can be the declaration of a basic set of functions and appropriate options. E.g. the handling of value sets may be necessary for certain environments, but not really for all use cases. Therefore, all functions dealing with value sets can be assigned to "option 1".
 +
| CTS2N will contain a section dealing with profiles. Furthermore, 5 functions have been identified which must be provided by a compliant service.
 +
|-
 +
| 16
 +
| Licensing Information
 +
| For a national use, the server must keep track of who is allowed to see which codesystem and the associated codes. E.g., only persons/institutions having purchased Snomed CT will get a result including Snomed CT.
 +
| This feature must be realized with a security architecture acting as a firewall. The policies will describe who has access to what.
 +
|-
 
|}
 
|}

Latest revision as of 13:56, 21 February 2013

Corrections:

# Description Rationale Resolution
1 Hierarchy in Concept Domain The hierarchy is missing in ConceptDomain class. There are two way in which this can be resolved: 1. Adding a recursive link to indicate the parent-child relationships 2. Adding a class called ConceptDomainAssociation between concepts domains. This will allow for finer typing of the relationships between concept domains, not just parent-child relationships. The sense of the WG is that the association between concept domain is a ‘proper part’, not a recursive ‘is-a’, but also not a typed associative class linkage either. Ana and Nicola will do some paperwork preparation and bring it forward on the next call for a decision.


The following are enancements to the DSTU from a functional point of view. Some of them are present in the PIM but not in the DSTU, so they might be an oversight. Some operations too are also an obvious oversight, so they are not really enhancements.

Enhancements:

# Description Rationale Resolution
1 Binding to a single code. A link between Code System Node and (ValueSetContext)Binding allowing for the possibility to have the binding of a single code to a Usage Context or a Concept Domain. This is particularly useful in the cases where we have a value set that contains only one code and must have an OID such as in Anatomic Pathology for example. We recommended that CTS2 not deal with Single Code Binding, as this us only used in Model Binding, and there are other complexities with Value Sets that may contain only one code
2 Change the wording "ValueSetContextBinding" into "Binding" CTS2: ValueSetContextBinding. Core Principles: ContextBinding. However, the functional model supports binding for vale sets and directly codes (enhancement number 1) and between usage context and concept domains in equal measure. A more appropriate name in this case is just “Binding”. Carmela suggests that the name for the binding should be changed to just ‘contextBinding’, and this seems good.
3 Change Cardinality in Binding from 1 to 0..1 There are many templates generated by IHE. Binding takes places generally between a template and a value set (or a version of a value set). The concept domain is “forgotten”, or implicitly included in the template via the context it describes (in its title, or the subject described in the template, or in the text of the template). This means that in reality we only bind two entities (no Concept Domain). Replace 1 by 0 so that the binding between two entities possible. Ok to relax cardinality for Concept Domains but not sure about Usage Context. To be further discussed.
4 Addition of a new class EntityVersionCodeSystemVersionMembership This new association class provides a more robust way of linking Entity Version to Code System versions.
5 Add an id of an Association Type. An identifying attribute added to the class AssociationType as associationKind is not specific enough.
6 Additions to the Value Set Class to be able to support FHIR functionality
  • The possibility of a value set restricting another value set.
  • Adding the possibility of a value set version to be authored (provenanceDetails might not be a strong enough representation).
  • Adding an attribute contentDefinition so that the ConceptSet and Filter can be functionally supported.
7 Hierarchy in Jurisdictional Domains Add a means to express hierarchy in Jurisdictional Domains by adding a JurisdictionalDomainAssociation class.
8 Rename List Concept Domain Bindings Change List Concept Domain Bindings to just List Bindings so that it can show the Usage Context binding too.
9 Return Code System Version Details This is an oversight. The Return Code System Details operation is present; it is a natural conclusion Return Code System Version Details was omitted. This is present in the PIM.
10 List Code System Supplements Again, this seems to be an oversight.
11 Return Code System Supplement Details Oversight.
12 List Jurisdictional Domains It is logical that in an environment with multiple juridictional domains, they should be listed.
13 Return Jurisdictional Domain Details Oversight.
14 Return Service Details An operation returning information about the CTS2 service. This is present in CTS, and in the PIM, so it could be an oversight.
15 Conformance Criteria The SFM is totally silent of what must be provided by an implementation allowing for declaring it conformant.

To the minimum extend, a single function listing all codesystems is enough. To the other extend all functions must be provided. The real necessity is something in the middle: The specific set of functions must be marked. Therefore, a classification and/or prioritization according the functions must be provided. A solution can be the declaration of a basic set of functions and appropriate options. E.g. the handling of value sets may be necessary for certain environments, but not really for all use cases. Therefore, all functions dealing with value sets can be assigned to "option 1".

CTS2N will contain a section dealing with profiles. Furthermore, 5 functions have been identified which must be provided by a compliant service.
16 Licensing Information For a national use, the server must keep track of who is allowed to see which codesystem and the associated codes. E.g., only persons/institutions having purchased Snomed CT will get a result including Snomed CT. This feature must be realized with a security architecture acting as a firewall. The policies will describe who has access to what.