Release 1.7.12 contains solutions for providing an easier install solution of i2b2, redesigned Find Terms, totalnum counting scripts, new Authentication protocols, and REDCAP import. Also included are other enhancements to the i2b2 Weblclient, the ACT ontology, and bug fixes
i2b2 Release 1.7.12
Release Date: October 31, 2019
After reading this documentation, please go to the Upgrade Notes page for the details about upgrading your i2b2 software. If you are installing from scratch, additionally refer to the i2b2 Installation Guide on the i2b2 Community Wiki. The install guide will take you through the entire installation process.
Release 1.7.10 has not been tested within a SHRINE network. Therefore, i2b2 Release 1.7.10 should not be installed within a SHRINE network. It can be installed independently of SHRINE. However because it has not been tested with SHRINE we can not guarantee all of the new enhancements will continue to work correctly when implemented within a SHRINE environment.
Highlight of Features
TODO: It'd be great to add links to the sections of the release notes that talk about each of these...
- Easier Install
- One step WAR-file build and optional prebuilt WAR file
- Properties files moved to database
- Authentication protocol support for OKTA, NTLM v2
- Database scripts to generate Totalnum counts for Ontology Terms for POSTGRESQL, ORACLE and SQL SERVER databases
- REDCap data import into i2b2, with ontology creation from REDCap forms
- Documentation updates for Apache Webserver timeout settings for previous queries run
- Redesigned Find Terms By Name
- New Webclient Documentation
- Improved view of Left Pane in maximized mode
- Larger Query Results Panel view after Query run
University of Pittsburgh
Nick Brown and Griffin Weber
Beth Israel Deaconess Medical Center
University of North Carolina
Totalnum in find terms
University of Pavia
Visual Design of new Find Terms
University of Washington
Totalnum Counter for Postgres
Center for Biomedical Informatics, Washington University in St. Louis
|(Part of overall totalnum scripts in this release.)|
New Feature: Enhanced Find Terms
Find terms shows the terms' contextual hierarchy, and terms that are children of other search results are not returned. Shown here: 1.7.11 (left) vs. 1.7.12 (right)
Right-clicking on a term and then "Find Term in Tree" shows the entire hierarchy around the selected term.
New Feature: Improved Maximized Left Pane
In maximized mode, the left pane now makes all tabs accessible.
New Feature: Rewritten Webclient Documentation
Included in the client and also on the Webclient Community Wiki page.
- 3-minute screencast tutorial
- Better overviews and guideposts
- More task-oriented teaching
Easier i2b2 Install
The i2b2 server can now be installed in four steps:
- Run in the edu.harvard.i2b2.server-common folder:
ant clean dist war
- Copy the i2b2.war from the dist folder to /opt/wildfly-VERSION-Final/standalone/deployments/ folder.
- Run the data build for all the cell (PM, HIVE, ONT and CRC) . In the Hive there is a new table called HIVE_CELL_PARAM which contains all the previous XML and properties file.
- Modify the *-ds.xml in the deployment folder to point to the database
RedCap Import Setup
TODO: We need some documentation on what features are supported and what aren't.
1) Set Project Params (PM_PROJECT_PARAM)
Get the API Key from Redcap. Logon to Redcap on the right side under applications click API. Than select Generate token, and use this token for the value for the key.
This is the name of the Data Collection Instruments to associate this project with, in this example it is set to the 'Profile'
Optional, Defaults to Y
N - Do Not regenerate the metadata ontology.
NOTE: When first setting up the i2b2/redcap this needs to be set to Y at least one or the ontology will not be created.
Optional, Defaults to \REDCAP\
Optional, Defaults to tree
tree - All enumerated values, Yes/No will be children on the ontology
The only exception is items with checkbox, which will always be a popup
|RECAP_PROTECTED_ROLE||DATA_PROT||Optional, Defaults to DATA_PROT|
If this redcap form has the identified value set to true, than this ontology will be protected and only users with the following i2b2 access role will be able to access it.
2) On the redcap side, set the Data Entry Trigger, it is under Project Setup → in Enable optional modules and customizations, select Additional customizations → Data Entry Trigger, and enter:
Click Test to verify connection
3) Submit a form and check to see if the ontology was created.
Totalnum Scripts Setup
In the Release_1-7/NewInstall/Metadata/ run the ant script
ant -f data_build.xml create_metadata_tables_release_1-7
This will create the stored procedures:
- POSTGRESQL : ant -f data_build.xml db_metadata_run_total_count_postgresql
- ORACLE : ant -f data_build.xml db_metadata_run_total_count_oracle
- SQL SERVER : ant -f data_build.xml db_metadata_run_total_count_sqlserver
Next, execute the RunTotalNum stored procedure on your database. This can take several hours. When finished, verify it is complete by checking that c_totalnum columns in your ontology tables contain numbers (not nulls). These total counts will be visible in the ontology browser in the web client.
ACT Ontology Setup
- In the Release_1-7/NewInstall/Metadata/db.properties file change the db.project from demo to act.
- Than run the ant script against create_metadata_tables_release_1-7 and db_metadata_load_data
Using Extended Query-By-Value Flags
An expanded set of lab flag values can be easily modified by users to support their needs or expanded to the full set of HL7/LOINC flag values. The expanded list is toggleable via an added config setting in the i2b2_ui_config.js. (Note: Only numeric lab results have the flag functionality included.)
With the expanded set of lab values, the base 'A','L','H' are omitted to prevent collisions with things like "CH" (Critical High) or "CL" (Critical Low) due to the
indexOf function call to determine if a flag is in the list.
To use the expanded lab flag set, make ETL changes to accommodate the expanded list of values you would like to use and modify i2b2_ui_config.js to match.
Configuring the Expanded Webclient Left Pane
To set the webclient to start with the left pane in the new expanded mode, make sure this new parameter is added to i2b2_config.js.
The .zip file for this release defaults to this mode.
The JDBC drivers were updated to the following versions.
|mssql-jdbc-7.0.0.jre8.jar||MS Sql Server 7.0.0|
i2b2 Database Changes
- Small changes to the i2b2 Database.
- Totalnum counts to Ontology Terms in the demo data that is delivered with the software along with the Stored procedures used for creating the counts.
- ACT Ontology
i2b2 Server and Client Changes
New Features and Improvements
- [CORE-378] - Find Terms should display partial results when maximum is exceeded
- [CORE-377] - Admin interface
- [CORE-352] - Show hierarchy in Find Terms
- [CORE-348] - Improve build process, auto-build entire WAR file
- [CORE-347] - Refactor to remove XML config files
- [CORE-346] - OKTA
- [CORE-345] - Replace old Spring Libraries
- [CORE-344] - Support for NTLM2
- [CORE-345] - Replace old Spring Libraries
- [CORE-343] - Replace old Spring Libraries
- [CORE-345] - Provide totalnum counting scripts
- [CORE-341] - Add a findByName filter for results inside other results
- [WEBCLIENT-310] - Mauro Bucalo contribution: totalnum in find, improved date filters
- [WEBCLIENT-309] - Find Terms should display partial results when maximum is exceeded
- [WEBCLIENT-308] - UNC Contribution: Configurable extended lab result flags
- [WEBCLIENT-306] - Beth Israel contribution: commas in counts, query option infrastructure
- [WEBCLIENT-299] - Fully spell out words in tabs
- [WEBCLIENT-298] - open web issue management for i2b2
- [WEBCLIENT-287] - Improved term info panel
- [WEBCLIENT-285] - New webclient documentation
- [WEBCLIENT-282] - Improve find terms view
- [WEBCLIENT-281] - Left side panels tabbed instead of stacked
- [WEBCLIENT-279] - Query status window resize to show graphs
- [WEBCLIENT-174] - Previous query run as a query-in-query containing unsupported concepts does not draw the timeline
- [WEBCLIENT-104] - Add Print functionality to i2b2 web client help files
- [CORE-367] - When a SHRINE query is rerun in i2b2 the date parameter seems to be lost.
- [CORE-366] - Error on API request on endpoint /i2b2/services/QueryToolService/publishDataRequest
- [CORE-308] - Full Request XML message is stored in the QT_PDO_QUERY_MASTER table
- [CORE-362] - db_metadata_load_identified_data does not exist
- [CORE-358] - Issues with 1.7.10 VM image
- [CORE-353] - DBLookup pages - not all fields appear
- [CORE-333] - Query run with Text search with words that contain a space and a dash is erroring out
- [CORE-332] - OracleLarge db give db error for Ontology terms 'Encounters', 'Enrollment, 'VitalSigns'
- [CORE-231] - CRC: PDO query does not escape characters
- [CORE-224] - SQL Server: Database error when no start_date on a temporal query
- [CORE-222] - Visit_Dimension event set in PDO not returning
- [WEBCLIENT-312] - Find Term tab- context menu shows Find Term in Tree" item without any item selection
- [WEBCLIENT-311] - Find Terms- Search by "Any Category" not displaying right msg if no match found
- [WEBCLIENT-303] - Find Terms - Category Diagnosis ICD10 showing as Diagnosis
- [WEBCLIENT-302] - Find Terms- Search by term matching more than 2000 count -resulting in application
- [WEBCLIENT-294] - Webclient Reports "QUERY CANCELLED" While Query Is Still Running
- [WEBCLIENT-293] - A large number of results when searching by name hangs the webclient
- [WEBCLIENT-288] - Right Click on Find Terms Persists
- [WEBCLIENT-273] - Query report displays individual pt as "undefined" on loading the previous query after run
- [WEBCLIENT-272] - temporal query with workplace contents in constraint population panel not running
- [WEBCLIENT-254] - 2b2 Admin page not displaying all the rows from dblookup table for the projects
- [WEBCLIENT-231] - Able to set Date constraint on previous queries/ptset as concept
- [WEBCLIENT-223] - Admin uses last URL from PM_CELL_DATA in getAllDbLookups call
- [WEBCLIENT-159] - Run/Rerun a temporal query without events is not displaying msg that minimum 2 events are required