Release Notes for i2b2 Version 1.6.xx

These release notes address resolutions for issues found and information about the i2b2 version 1.6.00, 1.6.01, 1.6.02 and 1.6.03. Unless otherwise specified, these notes apply to the following operating systems:


Additional Information
Included in this document are the following sections:

Section

Includes

Installation

Information related to installing the release.

Third Party Software

Software that is utilized by i2b2 but is owned, maintained and licensed by other companies is referred to as "Third Party Software". Any version changes made or needed to be made to the users system will be noted in this section.

New Features

A list of new enhancements will be included in this section. A brief description and a reference to the specification will be provided.

Updates

Any changes that are not considered an enhancement will be included in this section. This may be a fix for a problem found or it may be a change to existing code but not related to a problem.

Licensing

i2b2 licensing information

Trademarks

Trademark information



Installation
This release note applies to you if you are upgrading to 1.6.xx from a computer running an earlier version of i2b2. If you are installing 1.6.xx from a computer running the i2b2 Workbench, ensure that the workbench and all eclipse applications are closed prior to installing this release.

 
WHERE DO I START?

Prior to setting up the i2b2 server, workbench or VM Image it is highly recommended that you read one of the following documents located in the documentation folder.

1. Hive_Installation_Guide.pdf

use for new installations

2. Data_Installation_Guide.pdf

use for new installations of the demo and metadata

3. i2b2Workbench_Install_Guide.pdf

use for installing the i2b2 Workbench (Client)

4. vmware_Install_Guide.pdf

use for installing the VM Image


All of these documents will explain what needs to be done during the setup and in what order.

Release 1.6.03

Release 1.6.03 contains changes to the i2b2 Workbench (eclipse client), Web client and server therefore it is necessary to update all three components. It is also important to note that additional data has been added to the demo and metadata to support the new features.

Third Party Software

No changes to third party software are included in release 1.6.03

New Features

i2b2 release 1.6.03 contains new features that have been outlined below.

Large Text Searches

In the previous release, 1.6.02 we introduced a new feature called "String Constraints". Basically a string search ("constraint") is similar to other value constraints in that users can narrow down their search criteria based on a small string of text stored in the tval_char column of the observation_fact table. (For more information on string constraints see the notes for Release 1.6.02).
In release 1.6.03 we now introduce the ability to narrow down your search based on text that is stored in the observation_blob column of the observation_fact table. This new feature is called "Large Text Searches" as the data that is stored in this column is typically a large blob of text such as a report.
To the user the process defining a text search, whether it is a "small string" or "large text string" is pretty straight forward and similar. There are a few minor differences they will see. For example:

The metadataxml defined for the concept or modifier will determine which value constraint window will display to the user. The metadataxml will also determine the <value_type> that is sent in the xml request message. This <value_type> will define whether or not the tval_char or the observation_blob column is searched for the defined text.

IMPORTANT: If you are upgrading from 1.6.02 to 1.6.03 you need to run the following against your database.

                     insert into QT_PRIVILEGE(PROTECTION_LABEL_CD,DATAPROT_CD,HIVEMGMT_CD) values ('SETFINDER_QRY_WITH_LGTEXT','DATA_DEID','USER');

WEB CLIENT: Auto-generate "Timeline"

In the past, when running a query with the result type of Timeline selected it would simply return a patient set. In 1.6.03 this feature has been updated so that now when it is selected, the timeline plug-in will open and automatically display the results in the timeline. This feature is already available in the i2b2 Workbench (eclipse client) so this change is to add it to the web client.


WEB CLIENT: View text (reports) in the timeline

In 1.6.03 users can now view text (reports) from within the timeline. When double clicking on the tick mark that appears for the report a new window will open displaying the text. This feature is already available in the i2b2 Workbench (eclipse client) so this change is to add it to the web client.


WEB CLIENT: Print Query added to Query Status

The option to print a query has been added to the Query Status view of the Web Client. A new icon ( ) will now appear in the top right corner of the Query Status view. A new window will open when you click on this icon. In this window all the information regarding the query and it constraints will appear in the header of the document. The results returned will appear below the header in the body of the report.

