001package org.dllearner.algorithms.isle.index;
002
003import java.util.List;
004import java.util.Set;
005
006import org.semanticweb.owlapi.model.OWLEntity;
007
008public interface EntityCandidatesTrie {
009        
010        /**
011         * Adds an entity to the set of candidates of a string
012         * @param s
013         * @param e
014         */
015        void addEntry(List<Token> s, OWLEntity e);
016        
017        
018        /**
019         * Gets set of candidate entities for a list of tokens
020         * @return
021         */
022        Set<EntityScorePair> getCandidateEntities(List<Token> tokens);
023
024
025        /**
026         * Returns the string on which this entry is based on. This is used e.g. for storing the original
027     * ontology string when the parameter string has been added to the trie after generation by using
028     * WordNet or other additional methods.
029     *
030         * @return string generating the path of the longest match in the trie
031         */
032        List<Token> getGeneratingStringForLongestMatch(List<Token> tokens);
033
034    /**
035     * Gets the longest matching string
036     * @return
037     */
038    List<Token> getLongestMatchingText(List<Token> tokens);
039}