We should not represent the HPO Term identifiers as Strings, we should use TermId. The input should be transformed to TermIds when we first ingest the data. This allows better quality control and also obviates the need for transforming them later on
public void initQueryLayer(Set<String> queryTerms){
// TODO should this live in phenol?
Set<TermId> queryTermIDs = queryTerms.stream()
.map(TermId::of)
.collect(Collectors.toSet());
this.queryLayerInitialized = initLayer(queryTermIDs);
}
We should not represent the HPO Term identifiers as Strings, we should use TermId. The input should be transformed to TermIds when we first ingest the data. This allows better quality control and also obviates the need for transforming them later on