This wiki has undergone a migration to Confluence found Here
Wiki Sheet
Jump to navigation
Jump to search
The purpose of this page is to begin and maintain a list of requirements for any HL7 terminology management tool.
Contents
Assumptions and constraints
These are high level requirements that influence all functional and non-functional requirements.
- Vocabulary elements can be exported in a format that can be transformed bidirectionally and in a lossless way into the coremif format.
- Value sets will be consistent with the principles defined by the Value Set Definition (VSD) project.
Functional Requirements
Code System Operations
Requirement | VML Operation | CTS 2 SFM Operation | CTS2 PIM Operation | Notes |
---|---|---|---|---|
Adding Concept Codes to a Code System | /VocabularyRevision/codeSystemRevision[1]/selectCodeSystem[1]/addCodesToCodeSystem[1] | 5.3.1.6 Create Concept | tbd | The tool will support adding new concept codes to a code system. |
Create a New Code System | /VocabularyRevision/codeSystemRevision[1]/registerCodeSystem[1] | 5.3.1.1 Create Code System | tbd | The tool will support creating a new code system. |
Maintain Code System Metadata | /VocabularyRevision/codeSystemRevision[1]/selectCodeSystem[1]/modifyCodeSystem[1]/description[1] | 5.3.1.2 Maintain Code System Version | tbd | The tool will support updating the metadata for a code system. |
Define Relationship between Concept Codes | /VocabularyRevision/codeSystemRevision[1]/selectCodeSystem[1]/addConceptRelationship[1] | 5.3.4.2 Create Association | tbd | The tool will support defining new relationships between coded concepts. |
Remove Relationship between Concept Codes | /VocabularyRevision/codeSystemRevision[1]/selectCodeSystem[1]/removeConceptRelationship[1] | 5.3.4.1 Update Association Status | tbd | The tool will support removing relationships between coded concepts. |
Add Concept Code Designation | /VocabularyRevision/codeSystemRevision[1]/selectCodeSystem[1]/addPrintNameToCode[1] | 5.3.1.7 Maintain Concept | tbd | The tool will support adding a new designation to a concept. |
Adding Property to a Concept Code | /VocabularyRevision/codeSystemRevision[1]/selectCodeSystem[1]/addPropertyToCode[1] | 5.3.1.7 Maintain Concept | tbd | The tool will support adding an existing property to a concept code. |
Move a Concept Code | /VocabularyRevision/codeSystemRevision[1]/selectCodeSystem[1]/moveCode[1] | 5.3.4.1 Update Association Status | tbd | The tool will support moving a concept code to another location in the code system. |
Retire a Concept | /VocabularyRevision/codeSystemRevision[1]/selectCodeSystem[1]/retireCode[1] | 5.3.1.8 Update Concept Status | tbd | The tool will support retiring a concept code. |
Update Concept Description | /VocabularyRevision/codeSystemRevision[1]/selectCodeSystem[1]/updateCodeDescription[1] | 5.3.1.7 Maintain Concept | tbd | The tool will support updating a concept description. |
Update Concept Designation | /VocabularyRevision/codeSystemRevision[1]/selectCodeSystem[1]/updateCodePrintName[1] | 5.3.1.7 Maintain Concept | tbd | The tool will support updating a concept designation. |
List Available Code Systems | N/A | 5.2.1.1 List Code Systems | ExampleR3C4 | The tool will be able to list the code systems known to the service. |
Return Code System Details (Metadata) | N/A | 5.2.1.2 Return Code System Details, 5.2.1.3 Return Code System Version Details | ExampleR3C4 | The tool will support returning the details (metadata) for a given code system available on the terminology service. |
List Code System Concepts | N/A | 5.2.1.5 List Code System Concepts | ExampleR3C4 | Te tool will support returning the set of all concepts in the specified code system. This may optionally be filtered. |
Return Concept Details | N/A | 5.2.1.6 Return Concept Details | ExampleR3C4 | The tool will be able to returns the details for the known attributes (metadata) of a coded concept. |
Adding Property to a Code System | N/A | C | D | The tool will be support the ability to add a new property to the code system that can be referenced by code system elements (i.e., concept domain, code system, value set, concept, concept representation, relationships, and binding). |
A | B | C | D | E |
A | B | C | D | E |
Value Set Operations
Requirement | VML Operation | CTS 2 SFM Operation | CTS2 PIM Operation | Notes |
---|---|---|---|---|
Update a Value Set Definition | /VocabularyRevision/valueSetRevision[1]/selectValueSet[1]/addCodesToValueSet[1] | 5.3.2.2 Maintain Value Set, /VocabularyRevision/valueSetRevision[1]/selectValueSet[1]/removeCodesFromValueSet[1],
/VocabularyRevision/valueSetRevision[1]/createValueSet[1]/addValueSetReferences[1],/VocabularyRevision/valueSetRevision[1]/selectValueSet[1]/removeValueSetReferences[1] || ExampleR1C4 ExampleR1C5 | ||
Create Value Set | /VocabularyRevision/valueSetRevision[1]/createValueSet[1] | 5.3.2.1 Create Value Set | ExampleR3C4 | Create a new value set. |
Delete a Value Set | /VocabularyRevision/valueSetRevision[1]/selectValueSet[1]/deleteValueSet[1] | 5.1.6 Remove Value Set | ExampleR3C4 | Delete a value set from the terminology service. |
List Value Sets | N/A | 5.2.2.1 List Value Sets | ExampleR3C4 | Lists the value sets that are known to the service. Can optionally be filtered. |
Return Value Set Details | N/A | 5.2.2.2 Return Value Set Details | ExampleR3C4 | Return the metadata for a given value set. |
Generate Value Set Expansion | N/A | 5.2.2.3 List Value Set Contents (Expand Value Set) | ExampleR3C4 | Generate the Value Set Expansion from the Value Set Definition. |
Value Set Expansion Detection | N/A | ExampleR3C3 | ExampleR3C4 | The tool must be able to detect a difference in the current and prior version of a value set expansion when the version of the code system changes. |
Concept Domain Operations
Requirement | VML Operation | CTS 2 SFM Operation | CTS2 PIM Operation | Notes |
---|---|---|---|---|
Create a Concept Domain | /VocabularyRevision/vocabularyDomainRevision[1]/createVocabularyDomain[1] | 5.3.3.1 Create Concept Domain | ExampleR2C4 | Vocablary Domain == Concept Domain. Can specify the parent in the event a sub-domain is required. |
Define a Concept Domain | /VocabularyRevision/vocabularyDomainRevision[1]/defineVocabularyDomain[1] | 5.3.3.2 Maintain Concept Domain | ExampleR3C4 | Update the definition of a Concept Domain |
Delete a Concept Domain | /VocabularyRevision/vocabularyDomainRevision[1]/deleteVocabularyDomain[1] | None | ExampleR3C4 | Delete a Concept Domain |
Move a Concept Domain | /VocabularyRevision/vocabularyDomainRevision[1]/moveVocabularyDomain[1] | 5.3.3.2 Maintain Concept Domain | ExampleR3C4 | Move a Concept Domain to a different parent (fromDomain/toDomain) Multiple parents supported by the tooling. |
Rename a Concept Domain | /VocabularyRevision/vocabularyDomainRevision[1]/renameVocabularyDomain[1] | 5.3.3.2 Maintain Concept Domain | ExampleR3C4 | Change the name of a Concept Domain |
List Concept Domains | None (RoseTree Operation) | 5.2.3.1 List Concept Domains | tbd | Lists the concept domains that are available on the system. |
Return Concept Domain Details | None (RoseTree Operation) | 5.2.3.2 Return Concept Domain Details | tbd | Return the metadata for a given concept domain. |
Binding Operations
Requirement | VML Operation | CTS 2 SFM Operation | CTS2 PIM Operation | Notes |
---|---|---|---|---|
Add a binding from a Concept Domain to a Value Set | /VocabularyRevision/valueSetRevision[1]/createValueSet[1]/addToVocabularyDomain[1] | ExampleR2C3 | ExampleR2C4 | Bind a Concept Domain to a Value Set with a set context (Representatice, Example, etc.) |
Import Operations
Requirement | VML Operation | CTS 2 SFM Operation | CTS2 PIM Operation | Notes |
---|---|---|---|---|
Import CodeSystem | None | 5.1.1 Import Code System, 5.1.3 Import Code System Version | ExampleR2C4 | The ability to import a code system into the software. If licensing permission allow, the code system may be extended and updated. |
Import Value Set | None | 5.1.5 Import Value Set Version | ExampleR3C4 | The ability to import a value set into the software. If licensing permission allow, the value set may be extended and updated. |
Export Operations
Requirement | VML Operation | CTS 2 SFM Operation | CTS2 PIM Operation | Notes |
---|---|---|---|---|
Export Code System | None (RoseTree Operation) | 5.1.10 Export Code System Content | ExampleR2C4 | The ability to export code system content into an HL7 compatible (coremif) format. |
Export Value Set | None (RoseTree and Publishing Operation) | ExampleR3C3 | ExampleR3C4 | The ability to export value set content into an HL7 compatible (coremif) format. |
Versioning
- Vocabulary artifacts (code systems and value sets) are versionable entities, and as such any solution must be able to support versioning of code systems and value sets.
Non-Functional Requirements
- Accessibility - Needs to be accessible to people involved in vocabulary creation and maintenance
- Availability - Available 24x7 outside of published maintenance events
- Backup - System allows for standard backup and recovery, failover is not required. Create and restore a backup of the s/w and content
- Documentation - Tool will have adequate user documentation that is updated with new releases.
- Support for varying concept models for both HL7 internal and external vocabularies.
Interoperability - the tool
- Response time - RelatiVe response time. Real time response for basic navigation and search, recognizing that generating value set expansions can be time consuming.
- Security - The tools allows for user authentication