001package org.maltparser.core.helper; 002 003import org.apache.log4j.Logger; 004import org.maltparser.core.exception.MaltChainedException; 005import org.maltparser.core.io.dataformat.ColumnDescription; 006import org.maltparser.core.options.OptionManager; 007import org.maltparser.core.symbol.SymbolTableHandler; 008/** 009* 010* 011* @author Johan Hall 012*/ 013public 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, 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, ColumnDescription.STRING, 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, ColumnDescription.STRING, nullValueStrategy); 041 } 042 } 043 044 public static void loadMalt04Depset(String fileName, String charSet, String nullValueStrategy, 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, ColumnDescription.STRING, nullValueStrategy); 050 } 051 } 052}