Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
1.6.06
-
None
-
Find Terms, Navigate Terms
-
Tested and verified it is now working correctly. This was fixed in an earlier version of 1.7.
-
1.7.02.0005
Description
The source code for i2b2 is not consistent in the way in which it loads concept synonyms in the Ontology cell. It also has an issue with keeping a persistent value for the option which allows you to toggle whether it shows synonyms or not. When i2b2 is launched, it doesn't seem logical to show concept synonyms by default in the ontology cell, but rather give the option to show synonyms if the user prefers, or allow the ability to search for synonyms. Typically the preferred term should be displayed in a SKOS terminology model, and that's essentially what the i2b2 terminology is.
1.) In the Ontology Cell Navigation Options form, the check box for "Show Synonymous Terms" is turned off.
FILE: \webclient\default.htm
SOURCE CODE:
<div style="margin-left:50px"><input type="checkbox" id="ONTNAVshowSynonyms" /> Show Synonymous Terms</div>
If it was turned on, it would have the checked property set:
<div style="margin-left:50px"><input type="checkbox" id="ONTNAVshowSynonyms" checked /> Show Synonymous Terms</div>
2.) However, this is inconsistent with the way the web client loads i2b2 concept synonyms. In order to make this form and the initial load consistent with each other, this "defaultValue" setting should be set to false, not true. If you download the source code from the i2b2.org site, the value is set to false.
FILE: \webclient\cell_config_data.js
SOURCE CODE:
{xmlName:'OntSynonyms', thinClientName:'synonyms', defaultValue:true}
should be:
{xmlName:'OntSynonyms', thinClientName:'synonyms', defaultValue:false}
3.) This takes the value of the params.synonyms from cell_config_data.js and applies the value to what the form should set as checked. Currently, it's taking the opposite of it's value, which seems strange.
FILE: \webclient\js-i2b22\cells\ONT\ONT_view_Nav.js
SOURCE CODE:
$('ONTNAVshowSynonyms').checked = parseBoolean(!this.params.synonyms);
should be (without the !)
$('ONTNAVshowSynonyms').checked = parseBoolean(this.params.synonyms);
4.) And in order to make the code explicit, this code should be using the not (!) operator, rather than commenting out the code completely. Without this, the value displayed in the form never persists. It always shows as false. This code is probably okay, but it's better to be explicit.
FILE: \webclient\js-i2b22\cells\ONT\ONT_view_Find.js
SOURCE CODE:
//$('ONTFINDshowSynonyms').checked = parseBoolean(this.params.synonyms);
should be:
$('ONTFINDshowSynonyms').checked = parseBoolean(!this.params.synonyms);
==================
CONCLUSION:
So in order to be consistent, #1 should be unchecked (no checked property) and #2 should be set to false. #3 should have the not operator removed and #4 should have the not operator applied rather than being uncommented out.
And if you want synonyms to show in the navigation pane by default, then #1 should be checked, #2 should be set to true, and #3 and #4 should also be fixed in the same way.
==================
1.) In the Ontology Cell Navigation Options form, the check box for "Show Synonymous Terms" is turned off.
FILE: \webclient\default.htm
SOURCE CODE:
<div style="margin-left:50px"><input type="checkbox" id="ONTNAVshowSynonyms" /> Show Synonymous Terms</div>
If it was turned on, it would have the checked property set:
<div style="margin-left:50px"><input type="checkbox" id="ONTNAVshowSynonyms" checked /> Show Synonymous Terms</div>
2.) However, this is inconsistent with the way the web client loads i2b2 concept synonyms. In order to make this form and the initial load consistent with each other, this "defaultValue" setting should be set to false, not true. If you download the source code from the i2b2.org site, the value is set to false.
FILE: \webclient\cell_config_data.js
SOURCE CODE:
{xmlName:'OntSynonyms', thinClientName:'synonyms', defaultValue:true}
should be:
{xmlName:'OntSynonyms', thinClientName:'synonyms', defaultValue:false}
3.) This takes the value of the params.synonyms from cell_config_data.js and applies the value to what the form should set as checked. Currently, it's taking the opposite of it's value, which seems strange.
FILE: \webclient\js-i2b22\cells\ONT\ONT_view_Nav.js
SOURCE CODE:
$('ONTNAVshowSynonyms').checked = parseBoolean(!this.params.synonyms);
should be (without the !)
$('ONTNAVshowSynonyms').checked = parseBoolean(this.params.synonyms);
4.) And in order to make the code explicit, this code should be using the not (!) operator, rather than commenting out the code completely. Without this, the value displayed in the form never persists. It always shows as false. This code is probably okay, but it's better to be explicit.
FILE: \webclient\js-i2b22\cells\ONT\ONT_view_Find.js
SOURCE CODE:
//$('ONTFINDshowSynonyms').checked = parseBoolean(this.params.synonyms);
should be:
$('ONTFINDshowSynonyms').checked = parseBoolean(!this.params.synonyms);
==================
CONCLUSION:
So in order to be consistent, #1 should be unchecked (no checked property) and #2 should be set to false. #3 should have the not operator removed and #4 should have the not operator applied rather than being uncommented out.
And if you want synonyms to show in the navigation pane by default, then #1 should be checked, #2 should be set to true, and #3 and #4 should also be fixed in the same way.
==================
Attachments
Activity
Field | Original Value | New Value |
---|---|---|
Workflow | classic default workflow [ 10202 ] | i2b2 Issues [ 10292 ] |
Component/s | Web Client [ 10021 ] |
Component/s | Web Client [ 10021 ] |
Status | Open [ 1 ] | In Progress [ 3 ] |
Worklog Id | 10001 [ 10001 ] | |
Remaining Estimate | 0d [ 0 ] | |
Time Spent | 0.25h [ 900 ] |
Fix Version/s | 1.7.02 [ 10091 ] | |
Assignee | Mike Mendis [ mem61 ] | Janice Donahoe [ jmd86 ] |
Status | In Progress [ 3 ] | Ready to Test [ 10001 ] |
Workflow | i2b2 Issues [ 10292 ] | i2b2 Issues Workflow [ 10458 ] |
Component/s | Web Client [ 10021 ] |
Component/s | Ontology Cell [ 10040 ] | |
Component/s | Web Client [ 10046 ] | |
Component/s | Ontology Cell [ 10001 ] | |
Component/s | Web Client [ 10021 ] | |
Fix Version/s | 1.7.02 [ 10127 ] | |
Fix Version/s | 1.7.02 [ 10091 ] | |
Key |
|
|
Project | i2b2 [ 10000 ] | i2b2 Web Client [ 10033 ] |
Affects Version/s | 1.6.06 [ 10119 ] | |
Affects Version/s | 1.6.06 [ 10072 ] | |
Workflow | i2b2 Issues Workflow [ 10458 ] | Web Client Issues Workflow [ 10649 ] |
Status | Ready to Test [ 10001 ] | Testing [ 10002 ] |
Affects View/s | Find Terms,Navigate Terms [ 10044, 10047 ] | |
Build Number/s (Testing) | 1.7.02.0005 | |
Testing Notes | Tested and verified it is now working correctly. This was fixed in an earlier version of 1.7. | |
Status | Testing [ 10002 ] | Testing [ 10002 ] |
Build Number (Fixed) | 1.7.02.0005 | |
Resolution | Fixed [ 1 ] | |
Status | Testing [ 10002 ] | Resolved [ 5 ] |
Status | Resolved [ 5 ] | Closed [ 6 ] |
If you download the source code from the i2b2.org site, the value is set to false.