tranSMART Core API is a library with Groovy interfaces that define the interactions and calls between the various components of tranSMART.
Clinical Data API
I2B2-based query tool
To facilitate communications with i2b2 and i2b2-like clinical data resources, two API's are defined which follow the design philosophy behind i2b2 and resemble the i2b2 Ontology Management (ONT) and Data Repository (CRC) RESTful API's.
Clinical Data Ontology API
A ConceptsResource is defined which can be implemented by clinical data sources to expose ontology trees with concepts. See the i2b2 ONT messaging documentation for more background information. Only a few calls are defined, the ones which happen to be used in the legacy tranSMART codebase.
Clinical Data Query API
A QueriesResource is defined which can be exposed by clinical data sources as a means of querying clinical data. This resource exposes methods to run queries and retrieve query results. The API is modelled after the i2b2 CRC query message API.
High Dimensional Data API
High Dimensional Query API
A DataQueryResource is defined which can be exposed by high dimensional data sources to allow querying of high dimensional data. A general DataQueryResult is defined which can be extended for specific data types. For now, all omics data types (inside specific packages) as well as possible queries are defined inside the core API project. To model general query constraints (e.g. on subjects or timepoints), a CommonHighDimensionalQueryConstraints class is defined which can be embedded into specific constraint classes.