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 }