/** * Copyright CSIRO Australian e-Health Research Centre (http://aehrc.com). * All rights reserved. Use is subject to license terms and conditions. */ package au.csiro.snorocket.core; import java.util.HashSet; import java.util.Set; import au.csiro.snorocket.core.util.IConceptSet; import au.csiro.snorocket.core.util.IntIterator; import au.csiro.snorocket.core.util.SparseConceptSet; /** * Represents a node in the taxonomy generated after classifying an ontology. * * @author Alejandro Metke * */ public class ClassNode { private final IConceptSet equivalentConcepts = new SparseConceptSet(); private final Set<ClassNode> parents = new HashSet<ClassNode>(); private final Set<ClassNode> children = new HashSet<ClassNode>(); /** * @return the equivalentConcepts */ public IConceptSet getEquivalentConcepts() { return equivalentConcepts; } /** * @return the parents */ public Set<ClassNode> getParents() { return parents; } /** * @return the children */ public Set<ClassNode> getChildren() { return children; } @Override public String toString() { StringBuilder sb = new StringBuilder(); int size = equivalentConcepts.size(); int i = 0; sb.append("{"); for (IntIterator it = equivalentConcepts.iterator(); it.hasNext();) { sb.append(it.next()); if (++i < size) sb.append(", "); } sb.append("}"); return sb.toString(); } }