class Jsapi10RecognitionResult implements RecognitionResult {

    @Override
    public Object getSemanticInterpretation(final DataModel model)
            throws SemanticError {
        if (interpretation == null) {
            final FinalRuleResult finalResult = (FinalRuleResult) result;
            final Object[] objecttags = finalResult.getTags();
            if ((objecttags == null) || (objecttags.length == 0)) {
                return null;
            }
            final String[] tags = toString(objecttags);
            model.createVariable("out");
            for (String tag : tags) {
                if (tag.trim().endsWith(";")) {
                    model.evaluateExpression(tag, Object.class);
                } else {
                    model.updateVariable("out", tag);
                }
            }
            interpretation = model.readVariable("out", Object.class);
            final String log = model.toString(interpretation);
            LOGGER.info("created semantic interpretation '" + log + "'");
        }
        return interpretation;
    }

    public  Jsapi10RecognitionResult(final Result res);

}