package edu.stanford.nlp.trees.international.tuebadz; import java.io.Serializable; import java.io.Reader; import java.util.*; import edu.stanford.nlp.trees.*; import edu.stanford.nlp.ling.StringLabelFactory; /** @author Christopher Manning */ public class TueBaDZTreeReaderFactory implements TreeReaderFactory, Serializable { private static final long serialVersionUID = 1614799885744961795L; private TreebankLanguagePack tlp; private int nodeCleanup; public TueBaDZTreeReaderFactory(TreebankLanguagePack tlp) { this(tlp, 0); } public TueBaDZTreeReaderFactory(TreebankLanguagePack tlp, int nodeCleanup) { this.tlp = tlp; this.nodeCleanup = nodeCleanup; } public TreeReader newTreeReader(Reader in) { final TreeNormalizer tn1 = new GrammaticalFunctionTreeNormalizer(tlp, nodeCleanup); final TueBaDZPennTreeNormalizer tn2 = new TueBaDZPennTreeNormalizer(tlp, nodeCleanup); final TreeNormalizer norm = new OrderedCombinationTreeNormalizer(Arrays.asList(tn1, tn2)); return new PennTreeReader(in, new LabeledScoredTreeFactory(new StringLabelFactory()), norm); } } // end class TueBaDZTreeReaderFactory