Difference between revisions of "201601 FHIR Terminology Services"
(Initial content added) |
|||
(38 intermediate revisions by 3 users not shown) | |||
Line 10: | Line 10: | ||
==Justification== | ==Justification== | ||
<!--Why is this an important track to include in the connectathon - include implementer need, impact on ballot, FMM readiness of the resources, etc. --> | <!--Why is this an important track to include in the connectathon - include implementer need, impact on ballot, FMM readiness of the resources, etc. --> | ||
− | The FHIR specification includes support for the provision of a terminology service - that is, a service that lets healthcare applications make use of codes and value sets without having to become experts in the fine details of the value set resource, and the underlying code systems. | + | The FHIR specification includes support for the provision of a terminology service - that is, a service that lets healthcare applications make use of codes and value sets without having to become experts in the fine details of the value set resource, and the underlying code systems. The management and proper use of terminology is fundamental to effective, interoperable data exchange, so this is an important capability to provide and test in the Connectathons. |
==Proposed Track Lead== | ==Proposed Track Lead== | ||
<!-- Name, email and Skype id of individual who will coordinate the track at the connectathon --> | <!-- Name, email and Skype id of individual who will coordinate the track at the connectathon --> | ||
− | Coordinator: [mailto:rrhausam@gmail.com Rob Hausam] (There is a dedicated skype chat for terminology services - Contact Rob to be included - skype id rhausam) | + | Coordinator: [mailto:rrhausam@gmail.com Rob Hausam] (There is a dedicated skype chat for terminology services - https://join.skype.com/ti2MOnoKB1zJ - or Contact Rob to be included - skype id rhausam) |
==Expected participants== | ==Expected participants== | ||
<!-- List of the individuals and/or organizations that have indicated a desire to attend the connectathon and implement this track --> | <!-- List of the individuals and/or organizations that have indicated a desire to attend the connectathon and implement this track --> | ||
+ | *Health Intersections - server | ||
+ | *Aegis - Touchstone tool and test scripts | ||
+ | *Apelon - server | ||
+ | *Lantana - FHIR services on Trifolia | ||
+ | *CSIRO - server | ||
+ | *NLM - FHIR services on VSAC | ||
+ | *IMO - FHIR services on IMO ProblemIT | ||
+ | *Multiple additional servers | ||
+ | *Multiple clients | ||
==Roles== | ==Roles== | ||
Line 24: | Line 33: | ||
<!-- Provide a description of the capabilities this role will have within the connectathon --> | <!-- Provide a description of the capabilities this role will have within the connectathon --> | ||
For service providers, implement the following operations from http://hl7.org/fhir/terminology-service.html: | For service providers, implement the following operations from http://hl7.org/fhir/terminology-service.html: | ||
− | * $expand | + | * $expand - [http://hl7.org/fhir/terminology-service.html#2.5.1.3 Value Set Expansion] |
− | * $validate-code (note: there | + | * $validate-code - [http://hl7.org/fhir/terminology-service.html#2.5.1.5 Value Set Validation] (note: there are a few typos on the terminology service page where this operation is referred to as "validate" but is actually "validate-code" - editorial oversight) |
− | * $lookup | + | * $lookup - [http://hl7.org/fhir/terminology-service.html#2.5.1.4 Concept Lookup] |
− | * $translate (note: there | + | * $translate - [http://hl7.org/fhir/terminology-service.html#2.5.1.8 Translations] (note: there is a typo on the terminology service page for Batch Translation where the text states "validate" not "translate") |
+ | * $closure - [http://hl7.org/fhir/terminology-service.html#closure Maintaining a Closure Table] | ||
+ | Support additional capabilities: | ||
+ | * Expansion Profile (experimental) - [http://wiki.hl7.org/index.php?title=ExpansionProfile_FHIR_Resource_Proposal Expansion Profile FHIR Resource Proposal] | ||
+ | * SNOMED CT and LOINC implicit value sets - [http://hl7-fhir.github.io/snomedct.html#implicit] [http://hl7-fhir.github.io/loinc.html#1.25.1.3.7] | ||
− | Service providers are not required to implement all this functionality - it's a lot to do. For new implementers, start at the top and work down (generally) | + | Service providers are not required to implement all of this functionality - it's a lot to do. For new implementers, start at the top and work down (generally). |
===FHIR Terminology Client Consumer=== | ===FHIR Terminology Client Consumer=== | ||
<!-- Provide a description of the capabilities this role will have within the connectathon --> | <!-- Provide a description of the capabilities this role will have within the connectathon --> | ||
− | + | Implement any one or more of: | |
* do a value set expansion of one of the value sets in the spec | * do a value set expansion of one of the value sets in the spec | ||
* validate a code using the spec against a FHIR value set, a v2 value set, or LOINC or snomed CT | * validate a code using the spec against a FHIR value set, a v2 value set, or LOINC or snomed CT | ||
* look up a display for a code (most appropriate for v2/FHIR conversion) | * look up a display for a code (most appropriate for v2/FHIR conversion) | ||
+ | * translate a code from one value set to another, based on the existing value set and ConceptMap resources, and/or other additional knowledge available to the server | ||
+ | * maintain a client-side closure table based on server-side terminological logic | ||
+ | * experiment with the capabilities of the expansion profile (see description above of the expected capabilities and scenarios) | ||
+ | * references to SNOMED CT and LOINC implicit value sets | ||
− | At least one server supports all these operations (http://fhir2.healthintersections.com.au). Other servers, including the Apelon server (http://fhir.ext.apelon.com:8081/DtsOnFhirDemo) will support | + | At least one server supports all of these operations and capabilities (http://fhir2.healthintersections.com.au). Other servers, including the Apelon server (http://fhir.ext.apelon.com:8081/DtsOnFhirDemo) and the others listed above will support several of these operations and capabilities. |
==Scenarios== | ==Scenarios== | ||
<!-- What will be the actions performed by participants? --> | <!-- What will be the actions performed by participants? --> | ||
− | === | + | ===Scenarios - See server and client roles as listed above=== |
− | |||
− | |||
− | |||
− | |||
− | + | ==TestScripts== | |
− | |||
− | == | ||
<!-- Optional (for initial proposal): Provide links to the TestScript instance(s) that define the behavior to be tested. | <!-- Optional (for initial proposal): Provide links to the TestScript instance(s) that define the behavior to be tested. | ||
These should be committed to SVN under trunk/connectathons/[connectathon] | These should be committed to SVN under trunk/connectathons/[connectathon] | ||
--> | --> | ||
+ | The supporting TestScripts and corresponding fixtures have been committed to the FHIR SVN repository at: | ||
+ | http://gforge.hl7.org/svn/fhir/trunk/connectathons/OrlandoJan2016/Connectathon11/Track2-Terminology | ||
+ | |||
+ | ===TestScript Definitions=== | ||
+ | The TestScript resources in this folder represent a conversion** of the TestScript originally used at the 1st Terminology Services Connectathon held in Washington, February 2014. | ||
+ | |||
+ | The original single TestScript has been separated into four (4) separate TestScript definitions - one for each original test suite. In addition, each of those TestScripts have two variations based on whether the FHIR client or server assigns the resource id of the required ValueSet resources created in the setup. Additional scripts will be created to support further scenarios as required. | ||
+ | |||
+ | ''**This representation of the Terminology Services tests is not meant to be definitive and complete. This is one example of how these tests can be defined in the current DSTU2 format of the TestScript resource. Constructive feedback, suggestions and criticisms are welcome.'' | ||
+ | |||
+ | ====FHIR Resource ID Assigned by the Client==== | ||
+ | * '''track2-terminology-ts-suite1-client-id''' -- Terminology test suite 1 where the FHIR client assigns the ValueSet resource id in the setup. | ||
+ | * '''track2-terminology-ts-suite2-client-id''' -- Terminology test suite 2 where the FHIR client assigns the ValueSet resource id in the setup. | ||
+ | * '''track2-terminology-ts-suite3-client-id''' -- Terminology test suite 3 where the FHIR client assigns the ValueSet resource id in the setup. | ||
+ | * '''track2-terminology-ts-suite4-client-id''' -- Terminology test suite 4 where the FHIR client assigns the ValueSet resource id in the setup. | ||
+ | |||
+ | ====FHIR Resource ID Assigned by the Server==== | ||
+ | * '''track2-terminology-ts-suite1-server-id''' -- Terminology test suite 1 where the FHIR server assigns the ValueSet resource id in the setup. | ||
+ | * '''track2-terminology-ts-suite2-server-id''' -- Terminology test suite 2 where the FHIR server assigns the ValueSet resource id in the setup. | ||
+ | * '''track2-terminology-ts-suite3-server-id''' -- Terminology test suite 3 where the FHIR server assigns the ValueSet resource id in the setup. | ||
+ | * '''track2-terminology-ts-suite4-server-id''' -- Terminology test suite 4 where the FHIR server assigns the ValueSet resource id in the setup. | ||
+ | |||
+ | ===Conventions Used=== | ||
+ | The execution of the TestScript resources contained in this folder are constrained by the following conventions: | ||
+ | |||
+ | '''Fixtures''' - All resource reference values can be either url paths or local local file system paths. The convention for these TestScript resources use local file system paths where the execution engine is expected to resolve this path based on the following: | ||
+ | * Leading '/' character - this is resolved as an absolute path based on a known root path. | ||
+ | * No leading '/' character - this is resolved as a relative path based on the location of the TestScript resource file. |
Latest revision as of 20:10, 9 January 2016
FHIR Terminology Services
Submitting WG/Project/Implementer Group
FHIR Management Group (FMG)
Justification
The FHIR specification includes support for the provision of a terminology service - that is, a service that lets healthcare applications make use of codes and value sets without having to become experts in the fine details of the value set resource, and the underlying code systems. The management and proper use of terminology is fundamental to effective, interoperable data exchange, so this is an important capability to provide and test in the Connectathons.
Proposed Track Lead
Coordinator: Rob Hausam (There is a dedicated skype chat for terminology services - https://join.skype.com/ti2MOnoKB1zJ - or Contact Rob to be included - skype id rhausam)
Expected participants
- Health Intersections - server
- Aegis - Touchstone tool and test scripts
- Apelon - server
- Lantana - FHIR services on Trifolia
- CSIRO - server
- NLM - FHIR services on VSAC
- IMO - FHIR services on IMO ProblemIT
- Multiple additional servers
- Multiple clients
Roles
FHIR Terminology Server
For service providers, implement the following operations from http://hl7.org/fhir/terminology-service.html:
- $expand - Value Set Expansion
- $validate-code - Value Set Validation (note: there are a few typos on the terminology service page where this operation is referred to as "validate" but is actually "validate-code" - editorial oversight)
- $lookup - Concept Lookup
- $translate - Translations (note: there is a typo on the terminology service page for Batch Translation where the text states "validate" not "translate")
- $closure - Maintaining a Closure Table
Support additional capabilities:
- Expansion Profile (experimental) - Expansion Profile FHIR Resource Proposal
- SNOMED CT and LOINC implicit value sets - [1] [2]
Service providers are not required to implement all of this functionality - it's a lot to do. For new implementers, start at the top and work down (generally).
FHIR Terminology Client Consumer
Implement any one or more of:
- do a value set expansion of one of the value sets in the spec
- validate a code using the spec against a FHIR value set, a v2 value set, or LOINC or snomed CT
- look up a display for a code (most appropriate for v2/FHIR conversion)
- translate a code from one value set to another, based on the existing value set and ConceptMap resources, and/or other additional knowledge available to the server
- maintain a client-side closure table based on server-side terminological logic
- experiment with the capabilities of the expansion profile (see description above of the expected capabilities and scenarios)
- references to SNOMED CT and LOINC implicit value sets
At least one server supports all of these operations and capabilities (http://fhir2.healthintersections.com.au). Other servers, including the Apelon server (http://fhir.ext.apelon.com:8081/DtsOnFhirDemo) and the others listed above will support several of these operations and capabilities.
Scenarios
Scenarios - See server and client roles as listed above
TestScripts
The supporting TestScripts and corresponding fixtures have been committed to the FHIR SVN repository at: http://gforge.hl7.org/svn/fhir/trunk/connectathons/OrlandoJan2016/Connectathon11/Track2-Terminology
TestScript Definitions
The TestScript resources in this folder represent a conversion** of the TestScript originally used at the 1st Terminology Services Connectathon held in Washington, February 2014.
The original single TestScript has been separated into four (4) separate TestScript definitions - one for each original test suite. In addition, each of those TestScripts have two variations based on whether the FHIR client or server assigns the resource id of the required ValueSet resources created in the setup. Additional scripts will be created to support further scenarios as required.
**This representation of the Terminology Services tests is not meant to be definitive and complete. This is one example of how these tests can be defined in the current DSTU2 format of the TestScript resource. Constructive feedback, suggestions and criticisms are welcome.
FHIR Resource ID Assigned by the Client
- track2-terminology-ts-suite1-client-id -- Terminology test suite 1 where the FHIR client assigns the ValueSet resource id in the setup.
- track2-terminology-ts-suite2-client-id -- Terminology test suite 2 where the FHIR client assigns the ValueSet resource id in the setup.
- track2-terminology-ts-suite3-client-id -- Terminology test suite 3 where the FHIR client assigns the ValueSet resource id in the setup.
- track2-terminology-ts-suite4-client-id -- Terminology test suite 4 where the FHIR client assigns the ValueSet resource id in the setup.
FHIR Resource ID Assigned by the Server
- track2-terminology-ts-suite1-server-id -- Terminology test suite 1 where the FHIR server assigns the ValueSet resource id in the setup.
- track2-terminology-ts-suite2-server-id -- Terminology test suite 2 where the FHIR server assigns the ValueSet resource id in the setup.
- track2-terminology-ts-suite3-server-id -- Terminology test suite 3 where the FHIR server assigns the ValueSet resource id in the setup.
- track2-terminology-ts-suite4-server-id -- Terminology test suite 4 where the FHIR server assigns the ValueSet resource id in the setup.
Conventions Used
The execution of the TestScript resources contained in this folder are constrained by the following conventions:
Fixtures - All resource reference values can be either url paths or local local file system paths. The convention for these TestScript resources use local file system paths where the execution engine is expected to resolve this path based on the following:
- Leading '/' character - this is resolved as an absolute path based on a known root path.
- No leading '/' character - this is resolved as a relative path based on the location of the TestScript resource file.