public static String getSpellCorrected(Query query,
                                           boolean qss_rw,
                                           boolean qss_sugg)
                                           throws RuntimeException {
        log(utilsLogger, query, "Retrieving spell corrected query");

        // Retrieve Intent Model
        IntentModel intentModel = IntentModel.getFrom(query);
        if(intentModel==null) {
            error(utilsLogger, query, "Unable to retrieve intent model");
            throw new RuntimeException("Not able to retrieve intent model");
        }

        double max_score = 0;
        String spellCorrected = null;

        // Iterate through all interpretations to get a spell corrected
        // query with highest score
        for (InterpretationNode interpretationNode : intentModel.children()) {
            Modification modification = interpretationNode.getInterpretation()
                                                          .getModification();
            Annotations annotations = modification.getAnnotation();
            Double score = annotations.getDouble("score");

            // Check if it's higher than the max score
            if(score!=null && score>max_score) {
                Boolean isQSSRewrite = annotations.getBoolean("qss_rw");
                Boolean isQSSSuggest = annotations.getBoolean("qss_sugg");

                // Check if it's qss_rw or qss_sugg
                if((qss_rw && isQSSRewrite!=null && isQSSRewrite) ||
                   (qss_sugg && isQSSSuggest!=null && isQSSSuggest)) {
                    max_score = score;
                    spellCorrected = modification.getText();
                }
            }
        }

        if(spellCorrected!=null) {
            log(utilsLogger, query, "Successfully retrieved spell corrected query: " +
                spellCorrected);
        } else {
            log(utilsLogger, query, "No spell corrected query is retrieved");
        }

        return spellCorrected;
    }
Retrieve spell corrected query with highest score from QLAS

@param query Query object from the searcher
@param qss_rw Whether to consider qss_rw modification
@param qss_sugg Whether ot consider qss_sugg modification
@return Spell corrected query or null if not found
container-search/src/main/java/com/yahoo/search/query/rewrite/RewriterUtils.java