Currently, there is no way within the data model to specify the scope of answers for coded concepts like PROBLEM ADDED or X-RAY FINDING.
Ideally, we should have a mechanism for specifying either 1..n concept_set(s) and/or concept_class(es) that make up the possible answers.
We could accomplish this several ways:
- Add concept_answer.concept_class and concept_answer.concept_set to allow class(es) and/or set(s) to be included within an answer set.
- PRO: smallest change to the data model
- CON: complicates concept answer code and dictionary UI tools
- Create concept_coded table (as an extension to concept much like concept_numeric) with concept_coded.answer_filter (varchar) to hold some string representation of classes/sets allowed
- PRO: answer_filter could be used to restrict answers even as concepts are being defined, the concept_coded would give us a place to define whether answer lists are constraints (must choose from answers) or suggestions (convenient/popular choices, but you're allowed to answer with any concept matching filter)
- CON: code must be changed to accommodate the new table and handle it along with concept_answer values
- Add concept.answer_filter (varchar) with a string representation of valid classes/sets
- PRO: simple data model change
- CON: puts coded datatype-specific attributes into concept table