L'API Core Transmart est une bibliothèque avec des interfaces groovy qui définissent les interactions et les appels entre les différents composants de Transmart.
Pour faciliter les communications avec les ressources de données cliniques de type I2B2 et I2B2, deux API sont définies qui suivent la philosophie de conception derrière I2B2 et ressemblent à l'API RESTful I2B2 Ontology Management (ONT) et aux données du référentiel de données (CRC).
Un conceptResource est défini qui peut être mis en œuvre par des sources de données cliniques pour exposer les arbres d'ontologie avec des concepts. Voir la documentation de messagerie I2B2 ONT pour plus d'informations de base. Seuls quelques appels sont définis, ceux qui sont utilisés dans la base de code Legacy Transmart.
Une question de requête est définie qui peut être exposée par les sources de données cliniques comme moyen d'interroger les données cliniques. Cette ressource expose des méthodes pour exécuter les requêtes et récupérer les résultats de la requête. L'API est modélisée après l'API de message de requête I2B2 CRC.
Une DataQueryResource est définie qui peut être exposée par des sources de données de grande dimension pour permettre la question de données de données dimensionnelles élevées. Un DataQueryResult général est défini qui peut être étendu pour des types de données spécifiques. Pour l'instant, tous les types de données omiques (packages spécifiques) ainsi que les requêtes possibles sont définis dans le projet API Core. Pour modéliser les contraintes de requête générales (par exemple sur les sujets ou les points de temps), une classe CommonHighDimensionalQueryConstraints est définie qui peut être intégrée dans des classes de contraintes spécifiques.