001package systems.dmx.core.model;
002
003import java.util.List;
004
005
006
007public interface TopicReferenceModel extends RelatedTopicModel {
008
009    boolean isReferenceById();
010
011    boolean isReferenceByUri();
012
013    /**
014     * Returns true if this reference refers to nothing.
015     */
016    boolean isEmptyRef();
017
018    // ---
019
020    /**
021     * Checks weather this reference refers to the given topic.
022     */
023    boolean isReferingTo(TopicModel topic);
024
025    /**
026     * From the given topics finds the one this reference refers to.
027     */
028    RelatedTopicModel findReferencedTopic(List<? extends RelatedTopicModel> topics);
029}