    001    package org.maltparser.core.helper;
    002
    003    import org.apache.log4j.Logger;
    004    import org.maltparser.core.exception.MaltChainedException;
    005    import org.maltparser.core.io.dataformat.ColumnDescription;
    006    import org.maltparser.core.options.OptionManager;
    007    import org.maltparser.core.symbol.SymbolTableHandler;
    008    /**
    009    *
    010    *
    011    * @author Johan Hall
    012    */
    013    public class Malt04 {
    014            public static void loadAllMalt04Tagset(OptionManager om, int containerIndex, SymbolTableHandler symbolTableHandler, Logger logger) throws MaltChainedException {
    015                    String malt04Posset = om.getOptionValue(containerIndex, "malt0.4", "posset").toString();
    016                    String malt04Cposset = om.getOptionValue(containerIndex, "malt0.4", "cposset").toString();
    017                    String malt04Depset = om.getOptionValue(containerIndex, "malt0.4", "depset").toString();
    018                    String nullValueStrategy = om.getOptionValue(containerIndex, "singlemalt", "null_value").toString();
    019                    String rootLabels = om.getOptionValue(containerIndex, "graph", "root_label").toString();
    020                    String inputCharSet = om.getOptionValue(containerIndex, "input", "charset").toString();
    021                    loadMalt04Posset(malt04Posset, inputCharSet, nullValueStrategy, symbolTableHandler, logger);
    022                    loadMalt04Cposset(malt04Cposset, inputCharSet, nullValueStrategy, symbolTableHandler, logger);
    023                    loadMalt04Depset(malt04Depset, inputCharSet, nullValueStrategy, rootLabels, symbolTableHandler, logger);
    024            }
    025
    026            public static void loadMalt04Posset(String fileName, String charSet, String nullValueStrategy, SymbolTableHandler symbolTableHandler, Logger logger) throws MaltChainedException {
    027                    if (!fileName.toString().equalsIgnoreCase("")) {
    028                            if (logger.isInfoEnabled()) {
    029                                    logger.info("Loading part-of-speech tagset '"+fileName+"'...\n");
    030                            }
    031                            symbolTableHandler.loadTagset(fileName, "POSTAG", charSet, ColumnDescription.INPUT, nullValueStrategy);
    032                    }
    033            }
    034
    035            public static void loadMalt04Cposset(String fileName, String charSet, String nullValueStrategy, SymbolTableHandler symbolTableHandler, Logger logger) throws MaltChainedException {
    036                    if (!fileName.equalsIgnoreCase("")) {
    037                            if (logger.isInfoEnabled()) {
    038                                    logger.info("Loading coarse-grained part-of-speech tagset '"+fileName+"'...\n");
    039                            }
    040                            symbolTableHandler.loadTagset(fileName, "CPOSTAG", charSet, ColumnDescription.INPUT, nullValueStrategy);
    041                    }
    042            }
    043
    044            public static void loadMalt04Depset(String fileName, String charSet, String nullValueStrategy, String rootLabels, SymbolTableHandler symbolTableHandler, Logger logger) throws MaltChainedException {
    045                    if (!fileName.equalsIgnoreCase("")) {
    046                            if (logger.isInfoEnabled()) {
    047                                    logger.info("Loading dependency type tagset '"+fileName+"'...\n");
    048                            }
    049                            symbolTableHandler.loadTagset(fileName, "DEPREL", charSet, ColumnDescription.DEPENDENCY_EDGE_LABEL, nullValueStrategy, rootLabels);
    050                    }
    051            }
    052    }