package doser.entitydisambiguation.backend; import java.util.List; import doser.entitydisambiguation.dpo.EntityDisambiguationDPO; import doser.entitydisambiguation.knowledgebases.KnowledgeBaseIdentifiers; public class DisambiguationTaskCollective extends AbstractDisambiguationTask { private List<EntityDisambiguationDPO> entitiesToDis; /* A maintopic e.g. the column identifier in a table */ private String mainTopic; public DisambiguationTaskCollective(final List<EntityDisambiguationDPO> entityToDis, String mainTopic) { super(); this.entitiesToDis = entityToDis; this.mainTopic = mainTopic; } public List<EntityDisambiguationDPO> getEntityToDisambiguate() { return this.entitiesToDis; } public String getMainTopic() { return this.mainTopic; } public void setSurfaceForm(final List<EntityDisambiguationDPO> surfaceForm) { this.entitiesToDis = surfaceForm; } /** * Assignment function to determine the used knowledge base * * @param kbversion * @param setting */ @Override public void setKbIdentifier(String kbversion, String setting) { if(setting == null) { this.kbIdentifier = KnowledgeBaseIdentifiers.Standard; } else if(setting.equalsIgnoreCase("DocumentCentric")) { if(kbversion.equalsIgnoreCase("default")) { this.kbIdentifier = KnowledgeBaseIdentifiers.DocumentCentricDefault; } else { this.kbIdentifier = KnowledgeBaseIdentifiers.DocumentCentricDefault; } } else if(setting.equalsIgnoreCase("EntityCentric")) { if(kbversion.equalsIgnoreCase("default")) { this.kbIdentifier = KnowledgeBaseIdentifiers.Standard; } else if(kbversion.equalsIgnoreCase("cstable")) { this.kbIdentifier = KnowledgeBaseIdentifiers.CSTable; } else if(kbversion.equalsIgnoreCase("biomed")) { this.kbIdentifier = KnowledgeBaseIdentifiers.Biomed; } else { this.kbIdentifier = KnowledgeBaseIdentifiers.Standard; } } else { this.kbIdentifier = KnowledgeBaseIdentifiers.Standard; } } }