Glowing Bear tranSMART forked i2b2 MedCo webclient Front - - PowerPoint PPT Presentation
Glowing Bear tranSMART forked i2b2 MedCo webclient Front - - PowerPoint PPT Presentation
i2b2 webclient i2b2 Glowing Bear tranSMART forked i2b2 MedCo webclient Front Ends Clinical Research Systems i2b2 Glowing Bear tranSMART MedCo Front End Clinical Research Systems Data Source
i2b2 webclient i2b2 Glowing Bear tranSMART forked i2b2 webclient MedCo Clinical Research Systems Front Ends
➔ … ➔
➔ ➔ ➔ ➔
i2b2 Glowing Bear tranSMART MedCo Clinical Research Systems Front End
IRCT
PIC-SURE API HTTP REST API Client Side Server Side
Client Data Source 2
Data Source 2 API
➔ ➔
PIC-SURE: Patient-centered Information Commons: Standardized Unification of Research Elements IRCT: Inter-Resource Communication Tool HMS-DBMI: Harvard Medical School - Department of Biomedical Informatics [1]: Alex AT Bui, John Darrell Van Horn, NIH BD2K Centers Consortium, et al. “Envisioning the future of big data biomedicine”. In: Journal of biomedical informatics 69 (2017), pp. 115–117.
Data Source 1
Data Source 1 API
➔ ➔ ➔ ➔ ➔ ➔ ➔ ➔
[1]: Shawn N Murphy et al. “Serving the enterprise and beyond with informatics for integrating biology and the bedside (i2b2)”. In: Journal of the American Medical Informatics Association 17.2 (2010), pp. 124–130. [2]: Elisabeth Scheufele et al. “tranSMART: an open source knowledge management and high content data analytics platform”. In: AMIA Summits on Translational Science Proceedings 2014 (2014), p. 96.
⇒
[1]: J. L. Raisaro et al. “MedCo: Enabling Secure and Privacy-Preserving Exploration of Distributed Clinical and Genomic Data”. In: IEEE/ACM Transactions on Computational Biology and Bioinformatics (2018), pp. 1–1. issn: 1545-5963. doi: 10.1109/TCBB.2018.2854776.
IRCT (PIC-SURE) i2b2 tranSMART 17.1
PIC-SURE API HTTP REST API tranSMART API v2 Client Side Server Side
MedCo Node 1 MedCo Node 2 ... MedCo Node n
i2b2 API i2b2 API
Keycloak
OpenID Connect API API call JWKS retrieval
Interoperability Layer Clinical Research Systems Front End Glowing Bear
Crypto Module Interoperability Module
➔ ➔ ➔ ➔ ➔
✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔✔
➔ ➔ ➔ ➔
[1]: Hail, an open-source, scalable framework for exploring and analyzing genomic data: https://github.com/hail-is/hail
➔ ➔ ➔
➔ ➔ ➔
➔ ➔ ➔ ➔ ➔ ➔ ➔
[1]: Nat Sakimura et al. “OpenID Connect Core 1.0 incorporating errata set 1”. In: The OpenID Foundation, specification (2014).
➔ ➔ ➔ ➔
[1]: Glowing Bear, a modern cohort selector for i2b2 tranSMART: https://glowingbear.app/
➔ ➔ ➔ ➔
"where": [ { "field": { "pui": "/resource/study/Age/", "dataType": "INTEGER" }, "predicate": "CONSTRAIN_VALUE", "fields": { "OPERATOR": "GT", "CONSTRAINT": "20" } } ]
where part: constraints on data field: path and type of query term queried (obtained from tree) predicate used on query term fields: additional input to predicate
} }
➔ ➔
- IRCT-CL
PIC-SURE API HTTP REST API Client Side Server Side
Client IRCT-API IRCT-RI Data Source IRCT: Inter-Resource Communication Tool CL: Communication Layer API: Application Programming Interface RI: Resource Interface EXT: EXTension IRCT-EXT
Data Source API
x
Step HTTP REST API Client Side Server Side API call JWKS retrieval
IRCT
PIC-SURE API
MedCo Node 1 MedCo Node 2 ... MedCo Node n
i2b2 API
Keycloak
OpenID Connect API
Interoperability Layer Clinical Research Systems Front End Glowing Bear
Crypto Module Interoperability Module
1 4 5 6 6 7 8 i2b2 tranSMART 17.1
tranSMART API v2
4 6 6 6 2 3
- 1. User Login
- 2. GB Initialization
- 3. Query Construction
- 4. Query Submission
- 5. Query Translation
- 6. Query Processing
- 7. Result Storage
- 8. Result Display
Back End System Glowing Bear
Legend JWT: JSON Web Token
HTTP Request Client Side Server Side
Keycloak
(1) Get JWT (2) HTTP Request, with JWT (3) Get public key Cached Request
➔
- {
"alg": "RS256", "typ": "JWT", "kid": "eTFrdyrNxXLNHI7p0Ywybc7z1SBHTEcqWcMTybtdvQY" }
- …
{ "exp": 1523454086, "iat": 1523453186, "iss": "http://localhost:8081/auth/realms/master", "aud": "glowing-bear", "nonce": "N0.28573339803406971523453198656", "resource_access": { "account": { "roles": [ "role1", "role2" ] } }, "preferred_username": "test", "email": "test@test.com" }
IRCT i2b2 tranSMART 17.1
PIC-SURE API HTTP REST API tranSMART API v2 Client Side Server Side
MedCo Node 1 MedCo Node 2 ... MedCo Node n
i2b2 API i2b2 API
Keycloak
OpenID Connect API API call JWKS retrieval
Interoperability Layer Clinical Research Systems Front End Glowing Bear
Crypto Module Interoperability Module
Implementation
➔
IRCT i2b2 tranSMART 17.1
PIC-SURE API HTTP REST API tranSMART API v2 Client Side Server Side
MedCo Node 1 MedCo Node 2 ... MedCo Node n
i2b2 API i2b2 API
Keycloak
OpenID Connect API API call JWKS retrieval
Interoperability Layer Clinical Research Systems Front End Glowing Bear
Crypto Module Interoperability Module
Implementation
➔ ➔
IRCT i2b2 tranSMART 17.1
PIC-SURE API HTTP REST API tranSMART API v2 Client Side Server Side
MedCo Node 1 MedCo Node 2 ... MedCo Node n
i2b2 API i2b2 API
Keycloak
OpenID Connect API API call JWKS retrieval
Interoperability Layer Clinical Research Systems Front End Glowing Bear
Interoperability Module
Implementation
➔
Crypto Module
IRCT i2b2 tranSMART 17.1
PIC-SURE API HTTP REST API tranSMART API v2 Client Side Server Side
MedCo Node 1 MedCo Node 2 ... MedCo Node n
i2b2 API i2b2 API
Keycloak
OpenID Connect API API call JWKS retrieval
Interoperability Layer Clinical Research Systems Front End Glowing Bear
Crypto Module Interoperability Module
Implementation
➔
IRCT i2b2 tranSMART 17.1
PIC-SURE API HTTP REST API tranSMART API v2 Client Side Server Side
MedCo Node 1 MedCo Node 2 ... MedCo Node n
i2b2 API i2b2 API
Keycloak
OpenID Connect API API call JWKS retrieval
Interoperability Layer Clinical Research Systems Front End Glowing Bear
Crypto Module Interoperability Module
Implementation
➔
IRCT i2b2 tranSMART 17.1
PIC-SURE API HTTP REST API tranSMART API v2 Client Side Server Side
MedCo Node 1 MedCo Node 2 ... MedCo Node n
i2b2 API i2b2 API
Keycloak
OpenID Connect API API call JWKS retrieval
Interoperability Layer Clinical Research Systems Front End Glowing Bear
Crypto Module Interoperability Module
Implementation
➔
IRCT i2b2 tranSMART 17.1
PIC-SURE API HTTP REST API tranSMART API v2 Client Side Server Side
MedCo Node 1 MedCo Node 2 ... MedCo Node n
i2b2 API i2b2 API
Keycloak
OpenID Connect API API call JWKS retrieval
Interoperability Layer Clinical Research Systems Front End Glowing Bear
Crypto Module Interoperability Module
Implementation
➔
IRCT i2b2 tranSMART 17.1
PIC-SURE API HTTP REST API tranSMART API v2 Client Side Server Side
MedCo Node 1 MedCo Node 2 ... MedCo Node n
i2b2 API i2b2 API
Keycloak
OpenID Connect API API call JWKS retrieval
Interoperability Layer Clinical Research Systems Front End Glowing Bear
Crypto Module Interoperability Module
Implementation
➔
IRCT i2b2 tranSMART 17.1
PIC-SURE API HTTP REST API tranSMART API v2 Client Side Server Side
MedCo Node 1 MedCo Node 2 ... MedCo Node n
i2b2 API i2b2 API
Keycloak
OpenID Connect API API call JWKS retrieval
Interoperability Layer Clinical Research Systems Front End Glowing Bear
Crypto Module Interoperability Module
Implementation
➔
IRCT i2b2 tranSMART 17.1
PIC-SURE API HTTP REST API tranSMART API v2 Client Side Server Side
MedCo Node 1 MedCo Node 2 ... MedCo Node n
i2b2 API i2b2 API
Keycloak
OpenID Connect API API call JWKS retrieval
Interoperability Layer Clinical Research Systems Front End Glowing Bear
Crypto Module Interoperability Module
Implementation
➔
IRCT
PIC-SURE API
MedCo Node 1 MedCo Node 2 ... MedCo Node n
i2b2 API
Keycloak
OpenID Connect API
Interoperability Layer Clinical Research Systems Front End Glowing Bear
Crypto Module Interoperability Module
1 2 3 4 5 6 6 6 7 8 x
Step HTTP REST API Client Side Server Side API call JWKS retrieval
1. User Login 2. GB Initialization 3. Query Construction 4. Query Submission 5. Query Translation 6. Query Processing 7. Result Storage 8. Result Display