diff --git a/conformance_test/core_language_tests/negative_tests/05_basic_language_elements.script b/conformance_test/core_language_tests/negative_tests/05_basic_language_elements.script
index 396f175a6c8a4b25275c3d9d24be86f3c03a7d56..7f7fcb9eebdc16cc64a7dd17fc03964932f1c687 100644
--- a/conformance_test/core_language_tests/negative_tests/05_basic_language_elements.script
+++ b/conformance_test/core_language_tests/negative_tests/05_basic_language_elements.script
@@ -842,7 +842,7 @@ module NegSem_050401_top_level_001 {
 		if (match(p_rec, {1, 2})) {
 			setverdict(pass);
 		} else {
-			setverdict(fail, "p_rec value not matching ", p_rec, {1, 2});
+			setverdict(fail, "p_rec value not matching ", p_rec, R1:{1, 2});
 		}
 	}
 	
@@ -858,7 +858,7 @@ module NegSem_050401_top_level_001 {
 <END_MODULE>
 
 <RESULT COUNT 1>
-error: Type mismatch: a value of type `@NegSem_050401_top_level_001.R2' was expected instead of `@NegSem_050401_top_level_001.R1'
+error: Type mismatch: `@NegSem_050401_top_level_001.R2.option2' of type `integer' and `@NegSem_050401_top_level_001.R1.field2' of type `integer' are not compatible: The optionality of fields in record/SEQUENCE types must be the same
 <END_RESULT>
 
 <END_TC>
@@ -908,7 +908,7 @@ module NegSem_050401_top_level_002 {
         var R1 v_rec;
 		f(v_rec);
         if ( match(v_rec, {1, 2})) { setverdict(pass); } 
-        else { setverdict(fail, "p_rec value not matching ", v_rec, {1, 2}); }
+        else { setverdict(fail, "p_rec value not matching ", v_rec, R1:{1, 2}); }
 	}
 
 	control{
@@ -918,65 +918,7 @@ module NegSem_050401_top_level_002 {
 <END_MODULE>
 
 <RESULT COUNT 1>
-error: Type mismatch: Reference to a variable or value parameter of type `@NegSem_050401_top_level_002.R2' was expected instead of `@NegSem_050401_top_level_002.R1'
-<END_RESULT>
-
-<END_TC>
-:exmp
-
-*---------------------------------------------------------------------*
-:h3. NegSem_050401_top_level_003 negative test
-.*---------------------------------------------------------------------*
-:xmp tab=0.
-
-<TC - verify that error is generated if actual inout parameter doesn't adhere to strong typing rules >
-
-<COMPILE>
-
-<MODULE TTCN NegSem_050401_top_level_003 NegSem_050401_top_level_003.ttcn >
-/***************************************************
- ** @version  0.0.1
- ** @purpose  1:5.4.1, verify that error is generated if actual inout parameter doesn't adhere to strong typing rules
- ** @verdict  pass reject
- ***************************************************/
-
-// The following requirement is tested:
-// When parameters are passed by reference, strong typing is required. Both the actual and formal 
-// parameter shall be of the same type.
-
-module NegSem_050401_top_level_003 { 
-
-	type component GeneralComp {
-	}
-    
-    type record R1 {
-        integer field1,
-        integer field2
-    }
-    
-    type record R2 {
-        integer option1,
-        integer option2
-    }
-	
-	function f(inout R2 p_rec) {
-        if (match(p_rec, {1, 2})) { setverdict(pass); }
-        else { setverdict(fail, "p_rec value not matching ", p_rec, {1, 2}); }
-	}
-	
-	testcase TC_NegSem_050401_top_level_003() runs on GeneralComp {
-        var R1 v_rec := { field1 := 1, field2 := 2 };
-		f(v_rec); // R1 and R2 are compatible types, but not the same. Strong typing requires exactly the same types.
-	}
-
-	control{
-		execute(TC_NegSem_050401_top_level_003());
-	}
-}
-<END_MODULE>
-
-<RESULT COUNT 1>
-error: Type mismatch: Reference to a variable or value parameter of type `@NegSem_050401_top_level_003.R2' was expected instead of `@NegSem_050401_top_level_003.R1'
+error: Type mismatch: `@NegSem_050401_top_level_002.R2.option2' of type `integer' and `@NegSem_050401_top_level_002.R1.field2' of type `integer' are not compatible: The optionality of fields in record/SEQUENCE types must be the same
 <END_RESULT>
 
 <END_TC>
@@ -8272,7 +8214,7 @@ module NegSem_050402_actual_parameters_107 {
 <END_MODULE>
 
 <RESULT COUNT 1>
-error: Type mismatch: a value of type `@NegSem_050402_actual_parameters_107.R1' was expected instead of `@NegSem_050402_actual_parameters_107.R2'
+error: Type mismatch: `@NegSem_050402_actual_parameters_107.R1.field2' of type `integer' and `@NegSem_050402_actual_parameters_107.R2.elem2' of type `integer' are not compatible: The optionality of fields in record/SEQUENCE types must be the same
 <END_RESULT>
 
 <END_TC>
@@ -8332,7 +8274,7 @@ module NegSem_050402_actual_parameters_108 {
 <END_MODULE>
 
 <RESULT COUNT 1>
-error: Type mismatch: Reference to a variable or value parameter of type `@NegSem_050402_actual_parameters_108.R1' was expected instead of `@NegSem_050402_actual_parameters_108.R2'
+error: Type mismatch: `@NegSem_050402_actual_parameters_108.R1.field2' of type `integer' and `@NegSem_050402_actual_parameters_108.R2.elem2' of type `integer' are not compatible: The optionality of fields in record/SEQUENCE types must be the same
 <END_RESULT>
 
 <END_TC>
@@ -8389,7 +8331,7 @@ module NegSem_050402_actual_parameters_109 {
 <END_MODULE>
 
 <RESULT COUNT 1>
-error: Type mismatch: Reference to a variable or value parameter of type `@NegSem_050402_actual_parameters_109.R1' was expected instead of `@NegSem_050402_actual_parameters_109.R2'
+error: Type mismatch: `@NegSem_050402_actual_parameters_109.R1.field2' of type `integer' and `@NegSem_050402_actual_parameters_109.R2.elem2' of type `integer' are not compatible: The optionality of fields in record/SEQUENCE types must be the same
 <END_RESULT>
 
 <END_TC>
diff --git a/conformance_test/core_language_tests/negative_tests/06_types_and_values.script b/conformance_test/core_language_tests/negative_tests/06_types_and_values.script
index 444c6e40964aee0b8290e6be23686a49b72092c6..b5e5d83d3756c69863a13b13f87872e1c6afd596 100644
--- a/conformance_test/core_language_tests/negative_tests/06_types_and_values.script
+++ b/conformance_test/core_language_tests/negative_tests/06_types_and_values.script
@@ -3857,7 +3857,7 @@ module NegSem_060203_records_and_sets_of_single_types_015 {
 <END_MODULE>
 
 <RESULT COUNT 1>
-Dynamic test case error: Text encoder: Encoding an unbound integer value.
+Dynamic test case error: Performing a valueof or send operation on a non-specific integer template.
 <END_RESULT>
 
 <END_TC>
@@ -6988,7 +6988,7 @@ module NegSem_060301_non_structured_types_007 {
 <END_MODULE>
 
 <RESULT COUNT 1>
-error: Type mismatch: a value of type `integer\[1\]' was expected instead of `integer\[2\]'
+error: Type mismatch: `integer\[1\]' and `integer\[2\]' are not compatible: Array types should have the same dimension
 <END_RESULT>
 
 <END_TC>
@@ -7033,7 +7033,7 @@ module NegSem_060301_non_structured_types_008 {
 <END_MODULE>
 
 <RESULT COUNT 1>
-error: Type mismatch: a value of type `float\[1\]' was expected instead of `float\[2\]'
+error: Type mismatch: `float\[1\]' and `float\[2\]' are not compatible: Array types should have the same dimension
 <END_RESULT>
 
 <END_TC>
@@ -7135,64 +7135,7 @@ module NegSem_060302_structured_types_002 {
 <END_MODULE>
 
 <RESULT COUNT 1>
-error: Type mismatch: a value of type `@NegSem_060302_structured_types_002.RecordType2' was expected instead of `@NegSem_060302_structured_types_002.RecordType1'
-<END_RESULT>
-
-<END_TC>
-:exmp
-
-*---------------------------------------------------------------------*
-:h3. NegSem_060302_structured_types_003 negative test
-.*---------------------------------------------------------------------*
-:xmp tab=0.
-
-<TC - Ensure that the IUT rejects assignments from incompatible types or type ranges  >
-
-<COMPILE>
-
-<MODULE TTCN NegSem_060302_structured_types_003 NegSem_060302_structured_types_003.ttcn >
-/***************************************************
- ** @version  0.0.1
- ** @purpose  1:6.3.2, Ensure that the IUT rejects assignments from incompatible types or type ranges 
- ** @verdict  pass reject
- ***************************************************/
-
-module NegSem_060302_structured_types_003 { 
-
-	type record RecordType { 
- 	 integer  a(0..10) optional, 
- 	 integer  b(0..10) optional, 
- 	 boolean  c 
-	} 
-	type record ModifiedRecord { 
- 	 integer  e 	   optional, 
- 	 integer  f(0..5)  optional, 
- 	 boolean  g 
-	} 
-
-
-	type component GeneralComp {	    	    
-	}	
-
-	testcase TC_NegSem_060302_structured_types_003() runs on GeneralComp {
-
-		var ModifiedRecord v_rec1:={e:=15,f:=4,g:=false};
-		var RecordType v_rec2;
-		
-		v_rec2:=v_rec1;		//subtyping range mismatch
-		setverdict(pass);
-
-	}
-
-	control{
-		execute(TC_NegSem_060302_structured_types_003());
-	}
-
-}
-<END_MODULE>
-
-<RESULT COUNT 1>
-error: Type mismatch: a value of type `@NegSem_060302_structured_types_003.RecordType' was expected instead of `@NegSem_060302_structured_types_003.ModifiedRecord'
+error: Type mismatch: `@NegSem_060302_structured_types_002.RecordType2.f' of type `integer' and `@NegSem_060302_structured_types_002.RecordType1.b' of type `integer' are not compatible: The optionality of fields in record/SEQUENCE types must be the same
 <END_RESULT>
 
 <END_TC>
@@ -7248,123 +7191,7 @@ module NegSem_060302_structured_types_004 {
 <END_MODULE>
 
 <RESULT COUNT 1>
-error: Type mismatch: a value of type `@NegSem_060302_structured_types_004.SetType' was expected instead of `@NegSem_060302_structured_types_004.ModifiedSet'
-<END_RESULT>
-
-<END_TC>
-:exmp
-
-*---------------------------------------------------------------------*
-:h3. NegSem_060302_structured_types_005 negative test
-.*---------------------------------------------------------------------*
-:xmp tab=0.
-
-<TC - Ensure that the IUT rejects assignments from incompatible types or type ranges >
-
-<COMPILE>
-
-<MODULE TTCN NegSem_060302_structured_types_005 NegSem_060302_structured_types_005.ttcn >
-/***************************************************
- ** @version  0.0.1
- ** @purpose  1:6.3.2, Ensure that the IUT rejects assignments from incompatible types or type ranges 
- ** @verdict  pass reject
- ***************************************************/
-
-module NegSem_060302_structured_types_005 { 
-
-	type set SetType { 
- 	 integer  a(0..10) optional, 
- 	 integer  b(0..10) optional, 
- 	 boolean  c 
-	} 
-	type set ModifiedSet { 
- 	 integer  e 	   optional, 
- 	 integer  f(0..5)  optional, 
- 	 boolean  g 
-	} 
-
-	type component GeneralComp {	    	    
-	}	
-
-	testcase TC_NegSem_060302_structured_types_005() runs on GeneralComp {
-
-		var ModifiedSet v_set1:={f:=4,e:=15,g:=false};
-		var SetType v_set2;
-		
-		v_set2:=v_set1;	//subtyping range mismatch
-		setverdict(pass);
-
-	}
-
-	control{
-		execute(TC_NegSem_060302_structured_types_005());
-	}
-
-}
-<END_MODULE>
-
-<RESULT COUNT 1>
-error: Type mismatch: a value of type `@NegSem_060302_structured_types_005.SetType' was expected instead of `@NegSem_060302_structured_types_005.ModifiedSet'
-<END_RESULT>
-
-<END_TC>
-:exmp
-
-*---------------------------------------------------------------------*
-:h3. NegSem_060302_structured_types_008 negative test
-.*---------------------------------------------------------------------*
-:xmp tab=0.
-
-<TC - Ensure that the IUT rejects assignments from incompatible types or type ranges >
-
-<COMPILE>
-
-<MODULE TTCN NegSem_060302_structured_types_008 NegSem_060302_structured_types_008.ttcn >
-/***************************************************
- ** @version  0.0.1
- ** @purpose  1:6.3.2, Ensure that the IUT rejects assignments from incompatible types or type ranges 
- ** @verdict  pass reject
- ***************************************************/
-
-module NegSem_060302_structured_types_008 { 
-
-	type enumerated EnumeratedType {e_black, e_white};
-	type EnumeratedType EnumeratedSynonym;
-
-	type union UnionType { 
- 	 integer  a(0..10), 
- 	 EnumeratedType  b, 
- 	 boolean  c 
-	} 
-
-	type union ModifiedUnion { 
- 	 integer  a, 
- 	 boolean  c, 
- 	 EnumeratedSynonym  b 
-	}
-
-	type component GeneralComp {	    	    
-	}	
-
-	testcase TC_NegSem_060302_structured_types_008() runs on GeneralComp {
-
-		var ModifiedUnion v_union1:={a:=12};
-		var UnionType v_union2;
-		
-		v_union2:=v_union1;	//subtyping range mismatch
-		setverdict(pass);
-
-	}
-
-	control{
-		execute(TC_NegSem_060302_structured_types_008());
-	}
-
-}
-<END_MODULE>
-
-<RESULT COUNT 1>
-error: Type mismatch: a value of type `@NegSem_060302_structured_types_008.UnionType' was expected instead of `@NegSem_060302_structured_types_008.ModifiedUnion'
+error: Type mismatch: `@NegSem_060302_structured_types_004.SetType.b' of type `integer' and `@NegSem_060302_structured_types_004.ModifiedSet.f' of type `integer' are not compatible: The optionality of fields in set/SET types must be the same
 <END_RESULT>
 
 <END_TC>
@@ -7378,6 +7205,7 @@ error: Type mismatch: a value of type `@NegSem_060302_structured_types_008.Union
 <TC - Ensure that the IUT rejects assignments from incompatible types or type ranges >
 
 <COMPILE>
+<EXECUTE_PARALLEL>
 
 <MODULE TTCN NegSem_060302_structured_types_009 NegSem_060302_structured_types_009.ttcn >
 /***************************************************
@@ -7422,7 +7250,7 @@ module NegSem_060302_structured_types_009 {
 <END_MODULE>
 
 <RESULT COUNT 1>
-error: Type mismatch: a value of type `@NegSem_060302_structured_types_009.UnionType' was expected instead of `@NegSem_060302_structured_types_009.ModifiedUnion'
+Dynamic test case error: Values or templates of types `@NegSem_060302_structured_types_009.ModifiedUnion' and `@NegSem_060302_structured_types_009.UnionType' are not compatible at run-time
 <END_RESULT>
 
 <END_TC>
@@ -7482,7 +7310,7 @@ control{
 <END_MODULE>
 
 <RESULT COUNT 1>
-error: Type mismatch: a value of type `@NegSem_060302_structured_types_010.UnionType' was expected instead of `@NegSem_060302_structured_types_010.ModifiedUnion'
+error: Type mismatch: `@NegSem_060302_structured_types_010.UnionType' and `@NegSem_060302_structured_types_010.ModifiedUnion' are not compatible: No compatible union/CHOICE/anytype field found
 <END_RESULT>
 
 <END_TC>
@@ -7546,279 +7374,16 @@ module NegSem_060302_structured_types_011_importB {
   type integer F; 
   type anytype Atype;
 } 
-<END_MODULE>
-
-<RESULT COUNT 1>
-error: Type mismatch: a value of type `@NegSem_060302_structured_types_011_importA.anytype' was expected instead of `@NegSem_060302_structured_types_011_importB.anytype'
-<END_RESULT>
-<RESULT COUNT 1>
-error: The operands of operation `==' should be of compatible types
-<END_RESULT>
-
-<END_TC>
-:exmp
-
-*---------------------------------------------------------------------*
-:h3. NegSem_060302_structured_types_012 negative test
-.*---------------------------------------------------------------------*
-:xmp tab=0.
-
-<TC - Ensure that the IUT rejects assignments having mismatch between undefined and omitted elements >
-
-<COMPILE>
-
-<MODULE TTCN NegSem_060302_structured_types_012 NegSem_060302_structured_types_012.ttcn >
-/***************************************************
- ** @version  0.0.1
- ** @purpose  1:6.3.2, Ensure that the IUT rejects assignments having mismatch between undefined and omitted elements 
- ** @verdict  pass reject
- ***************************************************/
-
-module NegSem_060302_structured_types_012 {
-
-    type record RecordType {
-        integer  a,
-        integer  b optional
-    }
-
-    type set SetType {
-        integer  a,
-        integer  b optional
-    }
-
-    type record length (1..2) of integer ShortIntegerList;
-    type record of integer IntegerList;
-
-    type set length (1..2) of integer ShortUnorderedIntegerList;
-    type set of integer UnorderedIntegerList;
-
-
-    type component GeneralComp {
-    }
-
-    testcase TC_NegSem_060302_structured_types_012() runs on GeneralComp {
-
-	
-        var IntegerList v_list1:={1,-};
-        var ShortIntegerList v_list2;
-        var RecordType v_rec1;
-        var UnorderedIntegerList v_ulist1:={1,-};
-        var ShortUnorderedIntegerList v_ulist2;
-        var SetType v_set1;
-
-        var integer v_matcher[2] := {1,-};
-	
-        var boolean v_check1;
-    
-        v_list2:=v_list1;
-        v_rec1:=v_list2;
-        v_ulist2:=v_ulist1;
-        v_set1:=v_ulist2;
-
-        v_check1 :=  match(v_rec1, v_matcher);   //mismatch between undefined and omitted elements
-
-    }
-
-    control{
-        execute(TC_NegSem_060302_structured_types_012());
-    }
-
-}
-<END_MODULE>
-
-<RESULT COUNT 1>
-error: Type mismatch: a value of type `@NegSem_060302_structured_types_012.RecordType' was expected instead of `@NegSem_060302_structured_types_012.ShortIntegerList'
-<END_RESULT>
-<RESULT COUNT 1>
-error: Type mismatch: a value of type `@NegSem_060302_structured_types_012.SetType' was expected instead of `@NegSem_060302_structured_types_012.ShortUnorderedIntegerList'
-<END_RESULT>
-<RESULT COUNT 1>
-error: Type mismatch: a value of type `integer\[2\]' was expected instead of `@NegSem_060302_structured_types_012.RecordType'
-<END_RESULT>
-
-<END_TC>
-:exmp
-
-*---------------------------------------------------------------------*
-:h3. NegSem_060302_structured_types_013 negative test
-.*---------------------------------------------------------------------*
-:xmp tab=0.
-
-<TC - Ensure that the IUT rejects assignments having mismatch between undefined and omitted elements  >
-
-<COMPILE>
-
-<MODULE TTCN NegSem_060302_structured_types_013 NegSem_060302_structured_types_013.ttcn >
-/***************************************************
- ** @version  0.0.1
- ** @purpose  1:6.3.2, Ensure that the IUT rejects assignments having mismatch between undefined and omitted elements 
- ** @verdict  pass reject
- ***************************************************/
-
-module NegSem_060302_structured_types_013 {
-
-    type record RecordType {
-        integer  a,
-        integer  b optional
-    }
-
-    type set SetType {
-        integer  a,
-        integer  b optional
-    }
-
-    type record length (1..2) of integer ShortIntegerList;
-    type record of integer IntegerList;
-
-    type set length (1..2) of integer ShortUnorderedIntegerList;
-    type set of integer UnorderedIntegerList;
-
-
-    type component GeneralComp {
-    }
-
-    testcase TC_NegSem_060302_structured_types_013() runs on GeneralComp {
-
-        var IntegerList v_list1:={1,-};
-        var ShortIntegerList v_list2;
-        var RecordType v_rec1;
-        var UnorderedIntegerList v_ulist1:={1,-};
-        var ShortUnorderedIntegerList v_ulist2;
-        var SetType v_set1;
-
-        var integer v_matcher[2] := {1,-};
-	
-        var boolean v_check1;
-    
-        v_list2:=v_list1;
-        v_rec1:=v_list2;
-        v_ulist2:=v_ulist1;
-        v_set1:=v_ulist2;
-
-        v_check1 := match(v_set1,{ a:= 1, b:= -});   //mismatch between undefined and omitted elements
-
-    }
-
-    control{
-        execute(TC_NegSem_060302_structured_types_013());
-    }
-
+with {
+	extension "anytype F"
 }
 <END_MODULE>
 
 <RESULT COUNT 1>
-error: Type mismatch: a value of type `@NegSem_060302_structured_types_013.RecordType' was expected instead of `@NegSem_060302_structured_types_013.ShortIntegerList'
+error: Type mismatch: `@NegSem_060302_structured_types_011_importA.anytype' and `@NegSem_060302_structured_types_011_importB.anytype' are not compatible: No compatible union/CHOICE/anytype field found
 <END_RESULT>
 <RESULT COUNT 1>
-error: Type mismatch: a value of type `@NegSem_060302_structured_types_013.SetType' was expected instead of `@NegSem_060302_structured_types_013.ShortUnorderedIntegerList'
-<END_RESULT>
-
-<END_TC>
-:exmp
-
-*---------------------------------------------------------------------*
-:h3. NegSem_060302_structured_types_014 negative test
-.*---------------------------------------------------------------------*
-:xmp tab=0.
-
-<TC - Ensure that the IUT rejects assignments between incompatible structures >
-
-<COMPILE>
-
-<MODULE TTCN NegSem_060302_structured_types_014 NegSem_060302_structured_types_014.ttcn >
-/***************************************************
- ** @version  0.0.1
- ** @purpose  1:6.3.2, Ensure that the IUT rejects assignments between incompatible structures 
- ** @verdict  pass reject
- ***************************************************/
-
-module NegSem_060302_structured_types_014 {
-
-    type record RecordType {
-        integer  a,
-        integer  b optional,
-        integer  c
-    }
-
-    type record of integer IntegerList;
-
-
-    type component GeneralComp {
-    }
-
-    testcase TC_NegSem_060302_structured_types_014() runs on GeneralComp {
-        
-		var RecordType v_record := { 1, omit, 2};
-		var IntegerList v_IntList;
-		var integer v_array[2];
-    
-        v_array:=v_record;  //assignment between incompatible types
-
-    }
-
-    control{
-        execute(TC_NegSem_060302_structured_types_014());
-    }
-
-}
-<END_MODULE>
-
-<RESULT COUNT 1>
-error: Type mismatch: a value of type `integer\[2\]' was expected instead of `@NegSem_060302_structured_types_014.RecordType'
-<END_RESULT>
-
-<END_TC>
-:exmp
-
-*---------------------------------------------------------------------*
-:h3. NegSem_060302_structured_types_015 negative test
-.*---------------------------------------------------------------------*
-:xmp tab=0.
-
-<TC - Ensure that the IUT rejects assignments between incompatible structures >
-
-<COMPILE>
-
-<MODULE TTCN NegSem_060302_structured_types_015 NegSem_060302_structured_types_015.ttcn >
-/***************************************************
- ** @version  0.0.1
- ** @purpose  1:6.3.2, Ensure that the IUT rejects assignments between incompatible structures 
- ** @verdict  pass reject
- ***************************************************/
-
-module NegSem_060302_structured_types_015 {
-
-    type record RecordType {
-        integer  a,
-        integer  b optional,
-        integer  c
-    }
-
-    type record of integer IntegerList;
-
-
-    type component GeneralComp {
-    }
-
-    testcase TC_NegSem_060302_structured_types_015() runs on GeneralComp {
-        
-		var RecordType v_record := { 1, omit, 2};
-		var IntegerList v_IntList;
-		var integer v_array[2];
-    
-        v_IntList:=v_record;  //assignment between incompatible types
-
-    }
-
-    control{
-        execute(TC_NegSem_060302_structured_types_015());
-    }
-
-}
-<END_MODULE>
-
-<RESULT COUNT 1>
-error: Type mismatch: a value of type `@NegSem_060302_structured_types_015.IntegerList' was expected instead of `@NegSem_060302_structured_types_015.RecordType'
+error: Type mismatch: `@NegSem_060302_structured_types_011_importA.anytype' and `integer' are not compatible: Type anytype is compatible only with other anytype types
 <END_RESULT>
 
 <END_TC>
@@ -7872,61 +7437,7 @@ module NegSem_060302_structured_types_016 {
 <END_MODULE>
 
 <RESULT COUNT 1>
-error: Type mismatch: a value of type `integer\[2\]' was expected instead of `@NegSem_060302_structured_types_016.SetType'
-<END_RESULT>
-
-<END_TC>
-:exmp
-
-*---------------------------------------------------------------------*
-:h3. NegSem_060302_structured_types_017 negative test
-.*---------------------------------------------------------------------*
-:xmp tab=0.
-
-<TC - Ensure that the IUT rejects assignments between incompatible structures >
-
-<COMPILE>
-
-<MODULE TTCN NegSem_060302_structured_types_017 NegSem_060302_structured_types_017.ttcn >
-/***************************************************
- ** @version  0.0.1
- ** @purpose  1:6.3.2, Ensure that the IUT rejects assignments between incompatible structures 
- ** @verdict  pass reject
- ***************************************************/
-
-module NegSem_060302_structured_types_017 {
-
-    type set SetType {
-        integer  a,
-        integer  b optional,
-        integer  c
-    }
-
-    type set of integer IntegerList;
-
-
-    type component GeneralComp {
-    }
-
-    testcase TC_NegSem_060302_structured_types_017() runs on GeneralComp {
-        
-		var SetType v_set := { a:= 1, b:= omit, c:= 2}; // value list not work with sets
-		var IntegerList v_IntList;
-		var integer v_array[2];
-    
-        v_IntList:=v_set;  //assignment between incompatible types
-
-    }
-
-    control{
-        execute(TC_NegSem_060302_structured_types_017());
-    }
-
-}
-<END_MODULE>
-
-<RESULT COUNT 1>
-error: Type mismatch: a value of type `@NegSem_060302_structured_types_017.IntegerList' was expected instead of `@NegSem_060302_structured_types_017.SetType'
+error: Type mismatch: `integer\[2\]' and `@NegSem_060302_structured_types_016.SetType' are not compatible: set/SET and set of/SET OF types are compatible only with other set/SET set of/SET OF types
 <END_RESULT>
 
 <END_TC>
@@ -7976,92 +7487,7 @@ module NegSem_060302_structured_types_018 {
 <END_MODULE>
 
 <RESULT COUNT 1>
-error: Type mismatch: a value of type `integer\[3\]' was expected instead of `@NegSem_060302_structured_types_018.SetType'
-<END_RESULT>
-
-<END_TC>
-:exmp
-
-*---------------------------------------------------------------------*
-:h3. NegSem_060302_structured_types_019 negative test
-.*---------------------------------------------------------------------*
-:xmp tab=0.
-
-<TC - Ensure that the IUT rejects assignments between incompatible structures >
-
-<COMPILE>
-
-<MODULE TTCN NegSem_060302_structured_types_019 NegSem_060302_structured_types_019.ttcn >
-/***************************************************
- ** @version  0.0.1
- ** @purpose  1:6.3.2, Ensure that the IUT correctly handles assignments from structures having compatible types and lengths 
- ** @verdict  pass reject
- ***************************************************/
-
-module NegSem_060302_structured_types_019 {
-
-    type record RecordType {
-        integer  a,
-        integer  b optional
-    }
-
-    type set SetType {
-        integer  a,
-        integer  b optional
-    }
-
-    type record length (1..2) of integer ShortIntegerList;
-    type record of integer IntegerList;
-
-    type set length (1..2) of integer ShortUnorderedIntegerList;
-    type set of integer UnorderedIntegerList;
-
-
-    type component GeneralComp {
-    }
-
-    testcase TC_NegSem_060302_structured_types_019() runs on GeneralComp {
-	
-        var IntegerList v_list1:={1,-};
-        var ShortIntegerList v_list2;
-        var RecordType v_rec1;
-        var UnorderedIntegerList v_ulist1:={1,-};
-        var ShortUnorderedIntegerList v_ulist2;
-        var SetType v_set1;
-
-        var integer v_matcher[2] := {1,-};
-	
-        var boolean v_check1;
-    
-        v_list2:=v_list1;
-        v_rec1:=v_list2;	//incompatible assignment according to TTCN-3:2012
-        v_ulist2:=v_ulist1;
-        v_set1:=v_ulist2;	//incompatible assignment according to TTCN-3:2012
-
-        v_check1 := (v_list2[0]==1);
-
-	
-        if ( v_check1 )
-        {
-            setverdict(pass);
-        }
-        else {
-            setverdict(fail);
-        }
-    }
-
-    control{
-        execute(TC_NegSem_060302_structured_types_019());
-    }
-
-}
-<END_MODULE>
-
-<RESULT COUNT 1>
-error: Type mismatch: a value of type `@NegSem_060302_structured_types_019.RecordType' was expected instead of `@NegSem_060302_structured_types_019.ShortIntegerList'
-<END_RESULT>
-<RESULT COUNT 1>
-error: Type mismatch: a value of type `@NegSem_060302_structured_types_019.SetType' was expected instead of `@NegSem_060302_structured_types_019.ShortUnorderedIntegerList'
+error: Type mismatch: `integer\[3\]' and `@NegSem_060302_structured_types_018.SetType' are not compatible: set/SET and set of/SET OF types are compatible only with other set/SET set of/SET OF types
 <END_RESULT>
 
 <END_TC>
diff --git a/conformance_test/core_language_tests/negative_tests/07-14_folder.script b/conformance_test/core_language_tests/negative_tests/07-14_folder.script
index 1e59ff9fe51619d0f743d79d1755f51d0b37cd93..78466105ce9ac4b54875a97008d022ce8d75b49b 100644
--- a/conformance_test/core_language_tests/negative_tests/07-14_folder.script
+++ b/conformance_test/core_language_tests/negative_tests/07-14_folder.script
@@ -2173,58 +2173,6 @@ error: at or before token `\?': syntax error, unexpected '\?'
 <END_TC>
 :exmp
 
-*---------------------------------------------------------------------*
-:h3. NegSem_1101_ValueVars_002 negative test
-.*---------------------------------------------------------------------*
-:xmp tab=0.
-
-<TC - Ensure that partially initialized variables are evaluated correctly. >
-
-<COMPILE>
-<EXECUTE_PARALLEL>
-
-<MODULE TTCN NegSem_1101_ValueVars_002 NegSem_1101_ValueVars_002.ttcn >
-/*****************************************************************
- ** @version  0.0.1
- ** @purpose  1:11.1, Ensure that partially initialized variables are evaluated correctly.
- ** @verdict  pass reject
- *****************************************************************/
-
-module NegSem_1101_ValueVars_002 {
-
-	type component GeneralComp {	    	    
-	}
-
-	type set IntegerSet {
-		 integer a1 optional,
-		 integer a2 optional,
-		 integer a3 optional
-	};
-
-	testcase TC_NegSem_1101_ValueVars_002() runs on GeneralComp {
-		var IntegerSet v_set := {a1:=1,a2:=omit};
-
-		if ( v_set == {a1:=1,a2:=omit,a3:=3} ) {	//attempted use of partially initialized variable
-			setverdict(pass);
-		} else {
-			setverdict(fail);
-		}
-	}
-
-	control{
-		execute(TC_NegSem_1101_ValueVars_002());
-	}
-
-}
-<END_MODULE>
-
-<RESULT COUNT 1>
-Dynamic test case error: The left operand of comparison is an unbound optional value.
-<END_RESULT>
-
-<END_TC>
-:exmp
-
 *---------------------------------------------------------------------*
 :h3. NegSyn_1101_ValueVars_001 negative test
 .*---------------------------------------------------------------------*
diff --git a/conformance_test/core_language_tests/negative_tests/15_templates.script b/conformance_test/core_language_tests/negative_tests/15_templates.script
index 0b98d15806ed42e68bb199edc0aa1498c702faa1..49e46e37c76a98cdc6a428b31420c9be1bf76d4a 100644
--- a/conformance_test/core_language_tests/negative_tests/15_templates.script
+++ b/conformance_test/core_language_tests/negative_tests/15_templates.script
@@ -860,7 +860,7 @@ module NegSem_150602_ReferencingRecordAndSetFields_001 {
 <END_MODULE>
 
 <RESULT COUNT 1>
-Dynamic test case error: Copying an uninitialized/unsupported template of type @NegSem_150602_ReferencingRecordAndSetFields_001.MyRecordTwo.
+Dynamic test case error: Copying an uninitialized/unsupported record/set template.
 <END_RESULT>
 
 <END_TC>
@@ -938,7 +938,7 @@ module NegSem_150602_ReferencingRecordAndSetFields_003 {
 <END_MODULE>
 
 <RESULT COUNT 1>
-Dynamic test case error: Copying an uninitialized/unsupported template of type @NegSem_150602_ReferencingRecordAndSetFields_003.MyRecordTwo.
+Dynamic test case error: Copying an uninitialized/unsupported record/set template.
 <END_RESULT>
 
 <END_TC>
@@ -949,7 +949,7 @@ Dynamic test case error: Copying an uninitialized/unsupported template of type @
 .*---------------------------------------------------------------------*
 :xmp tab=0.
 
-<TC - Ensure that complement lists on the right-hand side of an assignment are not acceped. >
+<TC - Ensure that complement lists on the right-hand side of an assignment are not accepted. >
 
 <COMPILE>
 <EXECUTE_PARALLEL>
@@ -957,7 +957,7 @@ Dynamic test case error: Copying an uninitialized/unsupported template of type @
 <MODULE TTCN NegSem_150602_ReferencingRecordAndSetFields_004 NegSem_150602_ReferencingRecordAndSetFields_004.ttcn >
 /*****************************************************************
  ** @version  0.0.1
- ** @purpose  1:15.6.2, Ensure that complement lists on the right-hand side of an assignment are not acceped. 
+ ** @purpose  1:15.6.2, Ensure that complement lists on the right-hand side of an assignment are not accepted. 
  ** @verdict  pass reject
  *****************************************************************/
 
@@ -1015,7 +1015,7 @@ module NegSem_150602_ReferencingRecordAndSetFields_004 {
 <END_MODULE>
 
 <RESULT COUNT 1>
-Dynamic test case error: Copying an uninitialized/unsupported template of type @NegSem_150602_ReferencingRecordAndSetFields_004.MyRecordTwo.
+Dynamic test case error: Copying an uninitialized/unsupported record/set template.
 <END_RESULT>
 
 <END_TC>
diff --git a/conformance_test/core_language_tests/negative_tests/16-20_folders.script b/conformance_test/core_language_tests/negative_tests/16-20_folders.script
index 9fe703ddb1c970a07283adddab448b9b0b0b7f2a..fa4a72937d0e78952e11411aaa68f148b7c9601f 100644
--- a/conformance_test/core_language_tests/negative_tests/16-20_folders.script
+++ b/conformance_test/core_language_tests/negative_tests/16-20_folders.script
@@ -1529,7 +1529,7 @@ module NegSem_160102_predefined_functions_034 {
 <END_MODULE>
 
 <RESULT COUNT 1>
-Dynamic test case error: While RAW-encoding type '@NegSem_160102_predefined_functions_034.R': Encoding an unbound value.
+Dynamic test case error: Performing a valueof or send operation on a non-specific integer template.
 <END_RESULT>
 
 <END_TC>
diff --git a/conformance_test/core_language_tests/negative_tests/22_communication_operations.script b/conformance_test/core_language_tests/negative_tests/22_communication_operations.script
index a828c4b688ef8985631c64dc652bba94eaac641d..a9ef1a9ca368dbd0f49532fc93f052375b419fd9 100644
--- a/conformance_test/core_language_tests/negative_tests/22_communication_operations.script
+++ b/conformance_test/core_language_tests/negative_tests/22_communication_operations.script
@@ -569,7 +569,7 @@ module NegSem_220201_SendOperation_006 {
 <END_MODULE>
 
 <RESULT COUNT 1>
-Dynamic test case error: Text encoder: Encoding an unbound integer value.
+Dynamic test case error: Performing a valueof or send operation on a non-specific integer template.
 <END_RESULT>
 
 <END_TC>
@@ -935,7 +935,71 @@ module NegSem_220202_ReceiveOperation_003 {
 <END_MODULE>
 
 <RESULT COUNT 1>
-error: Type mismatch in value redirect: A variable of type `integer' was expected instead of `charstring'
+error: Type mismatch in value redirect: A variable of type `integer' or of a compatible type was expected instead of `charstring'
+<END_RESULT>
+
+<END_TC>
+:exmp
+
+*---------------------------------------------------------------------*
+:h3. NegSem_220202_ReceiveOperation_004 negative test
+.*---------------------------------------------------------------------*
+:xmp tab=0.
+
+<TC - type mismatch in redirect assignment of message fields >
+
+<COMPILE>
+
+<MODULE TTCN NegSem_220202_ReceiveOperation_004 NegSem_220202_ReceiveOperation_004.ttcn >
+/******************************************************************************
+ ** @version  0.0.1
+ ** @purpose  1:22.2.2, type mismatch in redirect assignment of message fields
+ ** @verdict  pass reject
+ *****************************************************************/
+
+// The following requirements are tested:
+// The variable or formal parameter shall be type compatible with the type on the 
+// right hand side of the assignment symbol.
+
+module NegSem_220202_ReceiveOperation_004 {
+	type record R
+    {
+        integer field1[2],
+        charstring field2
+    }
+    
+	type port P message {
+		inout R;
+	} with {extension "internal"}
+	
+    type component GeneralComp 
+	{
+		port P p;
+	}
+	
+    testcase TC_NegSem_220202_ReceiveOperation_004() runs on GeneralComp {
+        var integer v_int;
+        var bitstring v_str;
+
+		connect(self:p, self:p);
+
+        p.send(R:{ field1 := { 1, 2 }, field2 := "abc" });
+        alt {
+            [] p.receive(R:?) -> value ( v_int := field1[1], v_str := field2) { 
+                setverdict (pass);
+            }
+            [] p.receive { setverdict(pass); }
+        }
+    }
+
+    control {
+        execute(TC_NegSem_220202_ReceiveOperation_004(), 5.0);
+    }
+}
+<END_MODULE>
+
+<RESULT COUNT 1>
+error: Type mismatch in value redirect: A variable of type `charstring' or of a compatible type was expected instead of `bitstring'
 <END_RESULT>
 
 <END_TC>
@@ -1805,7 +1869,70 @@ module NegSem_220203_TriggerOperation_003 {
 <END_MODULE>
 
 <RESULT COUNT 1>
-error: Type mismatch in value redirect: A variable of type `integer' was expected instead of `charstring'
+error: Type mismatch in value redirect: A variable of type `integer' or of a compatible type was expected instead of `charstring'
+<END_RESULT>
+
+
+<END_TC>
+:exmp
+
+*---------------------------------------------------------------------*
+:h3. NegSem_220203_TriggerOperation_004 negative test
+.*---------------------------------------------------------------------*
+:xmp tab=0.
+
+<TC - type mismatch in redirect assignment of message fields >
+
+<COMPILE>
+
+<MODULE TTCN NegSem_220203_TriggerOperation_004 NegSem_220203_TriggerOperation_004.ttcn >
+/******************************************************************************
+ ** @version  0.0.1
+ ** @purpose  1:22.2.3, type mismatch in redirect assignment of message fields
+ ** @verdict  pass reject
+ *****************************************************************/
+
+// The following requirements are tested:
+// Rules in clause 22.2.2 shall apply.
+// The variable or formal parameter shall be type compatible with the type on the 
+// right hand side of the assignment symbol.
+
+module NegSem_220203_TriggerOperation_004 {
+	type record R {
+        integer field1[2],
+        charstring field2
+    }
+    
+	type port P message {
+		inout R;
+	} with {extension "internal"}
+	
+    type component GeneralComp {
+		port P p;
+	}
+	
+    testcase TC_NegSem_220203_TriggerOperation_004() runs on GeneralComp {
+        var integer v_int;
+        var bitstring v_str;
+
+		connect(self:p, self:p);
+        p.send(R:{ field1 := { 1, 2 }, field2 := "abc" });
+
+        alt {
+            [] p.trigger(R:?) -> value ( v_int := field1[1], v_str := field2) { 
+                setverdict (pass);
+            }
+        }
+    }
+
+    control {
+        execute(TC_NegSem_220203_TriggerOperation_004(), 5.0);
+    }
+}
+<END_MODULE>
+
+<RESULT COUNT 1>
+error: Type mismatch in value redirect: A variable of type `charstring' or of a compatible type was expected instead of `bitstring'
 <END_RESULT>
 
 
diff --git a/conformance_test/core_language_tests/negative_tests/SAtester.pl b/conformance_test/core_language_tests/negative_tests/SAtester.pl
index d219a90a0ea70353a3a640fa9dba4e435357f16f..647762e9f3dabd8e3d4e7c0607f3015015ec5a54 100755
--- a/conformance_test/core_language_tests/negative_tests/SAtester.pl
+++ b/conformance_test/core_language_tests/negative_tests/SAtester.pl
@@ -41,7 +41,7 @@ my $sa_printHelp_cmd = 0;
 # Whether to show detailed info or not
 my $sa_printHelp_doc = 0;
 # Use function-test runtime or not
-my $sa_titanRuntime2 = 0;
+my $sa_titanRuntime2 = 1;
 # Enable coverage or not
 my $sa_coverageEnabled = 0;
 # Files existed before a test case execution
diff --git a/conformance_test/core_language_tests/negative_tests/run_test_all b/conformance_test/core_language_tests/negative_tests/run_test_all
index 44552c41318295a0c3a873d99b5e686f16c072ba..25a6bbf24d8d7dec247b30dc2e3f1c5a94e0e2db 100755
--- a/conformance_test/core_language_tests/negative_tests/run_test_all
+++ b/conformance_test/core_language_tests/negative_tests/run_test_all
@@ -12,5 +12,5 @@ done
 echo "Batch execution of SA tests: creating 1 report for each script file"
 echo "You must have a symlink in this directory named perl and pointing to perl 5.6.0 or higher"
 
-echo "./perl ../../Tools/SAtester.pl $SCRIPTFLAGS -log SA_log.report *.script"
-./perl ../../../function_test/Tools/SAtester.pl $SCRIPTFLAGS -log SA_log.report *.script
+echo "./perl SAtester.pl $SCRIPTFLAGS -log SA_log.report *.script"
+./perl SAtester.pl $SCRIPTFLAGS -log SA_log.report *.script
diff --git a/conformance_test/core_language_tests/positive_tests/05_basic_language_elements/0504_parametrization/050401_formal_parameters/050401_top_level/NegSem_050401_top_level_001.ttcn b/conformance_test/core_language_tests/positive_tests/05_basic_language_elements/0504_parametrization/050401_formal_parameters/050401_top_level/NegSem_050401_top_level_001.ttcn
index c14305def8d6dc3966d294968b11ee85f2d89f6a..ff5ccdccee5b60eb2eda82eab9c2eed85187c0ce 100644
--- a/conformance_test/core_language_tests/positive_tests/05_basic_language_elements/0504_parametrization/050401_formal_parameters/050401_top_level/NegSem_050401_top_level_001.ttcn
+++ b/conformance_test/core_language_tests/positive_tests/05_basic_language_elements/0504_parametrization/050401_formal_parameters/050401_top_level/NegSem_050401_top_level_001.ttcn
@@ -36,7 +36,7 @@ module NegSem_050401_top_level_001 {
 		if (match(p_rec, {1, 2})) {
 			setverdict(pass);
 		} else {
-			setverdict(fail, "p_rec value not matching ", p_rec, {1, 2});
+			setverdict(fail, "p_rec value not matching ", p_rec, R1:{1, 2});
 		}
 	}
 	
diff --git a/conformance_test/core_language_tests/positive_tests/05_basic_language_elements/0504_parametrization/050401_formal_parameters/050401_top_level/NegSem_050401_top_level_002.ttcn b/conformance_test/core_language_tests/positive_tests/05_basic_language_elements/0504_parametrization/050401_formal_parameters/050401_top_level/NegSem_050401_top_level_002.ttcn
index 71f4eed862095bab61d17c9cd9598ed6f098e19a..9ae1cbdc96bd1b5d24b91df726b75010c878a962 100644
--- a/conformance_test/core_language_tests/positive_tests/05_basic_language_elements/0504_parametrization/050401_formal_parameters/050401_top_level/NegSem_050401_top_level_002.ttcn
+++ b/conformance_test/core_language_tests/positive_tests/05_basic_language_elements/0504_parametrization/050401_formal_parameters/050401_top_level/NegSem_050401_top_level_002.ttcn
@@ -41,7 +41,7 @@ module NegSem_050401_top_level_002 {
         var R1 v_rec;
 		f(v_rec);
         if ( match(v_rec, {1, 2})) { setverdict(pass); } 
-        else { setverdict(fail, "p_rec value not matching ", v_rec, {1, 2}); }
+        else { setverdict(fail, "p_rec value not matching ", v_rec, R1:{1, 2}); }
 	}
 
 	control{
diff --git a/conformance_test/core_language_tests/positive_tests/05_basic_language_elements/0504_parametrization/050401_formal_parameters/050401_top_level/NegSem_050401_top_level_003.ttcn b/conformance_test/core_language_tests/positive_tests/05_basic_language_elements/0504_parametrization/050401_formal_parameters/050401_top_level/NegSem_050401_top_level_003.ttcn
index 0d4979a85c68dc1d157e5436a671363384e454b6..5002927d9578f467cb1ccd0690171466bd5ecbfa 100644
--- a/conformance_test/core_language_tests/positive_tests/05_basic_language_elements/0504_parametrization/050401_formal_parameters/050401_top_level/NegSem_050401_top_level_003.ttcn
+++ b/conformance_test/core_language_tests/positive_tests/05_basic_language_elements/0504_parametrization/050401_formal_parameters/050401_top_level/NegSem_050401_top_level_003.ttcn
@@ -34,7 +34,7 @@ module NegSem_050401_top_level_003 {
 	
 	function f(inout R2 p_rec) {
         if (match(p_rec, {1, 2})) { setverdict(pass); }
-        else { setverdict(fail, "p_rec value not matching ", p_rec, {1, 2}); }
+        else { setverdict(fail, "p_rec value not matching ", p_rec, R1:{1, 2}); }
 	}
 	
 	testcase TC_NegSem_050401_top_level_003() runs on GeneralComp {
diff --git a/conformance_test/core_language_tests/positive_tests/06_types_and_values/0603_type_compatibility/060302_structured_types/NegSem_060302_structured_types_011_importB.ttcn b/conformance_test/core_language_tests/positive_tests/06_types_and_values/0603_type_compatibility/060302_structured_types/NegSem_060302_structured_types_011_importB.ttcn
index feac2f9eaf10156df9aa6546ad6f3e14b88015f6..1f06fdc2efceb98379e3a1330982a0403c948b0f 100644
--- a/conformance_test/core_language_tests/positive_tests/06_types_and_values/0603_type_compatibility/060302_structured_types/NegSem_060302_structured_types_011_importB.ttcn
+++ b/conformance_test/core_language_tests/positive_tests/06_types_and_values/0603_type_compatibility/060302_structured_types/NegSem_060302_structured_types_011_importB.ttcn
@@ -18,4 +18,7 @@ module NegSem_060302_structured_types_011_importB {
   type integer F; 
   type anytype Atype;
 } 
+with {
+	extension "anytype F"
+}
 
diff --git a/conformance_test/core_language_tests/positive_tests/09_test_configurations/0902_test_system_interface/loopbackPort.cc b/conformance_test/core_language_tests/positive_tests/09_test_configurations/0902_test_system_interface/loopbackPort.cc
deleted file mode 100644
index 952fdc8f8996f52ed5544fc9d3706c695c1014dd..0000000000000000000000000000000000000000
--- a/conformance_test/core_language_tests/positive_tests/09_test_configurations/0902_test_system_interface/loopbackPort.cc
+++ /dev/null
@@ -1,77 +0,0 @@
-// This Test Port skeleton source file was generated by the
-// TTCN-3 Compiler of the TTCN-3 Test Executor version CRL 113 200/5 R4D
-// for eadrkir (eadrkir@eadrkir-VirtualBox) on Mon Apr 18 14:18:01 2016
-
-// Copyright (c) 2000-2016 Ericsson Telecom AB
-
-// You may modify this file. Complete the body of empty functions and
-// add your member functions here.
-
-#include "loopbackPort.hh"
-
-namespace Sem__0902__Communication__ports__001 {
-
-loopbackPort::loopbackPort(const char *par_port_name)
-	: loopbackPort_BASE(par_port_name)
-{
-
-}
-
-loopbackPort::~loopbackPort()
-{
-
-}
-
-void loopbackPort::set_parameter(const char * /*parameter_name*/,
-	const char * /*parameter_value*/)
-{
-
-}
-
-/*void loopbackPort::Handle_Fd_Event(int fd, boolean is_readable,
-	boolean is_writable, boolean is_error) {}*/
-
-void loopbackPort::Handle_Fd_Event_Error(int /*fd*/)
-{
-
-}
-
-void loopbackPort::Handle_Fd_Event_Writable(int /*fd*/)
-{
-
-}
-
-void loopbackPort::Handle_Fd_Event_Readable(int /*fd*/)
-{
-
-}
-
-/*void loopbackPort::Handle_Timeout(double time_since_last_call) {}*/
-
-void loopbackPort::user_map(const char * /*system_port*/)
-{
-
-}
-
-void loopbackPort::user_unmap(const char * /*system_port*/)
-{
-
-}
-
-void loopbackPort::user_start()
-{
-
-}
-
-void loopbackPort::user_stop()
-{
-
-}
-
-void loopbackPort::outgoing_send(const INTEGER& send_par)
-{
-	incoming_message(send_par);
-}
-
-} /* end of namespace */
-
diff --git a/conformance_test/core_language_tests/positive_tests/09_test_configurations/0902_test_system_interface/loopbackPort.hh b/conformance_test/core_language_tests/positive_tests/09_test_configurations/0902_test_system_interface/loopbackPort.hh
deleted file mode 100644
index 9409aa67cce781c2e4dbe3aebae3a09f3d753ebc..0000000000000000000000000000000000000000
--- a/conformance_test/core_language_tests/positive_tests/09_test_configurations/0902_test_system_interface/loopbackPort.hh
+++ /dev/null
@@ -1,44 +0,0 @@
-// This Test Port skeleton header file was generated by the
-// TTCN-3 Compiler of the TTCN-3 Test Executor version CRL 113 200/5 R4D
-// for eadrkir (eadrkir@eadrkir-VirtualBox) on Mon Apr 18 14:18:01 2016
-
-// Copyright (c) 2000-2016 Ericsson Telecom AB
-
-// You may modify this file. Add your attributes and prototypes of your
-// member functions here.
-
-#ifndef loopbackPort_HH
-#define loopbackPort_HH
-
-#include "Sem_0902_Communication_ports_001.hh"
-
-namespace Sem__0902__Communication__ports__001 {
-
-class loopbackPort : public loopbackPort_BASE {
-public:
-	loopbackPort(const char *par_port_name = NULL);
-	~loopbackPort();
-
-	void set_parameter(const char *parameter_name,
-		const char *parameter_value);
-
-private:
-	/* void Handle_Fd_Event(int fd, boolean is_readable,
-		boolean is_writable, boolean is_error); */
-	void Handle_Fd_Event_Error(int fd);
-	void Handle_Fd_Event_Writable(int fd);
-	void Handle_Fd_Event_Readable(int fd);
-	/* void Handle_Timeout(double time_since_last_call); */
-protected:
-	void user_map(const char *system_port);
-	void user_unmap(const char *system_port);
-
-	void user_start();
-	void user_stop();
-
-	void outgoing_send(const INTEGER& send_par);
-};
-
-} /* end of namespace */
-
-#endif
diff --git a/conformance_test/core_language_tests/positive_tests/09_test_configurations/0902_test_system_interface/loopbackPort1.cc b/conformance_test/core_language_tests/positive_tests/09_test_configurations/0902_test_system_interface/loopbackPort1.cc
deleted file mode 100644
index 25fe4a81834d48af62d1d4cba1a40dc02a7d2b58..0000000000000000000000000000000000000000
--- a/conformance_test/core_language_tests/positive_tests/09_test_configurations/0902_test_system_interface/loopbackPort1.cc
+++ /dev/null
@@ -1,77 +0,0 @@
-// This Test Port skeleton source file was generated by the
-// TTCN-3 Compiler of the TTCN-3 Test Executor version CRL 113 200/5 R4D
-// for eadrkir (eadrkir@eadrkir-VirtualBox) on Mon Apr 18 14:18:01 2016
-
-// Copyright (c) 2000-2016 Ericsson Telecom AB
-
-// You may modify this file. Complete the body of empty functions and
-// add your member functions here.
-
-#include "loopbackPort1.hh"
-
-namespace Sem__0902__Communication__ports__002 {
-
-loopbackPort1::loopbackPort1(const char *par_port_name)
-	: loopbackPort1_BASE(par_port_name)
-{
-
-}
-
-loopbackPort1::~loopbackPort1()
-{
-
-}
-
-void loopbackPort1::set_parameter(const char * /*parameter_name*/,
-	const char * /*parameter_value*/)
-{
-
-}
-
-/*void loopbackPort1::Handle_Fd_Event(int fd, boolean is_readable,
-	boolean is_writable, boolean is_error) {}*/
-
-void loopbackPort1::Handle_Fd_Event_Error(int /*fd*/)
-{
-
-}
-
-void loopbackPort1::Handle_Fd_Event_Writable(int /*fd*/)
-{
-
-}
-
-void loopbackPort1::Handle_Fd_Event_Readable(int /*fd*/)
-{
-
-}
-
-/*void loopbackPort1::Handle_Timeout(double time_since_last_call) {}*/
-
-void loopbackPort1::user_map(const char * /*system_port*/)
-{
-
-}
-
-void loopbackPort1::user_unmap(const char * /*system_port*/)
-{
-
-}
-
-void loopbackPort1::user_start()
-{
-
-}
-
-void loopbackPort1::user_stop()
-{
-
-}
-
-void loopbackPort1::outgoing_send(const INTEGER& send_par)
-{
-	incoming_message(send_par);
-}
-
-} /* end of namespace */
-
diff --git a/conformance_test/core_language_tests/positive_tests/09_test_configurations/0902_test_system_interface/loopbackPort1.hh b/conformance_test/core_language_tests/positive_tests/09_test_configurations/0902_test_system_interface/loopbackPort1.hh
deleted file mode 100644
index c11ec566028e269a2d7021defe77214d32a47a7d..0000000000000000000000000000000000000000
--- a/conformance_test/core_language_tests/positive_tests/09_test_configurations/0902_test_system_interface/loopbackPort1.hh
+++ /dev/null
@@ -1,44 +0,0 @@
-// This Test Port skeleton header file was generated by the
-// TTCN-3 Compiler of the TTCN-3 Test Executor version CRL 113 200/5 R4D
-// for eadrkir (eadrkir@eadrkir-VirtualBox) on Mon Apr 18 14:18:01 2016
-
-// Copyright (c) 2000-2016 Ericsson Telecom AB
-
-// You may modify this file. Add your attributes and prototypes of your
-// member functions here.
-
-#ifndef loopbackPort1_HH
-#define loopbackPort1_HH
-
-#include "Sem_0902_Communication_ports_002.hh"
-
-namespace Sem__0902__Communication__ports__002 {
-
-class loopbackPort1 : public loopbackPort1_BASE {
-public:
-	loopbackPort1(const char *par_port_name = NULL);
-	~loopbackPort1();
-
-	void set_parameter(const char *parameter_name,
-		const char *parameter_value);
-
-private:
-	/* void Handle_Fd_Event(int fd, boolean is_readable,
-		boolean is_writable, boolean is_error); */
-	void Handle_Fd_Event_Error(int fd);
-	void Handle_Fd_Event_Writable(int fd);
-	void Handle_Fd_Event_Readable(int fd);
-	/* void Handle_Timeout(double time_since_last_call); */
-protected:
-	void user_map(const char *system_port);
-	void user_unmap(const char *system_port);
-
-	void user_start();
-	void user_stop();
-
-	void outgoing_send(const INTEGER& send_par);
-};
-
-} /* end of namespace */
-
-#endif
diff --git a/conformance_test/core_language_tests/positive_tests/22_communication_operations/2202_message_based_communication/220202_receive_operation/NegSem_220202_ReceiveOperation_023.ttcn b/conformance_test/core_language_tests/positive_tests/22_communication_operations/2202_message_based_communication/220202_receive_operation/NegSem_220202_ReceiveOperation_023.ttcn
index 6e2a6bcb612234b43b309fe8f54b0b3b911bf47d..59a01ac8273809b18c6554c3a47e526f9a83f301 100644
--- a/conformance_test/core_language_tests/positive_tests/22_communication_operations/2202_message_based_communication/220202_receive_operation/NegSem_220202_ReceiveOperation_023.ttcn
+++ b/conformance_test/core_language_tests/positive_tests/22_communication_operations/2202_message_based_communication/220202_receive_operation/NegSem_220202_ReceiveOperation_023.ttcn
@@ -23,13 +23,13 @@ module NegSem_220202_ReceiveOperation_023 {
 
     type record R {
         integer id,
-        octetstring payload
+        bitstring payload
     }
 
 	type integer I with { variant "32 bit"};
     
     type record Wrapped {
-        integer num
+        octetstring num
     } with { variant ""}
     
     type port P message {
@@ -44,7 +44,7 @@ module NegSem_220202_ReceiveOperation_023 {
 		var I input := 5;
 
         var Wrapped v_res;
-        var R v_rec := { id := 0, payload := bit2oct(encvalue(input)) };
+        var R v_rec := { id := 0, payload := encvalue(input) };
 
 		connect(self:p, self:p);
 
diff --git a/conformance_test/core_language_tests/positive_tests/pos_conf_tests.cfg b/conformance_test/core_language_tests/positive_tests/pos_conf_tests.cfg
index 14c1436c19fa7314306bca94bcfa68e6303d3565..f8b5d362dae3a111ec231d5c312a77e3171e2f06 100644
--- a/conformance_test/core_language_tests/positive_tests/pos_conf_tests.cfg
+++ b/conformance_test/core_language_tests/positive_tests/pos_conf_tests.cfg
@@ -87,6 +87,7 @@ Sem_050401_top_level_013.control
 Sem_050401_top_level_014.control
 Sem_050401_top_level_015.control
 Sem_050401_top_level_016.control
+Sem_050401_top_level_017.control
 Sem_050401_top_level_018.control
 Sem_050401_top_level_019.control
 Sem_050401_top_level_020.control
@@ -269,6 +270,7 @@ Sem_050402_actual_parameters_179.control
 Sem_050402_actual_parameters_180.control
 Sem_050402_actual_parameters_182.control
 Sem_050402_actual_parameters_183.control
+Sem_050402_actual_parameters_184.control
 Sem_050402_actual_parameters_185.control
 Sem_050402_actual_parameters_186.control
 Sem_050402_actual_parameters_187.control
@@ -423,6 +425,7 @@ Sem_060207_arrays_006.control
 Sem_060207_arrays_007.control
 Sem_060207_arrays_008.control
 Sem_060207_arrays_009.control
+Sem_060207_arrays_010.control
 Sem_060207_arrays_011.control
 Sem_060207_arrays_012.control
 Sem_060207_arrays_013.control
@@ -734,7 +737,7 @@ Sem_160102_predefined_functions_016.control
 Sem_160102_predefined_functions_017.control
 Sem_160102_predefined_functions_018.control
 Sem_160102_predefined_functions_021.control
-//Sem_160102_predefined_functions_025.control
+Sem_160102_predefined_functions_025.control
 Sem_160102_predefined_functions_026.control
 Sem_160102_predefined_functions_027.control
 Sem_160102_predefined_functions_028.control
@@ -947,6 +950,8 @@ Sem_220202_ReceiveOperation_002.control
 Sem_220202_ReceiveOperation_003.control
 Sem_220202_ReceiveOperation_006.control
 Sem_220202_ReceiveOperation_007.control
+Sem_220202_ReceiveOperation_009.control
+Sem_220202_ReceiveOperation_010.control
 Sem_220202_ReceiveOperation_011.control
 Sem_220202_ReceiveOperation_012.control
 Sem_220202_ReceiveOperation_013.control
@@ -959,6 +964,8 @@ Sem_220203_TriggerOperation_002.control
 Sem_220203_TriggerOperation_003.control
 Sem_220203_TriggerOperation_006.control
 Sem_220203_TriggerOperation_007.control
+Sem_220203_TriggerOperation_009.control
+Sem_220203_TriggerOperation_010.control
 Sem_220203_TriggerOperation_011.control
 Sem_220203_TriggerOperation_012.control
 Sem_220203_TriggerOperation_013.control
diff --git a/conformance_test/core_language_tests/positive_tests/pos_conf_tests.tpd b/conformance_test/core_language_tests/positive_tests/pos_conf_tests.tpd
index 7270a10d92191e8e1a383a9b0070fe453b08b735..9aaac7c99f01eb8040e5c9de11746c193fc60d01 100644
--- a/conformance_test/core_language_tests/positive_tests/pos_conf_tests.tpd
+++ b/conformance_test/core_language_tests/positive_tests/pos_conf_tests.tpd
@@ -426,7 +426,7 @@
     <FileResource projectRelativePath="05_basic_language_elements/0504_parametrization/050401_formal_parameters/050401_top_level/Sem_050401_top_level_014.ttcn" relativeURI="05_basic_language_elements/0504_parametrization/050401_formal_parameters/050401_top_level/Sem_050401_top_level_014.ttcn"/>
     <FileResource projectRelativePath="05_basic_language_elements/0504_parametrization/050401_formal_parameters/050401_top_level/Sem_050401_top_level_015.ttcn" relativeURI="05_basic_language_elements/0504_parametrization/050401_formal_parameters/050401_top_level/Sem_050401_top_level_015.ttcn"/>
     <FileResource projectRelativePath="05_basic_language_elements/0504_parametrization/050401_formal_parameters/050401_top_level/Sem_050401_top_level_016.ttcn" relativeURI="05_basic_language_elements/0504_parametrization/050401_formal_parameters/050401_top_level/Sem_050401_top_level_016.ttcn"/>
-<!--    <FileResource projectRelativePath="05_basic_language_elements/0504_parametrization/050401_formal_parameters/050401_top_level/Sem_050401_top_level_017.ttcn" relativeURI="05_basic_language_elements/0504_parametrization/050401_formal_parameters/050401_top_level/Sem_050401_top_level_017.ttcn"/>-->
+    <FileResource projectRelativePath="05_basic_language_elements/0504_parametrization/050401_formal_parameters/050401_top_level/Sem_050401_top_level_017.ttcn" relativeURI="05_basic_language_elements/0504_parametrization/050401_formal_parameters/050401_top_level/Sem_050401_top_level_017.ttcn"/>
 	<FileResource projectRelativePath="05_basic_language_elements/0504_parametrization/050401_formal_parameters/050401_top_level/Sem_050401_top_level_018.ttcn" relativeURI="05_basic_language_elements/0504_parametrization/050401_formal_parameters/050401_top_level/Sem_050401_top_level_018.ttcn"/>
     <FileResource projectRelativePath="05_basic_language_elements/0504_parametrization/050401_formal_parameters/050401_top_level/Sem_050401_top_level_019.ttcn" relativeURI="05_basic_language_elements/0504_parametrization/050401_formal_parameters/050401_top_level/Sem_050401_top_level_019.ttcn"/>
     <FileResource projectRelativePath="05_basic_language_elements/0504_parametrization/050401_formal_parameters/050401_top_level/Sem_050401_top_level_020.ttcn" relativeURI="05_basic_language_elements/0504_parametrization/050401_formal_parameters/050401_top_level/Sem_050401_top_level_020.ttcn"/>
@@ -767,7 +767,7 @@
 <!--    <FileResource projectRelativePath="05_basic_language_elements/0504_parametrization/050402_actual_parameters/Sem_050402_actual_parameters_181.ttcn" relativeURI="05_basic_language_elements/0504_parametrization/050402_actual_parameters/Sem_050402_actual_parameters_181.ttcn"/>-->
     <FileResource projectRelativePath="05_basic_language_elements/0504_parametrization/050402_actual_parameters/Sem_050402_actual_parameters_182.ttcn" relativeURI="05_basic_language_elements/0504_parametrization/050402_actual_parameters/Sem_050402_actual_parameters_182.ttcn"/>
     <FileResource projectRelativePath="05_basic_language_elements/0504_parametrization/050402_actual_parameters/Sem_050402_actual_parameters_183.ttcn" relativeURI="05_basic_language_elements/0504_parametrization/050402_actual_parameters/Sem_050402_actual_parameters_183.ttcn"/>
-<!--    <FileResource projectRelativePath="05_basic_language_elements/0504_parametrization/050402_actual_parameters/Sem_050402_actual_parameters_184.ttcn" relativeURI="05_basic_language_elements/0504_parametrization/050402_actual_parameters/Sem_050402_actual_parameters_184.ttcn"/>-->
+    <FileResource projectRelativePath="05_basic_language_elements/0504_parametrization/050402_actual_parameters/Sem_050402_actual_parameters_184.ttcn" relativeURI="05_basic_language_elements/0504_parametrization/050402_actual_parameters/Sem_050402_actual_parameters_184.ttcn"/>
     <FileResource projectRelativePath="05_basic_language_elements/0504_parametrization/050402_actual_parameters/Sem_050402_actual_parameters_185.ttcn" relativeURI="05_basic_language_elements/0504_parametrization/050402_actual_parameters/Sem_050402_actual_parameters_185.ttcn"/>
     <FileResource projectRelativePath="05_basic_language_elements/0504_parametrization/050402_actual_parameters/Sem_050402_actual_parameters_186.ttcn" relativeURI="05_basic_language_elements/0504_parametrization/050402_actual_parameters/Sem_050402_actual_parameters_186.ttcn"/>
     <FileResource projectRelativePath="05_basic_language_elements/0504_parametrization/050402_actual_parameters/Sem_050402_actual_parameters_187.ttcn" relativeURI="05_basic_language_elements/0504_parametrization/050402_actual_parameters/Sem_050402_actual_parameters_187.ttcn"/>
@@ -1149,7 +1149,7 @@
     <FileResource projectRelativePath="06_types_and_values/0602_structured_types_and_values/060207_arrays/Sem_060207_arrays_007.ttcn" relativeURI="06_types_and_values/0602_structured_types_and_values/060207_arrays/Sem_060207_arrays_007.ttcn"/>
     <FileResource projectRelativePath="06_types_and_values/0602_structured_types_and_values/060207_arrays/Sem_060207_arrays_008.ttcn" relativeURI="06_types_and_values/0602_structured_types_and_values/060207_arrays/Sem_060207_arrays_008.ttcn"/>
     <FileResource projectRelativePath="06_types_and_values/0602_structured_types_and_values/060207_arrays/Sem_060207_arrays_009.ttcn" relativeURI="06_types_and_values/0602_structured_types_and_values/060207_arrays/Sem_060207_arrays_009.ttcn"/>
-<!--    <FileResource projectRelativePath="06_types_and_values/0602_structured_types_and_values/060207_arrays/Sem_060207_arrays_010.ttcn" relativeURI="06_types_and_values/0602_structured_types_and_values/060207_arrays/Sem_060207_arrays_010.ttcn"/>-->
+    <FileResource projectRelativePath="06_types_and_values/0602_structured_types_and_values/060207_arrays/Sem_060207_arrays_010.ttcn" relativeURI="06_types_and_values/0602_structured_types_and_values/060207_arrays/Sem_060207_arrays_010.ttcn"/>
     <FileResource projectRelativePath="06_types_and_values/0602_structured_types_and_values/060207_arrays/Sem_060207_arrays_011.ttcn" relativeURI="06_types_and_values/0602_structured_types_and_values/060207_arrays/Sem_060207_arrays_011.ttcn"/>
     <FileResource projectRelativePath="06_types_and_values/0602_structured_types_and_values/060207_arrays/Sem_060207_arrays_012.ttcn" relativeURI="06_types_and_values/0602_structured_types_and_values/060207_arrays/Sem_060207_arrays_012.ttcn"/>
     <FileResource projectRelativePath="06_types_and_values/0602_structured_types_and_values/060207_arrays/Sem_060207_arrays_013.ttcn" relativeURI="06_types_and_values/0602_structured_types_and_values/060207_arrays/Sem_060207_arrays_013.ttcn"/>
@@ -2108,7 +2108,7 @@
 <!--    <FileResource projectRelativePath="16_functions_altsteps_testcases/1601_functions/160102_predefined_functions/Sem_160102_predefined_functions_022.ttcn" relativeURI="16_functions_altsteps_testcases/1601_functions/160102_predefined_functions/Sem_160102_predefined_functions_022.ttcn"/>-->
 <!--    <FileResource projectRelativePath="16_functions_altsteps_testcases/1601_functions/160102_predefined_functions/Sem_160102_predefined_functions_023.ttcn" relativeURI="16_functions_altsteps_testcases/1601_functions/160102_predefined_functions/Sem_160102_predefined_functions_023.ttcn"/>-->
 <!--    <FileResource projectRelativePath="16_functions_altsteps_testcases/1601_functions/160102_predefined_functions/Sem_160102_predefined_functions_024.ttcn" relativeURI="16_functions_altsteps_testcases/1601_functions/160102_predefined_functions/Sem_160102_predefined_functions_024.ttcn"/>-->
-<!--    <FileResource projectRelativePath="16_functions_altsteps_testcases/1601_functions/160102_predefined_functions/Sem_160102_predefined_functions_025.ttcn" relativeURI="16_functions_altsteps_testcases/1601_functions/160102_predefined_functions/Sem_160102_predefined_functions_025.ttcn"/>-->
+    <FileResource projectRelativePath="16_functions_altsteps_testcases/1601_functions/160102_predefined_functions/Sem_160102_predefined_functions_025.ttcn" relativeURI="16_functions_altsteps_testcases/1601_functions/160102_predefined_functions/Sem_160102_predefined_functions_025.ttcn"/>
     <FileResource projectRelativePath="16_functions_altsteps_testcases/1601_functions/160102_predefined_functions/Sem_160102_predefined_functions_026.ttcn" relativeURI="16_functions_altsteps_testcases/1601_functions/160102_predefined_functions/Sem_160102_predefined_functions_026.ttcn"/>
     <FileResource projectRelativePath="16_functions_altsteps_testcases/1601_functions/160102_predefined_functions/Sem_160102_predefined_functions_027.ttcn" relativeURI="16_functions_altsteps_testcases/1601_functions/160102_predefined_functions/Sem_160102_predefined_functions_027.ttcn"/>
     <FileResource projectRelativePath="16_functions_altsteps_testcases/1601_functions/160102_predefined_functions/Sem_160102_predefined_functions_028.ttcn" relativeURI="16_functions_altsteps_testcases/1601_functions/160102_predefined_functions/Sem_160102_predefined_functions_028.ttcn"/>
@@ -2640,8 +2640,8 @@
     <FileResource projectRelativePath="22_communication_operations/2202_message_based_communication/220202_receive_operation/Sem_220202_ReceiveOperation_006.ttcn" relativeURI="22_communication_operations/2202_message_based_communication/220202_receive_operation/Sem_220202_ReceiveOperation_006.ttcn"/>
     <FileResource projectRelativePath="22_communication_operations/2202_message_based_communication/220202_receive_operation/Sem_220202_ReceiveOperation_007.ttcn" relativeURI="22_communication_operations/2202_message_based_communication/220202_receive_operation/Sem_220202_ReceiveOperation_007.ttcn"/> 
 <!--    <FileResource projectRelativePath="22_communication_operations/2202_message_based_communication/220202_receive_operation/Sem_220202_ReceiveOperation_008.ttcn" relativeURI="22_communication_operations/2202_message_based_communication/220202_receive_operation/Sem_220202_ReceiveOperation_008.ttcn"/>-->
-<!--    <FileResource projectRelativePath="22_communication_operations/2202_message_based_communication/220202_receive_operation/Sem_220202_ReceiveOperation_009.ttcn" relativeURI="22_communication_operations/2202_message_based_communication/220202_receive_operation/Sem_220202_ReceiveOperation_009.ttcn"/>-->
-<!--    <FileResource projectRelativePath="22_communication_operations/2202_message_based_communication/220202_receive_operation/Sem_220202_ReceiveOperation_010.ttcn" relativeURI="22_communication_operations/2202_message_based_communication/220202_receive_operation/Sem_220202_ReceiveOperation_010.ttcn"/>-->
+    <FileResource projectRelativePath="22_communication_operations/2202_message_based_communication/220202_receive_operation/Sem_220202_ReceiveOperation_009.ttcn" relativeURI="22_communication_operations/2202_message_based_communication/220202_receive_operation/Sem_220202_ReceiveOperation_009.ttcn"/>
+    <FileResource projectRelativePath="22_communication_operations/2202_message_based_communication/220202_receive_operation/Sem_220202_ReceiveOperation_010.ttcn" relativeURI="22_communication_operations/2202_message_based_communication/220202_receive_operation/Sem_220202_ReceiveOperation_010.ttcn"/>
     <FileResource projectRelativePath="22_communication_operations/2202_message_based_communication/220202_receive_operation/Sem_220202_ReceiveOperation_011.ttcn" relativeURI="22_communication_operations/2202_message_based_communication/220202_receive_operation/Sem_220202_ReceiveOperation_011.ttcn"/>
     <FileResource projectRelativePath="22_communication_operations/2202_message_based_communication/220202_receive_operation/Sem_220202_ReceiveOperation_012.ttcn" relativeURI="22_communication_operations/2202_message_based_communication/220202_receive_operation/Sem_220202_ReceiveOperation_012.ttcn"/>
     <FileResource projectRelativePath="22_communication_operations/2202_message_based_communication/220202_receive_operation/Sem_220202_ReceiveOperation_013.ttcn" relativeURI="22_communication_operations/2202_message_based_communication/220202_receive_operation/Sem_220202_ReceiveOperation_013.ttcn"/>
@@ -2692,8 +2692,8 @@
     <FileResource projectRelativePath="22_communication_operations/2202_message_based_communication/220203_trigger_operation/Sem_220203_TriggerOperation_006.ttcn" relativeURI="22_communication_operations/2202_message_based_communication/220203_trigger_operation/Sem_220203_TriggerOperation_006.ttcn"/>
     <FileResource projectRelativePath="22_communication_operations/2202_message_based_communication/220203_trigger_operation/Sem_220203_TriggerOperation_007.ttcn" relativeURI="22_communication_operations/2202_message_based_communication/220203_trigger_operation/Sem_220203_TriggerOperation_007.ttcn"/> 
 <!--    <FileResource projectRelativePath="22_communication_operations/2202_message_based_communication/220203_trigger_operation/Sem_220203_TriggerOperation_008.ttcn" relativeURI="22_communication_operations/2202_message_based_communication/220203_trigger_operation/Sem_220203_TriggerOperation_008.ttcn"/>-->
-<!--    <FileResource projectRelativePath="22_communication_operations/2202_message_based_communication/220203_trigger_operation/Sem_220203_TriggerOperation_009.ttcn" relativeURI="22_communication_operations/2202_message_based_communication/220203_trigger_operation/Sem_220203_TriggerOperation_009.ttcn"/>-->
-<!--    <FileResource projectRelativePath="22_communication_operations/2202_message_based_communication/220203_trigger_operation/Sem_220203_TriggerOperation_010.ttcn" relativeURI="22_communication_operations/2202_message_based_communication/220203_trigger_operation/Sem_220203_TriggerOperation_010.ttcn"/>-->
+    <FileResource projectRelativePath="22_communication_operations/2202_message_based_communication/220203_trigger_operation/Sem_220203_TriggerOperation_009.ttcn" relativeURI="22_communication_operations/2202_message_based_communication/220203_trigger_operation/Sem_220203_TriggerOperation_009.ttcn"/>
+    <FileResource projectRelativePath="22_communication_operations/2202_message_based_communication/220203_trigger_operation/Sem_220203_TriggerOperation_010.ttcn" relativeURI="22_communication_operations/2202_message_based_communication/220203_trigger_operation/Sem_220203_TriggerOperation_010.ttcn"/>
     <FileResource projectRelativePath="22_communication_operations/2202_message_based_communication/220203_trigger_operation/Sem_220203_TriggerOperation_011.ttcn" relativeURI="22_communication_operations/2202_message_based_communication/220203_trigger_operation/Sem_220203_TriggerOperation_011.ttcn"/>
     <FileResource projectRelativePath="22_communication_operations/2202_message_based_communication/220203_trigger_operation/Sem_220203_TriggerOperation_012.ttcn" relativeURI="22_communication_operations/2202_message_based_communication/220203_trigger_operation/Sem_220203_TriggerOperation_012.ttcn"/>
     <FileResource projectRelativePath="22_communication_operations/2202_message_based_communication/220203_trigger_operation/Sem_220203_TriggerOperation_013.ttcn" relativeURI="22_communication_operations/2202_message_based_communication/220203_trigger_operation/Sem_220203_TriggerOperation_013.ttcn"/>
diff --git a/conformance_test/xml_tests/negative_test/neg_xml_tests.script b/conformance_test/xml_tests/negative_test/neg_xml_tests.script
index e5b19a62c65a2d742f48ccbf627833993fb726aa..83fe6bd14855189e3ab2c71a87bd1e3f125b9f91 100644
--- a/conformance_test/xml_tests/negative_test/neg_xml_tests.script
+++ b/conformance_test/xml_tests/negative_test/neg_xml_tests.script
@@ -759,6 +759,164 @@ error: 1 is not a valid value for type `integer' which has subtype \(6..10\)
 <END_TC>
 :exmp
 
+*---------------------------------------------------------------------*
+:h2. Neg_060105_enumeration_004 negative test
+.*---------------------------------------------------------------------*
+:xmp tab=0.
+
+<TC - Verify if tool rejects validation in case of restricted value due xsd type declaration. >
+
+<COMPILE>
+
+<MODULE TTCN Neg_060105_enumeration_004 Neg_060105_enumeration_004.ttcn >
+/******************************************************************************
+ ** @version  0.0.1
+ ** @purpose  9:6.1.5, disallow enumeration values removed by restriction
+ ** @verdict  pass reject
+ ***************************************************/
+module Neg_060105_enumeration_004 {
+
+    import from schema_Neg_060105_enumeration_004 language "XSD" all;
+    
+    template C2 m_msg := uNKNOWN;
+
+	external function enc_MyType(in C2 pdu) return octetstring
+  	 with { extension "prototype (convert) encode(XER:XER_EXTENDED)" }
+  
+  	external function dec_MyType(in octetstring stream) return C2
+  	 with { extension "prototype (convert) decode(XER:XER_EXTENDED)" }
+
+    /**
+     * @desc The timeout given in seconds after which the test case will be stopped.
+     */
+    modulepar float PX_TC_EXECUTION_TIMEOUT := 5.0;
+
+    type universal charstring Raw;
+
+    type port P message {
+        inout C2, Raw;
+    } with {extension "internal"}
+
+    type component Comp {
+        port P p;
+		port P p1;
+    }
+
+    testcase TC_Neg_060105_enumeration_004() runs on Comp system Comp {
+        connect(self:p, self:p1);
+
+        // encode the message
+        p.send(oct2unichar(enc_MyType(valueof(m_msg))));
+        log("template should either be rejected by compiler or by runtime latest while encoding");
+
+        setverdict(fail, "Invalid template should not be encoded");
+
+    }
+
+    control {
+        execute(TC_Neg_060105_enumeration_004(), PX_TC_EXECUTION_TIMEOUT);
+    }
+
+}
+<END_MODULE>
+
+<MODULE TTCN schema_Neg_060105_enumeration_004 schema_Neg_060105_enumeration_004.ttcn >
+/*******************************************************************************
+* Copyright (c) 2000-2016 Ericsson Telecom AB
+*
+* XSD to TTCN-3 Translator version: CRL 113 200/5 R5B01                     
+*
+* All rights reserved. This program and the accompanying materials
+* are made available under the terms of the Eclipse Public License v1.0
+* which accompanies this distribution, and is available at
+* http://www.eclipse.org/legal/epl-v10.html
+*******************************************************************************/
+//
+//  File:          schema_Neg_060105_enumeration_004.ttcn
+//  Description:
+//  References:
+//  Rev:
+//  Prodnr:
+//  Updated:       Mon Oct 10 13:56:48 2016
+//  Contact:       http://ttcn.ericsson.se
+//
+////////////////////////////////////////////////////////////////////////////////
+//	Generated from file(s):
+//	- Neg_060105_enumeration_004.xsd
+//			/* xml version = "1.0" encoding = "UTF-8" */
+//			/* targetnamespace = "schema:Neg_060105_enumeration_004" */
+////////////////////////////////////////////////////////////////////////////////
+//     Modification header(s):
+//-----------------------------------------------------------------------------
+//  Modified by:
+//  Modification date:
+//  Description:
+//  Modification contact:
+//------------------------------------------------------------------------------
+////////////////////////////////////////////////////////////////////////////////
+
+
+module schema_Neg_060105_enumeration_004 {
+
+
+import from XSD all;
+
+
+type CType C
+with {
+  variant "element";
+};
+
+
+type enumerated CType
+{
+	b2,
+	uNKNOWN
+}
+with {
+  variant "text 'b2' as capitalized";
+  variant "text 'uNKNOWN' as capitalized";
+};
+
+
+type enumerated CTypeEnum
+{
+	b2
+}
+with {
+  variant "text 'b2' as capitalized";
+};
+
+
+type CTypeEnum C2
+with {
+  variant "element";
+};
+
+
+}
+with {
+  encode "XML";
+  variant "namespace as 'schema:Neg_060105_enumeration_004' prefix 'ns'";
+  variant "controlNamespace 'http://www.w3.org/2001/XMLSchema-instance' prefix 'xsi'";
+}
+<END_MODULE>
+
+<MODULE TTCN XSD XSD.ttcn >
+xsd_tmp_keyword
+<END_MODULE>
+
+<MODULE TTCN UsefulTtcn3Types UsefulTtcn3Types.ttcn >
+usefultypes_tmp_keyword
+<END_MODULE>
+
+<RESULT COUNT>
+error: There is no local or imported definition with name `uNKNOWN'
+<END_RESULT>
+
+<END_TC>
+:exmp
+
 *---------------------------------------------------------------------*
 :h2. Neg_060109_minexclusive_001 negative test
 .*---------------------------------------------------------------------*
@@ -2656,7 +2814,7 @@ module schema_Neg_060504_date_001 {
 import from XSD all;
 
 
-type XSD.DateTime T1
+type XSD.Date T1
 with {
   variant "name as uncapitalized";
 };
@@ -2686,7 +2844,7 @@ usefultypes_tmp_keyword
 <END_MODULE>
 
 <RESULT COUNT>
-error: "99-04-12" is not a valid value for type `charstring' which has subtype pattern \(\(-\([1-9][0-9]#\(0,\)\)#\(,1\)\)#\(,1\)[0-9]#4-\(0[1-9]|1[0-2]\)-\(0[1-9]|[12][0-9]|3[01]\)T\(\([01][0-9]|2[0-3]\):\([0-5][0-9]\):\([0-5][0-9]\)\(.[0-9]#\(1,\)\)#\(,1\)|24:00:00\(.0#\(1,\)\)#\(,1\)\)\(Z|[+-]\(\(0[0-9]|1[0-3]\):[0-5][0-9]|14:00\)\)#\(,1\)\)
+error: "99-04-12" is not a valid value for type `charstring' which has subtype pattern \(\(-\([1-9][0-9]#\(0,\)\)#\(,1\)\)#\(,1\)[0-9]#4-\(0[1-9]|1[0-2]\)-\(0[1-9]|[12][0-9]|3[01]\)\(Z|[+-]\(\(0[0-9]|1[0-3]\):[0-5][0-9]|14:00\)\)#\(,1\)\)
 <END_RESULT>
 
 <END_TC>
@@ -6268,6 +6426,120 @@ error: -1 is not a valid value for type `integer' which has subtype \(0..infinit
 <END_TC>
 :exmp
 
+*---------------------------------------------------------------------*
+:h2. Neg_A_ttcn3_module_xsd_021 negative test
+.*---------------------------------------------------------------------*
+:xmp tab=0.
+
+<TC - Ensure the builtin XSD type Long allows only valid values >
+
+<COMPILE>
+
+<MODULE TTCN Neg_A_ttcn3_module_xsd_021 Neg_A_ttcn3_module_xsd_021.ttcn >
+/******************************************************************************
+ ** @version  0.0.1
+ ** @purpose  9:A, Ensure the builtin XSD type Long allows only valid values
+ ** @verdict  pass reject
+ ***************************************************/
+module Neg_A_ttcn3_module_xsd_021 {
+
+	import from XSD all;
+
+	template Long m_msg := "1";
+
+    /**
+     * @desc The timeout given in seconds after which the test case will be stopped.
+     */
+    modulepar float PX_TC_EXECUTION_TIMEOUT := 5.0;
+
+    type component C {
+    }
+
+    testcase TC_Neg_A_ttcn3_module_xsd_021() runs on C system C {
+        // set a verdict before since valueof should throw error
+        setverdict(fail, "Should not be able to create an invalid value of the given built-in XSD type", m_msg);
+        log(valueof(m_msg)); // if testcase is compiling, valueof is expected to throw an testcase error since the value is invalid
+    }
+
+    control {
+        execute(TC_Neg_A_ttcn3_module_xsd_021(), PX_TC_EXECUTION_TIMEOUT);
+    }
+
+}
+<END_MODULE>
+
+<MODULE TTCN XSD XSD.ttcn >
+xsd_tmp_keyword
+<END_MODULE>
+
+<MODULE TTCN UsefulTtcn3Types UsefulTtcn3Types.ttcn >
+usefultypes_tmp_keyword
+<END_MODULE>
+
+<RESULT COUNT>
+error: integer value was expected
+<END_RESULT>
+
+<END_TC>
+:exmp
+
+*---------------------------------------------------------------------*
+:h2. Neg_A_ttcn3_module_xsd_022 negative test
+.*---------------------------------------------------------------------*
+:xmp tab=0.
+
+<TC - Ensure the builtin XSD type UnsignedLong allows only valid values >
+
+<COMPILE>
+
+<MODULE TTCN Neg_A_ttcn3_module_xsd_022 Neg_A_ttcn3_module_xsd_022.ttcn >
+/******************************************************************************
+ ** @version  0.0.1
+ ** @purpose  9:A, Ensure the builtin XSD type UnsignedLong allows only valid values
+ ** @verdict  pass reject
+ ***************************************************/
+module Neg_A_ttcn3_module_xsd_022 {
+
+	import from XSD all;
+
+	template UnsignedLong m_msg := -3;
+
+    /**
+     * @desc The timeout given in seconds after which the test case will be stopped.
+     */
+    modulepar float PX_TC_EXECUTION_TIMEOUT := 5.0;
+
+    type component C {
+    }
+
+    testcase TC_Neg_A_ttcn3_module_xsd_022() runs on C system C {
+        // set a verdict before since valueof should throw error
+        setverdict(fail, "Should not be able to create an invalid value of the given built-in XSD type", m_msg);
+        log(valueof(m_msg)); // if testcase is compiling, valueof is expected to throw an testcase error since the value is invalid
+    }
+
+    control {
+        execute(TC_Neg_A_ttcn3_module_xsd_022(), PX_TC_EXECUTION_TIMEOUT);
+    }
+
+}
+<END_MODULE>
+
+<MODULE TTCN XSD XSD.ttcn >
+xsd_tmp_keyword
+<END_MODULE>
+
+<MODULE TTCN UsefulTtcn3Types UsefulTtcn3Types.ttcn >
+usefultypes_tmp_keyword
+<END_MODULE>
+
+<RESULT COUNT>
+error: -3 is not a valid value for type `integer' which has subtype \(0..18446744073709551615\)
+<END_RESULT>
+
+<END_TC>
+:exmp
+
 *---------------------------------------------------------------------*
 :h2. Neg_A_ttcn3_module_xsd_023 negative test
 .*---------------------------------------------------------------------*
diff --git a/conformance_test/xml_tests/positive_tests/ATS/06_built_in_data_types/0601_mapping_of_facets/060107_mininclusive/Pos_060107_mininclusive_004/Pos_060107_mininclusive_004.ttcn b/conformance_test/xml_tests/positive_tests/ATS/06_built_in_data_types/0601_mapping_of_facets/060107_mininclusive/Pos_060107_mininclusive_004/Pos_060107_mininclusive_004.ttcn
index 4d30f51149652b8fe685fba8564fb870923214eb..c0c60f67d6f79128af8cc72078d206fdd6d465c3 100644
--- a/conformance_test/xml_tests/positive_tests/ATS/06_built_in_data_types/0601_mapping_of_facets/060107_mininclusive/Pos_060107_mininclusive_004/Pos_060107_mininclusive_004.ttcn
+++ b/conformance_test/xml_tests/positive_tests/ATS/06_built_in_data_types/0601_mapping_of_facets/060107_mininclusive/Pos_060107_mininclusive_004/Pos_060107_mininclusive_004.ttcn
@@ -43,7 +43,7 @@ module Pos_060107_mininclusive_004 {
     testcase TC_Pos_060107_mininclusive_004() runs on C system C {
         var Raw v_rcv;
 
-        var Raw  v_Raw:="<ns052:e1 xmlns:ns052='schema:Pos_060107_mininclusive_004'>inf</ns052:e1>\n";
+        var Raw  v_Raw:="<ns052:e1 xmlns:ns052='schema:Pos_060107_mininclusive_004'>INF</ns052:e1>\n";
 
         connect(self:p, self:p1);
 
diff --git a/conformance_test/xml_tests/positive_tests/ATS/06_built_in_data_types/0601_mapping_of_facets/060107_mininclusive/Pos_060107_mininclusive_005/Pos_060107_mininclusive_005.ttcn b/conformance_test/xml_tests/positive_tests/ATS/06_built_in_data_types/0601_mapping_of_facets/060107_mininclusive/Pos_060107_mininclusive_005/Pos_060107_mininclusive_005.ttcn
index add303cc883535d6f61b176865dbd907a4129468..8339a190b5f4e27b89d63bf7c43caccef4b648cf 100644
--- a/conformance_test/xml_tests/positive_tests/ATS/06_built_in_data_types/0601_mapping_of_facets/060107_mininclusive/Pos_060107_mininclusive_005/Pos_060107_mininclusive_005.ttcn
+++ b/conformance_test/xml_tests/positive_tests/ATS/06_built_in_data_types/0601_mapping_of_facets/060107_mininclusive/Pos_060107_mininclusive_005/Pos_060107_mininclusive_005.ttcn
@@ -43,7 +43,7 @@ module Pos_060107_mininclusive_005 {
     testcase TC_Pos_060107_mininclusive_005() runs on C system C {
         var Raw v_rcv;
 
-        var Raw  v_Raw:="<ns053:e1 xmlns:ns053='schema:Pos_060107_mininclusive_005'>nan</ns053:e1>\n";
+        var Raw  v_Raw:="<ns053:e1 xmlns:ns053='schema:Pos_060107_mininclusive_005'>NaN</ns053:e1>\n";
 
         connect(self:p, self:p1);
 
diff --git a/conformance_test/xml_tests/positive_tests/ATS/06_built_in_data_types/0601_mapping_of_facets/060108_maxinclusive/Pos_060108_maxinclusive_004/Pos_060108_maxinclusive_004.ttcn b/conformance_test/xml_tests/positive_tests/ATS/06_built_in_data_types/0601_mapping_of_facets/060108_maxinclusive/Pos_060108_maxinclusive_004/Pos_060108_maxinclusive_004.ttcn
index bc375b419d9c45b770c6d5c0fcdadea0385a8a12..2761f19e0e85603135c6dcb5d6eeafeeb4cec43e 100644
--- a/conformance_test/xml_tests/positive_tests/ATS/06_built_in_data_types/0601_mapping_of_facets/060108_maxinclusive/Pos_060108_maxinclusive_004/Pos_060108_maxinclusive_004.ttcn
+++ b/conformance_test/xml_tests/positive_tests/ATS/06_built_in_data_types/0601_mapping_of_facets/060108_maxinclusive/Pos_060108_maxinclusive_004/Pos_060108_maxinclusive_004.ttcn
@@ -43,7 +43,7 @@ module Pos_060108_maxinclusive_004 {
     testcase TC_Pos_060108_maxinclusive_004() runs on C system C {
         var Raw v_rcv;
 
-        var Raw  v_Raw:="<ns057:e1 xmlns:ns057='schema:Pos_060108_maxinclusive_004'>nan</ns057:e1>\n";
+        var Raw  v_Raw:="<ns057:e1 xmlns:ns057='schema:Pos_060108_maxinclusive_004'>NaN</ns057:e1>\n";
 
         connect(self:p, self:p1);
 
diff --git a/conformance_test/xml_tests/positive_tests/ATS/xsd_converted/UsefulTtcn3Types.ttcn b/conformance_test/xml_tests/positive_tests/ATS/xsd_converted/UsefulTtcn3Types.ttcn
index fa840aa04d61546def50071c4554b979a31a7943..9690e0ca53228af50a35625297660b8fd9a5a550 100644
--- a/conformance_test/xml_tests/positive_tests/ATS/xsd_converted/UsefulTtcn3Types.ttcn
+++ b/conformance_test/xml_tests/positive_tests/ATS/xsd_converted/UsefulTtcn3Types.ttcn
@@ -1,7 +1,7 @@
 /*******************************************************************************
 * Copyright (c) 2000-2016 Ericsson Telecom AB
 *
-* XSD to TTCN-3 Translator version: CRL 113 200/5 R5A                       
+* XSD to TTCN-3 Translator version: CRL 113 200/5 R5B01                     
 *
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
@@ -33,9 +33,9 @@ module UsefulTtcn3Types {
 
     type integer unsignedlong (0 .. 4294967295) with { variant "/*unsigned 32 bit*/" };
 
-    type integer longlong /* (  -9223372036854775808 .. 9223372036854775807 ) */ with { variant "/*64 bit*/" };
+    type integer longlong ( -9223372036854775808 .. 9223372036854775807 ) with { variant "/*64 bit*/" };
 
-    type integer unsignedlonglong /* ( 0 .. 18446744073709551615 ) */ with { variant "/*unsigned 64 bit*/" };
+    type integer unsignedlonglong ( 0 .. 18446744073709551615 ) with { variant "/*unsigned 64 bit*/" };
 
     type float IEEE754float with { variant "/*IEEE754 float*/" };
 
diff --git a/conformance_test/xml_tests/positive_tests/ATS/xsd_converted/schema_Neg_060105_enumeration_004.ttcn b/conformance_test/xml_tests/positive_tests/ATS/xsd_converted/schema_Neg_060105_enumeration_004.ttcn
index 7880a71fcf7c2a38935c25e9cf5aefc70fa5439b..ffdb5a5787df457aa61db5d2bf64cf02bc5909e3 100644
--- a/conformance_test/xml_tests/positive_tests/ATS/xsd_converted/schema_Neg_060105_enumeration_004.ttcn
+++ b/conformance_test/xml_tests/positive_tests/ATS/xsd_converted/schema_Neg_060105_enumeration_004.ttcn
@@ -1,7 +1,7 @@
 /*******************************************************************************
 * Copyright (c) 2000-2016 Ericsson Telecom AB
 *
-* XSD to TTCN-3 Translator version: CRL 113 200/5 R5A                       
+* XSD to TTCN-3 Translator version: CRL 113 200/5 R5B01                     
 *
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
@@ -14,7 +14,7 @@
 //  References:
 //  Rev:
 //  Prodnr:
-//  Updated:       Thu Jul  7 12:35:41 2016
+//  Updated:       Mon Oct 10 13:56:48 2016
 //  Contact:       http://ttcn.ericsson.se
 //
 ////////////////////////////////////////////////////////////////////////////////
@@ -58,12 +58,10 @@ with {
 
 type enumerated CTypeEnum
 {
-	b2,
-	uNKNOWN
+	b2
 }
 with {
   variant "text 'b2' as capitalized";
-  variant "text 'uNKNOWN' as capitalized";
 };
 
 
diff --git a/conformance_test/xml_tests/positive_tests/ATS/xsd_converted/schema_Pos_060105_enumeration_006.ttcn b/conformance_test/xml_tests/positive_tests/ATS/xsd_converted/schema_Pos_060105_enumeration_006.ttcn
index 69fd6414e1a5fefb25a9ce97bc379591d9f043db..46266a907a52524d794498560d5b44a90840f3e7 100644
--- a/conformance_test/xml_tests/positive_tests/ATS/xsd_converted/schema_Pos_060105_enumeration_006.ttcn
+++ b/conformance_test/xml_tests/positive_tests/ATS/xsd_converted/schema_Pos_060105_enumeration_006.ttcn
@@ -1,7 +1,7 @@
 /*******************************************************************************
 * Copyright (c) 2000-2016 Ericsson Telecom AB
 *
-* XSD to TTCN-3 Translator version: CRL 113 200/5 R5A                       
+* XSD to TTCN-3 Translator version: CRL 113 200/5 R5B01                     
 *
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
@@ -14,7 +14,7 @@
 //  References:
 //  Rev:
 //  Prodnr:
-//  Updated:       Thu Jul  7 12:35:41 2016
+//  Updated:       Mon Oct 10 13:59:02 2016
 //  Contact:       http://ttcn.ericsson.se
 //
 ////////////////////////////////////////////////////////////////////////////////
@@ -58,12 +58,10 @@ with {
 
 type enumerated CTypeEnum
 {
-	b2,
-	uNKNOWN
+	b2
 }
 with {
   variant "text 'b2' as capitalized";
-  variant "text 'uNKNOWN' as capitalized";
 };
 
 
diff --git a/conformance_test/xml_tests/positive_tests/XML_tests.cfg b/conformance_test/xml_tests/positive_tests/XML_tests.cfg
index 5935a9d24642ca5dace5574bf595c799eabd420a..05e8137e5c6fbfc635ebb12db4faf93a92884768 100644
--- a/conformance_test/xml_tests/positive_tests/XML_tests.cfg
+++ b/conformance_test/xml_tests/positive_tests/XML_tests.cfg
@@ -17,6 +17,7 @@ Pos_050103_imports_001.control
 Pos_050104_attributes_of_the_xsd_schema_element_001.control
 Pos_050104_attributes_of_the_xsd_schema_element_002.control
 Pos_050104_attributes_of_the_xsd_schema_element_003.control
+Pos_050104_attributes_of_the_xsd_schema_element_004.control
 Pos_050104_attributes_of_the_xsd_schema_element_005.control
 Pos_050104_attributes_of_the_xsd_schema_element_006.control
 Pos_050202_name_conversion_rules_001.control
@@ -59,9 +60,12 @@ Pos_060105_enumeration_006.control
 Pos_060107_mininclusive_001.control
 Pos_060107_mininclusive_002.control
 Pos_060107_mininclusive_003.control
+Pos_060107_mininclusive_004.control
+Pos_060107_mininclusive_005.control
 Pos_060108_maxinclusive_001.control
 Pos_060108_maxinclusive_002.control
 Pos_060108_maxinclusive_003.control
+Pos_060108_maxinclusive_004.control
 Pos_060109_minexclusive_001.control
 Pos_060109_minexclusive_002.control
 Pos_060110_maxexclusive_001.control
@@ -242,6 +246,8 @@ Pos_A_ttcn3_module_xsd_017.control
 Pos_A_ttcn3_module_xsd_018.control
 Pos_A_ttcn3_module_xsd_019.control
 Pos_A_ttcn3_module_xsd_020.control
+Pos_A_ttcn3_module_xsd_021.control
+Pos_A_ttcn3_module_xsd_022.control
 Pos_A_ttcn3_module_xsd_023.control
 Pos_A_ttcn3_module_xsd_024.control
 Pos_A_ttcn3_module_xsd_025.control
diff --git a/conformance_test/xml_tests/positive_tests/XML_tests.tpd b/conformance_test/xml_tests/positive_tests/XML_tests.tpd
index b3df439dd32971bdd643154198fb4eaf977754cd..987055f5fcb6d30c1250e793637b418a1b41362d 100644
--- a/conformance_test/xml_tests/positive_tests/XML_tests.tpd
+++ b/conformance_test/xml_tests/positive_tests/XML_tests.tpd
@@ -592,8 +592,8 @@
 	<FileResource projectRelativePath="ATS/xsd_converted/schema_Pos_050104_attributes_of_the_xsd_schema_element_002.ttcn" relativeURI="ATS/xsd_converted/schema_Pos_050104_attributes_of_the_xsd_schema_element_002.ttcn"/>
 	<FileResource projectRelativePath="ATS/05_mapping_xml_schemas/0501_namespaces/050104_attributes/Pos_050104_attributes_of_the_xsd_schema_element_003/Pos_050104_attributes_of_the_xsd_schema_element_003.ttcn" relativeURI="ATS/05_mapping_xml_schemas/0501_namespaces/050104_attributes/Pos_050104_attributes_of_the_xsd_schema_element_003/Pos_050104_attributes_of_the_xsd_schema_element_003.ttcn"/>
 	<FileResource projectRelativePath="ATS/xsd_converted/schema_Pos_050104_attributes_of_the_xsd_schema_element_003.ttcn" relativeURI="ATS/xsd_converted/schema_Pos_050104_attributes_of_the_xsd_schema_element_003.ttcn"/>
-<!--	<FileResource projectRelativePath="ATS/05_mapping_xml_schemas/0501_namespaces/050104_attributes/Pos_050104_attributes_of_the_xsd_schema_element_004/Pos_050104_attributes_of_the_xsd_schema_element_004.ttcn" relativeURI="ATS/05_mapping_xml_schemas/0501_namespaces/050104_attributes/Pos_050104_attributes_of_the_xsd_schema_element_004/Pos_050104_attributes_of_the_xsd_schema_element_004.ttcn"/>
-	<FileResource projectRelativePath="ATS/xsd_converted/schema_Pos_050104_attributes_of_the_xsd_schema_element_004.ttcn" relativeURI="ATS/xsd_converted/schema_Pos_050104_attributes_of_the_xsd_schema_element_004.ttcn"/>-->
+	<FileResource projectRelativePath="ATS/05_mapping_xml_schemas/0501_namespaces/050104_attributes/Pos_050104_attributes_of_the_xsd_schema_element_004/Pos_050104_attributes_of_the_xsd_schema_element_004.ttcn" relativeURI="ATS/05_mapping_xml_schemas/0501_namespaces/050104_attributes/Pos_050104_attributes_of_the_xsd_schema_element_004/Pos_050104_attributes_of_the_xsd_schema_element_004.ttcn"/>
+	<FileResource projectRelativePath="ATS/xsd_converted/schema_Pos_050104_attributes_of_the_xsd_schema_element_004.ttcn" relativeURI="ATS/xsd_converted/schema_Pos_050104_attributes_of_the_xsd_schema_element_004.ttcn"/>
 	<FileResource projectRelativePath="ATS/05_mapping_xml_schemas/0501_namespaces/050104_attributes/Pos_050104_attributes_of_the_xsd_schema_element_005/Pos_050104_attributes_of_the_xsd_schema_element_005.ttcn" relativeURI="ATS/05_mapping_xml_schemas/0501_namespaces/050104_attributes/Pos_050104_attributes_of_the_xsd_schema_element_005/Pos_050104_attributes_of_the_xsd_schema_element_005.ttcn"/>
 	<FileResource projectRelativePath="ATS/xsd_converted/schema_Pos_050104_attributes_of_the_xsd_schema_element_005.ttcn" relativeURI="ATS/xsd_converted/schema_Pos_050104_attributes_of_the_xsd_schema_element_005.ttcn"/>
 	<FileResource projectRelativePath="ATS/05_mapping_xml_schemas/0501_namespaces/050104_attributes/Pos_050104_attributes_of_the_xsd_schema_element_006/Pos_050104_attributes_of_the_xsd_schema_element_006.ttcn" relativeURI="ATS/05_mapping_xml_schemas/0501_namespaces/050104_attributes/Pos_050104_attributes_of_the_xsd_schema_element_006/Pos_050104_attributes_of_the_xsd_schema_element_006.ttcn"/>
@@ -693,18 +693,18 @@
 	<FileResource projectRelativePath="ATS/xsd_converted/schema_Pos_060107_mininclusive_002.ttcn" relativeURI="ATS/xsd_converted/schema_Pos_060107_mininclusive_002.ttcn"/>
 	<FileResource projectRelativePath="ATS/06_built_in_data_types/0601_mapping_of_facets/060107_mininclusive/Pos_060107_mininclusive_003/Pos_060107_mininclusive_003.ttcn" relativeURI="ATS/06_built_in_data_types/0601_mapping_of_facets/060107_mininclusive/Pos_060107_mininclusive_003/Pos_060107_mininclusive_003.ttcn"/>
 	<FileResource projectRelativePath="ATS/xsd_converted/schema_Pos_060107_mininclusive_003.ttcn" relativeURI="ATS/xsd_converted/schema_Pos_060107_mininclusive_003.ttcn"/>
-<!--	<FileResource projectRelativePath="ATS/06_built_in_data_types/0601_mapping_of_facets/060107_mininclusive/Pos_060107_mininclusive_004/Pos_060107_mininclusive_004.ttcn" relativeURI="ATS/06_built_in_data_types/0601_mapping_of_facets/060107_mininclusive/Pos_060107_mininclusive_004/Pos_060107_mininclusive_004.ttcn"/>
-	<FileResource projectRelativePath="ATS/xsd_converted/schema_Pos_060107_mininclusive_004.ttcn" relativeURI="ATS/xsd_converted/schema_Pos_060107_mininclusive_004.ttcn"/>-->
-<!--	<FileResource projectRelativePath="ATS/06_built_in_data_types/0601_mapping_of_facets/060107_mininclusive/Pos_060107_mininclusive_005/Pos_060107_mininclusive_005.ttcn" relativeURI="ATS/06_built_in_data_types/0601_mapping_of_facets/060107_mininclusive/Pos_060107_mininclusive_005/Pos_060107_mininclusive_005.ttcn"/>
-	<FileResource projectRelativePath="ATS/xsd_converted/schema_Pos_060107_mininclusive_005.ttcn" relativeURI="ATS/xsd_converted/schema_Pos_060107_mininclusive_005.ttcn"/>-->
+	<FileResource projectRelativePath="ATS/06_built_in_data_types/0601_mapping_of_facets/060107_mininclusive/Pos_060107_mininclusive_004/Pos_060107_mininclusive_004.ttcn" relativeURI="ATS/06_built_in_data_types/0601_mapping_of_facets/060107_mininclusive/Pos_060107_mininclusive_004/Pos_060107_mininclusive_004.ttcn"/>
+	<FileResource projectRelativePath="ATS/xsd_converted/schema_Pos_060107_mininclusive_004.ttcn" relativeURI="ATS/xsd_converted/schema_Pos_060107_mininclusive_004.ttcn"/>
+	<FileResource projectRelativePath="ATS/06_built_in_data_types/0601_mapping_of_facets/060107_mininclusive/Pos_060107_mininclusive_005/Pos_060107_mininclusive_005.ttcn" relativeURI="ATS/06_built_in_data_types/0601_mapping_of_facets/060107_mininclusive/Pos_060107_mininclusive_005/Pos_060107_mininclusive_005.ttcn"/>
+	<FileResource projectRelativePath="ATS/xsd_converted/schema_Pos_060107_mininclusive_005.ttcn" relativeURI="ATS/xsd_converted/schema_Pos_060107_mininclusive_005.ttcn"/>
 	<FileResource projectRelativePath="ATS/06_built_in_data_types/0601_mapping_of_facets/060108_maxinclusive/Pos_060108_maxinclusive_001/Pos_060108_maxinclusive_001.ttcn" relativeURI="ATS/06_built_in_data_types/0601_mapping_of_facets/060108_maxinclusive/Pos_060108_maxinclusive_001/Pos_060108_maxinclusive_001.ttcn"/>
 	<FileResource projectRelativePath="ATS/xsd_converted/schema_Pos_060108_maxinclusive_001.ttcn" relativeURI="ATS/xsd_converted/schema_Pos_060108_maxinclusive_001.ttcn"/>
 	<FileResource projectRelativePath="ATS/06_built_in_data_types/0601_mapping_of_facets/060108_maxinclusive/Pos_060108_maxinclusive_002/Pos_060108_maxinclusive_002.ttcn" relativeURI="ATS/06_built_in_data_types/0601_mapping_of_facets/060108_maxinclusive/Pos_060108_maxinclusive_002/Pos_060108_maxinclusive_002.ttcn"/>
 	<FileResource projectRelativePath="ATS/xsd_converted/schema_Pos_060108_maxinclusive_002.ttcn" relativeURI="ATS/xsd_converted/schema_Pos_060108_maxinclusive_002.ttcn"/>
 	<FileResource projectRelativePath="ATS/06_built_in_data_types/0601_mapping_of_facets/060108_maxinclusive/Pos_060108_maxinclusive_003/Pos_060108_maxinclusive_003.ttcn" relativeURI="ATS/06_built_in_data_types/0601_mapping_of_facets/060108_maxinclusive/Pos_060108_maxinclusive_003/Pos_060108_maxinclusive_003.ttcn"/>
 	<FileResource projectRelativePath="ATS/xsd_converted/schema_Pos_060108_maxinclusive_003.ttcn" relativeURI="ATS/xsd_converted/schema_Pos_060108_maxinclusive_003.ttcn"/>
-<!--	<FileResource projectRelativePath="ATS/06_built_in_data_types/0601_mapping_of_facets/060108_maxinclusive/Pos_060108_maxinclusive_004/Pos_060108_maxinclusive_004.ttcn" relativeURI="ATS/06_built_in_data_types/0601_mapping_of_facets/060108_maxinclusive/Pos_060108_maxinclusive_004/Pos_060108_maxinclusive_004.ttcn"/>
-	<FileResource projectRelativePath="ATS/xsd_converted/schema_Pos_060108_maxinclusive_004.ttcn" relativeURI="ATS/xsd_converted/schema_Pos_060108_maxinclusive_004.ttcn"/>-->
+	<FileResource projectRelativePath="ATS/06_built_in_data_types/0601_mapping_of_facets/060108_maxinclusive/Pos_060108_maxinclusive_004/Pos_060108_maxinclusive_004.ttcn" relativeURI="ATS/06_built_in_data_types/0601_mapping_of_facets/060108_maxinclusive/Pos_060108_maxinclusive_004/Pos_060108_maxinclusive_004.ttcn"/>
+	<FileResource projectRelativePath="ATS/xsd_converted/schema_Pos_060108_maxinclusive_004.ttcn" relativeURI="ATS/xsd_converted/schema_Pos_060108_maxinclusive_004.ttcn"/>
 <!--	<FileResource projectRelativePath="ATS/06_built_in_data_types/0601_mapping_of_facets/060109_minexclusive/Neg_060109_minexclusive_001/Neg_060109_minexclusive_001.ttcn" relativeURI="ATS/06_built_in_data_types/0601_mapping_of_facets/060109_minexclusive/Neg_060109_minexclusive_001/Neg_060109_minexclusive_001.ttcn"/>
 	<FileResource projectRelativePath="ATS/xsd_converted/schema_Neg_060109_minexclusive_001.ttcn" relativeURI="ATS/xsd_converted/schema_Neg_060109_minexclusive_001.ttcn"/>-->
 <!--	<FileResource projectRelativePath="ATS/06_built_in_data_types/0601_mapping_of_facets/060109_minexclusive/Neg_060109_minexclusive_002/Neg_060109_minexclusive_002.ttcn" relativeURI="ATS/06_built_in_data_types/0601_mapping_of_facets/060109_minexclusive/Neg_060109_minexclusive_002/Neg_060109_minexclusive_002.ttcn"/>
@@ -1180,8 +1180,8 @@
 	<FileResource projectRelativePath="ATS/A_ttcn3_module_xsd/Pos_A_ttcn3_module_xsd_018/Pos_A_ttcn3_module_xsd_018.ttcn" relativeURI="ATS/A_ttcn3_module_xsd/Pos_A_ttcn3_module_xsd_018/Pos_A_ttcn3_module_xsd_018.ttcn"/>
 	<FileResource projectRelativePath="ATS/A_ttcn3_module_xsd/Pos_A_ttcn3_module_xsd_019/Pos_A_ttcn3_module_xsd_019.ttcn" relativeURI="ATS/A_ttcn3_module_xsd/Pos_A_ttcn3_module_xsd_019/Pos_A_ttcn3_module_xsd_019.ttcn"/>
 	<FileResource projectRelativePath="ATS/A_ttcn3_module_xsd/Pos_A_ttcn3_module_xsd_020/Pos_A_ttcn3_module_xsd_020.ttcn" relativeURI="ATS/A_ttcn3_module_xsd/Pos_A_ttcn3_module_xsd_020/Pos_A_ttcn3_module_xsd_020.ttcn"/>
-<!--	<FileResource projectRelativePath="ATS/A_ttcn3_module_xsd/Pos_A_ttcn3_module_xsd_021/Pos_A_ttcn3_module_xsd_021.ttcn" relativeURI="ATS/A_ttcn3_module_xsd/Pos_A_ttcn3_module_xsd_021/Pos_A_ttcn3_module_xsd_021.ttcn"/>-->
-<!--	<FileResource projectRelativePath="ATS/A_ttcn3_module_xsd/Pos_A_ttcn3_module_xsd_022/Pos_A_ttcn3_module_xsd_022.ttcn" relativeURI="ATS/A_ttcn3_module_xsd/Pos_A_ttcn3_module_xsd_022/Pos_A_ttcn3_module_xsd_022.ttcn"/>-->
+	<FileResource projectRelativePath="ATS/A_ttcn3_module_xsd/Pos_A_ttcn3_module_xsd_021/Pos_A_ttcn3_module_xsd_021.ttcn" relativeURI="ATS/A_ttcn3_module_xsd/Pos_A_ttcn3_module_xsd_021/Pos_A_ttcn3_module_xsd_021.ttcn"/>
+	<FileResource projectRelativePath="ATS/A_ttcn3_module_xsd/Pos_A_ttcn3_module_xsd_022/Pos_A_ttcn3_module_xsd_022.ttcn" relativeURI="ATS/A_ttcn3_module_xsd/Pos_A_ttcn3_module_xsd_022/Pos_A_ttcn3_module_xsd_022.ttcn"/>
 	<FileResource projectRelativePath="ATS/A_ttcn3_module_xsd/Pos_A_ttcn3_module_xsd_023/Pos_A_ttcn3_module_xsd_023.ttcn" relativeURI="ATS/A_ttcn3_module_xsd/Pos_A_ttcn3_module_xsd_023/Pos_A_ttcn3_module_xsd_023.ttcn"/>
 	<FileResource projectRelativePath="ATS/A_ttcn3_module_xsd/Pos_A_ttcn3_module_xsd_024/Pos_A_ttcn3_module_xsd_024.ttcn" relativeURI="ATS/A_ttcn3_module_xsd/Pos_A_ttcn3_module_xsd_024/Pos_A_ttcn3_module_xsd_024.ttcn"/>
 	<FileResource projectRelativePath="ATS/A_ttcn3_module_xsd/Pos_A_ttcn3_module_xsd_025/Pos_A_ttcn3_module_xsd_025.ttcn" relativeURI="ATS/A_ttcn3_module_xsd/Pos_A_ttcn3_module_xsd_025/Pos_A_ttcn3_module_xsd_025.ttcn"/>
diff --git a/usrguide/SoC_TITAN.docx b/usrguide/SoC_TITAN.docx
index 9d79f59fb1e5b81f2b7b2840f1735c5e88a439aa..b740578ba3431c2536063101f41f360365d84072 100644
Binary files a/usrguide/SoC_TITAN.docx and b/usrguide/SoC_TITAN.docx differ
diff --git a/usrguide/SoC_XML_TITAN.docx b/usrguide/SoC_XML_TITAN.docx
index 5bd5ce3450d0a27e7ae54e6ec7828ed3780877ee..ee60a6ed23e36060ee4aa05645b1d690404c1bf4 100644
Binary files a/usrguide/SoC_XML_TITAN.docx and b/usrguide/SoC_XML_TITAN.docx differ
diff --git a/xsdconvert/RootType.cc b/xsdconvert/RootType.cc
index 86eb146c3b3c7a51e9c781e903355e7dfc298875..1798667e138a5dceea3a941fffd6b23d11164bf6 100644
--- a/xsdconvert/RootType.cc
+++ b/xsdconvert/RootType.cc
@@ -261,3 +261,38 @@ bool RootType::hasVariant(const Mstring& var) const{
   }
   return false;
 }
+
+void TypeType::upload(const Mstring& input, bool prefixCheck) {
+  if (input.empty()) return;
+  convertedValue = input;
+  originalValueWoPrefix = input.getValueWithoutPrefix(':');
+  if (isBuiltInType(input)) {
+    refPrefix = input.getPrefix(':');
+    if (prefixCheck) {
+      checkBuintInTypeReference();
+    }
+  }
+}
+
+void TypeType::checkBuintInTypeReference() {
+  bool found = false;
+  for (List<Mstring>::iterator px = t_module->getxmlSchemaPrefixes().begin(); px; px = px->Next) {
+    if (refPrefix == px->Data) {
+      found = true;
+      break;
+    }
+  }
+  // Second chance. It may be a prefix from one of the xsd-s.
+  if (!found) {
+    for (List<NamespaceType>::iterator ns = t_module->getDeclaredNamespaces().begin(); ns; ns = ns->Next) {
+      if (refPrefix == ns->Data.prefix.c_str()) {
+        found = true;
+        break;
+      }
+    }
+  }
+  if (!found) {
+    printError(t_module->getSchemaname(), t_parser->getActualLineNumber(), Mstring("Cannot find the namespace of type: ") + originalValueWoPrefix);
+    t_parser->incrNumErrors();
+  }
+}
\ No newline at end of file
diff --git a/xsdconvert/RootType.hh b/xsdconvert/RootType.hh
index 7574136de6dd4a20de51d294abe518298e3f174a..a3fe1ae4cd41f102ed139a2004cc96c90456d8e5 100644
--- a/xsdconvert/RootType.hh
+++ b/xsdconvert/RootType.hh
@@ -117,40 +117,8 @@ public:
   {}
   // Default copy constructor, assignment operator and destructor are used
 
-  void upload(const Mstring& input, bool prefixCheck = true) {
-    if (input.empty()) return;
-    convertedValue = input;
-    originalValueWoPrefix = input.getValueWithoutPrefix(':');
-    if (isBuiltInType(input)) {
-      refPrefix = input.getPrefix(':');
-      if (prefixCheck) {
-        checkBuintInTypeReference();
-      }
-    }
-  }
-  
-  void checkBuintInTypeReference() {
-  bool found = false;
-  for (List<Mstring>::iterator px = t_module->getxmlSchemaPrefixes().begin(); px; px = px->Next) {
-    if (refPrefix == px->Data) {
-      found = true;
-      break;
-    }
-  }
-  // Second chance. It may be a prefix from one of the xsd-s.
-  if (!found) {
-    for (List<NamespaceType>::iterator ns = t_module->getDeclaredNamespaces().begin(); ns; ns = ns->Next) {
-      if (refPrefix == ns->Data.prefix.c_str()) {
-        found = true;
-        break;
-      }
-    }
-  }
-  if (!found) {
-    printError(t_module->getSchemaname(), t_parser->getActualLineNumber(), Mstring("Cannot find the namespace of type: ") + originalValueWoPrefix);
-    t_parser->incrNumErrors();
-  }
-}
+  void upload(const Mstring& input, bool prefixCheck = true);  
+  void checkBuintInTypeReference();
 };
 
 class SimpleType;