diff --git a/poliqarp/pqclient.cpp b/poliqarp/pqclient.cpp
index 3d7115cc50bea9da39c775cafd7dd32c9d47dd2d..494b4cd2738df868080e0635bc828ed09eb97b64 100644
--- a/poliqarp/pqclient.cpp
+++ b/poliqarp/pqclient.cpp
@@ -147,7 +147,9 @@ Token* PoliqarpClient::get_token(size_t pos)
 		poliqarp_get_interpretation(&set, &interp, i);
 		poliqarp_get_interpretation_info(&interp, &iinfo);
 		Tag tag = tagset_.parse_simple_tag(iinfo.tag);
-		res->add_lexeme(Lexeme(UnicodeString::fromUTF8(iinfo.base), tag));
+		Lexeme lex = Lexeme(UnicodeString::fromUTF8(iinfo.base), tag);
+		lex.set_disamb(interp.disamb);
+		res->add_lexeme(lex);
 	}
 	return res.release();
 }
diff --git a/swig/tagset.i b/swig/tagset.i
index c4a5dad26fea19da8e70f290f22f45dc0a1df6ad..d318a80adf8e56c05d5c30668fac1f12b33414a4 100644
--- a/swig/tagset.i
+++ b/swig/tagset.i
@@ -107,6 +107,11 @@ namespace Corpus2 {
 
     std::string id_string() const;
     std::string id_string(const Tag& tag) const;
+
+    const std::string& get_value_name(int index) const;
+    const std::string& get_attribute_name(int index) const;
+    const std::string& get_pos_name(int index) const;
+
   };
 }