001 package org.maltparser.core.syntaxgraph; 002 003 import org.maltparser.core.exception.MaltChainedException; 004 import org.maltparser.core.symbol.SymbolTableHandler; 005 /** 006 * 007 * 008 * @author Johan Hall 009 */ 010 public interface LabeledStructure { 011 /** 012 * Returns the symbol table handler. 013 * 014 * @return the symbol table handler. 015 */ 016 public SymbolTableHandler getSymbolTables(); 017 /** 018 * Sets the symbol table handler. 019 * 020 * @param symbolTables a symbol table handler. 021 */ 022 public void setSymbolTables(SymbolTableHandler symbolTables); 023 /** 024 * Adds a label <i>label</i> to the graph element <i>element</i> 025 * 026 * @param element a graph element <i>element</i> (a node or a edge). 027 * @param tableName the name of the symbol table. 028 * @param label the string value of the label. 029 * @throws MaltChainedException 030 */ 031 public void addLabel(Element element, String tableName, String label) throws MaltChainedException; 032 /** 033 * Checks out a new label set from the structure. 034 * 035 * @return a new label set. 036 * @throws MaltChainedException 037 */ 038 public LabelSet checkOutNewLabelSet() throws MaltChainedException; 039 /** 040 * Checks in a label set. 041 * 042 * @param labelSet a label set. 043 * @throws MaltChainedException 044 */ 045 public void checkInLabelSet(LabelSet labelSet) throws MaltChainedException; 046 }