package jp.ac.osaka_u.sanken.sparql; import java.util.List; import java.util.Map; import com.hp.hpl.jena.rdf.model.RDFNode; public interface SparqlAccessor { /** キーワード検索で、項目すべてを検索対象とする(未実装) */ public static final int FIND_TARGET_ALL = 0; /** キーワード検索で、subjectを検索対象とする */ public static final int FIND_TARGET_SUBJECT = 1; /** キーワード検索で、objectを検索対象とする */ public static final int FIND_TARGET_OBJECT = 2; /** キーワード検索で、ラベルobjectを検索対象とする */ public static final int FIND_TARGET_SPECIFIC_OBJECT = 3; /** * Sparql Queryを直接指定して実行し、結果を返す * @param queryString * @return * @throws Exception */ public List> executeQuery(String queryString) throws Exception; /** * 文字列に該当するSubjectを検索して結果を返す * @param word * @param fullMatch * @param limit * @param offset * @param type * @return * @throws Exception */ public SparqlResultSet findSubject(String word, boolean fullMatch, Integer limit, Integer offset, int type, String[] propList) throws Exception; /** * SubjectにヒットするTripleを検索して結果を返す * @param subject * @return * @throws Exception */ public List> findTripleFromSubject(String subject) throws Exception; /** * propertyの一覧を取得する * @return * @throws Exception */ public List> findPropertyList() throws Exception; }