Updates

Data

In release 1.6.03, no changes were made to the structure of the database. The only change was to add examples to the metadata, concept_dimension, modifier_dimension, and observation_fact tables to support the new large text constraint.


In addition to adding new data examples the metadataxml was updated with a new data type of "largestring". An example of this new metadataxml is as follows:


<?xml version="1.0" encoding="UTF-8"?>
<ValueMetadata>
<Version>3.2</Version>
<CreationDateTime>2011-12-19T13:32:16.198-04:00</CreationDateTime>
<TestID>LCS-I2B2:XR_RPT_DID</TestID>
<TestName>De-Identified X-Ray Reports</TestName>
<DataType>largestring</DataType>
<MaxStringLength/>
<Flagstouse/>
<Oktousevalues/>
</ValueMetadata>


Fixes:

The following fixes were added to this release.

Queries with exclusion not always working correctly

Queries that contain multiple items in a panel defined to be excluded will not return the correct number of patients. This appears to be happening due to the order in which the inversion is taking place when the SQL for the query is generated and run.

STATUS/RESOLUTION: This issue has been resolved. Excluded panels will always be performed at the end of the SQL statement. All items in the panel will now be excluded.

 

Hidden terms not returned in searches

Hidden Terms were not being returned in searches even though it was selected in the options.

STATUS/RESOLUTION: This issue has been resolved. Hidden terms will now be returned when "Show hidden terms" is selected in the options dialog.

 

Error returned if an item in a previous query contained a Hidden Term

Using a previous query that contains a term that has been changed to be a hidden term will return an error. This is only an issue if the term was active when the query was originally run and later changed to hidden.

STATUS/RESOLUTION: This issue has been resolved. Previous queries with a hidden term can be dropped in the query tool and the new query will run..

 

Find Terms: First term in list sometimes inherits color of terms in the previous search

Terms will appear in blue if they are a synonym and red if they are a hidden term. If you search for a term that has a term highlighted in red or blue then when you do the next search the first term in the list will inherit the color from the previous search.

STATUS/RESOLUTION: This issue has been resolved. All terms now appear in the correct color regardless of the results from previous searches.

 

Macintosh: Expand / Collapse did not always work in Previous Query

In the Previous Query view, users cannot expand or collapse folders once you highlighted an item in the view. You can still open and close a folder by double clicking on the name but you cannot do it by clicking on the icon (arrow) next to the name.

STATUS/RESOLUTION: This issue has been resolved. Users can open and close a folder by clicking on the icon or double clicking on the name




Release 1.6.02

Release 1.6.02 contains web client, server and oracle database changes so it is important to update all that apply to you. This release does not contain any changes to the i2b2 Workbench.

Third Party Software

No changes to third party software are included in release 1.6.02

New Features

i2b2 release 1.6.02 contains new features that have been outlined below.

String Constraint

In the 1.6.02 release there is now an option to constrain a query by a string of text. Similar to other text and numeric constraints, a user can narrow down their search criteria when setting up the query in the query tool view. The main difference between this new constraint and the existing ones is the string constraint allows users to enter a string of text as opposed to an enumerated or numerical value.
The operators for a string constraint are defined below.

Operator

Description

Starting with

The results returned will contain only those facts whose value begins with the text entered in the search box.

Ending with

The results returned will contain only those facts whose value ends with the text entered in the search box.

Containing

The results returned will be those facts whose value contains the text entered in the search box.

  • This constraint will return the broadest range of results.

Exact

The results returned will contain only those facts whose value matches exactly to the text entered in the search box.

  • This constraint will return the narrowest range of results.


Defining the string constraint works the same way as other text and numeric constraints. Once you drag the concept or modifier to a panel in the query tool view the appropriate constraint window will open. The only requirement is that the concept or modifier has to have metadataxml entered in the metadata table for that item. This requirement has not changed. The only thing that has changed is a new data type has been added to the metadataxml. Information about this new data type can be found in the Data section of these release notes.

