diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/ASN1_BitString_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/ASN1_BitString_Type.java
index f54604c4d416fcf1c59dfe1c40c4f5dd8bed84c3..f3555e965b208c7a146bb300cd150a1f9b697e4c 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/ASN1_BitString_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/ASN1_BitString_Type.java
@@ -123,13 +123,13 @@ public final class ASN1_BitString_Type extends Type implements IASN1Type {
 	@Override
 	/** {@inheritDoc} */
 	public String getTypename() {
-		return "bitstring";
+		return getTypetype().getName();
 	}
 
 	@Override
 	/** {@inheritDoc} */
 	public StringBuilder getProposalDescription(final StringBuilder builder) {
-		return builder.append("bit string");
+		return builder.append(getTypetype().getName());
 	}
 
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/ASN1_Choice_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/ASN1_Choice_Type.java
index 5849de7639241bfef1b783e03a13023ce47cf7ef..660520e2c5289f9e384fdda9e1cde60c72fc1fd9 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/ASN1_Choice_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/ASN1_Choice_Type.java
@@ -210,7 +210,7 @@ public final class ASN1_Choice_Type extends ASN1_Set_Seq_Choice_BaseType {
 	@Override
 	/** {@inheritDoc} */
 	public StringBuilder getProposalDescription(final StringBuilder builder) {
-		return builder.append("choice");
+		return builder.append(getTypetype().getName());
 	}
 
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/ASN1_Enumerated_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/ASN1_Enumerated_Type.java
index 6f63f9280349b7b65c65672ec6f3345b8e68db41..51b8a65b6f3f73df98db21ca937ab4db684cbe4a 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/ASN1_Enumerated_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/ASN1_Enumerated_Type.java
@@ -97,7 +97,7 @@ public final class ASN1_Enumerated_Type extends Type implements IASN1Type, IType
 	@Override
 	/** {@inheritDoc} */
 	public final StringBuilder getProposalDescription(final StringBuilder builder) {
-		return builder.append("enumerated");
+		return builder.append(getTypetype().getName());
 	}
 
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/ASN1_Integer_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/ASN1_Integer_Type.java
index 3e9ced52e8822dcaf5900e1160cc319c3ba23c76..2ded855354485ca9f1831b565e2cd3edc637c682 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/ASN1_Integer_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/ASN1_Integer_Type.java
@@ -134,13 +134,13 @@ public final class ASN1_Integer_Type extends Type implements IASN1Type {
 	@Override
 	/** {@inheritDoc} */
 	public String getTypename() {
-		return "integer";
+		return getTypetype().getName();
 	}
 
 	@Override
 	/** {@inheritDoc} */
 	public StringBuilder getProposalDescription(final StringBuilder builder) {
-		return builder.append("integer");
+		return builder.append(getTypetype().getName());
 	}
 
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/ASN1_Sequence_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/ASN1_Sequence_Type.java
index 779e321d19c800cc18a09aadc4fa02868939e75c..b3f8baabd26e9f3faab635a85ddf1a57ab58bdc0 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/ASN1_Sequence_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/ASN1_Sequence_Type.java
@@ -412,7 +412,7 @@ public final class ASN1_Sequence_Type extends ASN1_Set_Seq_Choice_BaseType {
 	@Override
 	/** {@inheritDoc} */
 	public StringBuilder getProposalDescription(final StringBuilder builder) {
-		return builder.append("sequence");
+		return builder.append(getTypetype().getName());
 	}
 
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/ASN1_Set_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/ASN1_Set_Type.java
index e328a671d7c6e1bf40bfd4ca9715a031ad2a8d83..d3986c0d5e872d48b85c6b3e02a3f4f6dc8e8d7c 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/ASN1_Set_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/ASN1_Set_Type.java
@@ -339,7 +339,7 @@ public final class ASN1_Set_Type extends ASN1_Set_Seq_Choice_BaseType implements
 	@Override
 	/** {@inheritDoc} */
 	public StringBuilder getProposalDescription(final StringBuilder builder) {
-		return builder.append("set");
+		return builder.append(getTypetype().getName());
 	}
 
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/Any_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/Any_Type.java
index 753224ade8f5edf6d8eedd225d051cc6c1f17d75..df2028600481cad8423d8f073f7b142521fe5a31 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/Any_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/Any_Type.java
@@ -73,7 +73,7 @@ public final class Any_Type extends Type implements IASN1Type {
 	@Override
 	/** {@inheritDoc} */
 	public String getTypename() {
-		return "ANY";
+		return getTypetype().getName();
 	}
 
 	@Override
@@ -211,7 +211,7 @@ public final class Any_Type extends Type implements IASN1Type {
 	@Override
 	/** {@inheritDoc} */
 	public StringBuilder getProposalDescription(final StringBuilder builder) {
-		return builder.append("any");
+		return builder.append(getTypetype().getName());
 	}
 
 	@Override
@@ -221,6 +221,6 @@ public final class Any_Type extends Type implements IASN1Type {
 			return "FIXLSP";
 		}
 
-		return "ANY";
+		return getTypename();
 	}
 }
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/BMPString_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/BMPString_Type.java
index 9c8313dec573f190edf75d743e4393773ada5eb2..58fb5548b93d82c4ee6142d502fb00e5d08ec3ba 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/BMPString_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/BMPString_Type.java
@@ -87,7 +87,7 @@ public final class BMPString_Type extends Type implements IASN1Type {
 	@Override
 	/** {@inheritDoc} */
 	public String getTypename() {
-		return "BMPString";
+		return getTypetype().getName();
 	}
 
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/Embedded_PDV_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/Embedded_PDV_Type.java
index 4f0d37d9792025dfd9c44788ec72fa5417e06efc..1054bf90470a9671585dfdb8746a092284803e08 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/Embedded_PDV_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/Embedded_PDV_Type.java
@@ -36,7 +36,6 @@ import org.eclipse.titan.lsp.parsers.CompilationTimeStamp;
  * @author Kristof Szabados
  * */
 public final class Embedded_PDV_Type extends Type implements IASN1Type, IReferencingType {
-	private static final String EMBEDDED_PDV = "EMBEDDED PDV";
 	private static final String TEMPLATENOTALLOWED = "{0} cannot be used for type `EMBEDDED PDV''";
 	private static final String LENGTHRESTRICTIONNOTALLOWED = "Length restriction is not allowed for type `EMBEDDED PDV''";
 
@@ -68,7 +67,7 @@ public final class Embedded_PDV_Type extends Type implements IASN1Type, IReferen
 	@Override
 	/** {@inheritDoc} */
 	public String getTypename() {
-		return EMBEDDED_PDV;
+		return getTypetype().getName();
 	}
 
 	@Override
@@ -79,7 +78,7 @@ public final class Embedded_PDV_Type extends Type implements IASN1Type, IReferen
 			return this;
 		}
 
-		final Identifier identifier = new Identifier(Identifier_type.ID_ASN, EMBEDDED_PDV);
+		final Identifier identifier = new Identifier(Identifier_type.ID_ASN, getTypename());
 		final Assignments assignments = myScope.getAssignmentsScope();
 		if (!assignments.hasAssignmentWithId(timestamp, identifier)) {
 			setIsErroneous(true);
@@ -221,6 +220,6 @@ public final class Embedded_PDV_Type extends Type implements IASN1Type, IReferen
 	@Override
 	/** {@inheritDoc} */
 	public StringBuilder getProposalDescription(final StringBuilder builder) {
-		return builder.append("embedded PDV");
+		return builder.append(getTypetype().getName());
 	}
 }
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/External_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/External_Type.java
index 0a6f31a2c88a1ec3cb2ee7326c16d4d86e7b2bfa..47899993600094d8e4123efaa68e792c2cc87be3 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/External_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/External_Type.java
@@ -67,7 +67,7 @@ public final class External_Type extends Type implements IASN1Type, IReferencing
 	@Override
 	/** {@inheritDoc} */
 	public String getTypename() {
-		return "EXTERNAL";
+		return getTypetype().getName();
 	}
 
 	@Override
@@ -78,7 +78,7 @@ public final class External_Type extends Type implements IASN1Type, IReferencing
 			return this;
 		}
 
-		final Identifier identifier = new Identifier(Identifier_type.ID_ASN, "EXTERNAL");
+		final Identifier identifier = new Identifier(Identifier_type.ID_ASN, getTypename());
 		final Assignments assignments = myScope.getAssignmentsScope();
 		if (!assignments.hasAssignmentWithId(timestamp, identifier)) {
 			setIsErroneous(true);
@@ -220,6 +220,6 @@ public final class External_Type extends Type implements IASN1Type, IReferencing
 	@Override
 	/** {@inheritDoc} */
 	public StringBuilder getProposalDescription(final StringBuilder builder) {
-		return builder.append("external");
+		return builder.append(getTypetype().getName());
 	}
 }
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/GeneralString_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/GeneralString_Type.java
index 3c632cc78e819d68684bdc6026b84a7de26b286b..3d4bf0fdac1ca1ca52c794bbdc316c26c2554d35 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/GeneralString_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/GeneralString_Type.java
@@ -88,7 +88,7 @@ public final class GeneralString_Type extends Type implements IASN1Type {
 	@Override
 	/** {@inheritDoc} */
 	public String getTypename() {
-		return "GeneralString";
+		return getTypetype().getName();
 	}
 
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/GeneralizedTime_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/GeneralizedTime_Type.java
index 1043e667b0e068e379c901e3d8d62e088ee6db59..2c65099f9c29fdc9283b3cd1938f52c9e698bdc6 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/GeneralizedTime_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/GeneralizedTime_Type.java
@@ -80,7 +80,7 @@ public final class GeneralizedTime_Type extends Type implements IASN1Type {
 	@Override
 	/** {@inheritDoc} */
 	public String getTypename() {
-		return "GeneralizedTime";
+		return getTypetype().getName();
 	}
 
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/GraphicString_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/GraphicString_Type.java
index e20b743ee1eed950f353ec21cdbc1951e13ef4fa..884230fb97bbfc99a99adac36f1a4801fb018ee6 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/GraphicString_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/GraphicString_Type.java
@@ -88,7 +88,7 @@ public final class GraphicString_Type extends Type implements IASN1Type {
 	@Override
 	/** {@inheritDoc} */
 	public String getTypename() {
-		return "GraphicString";
+		return getTypetype().getName();
 	}
 
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/IA5String_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/IA5String_Type.java
index 96dd226f82fce36447afcd86406bdd51333d5d7f..aec28c45b40cf127a27f4810e0fe4700d89bbd3c 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/IA5String_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/IA5String_Type.java
@@ -80,7 +80,7 @@ public final class IA5String_Type extends Type implements IASN1Type {
 	@Override
 	/** {@inheritDoc} */
 	public String getTypename() {
-		return "IA5String";
+		return getTypetype().getName();
 	}
 
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/NULL_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/NULL_Type.java
index a3d3e5d5979f71038d4f4b1aa0b8defa9f8ea894..e370c371241ffa32d77cd70091fd06d27c39e1e2 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/NULL_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/NULL_Type.java
@@ -70,7 +70,7 @@ public final class NULL_Type extends Type implements IASN1Type {
 	@Override
 	/** {@inheritDoc} */
 	public String getTypename() {
-		return "NULL";
+		return getTypetype().getName();
 	}
 
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/NumericString_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/NumericString_Type.java
index f3ca43887ca20cdfd0f576da3a44cdbb1dd62710..303cf59e7e41887f7310d39eed9a9589da2ac323 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/NumericString_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/NumericString_Type.java
@@ -80,7 +80,7 @@ public final class NumericString_Type extends Type implements IASN1Type {
 	@Override
 	/** {@inheritDoc} */
 	public String getTypename() {
-		return "NumericString";
+		return getTypetype().getName();
 	}
 
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/ObjectClassField_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/ObjectClassField_Type.java
index f30974f88b0efe8407dd87b99f0a7a6a958e5ae7..cd1fa57869ccdee9fb3dac4563dfb5fbf6e41f5f 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/ObjectClassField_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/ObjectClassField_Type.java
@@ -111,7 +111,7 @@ public final class ObjectClassField_Type extends Type implements IASN1Type, IRef
 	/** {@inheritDoc} */
 	public String getTypename() {
 		if (isErroneous || null == referred_type || this == referred_type) {
-			return "Object class field type";
+			return getTypetype().getName();
 		}
 
 		return referred_type.getTypename();
@@ -279,7 +279,7 @@ public final class ObjectClassField_Type extends Type implements IASN1Type, IRef
 			return referred_type.getProposalDescription(builder);
 		}
 
-		return builder.append("unknown_referred_type");
+		return builder.append("<unknown_referred_type>");
 	}
 
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/ObjectDescriptor_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/ObjectDescriptor_Type.java
index c81c6c0355b5df422b08a6759056468b14585b50..f5d4effb8c1c1b28291cb5f8fb9908473d37fcc4 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/ObjectDescriptor_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/ObjectDescriptor_Type.java
@@ -87,7 +87,7 @@ public final class ObjectDescriptor_Type extends Type implements IASN1Type {
 	@Override
 	/** {@inheritDoc} */
 	public String getTypename() {
-		return "ObjectDescriptor";
+		return getTypetype().getName();
 	}
 
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/Open_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/Open_Type.java
index 52ee895797ceae44adae55a8cbc4bcbaee6af178..9d733fb9efa33d99e76d2b7b2ee1b1879f5ba126 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/Open_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/Open_Type.java
@@ -198,7 +198,7 @@ public final class Open_Type extends Type implements IASN1Type {
 	@Override
 	/** {@inheritDoc} */
 	public String getTypename() {
-		return "open type";
+		return getTypetype().getName();
 	}
 
 	@Override
@@ -509,7 +509,7 @@ public final class Open_Type extends Type implements IASN1Type {
 	@Override
 	/** {@inheritDoc} */
 	public StringBuilder getProposalDescription(final StringBuilder builder) {
-		return builder.append("open type");
+		return builder.append(getTypetype().getName());
 	}
 	
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/PrintableString_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/PrintableString_Type.java
index c67535848304a9f693e845f7253395feffaf711d..b5e506e647138d7e7bea589df5e3b8c9ec74633c 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/PrintableString_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/PrintableString_Type.java
@@ -80,7 +80,7 @@ public final class PrintableString_Type extends Type implements IASN1Type {
 	@Override
 	/** {@inheritDoc} */
 	public String getTypename() {
-		return "PrintableString";
+		return getTypetype().getName();
 	}
 
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/RelativeObjectIdentifier_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/RelativeObjectIdentifier_Type.java
index 52baa4c2b9c85addd34447b6335b064ad7663a04..cea52dfdfa7cc0cf3775a7a4c47356d53083c942 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/RelativeObjectIdentifier_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/RelativeObjectIdentifier_Type.java
@@ -71,7 +71,7 @@ public final class RelativeObjectIdentifier_Type extends Type implements IASN1Ty
 	@Override
 	/** {@inheritDoc} */
 	public String getTypename() {
-		return "objid";
+		return getTypetype().getName();
 	}
 
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/Selection_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/Selection_Type.java
index 8ba493a44c9deb0eded8e5a2321813a1f15a9806..d4ff64f0717f75e087c74d1b6c5c28f920845349 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/Selection_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/Selection_Type.java
@@ -110,7 +110,7 @@ public final class Selection_Type extends Type implements IASN1Type, IReferencin
 	/** {@inheritDoc} */
 	public String getTypename() {
 		if (isErroneous || null == selectionType || this == selectionType) {
-			return "Selection type";
+			return getTypetype().getName();
 		}
 
 		return selectionType.getTypename();
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/TeletexString_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/TeletexString_Type.java
index 78caec252e66fa58fdfde4c02206095a5945d026..53f5f871775b2ead646c30ac8106450a79f9e513 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/TeletexString_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/TeletexString_Type.java
@@ -88,7 +88,7 @@ public final class TeletexString_Type extends Type implements IASN1Type {
 	@Override
 	/** {@inheritDoc} */
 	public String getTypename() {
-		return "TeletexString";
+		return getTypetype().getName();
 	}
 
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/UTCTime_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/UTCTime_Type.java
index f86f2ef7123ee0e09dbff158ba56ef44b5f8a1f8..a520f19a6e436cd664e1bf8982fb28fb7e8d93bf 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/UTCTime_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/UTCTime_Type.java
@@ -80,7 +80,7 @@ public final class UTCTime_Type extends Type implements IASN1Type {
 	@Override
 	/** {@inheritDoc} */
 	public String getTypename() {
-		return "UTCTime";
+		return getTypetype().getName();
 	}
 
 	@Override
@@ -206,6 +206,6 @@ public final class UTCTime_Type extends Type implements IASN1Type {
 	@Override
 	/** {@inheritDoc} */
 	public StringBuilder getProposalDescription(final StringBuilder builder) {
-		return builder.append("utctime");
+		return builder.append(getTypetype().getName());
 	}
 }
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/UTF8String_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/UTF8String_Type.java
index 96513e562910b149deeb180bdf27b1d1ca0dda8c..ffcbc268c55d785627c8f0ece603668c3717ddfe 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/UTF8String_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/UTF8String_Type.java
@@ -87,7 +87,7 @@ public final class UTF8String_Type extends Type implements IASN1Type {
 	@Override
 	/** {@inheritDoc} */
 	public String getTypename() {
-		return "UTF8String";
+		return getTypetype().getName();
 	}
 
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/UniversalString_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/UniversalString_Type.java
index 1b9bcd909b3e8363c97f17e2463c7e84e9efe35c..3283719423ffec117e280d3223c6bac79e69c840 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/UniversalString_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/UniversalString_Type.java
@@ -87,7 +87,7 @@ public final class UniversalString_Type extends Type implements IASN1Type {
 	@Override
 	/** {@inheritDoc} */
 	public String getTypename() {
-		return "UniversalString";
+		return getTypetype().getName();
 	}
 
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/UnrestrictedString_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/UnrestrictedString_Type.java
index 5d0b1d9e2b2b913c30b8f6d40ea47c5ae43d4131..d154896b3cff57ef4f25441d5c43d6af838a217c 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/UnrestrictedString_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/UnrestrictedString_Type.java
@@ -67,7 +67,7 @@ public final class UnrestrictedString_Type extends Type implements IASN1Type, IR
 	@Override
 	/** {@inheritDoc} */
 	public String getTypename() {
-		return "CHARACTER STRING";
+		return getTypetype().getName();
 	}
 
 	@Override
@@ -78,7 +78,7 @@ public final class UnrestrictedString_Type extends Type implements IASN1Type, IR
 			return this;
 		}
 
-		final Identifier identifier = new Identifier(Identifier_type.ID_ASN, "CHARACTER STRING");
+		final Identifier identifier = new Identifier(Identifier_type.ID_ASN, getTypename());
 		final Assignments assignments = myScope.getAssignmentsScope();
 		if (!assignments.hasAssignmentWithId(timestamp, identifier)) {
 			setIsErroneous(true);
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/VideotexString_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/VideotexString_Type.java
index 872074f949c1f23f305503482cac8543418c68e1..a01fd1732da95019087560dd50a404b647539fdf 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/VideotexString_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/VideotexString_Type.java
@@ -88,7 +88,7 @@ public final class VideotexString_Type extends Type implements IASN1Type {
 	@Override
 	/** {@inheritDoc} */
 	public String getTypename() {
-		return "VideotexString";
+		return getTypetype().getName();
 	}
 
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/VisibleString_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/VisibleString_Type.java
index 4deb5b3f18473770b3eb337a48ca38d8489d8219..df758618c2d17dcf9a66ca0cc1a25e9a8e665617 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/VisibleString_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/ASN1/types/VisibleString_Type.java
@@ -80,7 +80,7 @@ public final class VisibleString_Type extends Type implements IASN1Type {
 	@Override
 	/** {@inheritDoc} */
 	public String getTypename() {
-		return "VisibleString";
+		return getTypetype().getName();
 	}
 
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/IType.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/IType.java
index 715c19050224a39cdb9263bbfccd938bfb0325dd..c20222b41e65264255aefefe672d1d16b19fedf7 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/IType.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/IType.java
@@ -52,133 +52,143 @@ public interface IType extends IGovernor, IIdentifierContainer, IVisitableNode,
 	enum Type_type {
 		// special values never instantiated
 		/** undefined. */
-		TYPE_UNDEFINED,
+		TYPE_UNDEFINED("<undefined>"),
 
 		// common types (they reside among the TTCN-3 type package)
-		/** boolean. */
-		TYPE_BOOL,
 		/** bitstring. */
-		TYPE_BITSTRING,
-		/** octetstring. */
-		TYPE_OCTETSTRING,
+		TYPE_BITSTRING("bitstring"),
+		/** boolean. */
+		TYPE_BOOL("boolean"),
 		/** integer. */
-		TYPE_INTEGER,
-		/** real / float. */
-		TYPE_REAL,
+		TYPE_INTEGER("integer"),
+		/** octetstring. */
+		TYPE_OCTETSTRING("octetstring"),
 		/** object identifier. */
-		TYPE_OBJECTID,
-		/** referenced. */
-		TYPE_REFERENCED,
+		TYPE_OBJECTID("objid"),
+		/** real / float. */
+		TYPE_REAL("float"),
 		/** referenced directly by pointer. */
-		TYPE_REFD_SPEC,
+		TYPE_REFD_SPEC("referenced type"),
+		/** referenced. */
+		TYPE_REFERENCED("referenced type"),
 		/** sequence of. */
-		TYPE_SEQUENCE_OF,
+		TYPE_SEQUENCE_OF("sequence of"),
 		/** set of. */
-		TYPE_SET_OF,
+		TYPE_SET_OF("set of"),
 
 		// TTCN-3 types
-		/** character string (TTCN-3). */
-		TYPE_CHARSTRING,
-		/** hexadecimal string (TTCN-3). */
-		TYPE_HEXSTRING,
-		/** unversal charstring (TTCN-3). */
-		TYPE_UCHARSTRING,
-		/** verdict type (TTCN-3). */
-		TYPE_VERDICT,
 		/** address (TTCN-3). */
-		TYPE_ADDRESS,
-		/** default (TTCN-3). */
-		TYPE_DEFAULT,
-		/** Sequence (TTCN-3). */
-		TYPE_TTCN3_SEQUENCE,
-		/** Set (TTCN-3). */
-		TYPE_TTCN3_SET,
-		/** Union (TTCN-3). */
-		TYPE_TTCN3_CHOICE,
-		/** enumeration (TTCN-3). */
-		TYPE_TTCN3_ENUMERATED,
-		/** function (TTCN-3). */
-		TYPE_FUNCTION,
+		TYPE_ADDRESS("address"),
 		/** altstep (TTCN-3). */
-		TYPE_ALTSTEP,
-		/** testcase (TTCN-3). */
-		TYPE_TESTCASE,
+		TYPE_ALTSTEP("altstep"),
+		/** anytype (TTCN-3). */
+		TYPE_ANYTYPE("anytype"),
 		/** array (TTCN-3). */
-		TYPE_ARRAY,
-		/** signature (TTCN-3). */
-		TYPE_SIGNATURE,
+		TYPE_ARRAY("array"),
+		/** character string (TTCN-3). */
+		TYPE_CHARSTRING("charstring"),
+		/** class (TTCN-3 extension) */
+		TYPE_CLASS("class"),
 		/** component (TTCN-3). */
-		TYPE_COMPONENT,
+		TYPE_COMPONENT("component"),
+		/** default (TTCN-3). */
+		TYPE_DEFAULT("default"),
+		/** function (TTCN-3). */
+		TYPE_FUNCTION("function"),
+		/** hexadecimal string (TTCN-3). */
+		TYPE_HEXSTRING("hexstring"),
+		/** map type (TTCN-3) */
+		TYPE_MAP("map"),
 		/** port (TTCN-3). */
-		TYPE_PORT,
-		/** class (TTCN-3 extension) */
-		TYPE_CLASS,
+		TYPE_PORT("port"),
 		/** property (TTCN-3 OOP extension) */
-		TYPE_PROPERTY,
-		/** anytype (TTCN-3). */
-		TYPE_ANYTYPE,
-		/** ,a[ type (TTCN-3) */
-		TYPE_MAP,
+		TYPE_PROPERTY("property"),
+		/** signature (TTCN-3). */
+		TYPE_SIGNATURE("signature"),
+		/** testcase (TTCN-3). */
+		TYPE_TESTCASE("testcase"),
+		/** Union (TTCN-3). */
+		TYPE_TTCN3_CHOICE("union"),
+		/** enumeration (TTCN-3). */
+		TYPE_TTCN3_ENUMERATED("enumerated"),
+		/** Sequence (TTCN-3). */
+		TYPE_TTCN3_SEQUENCE("record"),
+		/** Set (TTCN-3). */
+		TYPE_TTCN3_SET("set"),
+		/** unversal charstring (TTCN-3). */
+		TYPE_UCHARSTRING("universal charstring"),
+		/** verdict type (TTCN-3). */
+		TYPE_VERDICT("verdicttype"),
 
 		// ASN.1 types
-		/** null type (ASN.1). */
-		TYPE_NULL,
-		/** Integer type (ASN.1). */
-		TYPE_INTEGER_A,
+		/** ANY (ASN.1). */
+		TYPE_ANY("ANY"),
+		/** choice (ASN.1). */
+		TYPE_ASN1_CHOICE("choice"),
 		/** enumeration (ASN.1). */
-		TYPE_ASN1_ENUMERATED,
+		TYPE_ASN1_ENUMERATED("enumerated"),
+		/** sequence (ASN.1). */
+		TYPE_ASN1_SEQUENCE("sequence"),
+		/** set (ASN.1). */
+		TYPE_ASN1_SET("set"),
 		/** bitstring (ASN.1). */
-		TYPE_BITSTRING_A,
-		/** UTF8String (ASN.1). */
-		TYPE_UTF8STRING,
+		TYPE_BITSTRING_A("bitstring"),
+		/** bmpString (ASN.1). */
+		TYPE_BMPSTRING("BMPString"),
+		/** embedded_pdv (ASN.1). */
+		TYPE_EMBEDDED_PDV("EMBEDDED PDV"),
+		/** external (ASN.1). */
+		TYPE_EXTERNAL("EXTERNAL"),
+		/** generalised time (ASN.1). */
+		TYPE_GENERALIZEDTIME("GeneralizedTime"),
+		/** generalString (ASN.1). */
+		TYPE_GENERALSTRING("GeneralString"),
+		/** graphicstring (ASN.1). */
+		TYPE_GRAPHICSTRING("GraphicString"),
+		/** IA5String (ASN.1). */
+		TYPE_IA5STRING("IA5String"),
+		/** Integer type (ASN.1). */
+		TYPE_INTEGER_A("integer"),
+		/** null type (ASN.1). */
+		TYPE_NULL("NULL"),
 		/** numericString (ASN.1). */
-		TYPE_NUMERICSTRING,
+		TYPE_NUMERICSTRING("NumericString"),
+		/** ObjectClassField (ASN.1). */
+		TYPE_OBJECTCLASSFIELDTYPE("object class field type"),
+		/** objectdescriptor. */
+		TYPE_OBJECTDESCRIPTOR("ObjectDescriptor"),
+		/** opentype (ASN.1). */
+		TYPE_OPENTYPE("open type"),
 		/** printablestring (ASN.1). */
-		TYPE_PRINTABLESTRING,
+		TYPE_PRINTABLESTRING("PrintableString"),
+		/** relative object identifier (ASN.1). */
+		TYPE_ROID("objid"),
+		/** selection (ASN.1). */
+		TYPE_SELECTION("selection type"),
 		/** teletexstring (ASN.1). */
-		TYPE_TELETEXSTRING,
-		/** videotexstring (ASN.1). */
-		TYPE_VIDEOTEXSTRING,
-		/** IA5String (ASN.1). */
-		TYPE_IA5STRING,
-		/** graphicstring (ASN.1). */
-		TYPE_GRAPHICSTRING,
-		/** visiblestring (ASN.1). */
-		TYPE_VISIBLESTRING,
-		/** generalString (ASN.1). */
-		TYPE_GENERALSTRING,
+		TYPE_TELETEXSTRING("TeletexString"),
 		/** universalString (ASN.1). */
-		TYPE_UNIVERSALSTRING,
-		/** bmpString (ASN.1). */
-		TYPE_BMPSTRING,
+		TYPE_UNIVERSALSTRING("UniversalString"),
 		/** unrestrictedString (ASN.1). */
-		TYPE_UNRESTRICTEDSTRING,
+		TYPE_UNRESTRICTEDSTRING("CHARACTER STRING"),
 		/** UTCtime (ASN.1). */
-		TYPE_UTCTIME,
-		/** generalised time (ASN.1). */
-		TYPE_GENERALIZEDTIME,
-		/** objectdescriptor. */
-		TYPE_OBJECTDESCRIPTOR,
-		/** relative object identifier (ASN.1). */
-		TYPE_ROID,
-		/** choice (ASN.1). */
-		TYPE_ASN1_CHOICE,
-		/** sequence (ASN.1). */
-		TYPE_ASN1_SEQUENCE,
-		/** set (ASN.1). */
-		TYPE_ASN1_SET,
-		/** ObjectClassField (ASN.1). */
-		TYPE_OBJECTCLASSFIELDTYPE,
-		/** opentype (ASN.1). */
-		TYPE_OPENTYPE,
-		/** ANY (ASN.1). */
-		TYPE_ANY,
-		/** external (ASN.1). */
-		TYPE_EXTERNAL,
-		/** embedded_pdv (ASN.1). */
-		TYPE_EMBEDDED_PDV,
-		/** selection (ASN.1). */
-		TYPE_SELECTION
+		TYPE_UTCTIME("UTCTime"),
+		/** UTF8String (ASN.1). */
+		TYPE_UTF8STRING("UTF8String"),
+		/** videotexstring (ASN.1). */
+		TYPE_VIDEOTEXSTRING("VideotexString"),
+		/** visiblestring (ASN.1). */
+		TYPE_VISIBLESTRING("VisibleString");
+
+		final String name;
+
+		Type_type(final String name) {
+			this.name = name;
+		}
+
+		public String getName() {
+			return name;
+		}
 	}
 
 	/**
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/Scope.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/Scope.java
index cd1b5b9716aad2c0831f4e7be5b0f27f5c0d4347..005fd5675aa205adf2595f0cc33e335eee04cbe2 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/Scope.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/Scope.java
@@ -342,15 +342,12 @@ public abstract class Scope implements INamedNode, IIdentifierContainer, IVisita
 		}
 
 		Component_Type referencedComponent;
-		String typename;
 		switch (type.getTypetype()) {
 		case TYPE_FUNCTION:
 			referencedComponent = ((Function_Type) type).getRunsOnType(timestamp);
-			typename = "function";
 			break;
 		case TYPE_ALTSTEP:
 			referencedComponent = ((Altstep_Type) type).getRunsOnType(timestamp);
-			typename = "altstep";
 			break;
 		default:
 			return;
@@ -360,6 +357,7 @@ public abstract class Scope implements INamedNode, IIdentifierContainer, IVisita
 			return;
 		}
 
+		final String typename = type.getTypetype().getName();
 		final RunsOnScope runsOnScope = getScopeRunsOn();
 		if (runsOnScope == null) {
 			errorLocation.getLocation().reportSemanticError(
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/definitions/Def_Port.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/definitions/Def_Port.java
index 115478014b2671f21e15e6da014906140122b087..e449596f49c3b61c9abd03a1e3fd057bea85ef5d 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/definitions/Def_Port.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/definitions/Def_Port.java
@@ -335,7 +335,7 @@ public final class Def_Port extends Definition {
 		}
 		
 		final IType assType = getType(getLastTimeChecked());
-		hoverContent.addStyledText("port", Ttcn3HoverContent.BOLD).addText(" ");
+		hoverContent.addStyledText(getAssignmentName(), Ttcn3HoverContent.BOLD).addText(" ");
 		hoverContent.addStyledText(assType != null ? assType.getTypename() : "<?>")
 			.addStyledText(" ").addStyledText(getFullName());
 
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/definitions/Def_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/definitions/Def_Type.java
index cbd5d57c673ddfbec0f85ffd840b57f21647b986..e9507fc4684144aa97ad98a158ba4c127f738e68 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/definitions/Def_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/definitions/Def_Type.java
@@ -232,7 +232,7 @@ public final class Def_Type extends Definition implements ICommentable {
 		lastTimeChecked = timestamp;
 		isUsed = false;
 
-		if (!GeneralConstants.ADDRESS.equals(identifier.getTtcnName()) && !GeneralConstants.ANYTYPE.equals(identifier.getTtcnName())) {
+		if (!Type_type.TYPE_ADDRESS.getName().equals(identifier.getTtcnName()) && !Type_type.TYPE_ANYTYPE.getName().equals(identifier.getTtcnName())) {
 			NamingConventionHelper.checkConvention(NamingConventionElement.Type, identifier, this);
 			NamingConventionHelper.checkNameContents(identifier, getMyScope().getModuleScope().getIdentifier(), getDescription());
 		}
@@ -246,7 +246,7 @@ public final class Def_Type extends Definition implements ICommentable {
 		}
 		type.check(timestamp);
 		type.checkConstructorName(identifier.getName());
-		if (GeneralConstants.ADDRESS.equals(identifier.getTtcnName())) {
+		if (Type_type.TYPE_ADDRESS.getName().equals(identifier.getTtcnName())) {
 			Address_Type.checkAddress(timestamp, type);
 		}
 
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/definitions/TTCN3Module.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/definitions/TTCN3Module.java
index c7a4a28f13b0a2e5cfddc41bc9d1942ab171ca95..30f345229f911fa15dc38a7b1492be2dceea427d 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/definitions/TTCN3Module.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/definitions/TTCN3Module.java
@@ -159,7 +159,7 @@ public final class TTCN3Module extends Module implements ISemanticInformation {
 		definitions.setFullNameParent(this);
 
 		anytype = new Anytype_Type();
-		anytypeDefinition = new Def_Type(new Identifier(Identifier_type.ID_TTCN, GeneralConstants.ANYTYPE), anytype);
+		anytypeDefinition = new Def_Type(new Identifier(Identifier_type.ID_TTCN, Type_type.TYPE_ANYTYPE.getName()), anytype);
 		anytypeDefinition.setMyScope(this);
 		anytypeDefinition.setFullNameParent(this);
 
@@ -935,7 +935,7 @@ public final class TTCN3Module extends Module implements ISemanticInformation {
 
 		if (moduleId == null) {
 			// no module name is given in the reference
-			if (GeneralConstants.ANYTYPE.equals(id.getTtcnName())) {
+			if (Type_type.TYPE_ANYTYPE.getName().equals(id.getTtcnName())) {
 				return anytypeDefinition;
 			}
 
@@ -990,7 +990,7 @@ public final class TTCN3Module extends Module implements ISemanticInformation {
 			missingReferences.add(reference);
 		} else if (moduleId.getName().equals(name)) {
 			// the reference points to the own module
-			if (GeneralConstants.ANYTYPE.equals(id.getTtcnName())) {
+			if (Type_type.TYPE_ANYTYPE.getName().equals(id.getTtcnName())) {
 				return anytypeDefinition;
 			}
 
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/templates/TTCN3Template.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/templates/TTCN3Template.java
index 76c7b92ff236db0707e7b3cb01062c8b3ed576ff..34e59167b393402e40f65df8b11f2e5d097bc614 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/templates/TTCN3Template.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/templates/TTCN3Template.java
@@ -11,7 +11,6 @@ import java.text.MessageFormat;
 import java.util.List;
 import java.util.Set;
 
-import org.eclipse.titan.lsp.GeneralConstants;
 import org.eclipse.titan.lsp.AST.ASTVisitor;
 import org.eclipse.titan.lsp.AST.ArraySubReference;
 import org.eclipse.titan.lsp.AST.Assignment;
@@ -398,7 +397,7 @@ public abstract class TTCN3Template extends GovernedSimple
 			if (!((ASN1_Choice_Type) tempType).hasComponentWithName(fieldIdentifier)) {
 				if (!silent) {
 					reference.getLocation().reportSemanticError(
-						MessageFormat.format(REFERENCETONONEXISTENTFIELD, GeneralConstants.UNION,
+						MessageFormat.format(REFERENCETONONEXISTENTFIELD, tempType.getTypetype().getName(),
 								fieldIdentifier.getDisplayName(), tempType.getTypename()));
 				}
 				return null;
@@ -409,7 +408,7 @@ public abstract class TTCN3Template extends GovernedSimple
 			if (!((TTCN3_Choice_Type) tempType).hasComponentWithName(fieldIdentifier.getName())) {
 				if (!silent) {
 					reference.getLocation().reportSemanticError(
-						MessageFormat.format(REFERENCETONONEXISTENTFIELD, GeneralConstants.UNION,
+						MessageFormat.format(REFERENCETONONEXISTENTFIELD, tempType.getTypetype().getName(),
 								fieldIdentifier.getDisplayName(), tempType.getTypename()));
 				}
 				return null;
@@ -420,7 +419,7 @@ public abstract class TTCN3Template extends GovernedSimple
 			if (!((Open_Type) tempType).hasComponentWithName(fieldIdentifier)) {
 				if (!silent) {
 					reference.getLocation().reportSemanticError(
-						MessageFormat.format(REFERENCETONONEXISTENTFIELD, GeneralConstants.UNION,
+						MessageFormat.format(REFERENCETONONEXISTENTFIELD, tempType.getTypetype().getName(),
 								fieldIdentifier.getDisplayName(), tempType.getTypename()));
 				}
 				return null;
@@ -431,7 +430,7 @@ public abstract class TTCN3Template extends GovernedSimple
 			if (!((Anytype_Type) tempType).hasComponentWithName(fieldIdentifier.getName())) {
 				if (!silent) {
 					reference.getLocation().reportSemanticError(
-						MessageFormat.format(REFERENCETONONEXISTENTFIELD, GeneralConstants.UNION,
+						MessageFormat.format(REFERENCETONONEXISTENTFIELD, tempType.getTypetype().getName(),
 								fieldIdentifier.getDisplayName(), tempType.getTypename()));
 				}
 				return null;
@@ -442,7 +441,7 @@ public abstract class TTCN3Template extends GovernedSimple
 			if (!((ASN1_Sequence_Type) tempType).hasComponentWithName(fieldIdentifier)) {
 				if (!silent) {
 					reference.getLocation().reportSemanticError(
-						MessageFormat.format(REFERENCETONONEXISTENTFIELD, GeneralConstants.RECORD,
+						MessageFormat.format(REFERENCETONONEXISTENTFIELD, tempType.getTypetype().getName(),
 								fieldIdentifier.getDisplayName(), tempType.getTypename()));
 				}
 				return null;
@@ -453,7 +452,7 @@ public abstract class TTCN3Template extends GovernedSimple
 			if (!((TTCN3_Sequence_Type) tempType).hasComponentWithName(fieldIdentifier.getName())) {
 				if (!silent) {
 					reference.getLocation().reportSemanticError(
-						MessageFormat.format(REFERENCETONONEXISTENTFIELD, GeneralConstants.RECORD,
+						MessageFormat.format(REFERENCETONONEXISTENTFIELD, tempType.getTypetype().getName(),
 								fieldIdentifier.getDisplayName(), tempType.getTypename()));
 				}
 				return null;
@@ -464,7 +463,7 @@ public abstract class TTCN3Template extends GovernedSimple
 			if (!((ASN1_Set_Type) tempType).hasComponentWithName(fieldIdentifier)) {
 				if (!silent) {
 					reference.getLocation().reportSemanticError(
-						MessageFormat.format(REFERENCETONONEXISTENTFIELD, GeneralConstants.SET,
+						MessageFormat.format(REFERENCETONONEXISTENTFIELD, tempType.getTypetype().getName(),
 								fieldIdentifier.getDisplayName(), tempType.getTypename()));
 				}
 				return null;
@@ -475,7 +474,7 @@ public abstract class TTCN3Template extends GovernedSimple
 			if (!((TTCN3_Set_Type) tempType).hasComponentWithName(fieldIdentifier.getName())) {
 				if (!silent) {
 					reference.getLocation().reportSemanticError(
-						MessageFormat.format(REFERENCETONONEXISTENTFIELD, GeneralConstants.SET,
+						MessageFormat.format(REFERENCETONONEXISTENTFIELD, tempType.getTypetype().getName(),
 								fieldIdentifier.getDisplayName(), tempType.getTypename()));
 				}
 				return null;
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Address_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Address_Type.java
index 8dd333330db3641520131bad237d56b227faf452..9b54234df4a2354305037371805890016f42fa69 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Address_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Address_Type.java
@@ -64,7 +64,7 @@ public final class Address_Type extends Type implements IReferencingType {
 	@Override
 	/** {@inheritDoc} */
 	public String getTypename() {
-		return "address";
+		return getTypetype().getName();
 	}
 
 	@Override
@@ -283,7 +283,7 @@ public final class Address_Type extends Type implements IReferencingType {
 	@Override
 	/** {@inheritDoc} */
 	public StringBuilder getProposalDescription(final StringBuilder builder) {
-		return builder.append("address");
+		return builder.append(getTypetype().getName());
 	}
 
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Anytype_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Anytype_Type.java
index 464b2b501126af18bdcc76af51a740147f01c247..0411a2a639b8fde6834458b790d3a7ebd872c7e5 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Anytype_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Anytype_Type.java
@@ -796,7 +796,7 @@ public final class Anytype_Type extends Type {
 	@Override
 	/** {@inheritDoc} */
 	public StringBuilder getProposalDescription(final StringBuilder builder) {
-		return builder.append(GeneralConstants.ANYTYPE);
+		return builder.append(getTypetype().getName());
 	}
 
 	/**
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/BitString_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/BitString_Type.java
index 91c96a5d50cbce714b316bbdfdd5a71efd7fe6c8..df3018c3c133071cf7e04c8c83f36ab0eea94a0e 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/BitString_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/BitString_Type.java
@@ -55,7 +55,7 @@ public final class BitString_Type extends Type {
 	@Override
 	/** {@inheritDoc} */
 	public StringBuilder getProposalDescription(final StringBuilder builder) {
-		return builder.append("bitstring");
+		return builder.append(getTypetype().getName());
 	}
 
 	@Override
@@ -85,7 +85,7 @@ public final class BitString_Type extends Type {
 	@Override
 	/** {@inheritDoc} */
 	public String getTypename() {
-		return "bitstring";
+		return getTypetype().getName();
 	}
 
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Boolean_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Boolean_Type.java
index a0f171731fd258d1e4c82fe94af5024e8cda46fa..e6869c555d4ce58f940e30229302e74147cde73d 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Boolean_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Boolean_Type.java
@@ -41,7 +41,6 @@ import org.eclipse.titan.lsp.parsers.CompilationTimeStamp;
  * @author Arpad Lovassy
  */
 public final class Boolean_Type extends Type implements IASN1Type {
-	private static final String BOOLEAN = "boolean";
 	private static final String BOOLEANVALUEEXPECTED1 = "boolean value was expected";
 	private static final String BOOLEANVALUEEXPECTED2 = "BOOLEAN value was expected";
 	private static final String TEMPLATENOTALLOWED = "{0} cannot be used for type `boolean''";
@@ -72,7 +71,7 @@ public final class Boolean_Type extends Type implements IASN1Type {
 	@Override
 	/** {@inheritDoc} */
 	public String getTypename() {
-		return BOOLEAN;
+		return getTypetype().getName();
 	}
 
 	@Override
@@ -281,7 +280,7 @@ public final class Boolean_Type extends Type implements IASN1Type {
 	@Override
 	/** {@inheritDoc} */
 	public StringBuilder getProposalDescription(final StringBuilder builder) {
-		return builder.append(BOOLEAN);
+		return builder.append(getTypetype().getName());
 	}
 
 	@Override
@@ -291,7 +290,7 @@ public final class Boolean_Type extends Type implements IASN1Type {
 			return "FIXLSP";
 		}
 
-		return "BOOLEAN";
+		return getTypetype().getName().toUpperCase();
 	}
 	
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/CharString_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/CharString_Type.java
index 9916be7fbb26402ff1908ae4c1ceccf2841786f1..1568bf80d769a2cf759177144b041a29f54e101c 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/CharString_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/CharString_Type.java
@@ -48,7 +48,6 @@ import org.eclipse.titan.lsp.parsers.CompilationTimeStamp;
  * @author Arpad Lovassy
  */
 public final class CharString_Type extends Type {
-	private static final String CHARSTRING = "charstring";
 	public static final String CHARSTRINGVALUEEXPECTED = "Character string value was expected";
 	private static final String TEMPLATENOTALLOWED = "{0} cannot be used for type `{1}''";
 	private static final String INCORRECTBOUNDARIES = "The lower boundary is higher than the upper boundary";
@@ -86,7 +85,7 @@ public final class CharString_Type extends Type {
 	@Override
 	/** {@inheritDoc} */
 	public StringBuilder getProposalDescription(final StringBuilder builder) {
-		return builder.append(CHARSTRING);
+		return builder.append(getTypetype().getName());
 	}
 
 	@Override
@@ -127,7 +126,7 @@ public final class CharString_Type extends Type {
 	@Override
 	/** {@inheritDoc} */
 	public String getTypename() {
-		return CHARSTRING;
+		return getTypetype().getName();
 	}
 
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Class_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Class_Type.java
index 32b09516ad6513d978ef27f2f7b6ba1c7814ef0d..50b4b39ecc28708486cf743b246e842a9a474128 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Class_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Class_Type.java
@@ -1734,6 +1734,6 @@ public final class Class_Type extends Type implements ITypeWithComponents {
 	@Override
 	/** {@inheritDoc} */
 	public StringBuilder getProposalDescription(final StringBuilder builder) {
-		return builder.append("class");
+		return builder.append(getTypetype().getName());
 	}
 }
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Component_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Component_Type.java
index 823418a80707fbdd29d9386771db82a5f8897036..c43760cf43d62d97b2d8eeb35db50c1b03f4f190 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Component_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Component_Type.java
@@ -109,7 +109,7 @@ public final class Component_Type extends Type {
 	@Override
 	/** {@inheritDoc} */
 	public StringBuilder getProposalDescription(final StringBuilder builder) {
-		return builder.append("component");
+		return builder.append(getTypetype().getName());
 	}
 
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Default_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Default_Type.java
index 491bf326a4d5ae375e9de854c12cd86b3bc03f38..d25837e331168e0e7e3a2dace792d529c66be297 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Default_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Default_Type.java
@@ -72,7 +72,7 @@ public final class Default_Type extends Type {
 	@Override
 	/** {@inheritDoc} */
 	public String getTypename() {
-		return "default";
+		return getTypetype().getName();
 	}
 
 	@Override
@@ -210,6 +210,6 @@ public final class Default_Type extends Type {
 	@Override
 	/** {@inheritDoc} */
 	public StringBuilder getProposalDescription(final StringBuilder builder) {
-		return builder.append("default");
+		return builder.append(getTypetype().getName());
 	}
 }
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Float_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Float_Type.java
index b06f13119918032d3d6dc5fe49d89fe51ba75d6b..ddd57e425942a895b01f0eb14cecb757e06e55cc 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Float_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Float_Type.java
@@ -94,7 +94,7 @@ public final class Float_Type extends Type implements IASN1Type {
 	@Override
 	/** {@inheritDoc} */
 	public String getTypename() {
-		return "float";
+		return getTypetype().getName();
 	}
 
 	@Override
@@ -386,7 +386,7 @@ public final class Float_Type extends Type implements IASN1Type {
 	@Override
 	/** {@inheritDoc} */
 	public StringBuilder getProposalDescription(final StringBuilder builder) {
-		return builder.append("float");
+		return builder.append(getTypetype().getName());
 	}
 	
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/HexString_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/HexString_Type.java
index 29ff267965728bb6622c8a9932da675ae9f2524c..e2a7bec14605356798cf41f903eaa9bca3411d89 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/HexString_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/HexString_Type.java
@@ -53,7 +53,7 @@ public final class HexString_Type extends Type {
 	@Override
 	/** {@inheritDoc} */
 	public StringBuilder getProposalDescription(final StringBuilder builder) {
-		return builder.append("hexstring");
+		return builder.append(getTypetype().getName());
 	}
 
 	@Override
@@ -83,7 +83,7 @@ public final class HexString_Type extends Type {
 	@Override
 	/** {@inheritDoc} */
 	public String getTypename() {
-		return "hexstring";
+		return getTypetype().getName();
 	}
 
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Integer_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Integer_Type.java
index 662ea727aaf4eb8111a07e4411988b50b8764ff3..18cf0083e4bff763585095d479e2e0af848c43ee 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Integer_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Integer_Type.java
@@ -94,7 +94,7 @@ public final class Integer_Type extends Type {
 	@Override
 	/** {@inheritDoc} */
 	public String getTypename() {
-		return "integer";
+		return getTypetype().getName();
 	}
 
 	@Override
@@ -487,7 +487,7 @@ public final class Integer_Type extends Type {
 	@Override
 	/** {@inheritDoc} */
 	public StringBuilder getProposalDescription(final StringBuilder builder) {
-		return builder.append("integer");
+		return builder.append(getTypetype().getName());
 	}
 
 	@Override
@@ -497,7 +497,7 @@ public final class Integer_Type extends Type {
 			return "FIXLSP";
 		}
 
-		return "INTEGER";
+		return getTypetype().getName().toUpperCase();
 	}
 
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/ObjectID_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/ObjectID_Type.java
index 5685a1d4c55995137f24324ca8e6e1c6029ec5f8..616cb1da58548a89208492edf7f2f9a1729a9a62 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/ObjectID_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/ObjectID_Type.java
@@ -78,7 +78,7 @@ public final class ObjectID_Type extends Type implements IASN1Type {
 	@Override
 	/** {@inheritDoc} */
 	public String getTypename() {
-		return "objid";
+		return getTypetype().getName();
 	}
 	
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/OctetString_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/OctetString_Type.java
index e6dfcb9b818da9f6a455f272cf1d836d68519174..3d994c5cda7608d258e3d7d0dbc1fb5cda625781 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/OctetString_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/OctetString_Type.java
@@ -86,7 +86,7 @@ public final class OctetString_Type extends Type implements IASN1Type {
 	@Override
 	/** {@inheritDoc} */
 	public String getTypename() {
-		return "octetstring";
+		return getTypetype().getName();
 	}
 
 	@Override
@@ -325,7 +325,7 @@ public final class OctetString_Type extends Type implements IASN1Type {
 	@Override
 	/** {@inheritDoc} */
 	public StringBuilder getProposalDescription(final StringBuilder builder) {
-		return builder.append("octetstring");
+		return builder.append(getTypetype().getName());
 	}
 
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Port_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Port_Type.java
index 17c11fb6164472b8bba7a4084d86199d63c4a538..a3c4ef50d73170c416478ffa9858eb45c386267b 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Port_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Port_Type.java
@@ -208,7 +208,7 @@ public final class Port_Type extends Type {
 	@Override
 	/** {@inheritDoc} */
 	public StringBuilder getProposalDescription(final StringBuilder builder) {
-		return builder.append("port");
+		return builder.append(getTypetype().getName());
 	}
 
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Property_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Property_Type.java
index 2a3bf3e340cbe8e9d1ac9661ab367ca7d9fda5c1..fa69b469e0ea00ec43a2f60679541f4201d5bdb4 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Property_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Property_Type.java
@@ -293,7 +293,7 @@ public final class Property_Type extends Type {
 
 	@Override
 	public String getTypename() {
-		return "property";
+		return getTypetype().getName();
 	}
 
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/RefdSpec_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/RefdSpec_Type.java
index 1c96f75ef57a3c24f1bc206b9e6edd04ba7ceb58..2455dc84ceb6896b726500f9982acdae7754da1e 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/RefdSpec_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/RefdSpec_Type.java
@@ -84,7 +84,7 @@ public class RefdSpec_Type extends Type implements IASN1Type, IReferencingType {
 	/** {@inheritDoc} */
 	public String getTypename() {
 		if (isErroneous || refdType == null || refdType == this) {
-			return "Referenced type";
+			return getTypetype().getName();
 		}
 
 		return refdType.getTypename();
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Referenced_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Referenced_Type.java
index 2850220491315ee6cb71543dcd2412b0fa4cd90d..7f82b2270600c61d2ac7884bdc2ecd89921bc9ac 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Referenced_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Referenced_Type.java
@@ -183,7 +183,7 @@ public final class Referenced_Type extends Type implements IASN1Type, IReferenci
 	/** {@inheritDoc} */
 	public String getTypename() {
 		if (isErroneous || referencedLast == null || referencedLast == this) {
-			return "Referenced type";
+			return getTypetype().getName();
 		}
 
 		return referencedLast.getTypename();//TODO maybe this should be the name of the current type.
@@ -712,7 +712,7 @@ public final class Referenced_Type extends Type implements IASN1Type, IReferenci
 				final TTCN3_Set_Seq_Choice_BaseType last = (TTCN3_Set_Seq_Choice_BaseType)referencedLast;
 				final int nofComponents = last.getNofComponents();
 				if (jsonAttribute.as_value && nofComponents == 1) {
-					getLocation().reportSemanticWarning(MessageFormat.format("Attribute 'metainfo for unbound' will be ignored, because the {0} is encoded without field names.", referencedLast.getTypetype() == Type_type.TYPE_TTCN3_SEQUENCE ? "record" : "set"));
+					getLocation().reportSemanticWarning(MessageFormat.format("Attribute 'metainfo for unbound' will be ignored, because the {0} is encoded without field names.", referencedLast.getTypetype().getName()));
 				} else {
 					for (int i = 0; i < nofComponents; i++) {
 						final Type componentType = last.getComponentByIndex(i).getType();
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Signature_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Signature_Type.java
index 1bb2b9b0af15d067a42da7fadc45ceb20c7846af..c20591926d739801be6673355fd278d4d4ea7512 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Signature_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Signature_Type.java
@@ -637,7 +637,7 @@ public final class Signature_Type extends Type {
 	@Override
 	/** {@inheritDoc} */
 	public StringBuilder getProposalDescription(final StringBuilder builder) {
-		return builder.append("signature");
+		return builder.append(getTypetype().getName());
 	}
 
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/TTCN3_Choice_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/TTCN3_Choice_Type.java
index 9513e23160ca682489b8e3ff1999c8b08ee6b2ee..21d60603d4f405fed8c80bc29e142eadd2b9c560 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/TTCN3_Choice_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/TTCN3_Choice_Type.java
@@ -221,12 +221,6 @@ public final class TTCN3_Choice_Type extends TTCN3_Set_Seq_Choice_BaseType imple
 		return getTypetype();
 	}
 
-	@Override
-	/** {@inheritDoc} */
-	public String getTypename() {
-		return getFullName();
-	}
-
 	@Override
 	/** {@inheritDoc} */
 	public void checkConstructorName(final String definitionName) {
@@ -634,7 +628,7 @@ public final class TTCN3_Choice_Type extends TTCN3_Set_Seq_Choice_BaseType imple
 	@Override
 	/** {@inheritDoc} */
 	public StringBuilder getProposalDescription(final StringBuilder builder) {
-		return builder.append("union");
+		return builder.append(getTypetype().getName());
 	}
 
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/TTCN3_Enumerated_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/TTCN3_Enumerated_Type.java
index d54ba914b76c074a338a4d4dcf6c30990fff323a..c40933051c7258622c5d42fa403c87aec593d380 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/TTCN3_Enumerated_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/TTCN3_Enumerated_Type.java
@@ -683,7 +683,7 @@ public final class TTCN3_Enumerated_Type extends Type implements ITypeWithCompon
 	@Override
 	/** {@inheritDoc} */
 	public StringBuilder getProposalDescription(final StringBuilder builder) {
-		return builder.append("enumerated");
+		return builder.append(getTypetype().getName());
 	}
 
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/TTCN3_Sequence_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/TTCN3_Sequence_Type.java
index cd1ecc0839991e843e58d731814ca58d4dca6415..8cc16543705a0740f12c697972bf3709dbf4c9f6 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/TTCN3_Sequence_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/TTCN3_Sequence_Type.java
@@ -381,12 +381,6 @@ public final class TTCN3_Sequence_Type extends TTCN3_Set_Seq_Choice_BaseType {
 		return getTypetype();
 	}
 
-	@Override
-	/** {@inheritDoc} */
-	public String getTypename() {
-		return getFullName();
-	}
-
 	@Override
 	/** {@inheritDoc} */
 	public void checkConstructorName(final String definitionName) {
@@ -964,7 +958,7 @@ public final class TTCN3_Sequence_Type extends TTCN3_Set_Seq_Choice_BaseType {
 	@Override
 	/** {@inheritDoc} */
 	public StringBuilder getProposalDescription(final StringBuilder builder) {
-		return builder.append("record");
+		return builder.append(getTypetype().getName());
 	}
 
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/TTCN3_Set_Seq_Choice_BaseType.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/TTCN3_Set_Seq_Choice_BaseType.java
index 0bb71f6f754a08ade79e5f206ee94d2a4d2f263d..4bf5955dd470ccfaa2c3a1de9bf4cb534e2d76c3 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/TTCN3_Set_Seq_Choice_BaseType.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/TTCN3_Set_Seq_Choice_BaseType.java
@@ -80,6 +80,12 @@ public abstract class TTCN3_Set_Seq_Choice_BaseType extends Type implements ITyp
 		compFieldMap.setFullNameParent(this);
 	}
 
+	@Override
+	/** {@inheritDoc} */
+	public String getTypename() {
+		return getFullName();
+	}
+
 	@Override
 	/** {@inheritDoc} */
 	public final void setMyScope(final Scope scope) {
@@ -642,7 +648,7 @@ public abstract class TTCN3_Set_Seq_Choice_BaseType extends Type implements ITyp
 			if (jsonAttribute.as_value && getNofComponents() == 1) {
 				getLocation().reportSemanticWarning(MessageFormat.format("Attribute 'metainfo for unbound' will be ignored, because "
 						+ "the {0} is encoded without field names.",
-						getTypetype() == Type_type.TYPE_TTCN3_SEQUENCE ? "record" : "set"));
+						getTypetype().getName()));
 			} else {
 				for (int i = 0; i < getNofComponents(); i++) {
 					final CompField cField = getComponentByIndex(i);
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/TTCN3_Set_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/TTCN3_Set_Type.java
index 1aa03d06970a28475073540db2b5f6d6481e1f88..c023d9419229046a003757c95272725330b48a12 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/TTCN3_Set_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/TTCN3_Set_Type.java
@@ -303,12 +303,6 @@ public final class TTCN3_Set_Type extends TTCN3_Set_Seq_Choice_BaseType implemen
 
 		return getTypetype();
 	}
-
-	@Override
-	/** {@inheritDoc} */
-	public String getTypename() {
-		return getFullName();
-	}
 	
 	@Override
 	/** {@inheritDoc} */
@@ -772,7 +766,7 @@ public final class TTCN3_Set_Type extends TTCN3_Set_Seq_Choice_BaseType implemen
 	@Override
 	/** {@inheritDoc} */
 	public StringBuilder getProposalDescription(final StringBuilder builder) {
-		return builder.append("set");
+		return builder.append(getTypetype().getName());
 	}
 
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/UniversalCharstring_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/UniversalCharstring_Type.java
index 45177b220391ce80b3f986b5054a1b92d1fde0a7..d7582b13fb5909cb4271025d955db32374a92172 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/UniversalCharstring_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/UniversalCharstring_Type.java
@@ -58,7 +58,7 @@ public final class UniversalCharstring_Type extends Type {
 	@Override
 	/** {@inheritDoc} */
 	public StringBuilder getProposalDescription(final StringBuilder builder) {
-		return builder.append("universalcharstring");
+		return builder.append(getTypetype().getName());
 	}
 
 	@Override
@@ -108,7 +108,7 @@ public final class UniversalCharstring_Type extends Type {
 	@Override
 	/** {@inheritDoc} */
 	public String getTypename() {
-		return "universal charstring";
+		return getTypetype().getName();
 	}
 
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Verdict_Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Verdict_Type.java
index ae6440d4b6a18e31c39f4e29eeeabf3af45218db..0bff4acad380c92156fe8b4e9c2a1a3fa94a3f4b 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Verdict_Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/TTCN3/types/Verdict_Type.java
@@ -69,7 +69,7 @@ public final class Verdict_Type extends Type {
 	@Override
 	/** {@inheritDoc} */
 	public String getTypename() {
-		return "verdicttype";
+		return getTypetype().getName();
 	}
 
 	@Override
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/AST/Type.java b/lsp/src/main/java/org/eclipse/titan/lsp/AST/Type.java
index 36a0c20cfe398d4781cb388fa7b4d63e8059fe38..156e35e23e95cb0301a08f2db72a3b3ea0c215a8 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/AST/Type.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/AST/Type.java
@@ -958,7 +958,7 @@ public abstract class Type extends Setting
 				final int nof_comps = ((TTCN3_Set_Seq_Choice_BaseType)last).getNofComponents();
 				if (jsonAttribute.as_value && nof_comps == 1) {
 					getLocation().reportSemanticWarning(MessageFormat.format("Attribute 'metainfo for unbound' will be ignored, because the {0} is encoded without field names.",
-							Type_type.TYPE_TTCN3_SEQUENCE == last.getTypetype() ? "record" : "set"));
+							last.getTypetype().getName()));
 				}
 				else {
 					for (int i = 0; i < nof_comps; i++) {
@@ -2436,13 +2436,10 @@ public abstract class Type extends Setting
 	public static String typeToSrcType(Type_type type) {
 		switch (type) {
 		case TYPE_INTEGER:
-			return "integer";
 		case TYPE_CHARSTRING:
-			return "charstring";
 		case TYPE_BITSTRING:
-			return "bitstring";
 		case TYPE_REAL:
-			return "float";
+			return type.getName();
 		default:
 			return GeneralConstants.EMPTY_STRING;
 		}
diff --git a/lsp/src/main/java/org/eclipse/titan/lsp/GeneralConstants.java b/lsp/src/main/java/org/eclipse/titan/lsp/GeneralConstants.java
index 7a5c03a89955b6a83131b77c0948737e8984e6e8..a1e742a62b5f94c022070885035a85bc14ef25b1 100755
--- a/lsp/src/main/java/org/eclipse/titan/lsp/GeneralConstants.java
+++ b/lsp/src/main/java/org/eclipse/titan/lsp/GeneralConstants.java
@@ -24,8 +24,6 @@ public final class GeneralConstants {
 	public static final boolean ETSI_BUILD = false;
 
 	// General strings
-	public static final String ADDRESS = "ADDRESS";
-	public static final String ANYTYPE = "anytype";
 	public static final String AT = "@";
 	public static final String CALL = "call";
 	public static final String DONE = "done";
@@ -38,13 +36,10 @@ public final class GeneralConstants {
 	public static final String SECOND = "second";
 	public static final String THIRD = "third";
 	public static final String TRUE = "true";
-	public static final String RECORD = "record";
-	public static final String SET = "set";
 	public static final String TEMPLATE = "template";
 	public static final String TITAN = "titan";
 	public static final String TITANIUM = "titanium";
 	public static final String TOSTRINGFUNCITON = "toString";
-	public static final String UNION = "union";
 	public static final String VALUE = "value";
 	public static final String VALUEORTEMPLATE = "value or template";