package marubinotto.piggydb.model;
import java.util.Collection;
import java.util.List;
import java.util.Set;
public interface Classification extends Iterable<Tag> {
public Classifiable getClassifiable();
public int size();
public boolean isEmpty();
public boolean containsTagName(String name);
public boolean containsTagId(long tagId);
public boolean containsAny(Collection<Long> tagIds);
public Tag getTag(String name);
public Set<String> getTagNames();
public String toCommaSeparated();
public Collection<Tag> getTags();
public boolean isSubordinateOf(String name);
public boolean isInSameHierarchyOf(Tag tag);
public List<Set<Long>> expandEach(TagRepository tagRepository)
throws Exception;
public Set<Long> expandAll(TagRepository tagRepository)
throws Exception;
public boolean isClassifiedByAll(List<Set<Long>> expandedTags);
}