Search in sources :

Example 6 with Query

use of org.edamontology.edammap.core.query.Query in project edammap by edamontology.

the class Processor method makeQueryIdf.

public int makeQueryIdf(List<Query> queries, QueryType type, String outputPath, boolean webpagesDocs, boolean fulltext, PreProcessor preProcessor, Idf queryIdf, FetcherArgs fetcherArgs) throws IOException {
    IdfMake idfMake = new IdfMake(outputPath);
    for (Query query : queries) {
        QueryProcessed processedQuery = getProcessedQuery(query, type, preProcessor, queryIdf, fetcherArgs);
        if (processedQuery.getNameTokens() != null) {
            idfMake.addTerms(processedQuery.getNameTokens());
        }
        for (List<String> keywordTokens : processedQuery.getKeywordsTokens()) {
            if (keywordTokens != null)
                idfMake.addTerms(keywordTokens);
        }
        if (processedQuery.getDescriptionTokens() != null) {
            idfMake.addTerms(processedQuery.getDescriptionTokens());
        }
        if (webpagesDocs) {
            for (List<String> webpageTokens : processedQuery.getWebpagesTokens()) {
                if (webpageTokens != null)
                    idfMake.addTerms(webpageTokens);
            }
            for (List<String> docTokens : processedQuery.getDocsTokens()) {
                if (docTokens != null)
                    idfMake.addTerms(docTokens);
            }
        }
        for (PublicationProcessed processedPublication : processedQuery.getProcessedPublications()) {
            if (processedPublication == null)
                continue;
            if (processedPublication.getTitleTokens() != null) {
                idfMake.addTerms(processedPublication.getTitleTokens());
            }
            for (List<String> keywordTokens : processedPublication.getKeywordsTokens()) {
                if (keywordTokens != null)
                    idfMake.addTerms(keywordTokens);
            }
            for (List<String> meshTermTokens : processedPublication.getMeshTermsTokens()) {
                if (meshTermTokens != null)
                    idfMake.addTerms(meshTermTokens);
            }
            for (List<String> efoTermTokens : processedPublication.getEfoTermsTokens()) {
                if (efoTermTokens != null)
                    idfMake.addTerms(efoTermTokens);
            }
            for (List<String> goTermTokens : processedPublication.getGoTermsTokens()) {
                if (goTermTokens != null)
                    idfMake.addTerms(goTermTokens);
            }
            if (processedPublication.getAbstractTokens() != null) {
                idfMake.addTerms(processedPublication.getAbstractTokens());
            }
            if (fulltext) {
                if (processedPublication.getFulltextTokens() != null) {
                    idfMake.addTerms(processedPublication.getFulltextTokens());
                }
            }
        }
        idfMake.endDocument();
    }
    return idfMake.writeOutput();
}
Also used : IdfMake(org.edamontology.edammap.core.idf.IdfMake) Query(org.edamontology.edammap.core.query.Query) PublicationIdsQuery(org.edamontology.edammap.core.query.PublicationIdsQuery)

Aggregations

Query (org.edamontology.edammap.core.query.Query)6 Mapping (org.edamontology.edammap.core.mapping.Mapping)3 PreProcessor (org.edamontology.edammap.core.preprocessing.PreProcessor)3 URI (java.net.URI)2 List (java.util.List)2 Branch (org.edamontology.edammap.core.edam.Branch)2 Idf (org.edamontology.edammap.core.idf.Idf)2 Mapper (org.edamontology.edammap.core.mapping.Mapper)2 Match (org.edamontology.edammap.core.mapping.Match)2 QueryProcessed (org.edamontology.edammap.core.processing.QueryProcessed)2 Parameter (com.beust.jcommander.Parameter)1 BufferedReader (java.io.BufferedReader)1 BufferedWriter (java.io.BufferedWriter)1 IOException (java.io.IOException)1 InputStream (java.io.InputStream)1 InputStreamReader (java.io.InputStreamReader)1 OutputStreamWriter (java.io.OutputStreamWriter)1 Field (java.lang.reflect.Field)1 URISyntaxException (java.net.URISyntaxException)1 CharsetEncoder (java.nio.charset.CharsetEncoder)1