This wiki has undergone a migration to Confluence found Here
Difference between revisions of "Vocab QA Requirements"
Jump to navigation
Jump to search
Lisa Nelson (talk | contribs) |
Lisa Nelson (talk | contribs) |
||
Line 291: | Line 291: | ||
− | == | + | == Terms to Clarify == |
Differences between these ideas. | Differences between these ideas. | ||
+ | # Terminology | ||
+ | ##[get definition from Core Principles] | ||
+ | # Vocabulary | ||
+ | ##[get definition from Core Principles] | ||
#Code System | #Code System | ||
##[get definition from Core Principles] | ##[get definition from Core Principles] | ||
Line 299: | Line 303: | ||
#Value Set | #Value Set | ||
##[get definition from VSD] | ##[get definition from VSD] | ||
+ | |||
=== Value Set Definition === | === Value Set Definition === | ||
# Intensional & Extensional | # Intensional & Extensional |
Revision as of 19:33, 30 November 2015
This is the working collaboration page for documenting the issues and requirements to be addressed by the Vocab QA project. This page will begin to put together the ideas from which the document will eventually be produced. Project Main Page
Contents
- 1 Scope Items
- 2 Draft list of issues for discussion
- 3 List of principles
- 4 Initial Ideas for Requirements
- 5 General Notions and Comments
- 6 Systematic Approach
- 7 Initial ideas on TQA Process actions
Scope Items
Project ID: 1196
Product Families
- Version 2
- Version 3
- CDA
- FHIR
Definitions and Critical Concepts
Definitions Last updated on [enter date]
Id | Item | Context | Draft Definition | Noted Issues for draft definition | Known overlaps and conflicting definitions
|
---|---|---|---|---|---|
I. | Overarching Terms - How are these concepts the same or different? | V3 Core Principles | (copy in the V3 definition) | (note where this def doesn't meet SKMT definition guidelines | (note known issues for this term) |
I.1 | Terminology | V3 Core Principles | |||
I.2 | Vocabulary | V3 Core Principles | |||
I.3. | Code System | V3 Core Principles | |||
I.4. | V2 Table | V3 Core Principles | |||
I.5. | Ontology | V3 Core Principles | |||
I.6. | Concept Domain | V3 Core Principles | |||
II. | Specific Definitions - What are the definitions for these key terms? | ||||
II.1. | Concept | V3 Core Principles | |||
II.2. | Code System | V3 Core Principles | |||
II.3. | Value Set | V3 Core Principles | |||
II.4. | Value Set Definition | V3 Core Principles | |||
II.4.1 | Extensional Value Set Definition | V3 Core Principles | |||
II.4.2 | Intensional Value Set Definition | V3 Core Principles | |||
II.4.3 | Value Set Expansion | V3 Core Principles | |||
II.4.4 | Grouping Value Set | V3 Core Principles | |||
II.4.5 | Value Set Scope (Purpose) | V3 Core Principles | |||
II.4.6 | "Locked" Value Set | V3 Core Principles |
| ||
III. | Versioning - What is versioning and how does it apply in this context? |
| |||
IV. | Use of Value Sets | ||||
IV.1. | Use of Null (information transport versus metadata bout the value exchanged) | ||||
IV.2. | Use of Negation (as defining types of concepts to be included) | ||||
IV.3. | Use of MIN, MAX, and IGNORE | ||||
V. | How to build a value set | ||||
V.1 | What is Binding (Do we say "Value Set Binding"? "Vocabulary Binding?") | ||||
V.1.1 | What is Binding Strength? | ||||
V.1.2 | What is Binding Stability? (Static and Dynamic) | ||||
V.2 | Selection of Code System(s) | ||||
V.3 | Use of concept descriptions | ||||
V.4 | What is VS Expansion information and what is in the definition ( See II.4.3) | ||||
V.5 | Use of concepts not in the bound value set (open/closed, strength, extensability) |
Terms to Clarify
Differences between these ideas.
- Terminology
- [get definition from Core Principles]
- Vocabulary
- [get definition from Core Principles]
- Code System
- [get definition from Core Principles]
- Concepts
- [get definition from Core Principles]
- Value Set
- [get definition from VSD]
Value Set Definition
- Intensional & Extensional
- Value Set Expansions
- Grouping value set
- VS Scope (Purpose) - critical elements
- "Locked"
V2 Table
- Code usage (Required, Permitted, Excluded)
Terminology artifact versioning
[How is versioning applied for the main aspects]
Use of value sets
- Use of Null (information transport versus metadata about the value exchanged)
- Negation (as defining types of concepts to be included)
- MIN, MAX, IGNORE
How to build a value set
- Binding
- Binding Strength
- Binding Stability (Static and Dynamic)
- Selection of code system
- Use of concept descriptions
- What is VS Expansion information and what is in the definition
- Allowance for use of concepts not in the value set (Open/Closed, ~strength, extensability)
Vocabulary Objects
- HL7 Defined Code Systems
- HL7 Authored and Published Value Sets
Common Elements Across Families
- Code system metadata
- Code system Identifiers
- HL7 code system component syntax
- Code case
- Use of special characters, etc
- Expectations on specification of a particular concept representation for use
- Value Set metadata
- Value set identifiers
- Value set definition constructs
- QA considerations to be considered when changes are proposed
- Binding information
- Common components and naming
- Min and Max
- Expectations on adherence to versions and behavior when expected version is not available
- Expectations to include
- Version update timeliness
- Impact on backwards compatibility and restrictions that must be considered when changes are proposed
- Expectations to include
- Clarify how partially/unconstrained specifications are to be fully constrained
- If every HL7 specification provides through binding and guidance all information necessary to fully specify binding, then HL7 does not need to provide expansions because this should mean that any entity could follow the specification (knowing the allowed defaults and default behavior) to arrive at the correct deterministic expansion
- HL7 will define final defaults for all parameters so that if a specification does not address the approach for arriving at a deterministic specification, the HL7 default will govern.
What is needed for each of these
- Similar sub-elements
- Unified governance
- Where there are differences
- Allow differences or require harmonization
Draft list of issues for discussion
- Multi-code system value sets and their use in extensible bindings
- Use of value sets to control better use of null flavor
- Value set versioning
- Use of static binding
- Clarify use of immutable value set: ActClassProcedure – good example
- Not just value set – all terminology issues
- V2 table content issues
- Incorrect OID identifier and name of object
- Inconsistency in naming conventions
- Terminology source of truth for artifacts
- Terminology in the context of ballot review
- If a code system is represented in an HL7 spec, the code system:
- Needs an identifier "known to HL7 users"
- Has a documented steward
- Example of situation that should be avoided
- Abnormal / Interpretation flags in v2 lab / v3 lab
- Explain the ROI for following these guidelines
- Enhanced ease of implementation
- Ease of ballot review and understanding
- Vocabulary Darwin award winners
- Restructure the ballot documents so that the vocabulary content is easily reviewable and the context of use is easy to determine
List of principles
This is a working list to document general principles to be implemented with processes to achieve a higher level of quality in the HL7 Vocabulary management processes across the product families.
- Assessment of fitness for purpose of new value sets
- Scope and Range of proposed Value Set
- Assessment of both fitness for purpose and possible negative effects of proposed changes
Initial Ideas for Requirements
We really want to have all of these be SHALLs, but we recognize there may be issues around broad use.
- Review process should be asynchronous
- Review process should invite contributions from both members and non-members
- Tooling should be used to ensure technical accuracy
- Proposed content ready for use at time of submission
- Proposed content should be free of spurious editorial error or structural mistakes (missing requirement elements, etc.)
- Proposed content should be in a formal artifact and well structured
- Proposed content should have a clear path to implementability
- Tooling should be broadly available to enable creation and update of VSDs
- Tooling should be broadly available to enable creation and update of HL7 code systems
- Tooling must support the format for implementation use of the value sets and other vocabulary objects across all families
- Ideally the tooling should provide a single set of capabilities and UI, and the product family differences are 'under the covers' in the background
- It would be nice if the tooling did the automatic items, such as and OID is created automatically when a FHIR value set is created
- Asynchronous but consistent process - need off-line functionality
- Should we continue to support inconsistent ballot processes timing and approach across families
- may need to consider what could change here
General Notions and Comments
- Some requirements are driven by the underlying code system requirements
- Some requirements are driven by the product family
- We should try to ensure that all value sets created are usable across product families
- The current notion is that a value set expansion contains a particular set of concepts from underlying terminologies, but different expansions made from the same VSD may have differences in additional baggage; but all must have the same set of concepts
- Our processes should ensure that whatever gets submitted is consistent with what our documented notions of what value sets actually are.
- Our processes should allow for the possibility that validation requirements for value sets may vary based on the product family or models they are being designed for use with.
- See if our tooling and practices can make effective use of social media so that the review process can scale by taking advantage of crowd-sourcing notions
Systematic Approach
- Alternative approaches:
- Gather Input by meeting with key collaborator for each product family to find issues
- Decided against this. Decided to build stawman to discuss with product families first.
- Develop and initial strawman then review with product families
- Document process
- Incrementally add specificity over time
- Focus on critical areas and allow other items to not change initially
- Identify common elements across all families but are not approached in same way
- Incremental build of supporting tooling
- Can we have tooling that changes as requirements change
- Document process
- Gather Input by meeting with key collaborator for each product family to find issues
- Consider using survey monkey to gather current processes