public void loadScheme() {
        final String discreteModelFilePath = dlgDiscreteModel.open();
        if (discreteModelFilePath != null) {
            Yaml yaml = new Yaml();
            InputStream stream = null;
            try {
                stream = new FileInputStream(discreteModelFilePath);
            } catch (FileNotFoundException ex) {
                showMessage(Messages.ERROR_FILE_NOT_FOUND + discreteModelFilePath, "Error");
            }
            try {
                scheme = (Scheme) yaml.load(stream);
            } catch(Exception ex) {
                showMessage(Messages.ERROR_WRONG_SCHEME_DOCUMENT + discreteModelFilePath, "Error");
            }
            MainWindow.updateExpandBarElements(library.getLibrary().values(), scheme);
            schemeEditorPrepare();
            signalEditorPrepare();
            final String message = Messages.DISCRETE_MODEL_FILE_SELECTED + discreteModelFilePath;
            status(message);
        } else {
            status(Messages.DISCRETE_MODEL_FILE_NOT_SELECTED);
        }
    }