CDATA marker added to the xml message

The 1.6.02 release, the CDATA marker has been added to the xml messages being sent from the i2b2 Web Client and the Workbench. This new section will appear for those concepts and modifiers that can have a value constraint defined when running a query or generating a timeline. An example of the change is shown below.
<item>
<hlevel>3</hlevel>
<item_name>Social history [Contains: smokes]</item_name>
<item_key>\\i2b2_REP\i2b2\Reports\Medical History\Social History{color:#0000ff}</item_key>
<tooltip>i2b2 \ Reports \ Medical History \ Social History</tooltip>
<class>ENC</class>
<item_icon>LA</item_icon>
<item_is_synonym>false</item_is_synonym>
<constrain_by_value>
<value_type>TEXT</value_type>
<value_operator>LIKE[contains]</value_operator>
<value_constraint><![CDATA[smokes]]></value_constraint>
</constrain_by_value>
</item>

Lockout / Obfuscation Parameters

In the 1.6.02 new parameters were added to the crc.properties file to support the lockout process for obfuscated users as well as the obfuscation process itself.
In addition to the new parameters a modification was made to one of the existing parameters (edu.harvard.i2b2.crc.lockout.setfinderquery.count). The value of -1 is now supported, which means if this parameter is set to -1 then obfuscated users will not be locked out.
This modification as well as the new parameters is outlined below. More detailed information can be found on the i2b2 Community Wiki.

Parameter

Description

edu.harvard.i2b2.crc.lockout.setfinderquery.count

The number of times a user is allowed to run a query with the same results before they are locked out.
CHANGE: The value of -1 is now supported.

edu.harvard.i2b2.crc.lockout.setfinderquery.zero.count

Defines whether or not queries with a set size of zero will be counted when determining whether or not to lockout a user.

edu.harvard.i2b2.crc.setfinderquery.obfuscation.count.sigma

The standard deviation to be applied when displaying the obfuscated results (set size).

edu.harvard.i2b2.crc.setfinderquery.obfuscation.breakdowncount.sigma

The standard deviation to be applied to the set size for the "patient breakdowns" analysis types.

edu.harvard.i2b2.crc.setfinderquery.obfuscation.minimum.value

The threshold (minimum value) a result must meet. Any value below this number will return zero as the new obfuscated set size.



Updates

Data

In release 1.6.02, no changes were made to the structure of the database. The only change was to add examples to the metadata, concept_dimension, modifier_dimension, and observation_fact tables to support the new string constraint.
In addition to adding new data examples the metadataxml was updated with a new data type of "String". An example of this new metadataxml is as follows:
<?xml version="1.0" encoding="UTF-8"?>
<ValueMetadata>
<Version>3.2</Version>
<CreationDateTime>2011-10-19T13:32:16.198-04:00</CreationDateTime>
<TestID>MED:SIG</TestID>
<TestName>Rx Sig</TestName>
<DataType>String</DataType>
<MaxStringLength>50</MaxStringLength>
<Flagstouse/>
<Oktousevalues/>
</ValueMetadata>

Fixes:

The following fixes were added to this release.

Memory error: not able to load PDO

When running a query to obtain a patient list an out of memory error will occur if the database contains a large amount of data. In addition, the patient data object (PDO) is never fully created and will not open in the previous query view.
STATUS/RESOLUTION: This problem was introduced with the enhancement to allow for custom columns in the PDO and only affects large databases. This issue has been resolved. Creating and loading the PDO will no longer cause an out of memory error.

Not able to search for terms with an '&' in the name

In the i2b2 Web client users are not able to search for terms with an ampersand '&' in the name. The term would never be returned with the results.
STATUS/RESOLUTION: This issue has been resolved. Terms with an '&'in the name are now returned in the Find Terms View.

Demo Database Scripts: Passwords inconsistent

In the scripts for the i2b2 demo database the passwords for the user setup during the install process are inconsistent.
STATUS/RESOLUTION: This issue has been resolved. All of the above users now have the same password ('demouser').


PM: Project-User parameters are not saved with the project

The project-user parameters entered into Admin are not being saved with the project id. Therefore they are being associated with all projects instead of the one intended.
STATUS/RESOLUTION: This issue has been resolved. Project-User parameters are now saved with the appropriate project id and are specific to the project and the user.




Release 1.6.01

Release 1.6.01 contains web client, server and oracle database changes so it is important to update all that apply to you. This release does not contain any changes to the i2b2 Workbench.

Third Party Software

No changes to third party software are included in release 1.6.01

New Features

i2b2 release 1.6.01 does not contain any new features.

Updates

Data

In release 1.6.01, no changes were made to the structure of the database. The only change was made to the metadata tables for the oracle database, which have been updated to remove the values in the C_TOTALNUM column. The SQL version was correct and therefore no changes are made to the SQL version.

Fixes:

The following fixes were added to this release.

Ontology: Need to escape apostrophe when searching for a term

Terms that contain an apostrophe are not returned when performing a search in the Find Terms view.
STATUS/RESOLUTION: This issue has been resolved. The apostrophe in the term name or code will now be escaped and all the appropriate terms will be returned during a search.

CRC: Need to escape apostrophe in SQL statements

Zero patients are returned when performing a query using at least one term that contains an apostrophe in the path name.
STATUS/RESOLUTION: This issue has been resolved. All apostrophes will be escaped in SQL statements and the correct number of patients are returned when running a query.

Project Management: Not able to add new users

An error is returned when trying to add a new user in the Project Management application.
STATUS/RESOLUTION: This issue has been resolved. New users can be added to the PM.

Web Client: The "Help" contains references to yui instead of local

The links in the on-line help contain references to the external yui. These links should be defined as local.
STATUS/RESOLUTION: This issue has been resolved. The references in the on-line help file have been changed to local.

Web Client: Scrollbar is missing from some analysis plug-ins

The horizontal and vertical scrollbars are missing from the following analysis plug-ins: Project Requests, Demographics (1 Patient Set), and Demographics (2 Patient Sets).
STATUS/RESOLUTION: This issue has been resolved. The scrollbars have been added to the analysis plug-ins.

Web Client: Analysis tools expand into Ontology views

When select Analysis tools from the menu bar, the plug-in viewer overlaps into the ontology views. As a result the task icons (options, xml, resize workspace) move over so that they appear above the plug-in viewer instead of the ontology views.
STATUS/RESOLUTION: This issue has been resolved. The plug-in viewer no longer overlaps into the ontology views.

Web Client: Not able to open a modifier container or folder

Modifier containers and folders would not expand to display the modifiers contained within them.
STATUS/RESOLUTION: This issue has been resolved. All containers and folders will now open.

Release 1.6.00

Release 1.6.00 contains changes to the i2b2 Workbench (eclipse client), Web client and server so it is necessary to update all three components.

Third Party Software

The YUI, which is used by the i2b2 Web Client, was upgraded to version 2.8.2
Information about YUI can be found on the YUI Library website (http://developer.yahoo.com/yui)

New Features

i2b2 release 1.6.0030 contains new features that have been outlined below.

Temporal (Query) and Panel Timing Constraints

In the 1.6 there is an option to query by visit. In the visit table of the data repository, there is a listing of visits that are tied to patients and facts in the observation_fact table through the encounter_num column. Both the temporal (query) and panel constraints are very similar in that both utilize the visit / encounter information along with the concepts defined to determine if a patient meets the search criteria.
 The main difference between a temporal and a panel timing constraint is that temporal constraints are defined at the query level and panel timing constraints are defined at the panel level.



This similar logic is applied to the panel timing. The main difference being that the timing is defined for each individual panel as opposed to the entire query.
To avoid confusion the following outlines the labels seen in the client and the associated timing of any or same.

Timing Level
(Query or Panel)

Label in Client

Timing
(ANY or SAME)

*** Query Timing

Treat all groups independently

ANY

*** Query Timing

Selected groups occur in the same financial encounter

SAME

Panel Timing

Treat Independently

ANY

Panel Timing

Occurs in Same Encounter

SAME


*** In the web client "Query Timing" is called "Temporal Constraint". Although they are labeled differently the functionality is the same.
Example 1:
Patient has a medication with a dose greater than 500 mg and a medication that is taken once a day documented at any time in their history.
 
 
RESULTS: there are 47 patients who have had a medication with a dose greater than 500 mg and a frequency of once a day entered as a fact in the observation_fact table, where the medication dose and frequency have the same patient_num.
 Example 2:
Patient has a diagnosis of Acute MI documented at any time in their history and they have a medication with a dose greater than 500 mg and a medication that is taken once a day documented during the same visit.

 RESULTS: there are 4 patients who have had a medication with a dose greater than 500 mg and a frequency of once a day entered as a fact in the observation_fact table, where the medication dose and frequency have the same encounter_num AND the diagnosis of acute MI, the medication dose and frequency all have the same patient_num.
Example 3:
Patient has a diagnosis of Acute MI documented at any time in their history and they have a medication with a dose greater than 500 mg and a medication that is taken once a day documented during the same instance.

RESULTS: there are 3 patients who have had a medication with a dose greater than 500 mg and a frequency of once a day entered as a fact in the observation_fact table, where the medication dose and frequency have the same encounter_num AND instance_num AND the diagnosis of acute MI, the medication dose and frequency all have the same patient_num.
 

Encounter Sets

In the 1.6 Release users are now able to run a query to return a set of encounters. These encounter sets are similar to patient sets only they contain a list of encounter numbers for the patients meeting the criteria defined when running a query.

Query-in-Query

The ability to use a previous query within a new query is now available in the 1.6. Release. To use this feature simply drag the previous query to one of the panels (groups) in the query tool. Add your additional search criteria and run the new query.

Query Using Patient and/or Encounter Sets

Similar to the query-in-query enhancement, users can now use a patient or encounter set from a previous query in a new query. This is done by dragging the patient or encounter set to a panel (group) in the query tool and then adding the additional search criteria. When you run the query it will use the patient/encounter set to query against.

Performance Tracking

The ability to track and display performance metrics when running a query has been added to 1.6 Release. The tracking information can be turned on by setting the following project parameter.
Parameter Name: PM_ENABLE_PROCESS_TIMING
Parameter Value: DEBUG
When the performance tracking is turned on (set to DEBUG) the information will appear in the Query Status view when you run the query.


Update Term Usage Utility

In the 1.6 Release a new utility has been added to the i2b2 Workbench. This new utility enables users to easily run an update process which will update each term with the total number of times the term is used in the observation_fact table.
These totals can be seen in the Navigate Terms view by turning on the "Enable patient counts" in the Options dialog. This also enables performance tuning by the query engine.


Ontology View – Updates to Options Dialog

The existing Options dialog in the Navigate terms view has been modified slightly in 1.6 Release. The following items have been removed from the pop-up menu and added to the options dialog.

Each of the above items works the same as they did when they were included in the pop-up menu.

Analysis Breakdowns Added to Web Client

In the 1.6 Release the following Analysis breakdowns have been added to the web client.


These breakdowns are available when running a query; the user can check the query result type(s) for each of the breakdowns. The results can be visible in the Query Status view when the query has completed running. They can also be seen when you drag the previous query to the Query Tool view, the breakdowns / analysis types for that query will appear in the query status view.

Modifiers

The ability to use modifiers when querying and viewing data from within the i2b2 workbench and web client has been implemented in 1.6 Release. The usage of modifiers allows a single fact to be customized with an unlimited number of codes.
For instance,



Unit Conversion

In the 1.6 Release the ability to run queries using units other than the normal unit has been added. This feature is beneficial for those numerical facts that are not stored in normalized unit_cd.
The user can enable the unit conversion process by setting the following Project Parameter.
Parameter Name: CRC_ENABLE_UNITCD_CONVERSION
Parameter Value: ON


When the above parameter is set to 'ON', the unit conversion of the nval_num is calculated using the concept's metadata xml defined in the ontology cell (<ConvertingUnits/> , <MultiplyingFactor/>). The unit conversion in the query is done before applying the value constraint.

Updates

Data

The demo data and metadata tables have been updated to support the new enhancements. This includes but is not limited to the following:


Changes to support Modifiers
A number of changes have been made to the database to support the use of modifiers. A new table has been created, two new columns have been added to the metadata tables and three new values have been added to the C_VISUALATTRIBUTES column.
NEW TABLE
The modifier_dimension table is similar to the concept_dimension table except it stores the modifiers.
NEW COLUMNS

New Column

Description

Example

M_APPLIED_PATH

Contains the path of the concept that the modifier term applies.

In this example the modifier Severity: Mild will apply to the root concept of 'Diagnoses' and all its descendents.
Modifier Term = Severity: Mild
M_APPLIED_PATH = \i2b2\Diagnoses%

M_EXCLUSION_CD

A flag to indicate whether or not a modifier term is not associated with a specific concept.

'X'

Modifier is excluded

NULL

No exclusions

In this example the modifier Severity: Mild will not apply to the root concept of 'Neoplasms' and all its descendents.
Modifier Term = Severity: Mild
M_APPLIED_PATH = \i2b2\Diagnoses\Neoplasms (140-239)%
M_EXCLUSION_CD = X



It is important to note that when excluding a modifier term the table will contain multiple entries for that modifier.
The following is a snippet from the i2b2 metadata table. In this example, the modifier term called Severity: Mild will be applied to the Diagnoses concept and all its children EXCEPT for the following two concepts and all their children. (1) Neoplasms and (2) Mental Disorders


C_FULLNAME

C_NAME

M_APPLIED_PATH

M_EXCLUSION_CD

\Severity\Mild\

Severity: Mild

\i2b2\Diagnoses%

NULL

\Severity\Mild\

Severity: Mild

\i2b2\Diagnoses\Neoplasms (140-239)%

X

\Severity\Mild\

Severity: Mild

\i2b2\Diagnoses\Mental Disorders (290-319)%

X



NEW VISUAL ATTRIBUTES

New Values

Description / Use

Example

OA

Modifier Container

TNM Staging

DA

Modifier Folder

TNM Staging, Stage Classification

RA

Modifier Term

Stage II: Cancer is localized, advanced within area




Documentation:

The 1.6.0030 release documentation can be found in a zip file located on the i2b2 Software page. This file includes documentation for the following:



Fixes:

The following fixes were added to this release.

Query response messages remaining in queue

When a query "times out" a response message is filed in the JMS queue. These response messages are never cleared out of the queue. This can result in apparent prolonged response times.
STATUS/RESOLUTION: This issue has been resolved. Query response messages will now be removed from the queue.

The following outlines how to fix this issue in an existing system.
Edit File: JBOSS_HOME/server/default/deploycrc-queryresponse-q-service.xml
Update lines:
<attribute name="RedeliveryLimit">1</attribute>
<attribute name="RedeliveryDelay">1</attribute>



Previous Query: Queries created in webclient will not run in workbench

Previous queries that were originally created in the webclient will not run in the workbench. When dragging the previous query to the Query Tool in the workbench an error would be returned saying you could not use the query.
STATUS/RESOLUTION: This issue has been resolved. Queries created in either the webclient or workbench will run in both environments.

The <observer_cd> in the PDO xml is missing the name attribute

In the PDO xml the xml tag for observer_cd is missing the name attribute. This is inconsistent with how the workbench works.
STATUS/RESOLUTION: This issue has been resolved. The name attribute is now included.

Licensing
The i2b2 source code is licensed under the i2b2 Software License 2.1. This includes but is not limited to all code in the edu.harvard.i2b2.* package namespace.
Trademarks
Microsoft, Windows, Windows XP, Windows Vista, Windows 7 and Windows Server are either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other countries.
Mac OS is a registered trademark of Apple, Inc.
Eclipse Galileo is a registered trademark of the Eclipse Foundation, Inc.
All other trademarks are the property of their respective owners.