/** * @version $Id: ITerm.java 1839 2014-04-16 02:33:51Z yukihiro-kinjyo $ * * 2011/08/03 * @author shingo-takahashi * * Copyright 2011-2014 TIDAコンソーシアム All Rights Reserved. */ package com.tida_okinawa.corona.io.model.dic; /** * 用語アイテムオブジェクトのインタフェース * * @author shingo-takahashi * */ public interface ITerm extends IDicItem, Cloneable { /** * @return DB内でこの用語を識別するためのID */ @Override public abstract int getId(); /** * 見出し語を取得する * * @return 見出し語文字列 非null(空文字)。 */ public abstract String getValue(); /** * 見出し語を設定する * * @param value * 見出し語文字列 */ public abstract void setValue(String value); /** * 品詞区分を取得する * * @return 品詞区分列挙型定数。非null({@link TermPart#NONE}) */ public abstract TermPart getTermPart(); /** * 品詞区分を設定する * * @param termPart * 品詞区分列挙型定数 */ public abstract void setTermPart(TermPart termPart); /** * 品詞詳細区分を取得する * * @return 品詞詳細区分列挙型定数。非null({@link TermClass#NONE}) */ public abstract TermClass getTermClass(); /** * 品詞詳細区分を設定する * * @param termClass * 品詞詳細区分列挙型定数 */ public abstract void setTermClass(TermClass termClass); /** * よみを取得する * * @return よみ(ひらがな)文字列。非null(空文字) */ public abstract String getReading(); /** * よみを設定する * * @param reading * よみ文字列 */ public abstract void setReading(String reading); /** * 活用形を取得する * * @return 活用形列挙型定数。非null({@link TermCForm#NONE}) */ public abstract TermCForm getCform(); /** * 活用形を設定する * * @param cform * 活用形列挙型定数 */ public abstract void setCform(TermCForm cform); @Override public abstract boolean isDirty(); /** * この用語をJuman辞書形式にした文字列を取得する * * @return この用語をJuman辞書形式にした文字列。非null(空文字) */ public abstract String getJumanBase(); /** * この用語をJuman辞書形式にした文字列を設定する * * @param jumanBase * 用語をJuman辞書形式にした文字列 */ public abstract void setJumanBase(String jumanBase); /** * @return この用語を保持している辞書のID */ @Override public abstract int getComprehensionDicId(); /** * @return この用語を一意に識別するための文字列。見出し語、よみ、品詞をカンマで連結した文字列 */ String getKeyword(); /** * この用語が不正な値を含んでいるか判定する。 * * @return 必要な情報がすべて正しく設定されていればfalse */ public boolean isError(); /** * このオブジェクトのコピーを作成する * * @return コピーされたオブジェクト */ public Object clone(); }