From a41585e2bd88fa92d4630358fd9b87191d8a3d17 Mon Sep 17 00:00:00 2001
From: Miguel Angel Reina Ortega <miguelangel.reinaortega@etsi.org>
Date: Mon, 6 Mar 2023 13:58:38 +0100
Subject: [PATCH] Using f_getResourceAddress instead of f_getResourceId where
 possible

Signed-off-by: Miguel Angel Reina Ortega <miguelangel.reinaortega@etsi.org>
---
 LibOneM2M/OneM2M_Functions.ttcn     |  8 +--
 OneM2M_PermutationFunctions.ttcn    | 74 ++++++++++++-------------
 OneM2M_Testcases_CSE_Release_1.ttcn | 86 +++++++++++++++++------------
 OneM2M_Testcases_CSE_Release_2.ttcn |  8 +--
 4 files changed, 95 insertions(+), 81 deletions(-)

diff --git a/LibOneM2M/OneM2M_Functions.ttcn b/LibOneM2M/OneM2M_Functions.ttcn
index 690e880..755bb00 100644
--- a/LibOneM2M/OneM2M_Functions.ttcn
+++ b/LibOneM2M/OneM2M_Functions.ttcn
@@ -1091,7 +1091,7 @@ module OneM2M_Functions {
 				
 				if(vc_acpIndex != -1) {
 					vc_resourcesIndexToBeDeleted := {vc_acpIndex};//TODO Not needed
-					v_request := valueof(m_createAe(p_appId, {f_getResourceId(vc_resourcesList[vc_acpIndex].resource)}, -));
+					v_request := valueof(m_createAe(p_appId, {f_getResourceAddress(vc_acpIndex)}, -));
 					
 					//Set CSEBase IUT as target
 					v_request.to_ := f_getResourceAddress();
@@ -4298,7 +4298,7 @@ module OneM2M_Functions {
 					if (p_parentIndex == -1){
 						p_request.primitiveContent.group_.memberIDs := {};
 					}else{
-						p_request.primitiveContent.group_.memberIDs := {f_getResourceId(vc_resourcesList[p_parentIndex].resource)};
+						p_request.primitiveContent.group_.memberIDs := {f_getResourceAddress(p_parentIndex)};
 					}
 				}
 			} else if(p_resourceType == int3){//container
@@ -4308,7 +4308,7 @@ module OneM2M_Functions {
 				}	
 				if(ispresent(p_request.primitiveContent.container.accessControlPolicyIDs)) {
 					if((match(valueof(p_request.primitiveContent.container.accessControlPolicyIDs), v_defaultAcpIDs )) and (isbound(vc_acpIndex))){
-						p_request.primitiveContent.container.accessControlPolicyIDs := {f_getResourceId(vc_resourcesList[vc_acpIndex].resource)};
+						p_request.primitiveContent.container.accessControlPolicyIDs := {f_getResourceAddress(vc_acpIndex)};
 					}	
 				}  
 			} else if (p_resourceType == int15) {//pollingChannel
@@ -4330,7 +4330,7 @@ module OneM2M_Functions {
 				//accessControlPolicyIds
 				if(ispresent(p_request.primitiveContent.subscription.accessControlPolicyIDs)) {
 					if(match(valueof(p_request.primitiveContent.subscription.accessControlPolicyIDs), v_defaultAcpIDs )){
-						p_request.primitiveContent.subscription.accessControlPolicyIDs := {f_getResourceId(vc_resourcesList[vc_acpIndex].resource)};
+						p_request.primitiveContent.subscription.accessControlPolicyIDs := {f_getResourceAddress(vc_acpIndex)};
 					}	
 				}  
 			} else if (p_resourceType == int4) {//contentInstance
diff --git a/OneM2M_PermutationFunctions.ttcn b/OneM2M_PermutationFunctions.ttcn
index 6b9c48b..8f4d6cd 100644
--- a/OneM2M_PermutationFunctions.ttcn
+++ b/OneM2M_PermutationFunctions.ttcn
@@ -947,7 +947,7 @@ module OneM2M_PermutationFunctions {
 
 						v_resourceIndex := f_cse_createResource(int3, m_createContainerBase, v_aeIndex); 
 					
-						v_groupRequest.primitiveContent.group_.memberIDs := {f_getResourceId(vc_resourcesList[v_resourceIndex].resource)};
+						v_groupRequest.primitiveContent.group_.memberIDs := {f_getResourceAddress(v_resourceIndex)};
 						
 						v_groupIndex := f_cse_createResource(int9, v_groupRequest, v_aeIndex); 
 					
@@ -1188,7 +1188,7 @@ module OneM2M_PermutationFunctions {
 					
 						v_resourceIndex := f_cse_createResource(int3, m_createContainerBase, v_aeIndex); 
 					
-						v_groupRequest.primitiveContent.group_.memberIDs := {f_getResourceId(vc_resourcesList[v_resourceIndex].resource)};
+						v_groupRequest.primitiveContent.group_.memberIDs := {f_getResourceAddress(v_resourceIndex)};
 												
 						v_groupIndex := f_cse_createResource(int9, v_groupRequest, v_aeIndex); 
 
@@ -1445,7 +1445,7 @@ module OneM2M_PermutationFunctions {
 					
 						v_resourceIndex := f_cse_createResource(int3, m_createContainerBase, v_aeIndex); 
 					
-						v_groupRequest.primitiveContent.group_.memberIDs := {f_getResourceId(vc_resourcesList[v_resourceIndex].resource)};
+						v_groupRequest.primitiveContent.group_.memberIDs := {f_getResourceAddress(v_resourceIndex)};
 						
 						v_groupIndex := f_cse_createResource(int9, v_groupRequest, v_aeIndex); 
 					
@@ -1695,7 +1695,7 @@ module OneM2M_PermutationFunctions {
 					
 						v_resourceIndex := f_cse_createResource(int3, m_createContainerBase, v_aeIndex); 
 					
-						v_groupRequest.primitiveContent.group_.memberIDs := {f_getResourceId(vc_resourcesList[v_resourceIndex].resource)};
+						v_groupRequest.primitiveContent.group_.memberIDs := {f_getResourceAddress(v_resourceIndex)};
 						
 						v_groupIndex := f_cse_createResource(int9, v_groupRequest, v_aeIndex); 
 					
@@ -2835,7 +2835,7 @@ module OneM2M_PermutationFunctions {
 							f_cse_createAccessControlPolicyAux(-, -, int60);//c_UDNDi);
 						}	
 												
-						v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[vc_acpIndex].resource)}, -);
+						v_aeIndex := f_cse_preamble_registerAe({f_getResourceAddress(vc_acpIndex)}, -);
 						
 						// Test Body
 						v_request := f_getCreateRequestPrimitive(p_resourceType, p_requestPrimitive, v_aeIndex);
@@ -3926,7 +3926,7 @@ module OneM2M_PermutationFunctions {
 						// Preamble
 						if(p_resourceType != int1) {
 							f_cse_createAccessControlPolicyAux(-, -, int61);//c_CRUDNDi)
-							p_requestPrimitive := f_setAcpId(p_requestPrimitive, {f_getResourceId(vc_resourcesList[vc_acpIndex].resource)});
+							p_requestPrimitive := f_setAcpId(p_requestPrimitive, {f_getResourceAddress(vc_acpIndex)});
 						}
 						
 						v_aeIndex := f_cse_preamble_registerAe();//c_CRUDNDi;
@@ -5486,7 +5486,7 @@ module OneM2M_PermutationFunctions {
 						f_cse_preamble_subscriptionVerification(v_ae2Index, p_createRequestPrimitive, p_resourceType);
 						
 						if(p_resourceType != int1) {
-							p_createRequestPrimitive := f_setAcpId(p_createRequestPrimitive,{f_getResourceId(vc_resourcesList[vc_acpIndex].resource)});//c_CRDNDi);
+							p_createRequestPrimitive := f_setAcpId(p_createRequestPrimitive,{f_getResourceAddress(vc_acpIndex)});//c_CRDNDi);
 						}
 						
 						v_resourceIndex := f_cse_createResource(p_resourceType, p_createRequestPrimitive, v_aeIndex); 				
@@ -5827,8 +5827,8 @@ module OneM2M_PermutationFunctions {
 							v_acp1Index := f_cse_createResource(int1, m_createAcp("MyAcp1"), vc_aeIndex); 				
 							v_acp2Index := f_cse_createResource(int1, m_createAcp("MyAcp2"), vc_aeIndex); 				
 						
-							p_createRequestPrimitive := f_setAcpId(p_createRequestPrimitive,{f_getResourceId(vc_resourcesList[v_acp1Index].resource)});
-							p_updateRequestPrimitive := f_setAcpId(p_updateRequestPrimitive,{f_getResourceId(vc_resourcesList[v_acp2Index].resource)});
+							p_createRequestPrimitive := f_setAcpId(p_createRequestPrimitive,{f_getResourceAddress(v_acp1Index)});
+							p_updateRequestPrimitive := f_setAcpId(p_updateRequestPrimitive,{f_getResourceAddress(v_acp2Index)});
 						
 						}
 						
@@ -6021,7 +6021,7 @@ module OneM2M_PermutationFunctions {
 							v_ae2Index := f_getResourceFromAeSimu(vc_ae2);
 					
 							if(ispresent(v_request.primitiveContent.group_.memberIDs)) {
-								v_request.primitiveContent.group_.memberIDs := {f_getResourceId(vc_resourcesList[v_ae2Index].resource)};
+								v_request.primitiveContent.group_.memberIDs := {f_getResourceAddress(v_ae2Index)};
 							}
 						}
 						
@@ -6589,7 +6589,7 @@ module OneM2M_PermutationFunctions {
 						if(p_resourceType == int1) {
 							p_createRequestPrimitive.primitiveContent.accessControlPolicy.selfPrivileges.accessControlRule_list := {m_createAcr({f_getResourceId(vc_resourcesList[v_aeIndex].resource)}, int55)};
 						} else {
-							p_createRequestPrimitive := f_setAcpId(p_createRequestPrimitive, {f_getResourceId(vc_resourcesList[vc_acpIndex].resource)});
+							p_createRequestPrimitive := f_setAcpId(p_createRequestPrimitive, {f_getResourceAddress(vc_acpIndex)});
 						}
                 		
 						//Creation of resource
@@ -7069,8 +7069,8 @@ module OneM2M_PermutationFunctions {
 						v_acpIndex := f_cse_createResource(int1, v_createAcp, v_aeIndex); // AE child resource
 						v_containerIndex_1 := f_cse_createResource(int3, m_createContainer_noResourceName, v_aeIndex); // AE child resource
 						v_containerIndex_2 := f_cse_createResource(int3, m_createContainer_noResourceName, v_aeIndex); // AE child resource
-						v_memberIDs := {f_getResourceId(vc_resourcesList[v_containerIndex_1].resource), f_getResourceId(vc_resourcesList[v_containerIndex_2].resource)};
-						v_membersAcpIds := {f_getResourceId(vc_resourcesList[v_acpIndex].resource)};
+						v_memberIDs := {f_getResourceAddress(v_containerIndex_1), f_getResourceAddress(v_containerIndex_2)};
+						v_membersAcpIds := {f_getResourceAddress(v_acpIndex)};
 						v_groupIndex := f_cse_createResource(int9, m_createGroup(2, v_memberIDs, omit, int3, -, v_membersAcpIds, -), v_aeIndex); // AE child resource
 	       
 						p_requestPrimitive.to_ := f_getResourceAddress(v_groupIndex) & "/fopt";
@@ -7144,8 +7144,8 @@ module OneM2M_PermutationFunctions {
 						v_acpIndex := f_cse_createResource(int1, v_createAcp, v_aeIndex); // AE child resource
 						v_containerIndex_1 := f_cse_createResource(int3, m_createContainer_noResourceName, v_aeIndex); // AE child resource
 						v_containerIndex_2 := f_cse_createResource(int3, m_createContainer_noResourceName, v_aeIndex); // AE child resource
-						v_memberIDs := {f_getResourceId(vc_resourcesList[v_containerIndex_1].resource), f_getResourceId(vc_resourcesList[v_containerIndex_2].resource)};
-						v_membersAcpIds := {f_getResourceId(vc_resourcesList[v_acpIndex].resource)};
+						v_memberIDs := {f_getResourceAddress(v_containerIndex_1), f_getResourceAddress(v_containerIndex_2)};
+						v_membersAcpIds := {f_getResourceAddress(v_acpIndex)};
 						v_groupIndex := f_cse_createResource(int9, m_createGroup(2, v_memberIDs, omit, int3, -, v_membersAcpIds), v_aeIndex); // AE child resource
 	   
 						p_requestPrimitive.to_ := f_getResourceAddress(v_groupIndex) & "/fopt";
@@ -7209,8 +7209,8 @@ module OneM2M_PermutationFunctions {
 						v_acpIndex := f_cse_createResource(int1, v_createAcp, v_aeIndex); // AE child resource
 						v_containerIndex_1 := f_cse_createResource(int3, m_createContainer_noResourceName, v_aeIndex); // AE child resource
 						v_containerIndex_2 := f_cse_createResource(int3, m_createContainer_noResourceName, v_aeIndex); // AE child resource
-						v_memberIDs := {f_getResourceId(vc_resourcesList[v_containerIndex_1].resource), f_getResourceId(vc_resourcesList[v_containerIndex_2].resource)};
-						v_acpIds := {f_getResourceId(vc_resourcesList[v_acpIndex].resource)};
+						v_memberIDs := {f_getResourceAddress(v_containerIndex_1), f_getResourceAddress(v_containerIndex_2)};
+						v_acpIds := {f_getResourceAddress(v_acpIndex)};
 						v_groupIndex := f_cse_createResource(int9, m_createGroup(2, v_memberIDs, v_acpIds, int3, -, -), v_aeIndex); // AE child resource
 						
 						p_requestPrimitive.to_ := f_getResourceAddress(v_groupIndex) & "/fopt";
@@ -7284,8 +7284,8 @@ module OneM2M_PermutationFunctions {
 						v_acpIndex := f_cse_createResource(int1, v_createAcp, v_aeIndex); // AE child resource
 						v_containerIndex_1 := f_cse_createResource(int3, m_createContainer_noResourceName, v_aeIndex); // AE child resource
 						v_containerIndex_2 := f_cse_createResource(int3, m_createContainer_noResourceName, v_aeIndex); // AE child resource
-						v_memberIDs := {f_getResourceId(vc_resourcesList[v_containerIndex_1].resource), f_getResourceId(vc_resourcesList[v_containerIndex_2].resource)};
-						v_acpIDs := {f_getResourceId(vc_resourcesList[v_acpIndex].resource)};
+						v_memberIDs := {f_getResourceAddress(v_containerIndex_1), f_getResourceAddress(v_containerIndex_2)};
+						v_acpIDs := {f_getResourceAddress(v_acpIndex)};
 						v_groupIndex := f_cse_createResource(int9, m_createGroup(2, v_memberIDs, v_acpIDs, int3), v_aeIndex); // AE child resource
 	   
 						p_requestPrimitive.to_ := f_getResourceAddress(v_groupIndex) & "/fopt";
@@ -7347,7 +7347,7 @@ module OneM2M_PermutationFunctions {
 						// Preamble
 						v_acpIndex := f_cse_createResource(int1, v_createAcp, -); // AE child resource
 						
-						v_acpIds := {f_getResourceId(vc_resourcesList[v_acpIndex].resource)};
+						v_acpIds := {f_getResourceAddress(v_acpIndex)};
 						
 						v_aeIndex_1 := f_cse_preamble_registerAe(v_acpIds, -); //c_CRUDNDi
 						
@@ -7359,7 +7359,7 @@ module OneM2M_PermutationFunctions {
 
 						v_aeIndex_2 := f_getLatestResource(vc_ae2);
 
-						v_memberIDs := {f_getResourceId(vc_resourcesList[v_aeIndex_1].resource), f_getResourceId(vc_resourcesList[v_aeIndex_2].resource)};
+						v_memberIDs := {f_getResourceAddress(v_aeIndex_1), f_getResourceAddress(v_aeIndex_2)};
 						v_groupIndex := f_cse_createResource(int9, m_createGroup(2, v_memberIDs, omit, int2, -, v_acpIds), v_aeIndex_1); // AE child resource
 						   
 						p_requestPrimitive.to_ := f_getResourceAddress(v_groupIndex) & "/fopt";
@@ -7438,7 +7438,7 @@ module OneM2M_PermutationFunctions {
 						// Preamble
 						v_acpIndex := f_cse_createResource(int1, v_createAcp, -); // AE child resource
 						
-						v_acpIds := {f_getResourceId(vc_resourcesList[v_acpIndex].resource)};
+						v_acpIds := {f_getResourceAddress(v_acpIndex)};
 						
 						v_aeIndex_1 := f_cse_preamble_registerAe(v_acpIds, -); //c_CRUDNDi
 						
@@ -7460,8 +7460,8 @@ module OneM2M_PermutationFunctions {
 						f_aeSimu_checkComponentDoneAndGetVerdict(vc_ae2);
 						
 						
-						v_memberIDs := {f_getResourceId(vc_resourcesList[v_aeIndex_1].resource), f_getResourceId(vc_resourcesList[v_ae2LocalIndex].resource)};
-						//v_membersAcpIds := {f_getResourceId(vc_resourcesList[v_acpIndex].resource)};
+						v_memberIDs := {f_getResourceAddress(v_aeIndex_1), f_getResourceAddress(v_ae2LocalIndex)};
+						//v_membersAcpIds := {f_getResourceAddress(v_acpIndex)};
 						v_groupIndex := f_cse_createResource(int9, m_createGroup(2, v_memberIDs, omit, int2, -, v_acpIds, -), v_aeIndex_1);
 	   
 						p_requestPrimitive.to_ := f_getResourceAddress(v_groupIndex) & "/" & c_resourceShortNameFanOutPoint & "/" & c_defaultContainerResourceName;
@@ -7702,7 +7702,7 @@ module OneM2M_PermutationFunctions {
 	
 							// Preamble
 							v_acpIndex := f_cse_createResource(int1, v_createRequest); // CSE child resource
-							v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[v_acpIndex].resource)}, -);
+							v_aeIndex := f_cse_preamble_registerAe({f_getResourceAddress(v_acpIndex)}, -);
 							
 							vc_ae2.start(f_cse_createResource(int2, m_createAe(PX_TS_AE2.appId, -, PX_TS_AE2.aeIdStem, c_defaultAe2ResourceName, -), -1)); // AE2 is registred
 							f_aeSimu_checkComponentDoneAndGetVerdict(vc_ae2);
@@ -7771,7 +7771,7 @@ module OneM2M_PermutationFunctions {
 							v_acpIndex1 := f_cse_createResource(int1, m_createAcp("MyAcp1")); // CSE child resource
 							v_acpIndex2 := f_cse_createResource(int1, m_createAcp("MyAcp2")); // CSE child resource
 							
-							v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[v_acpIndex1].resource), f_getResourceId(vc_resourcesList[v_acpIndex2].resource)}, -);
+							v_aeIndex := f_cse_preamble_registerAe({f_getResourceAddress(v_acpIndex1), f_getResourceAddress(v_acpIndex2)}, -);
 			
 							v_accessControlRule_1 := valueof(m_createAcr({f_getOriginator(v_aeIndex)}, int3)); // c_CR 
 							v_setOfArcs.accessControlRule_list := {v_accessControlRule_1};
@@ -7836,7 +7836,7 @@ module OneM2M_PermutationFunctions {
 							v_createRequest := valueof(m_createAcp( -, {"testDomain"}, -));
 							v_acpIndex := f_cse_createResource(int1, v_createRequest); // CSE child resource
 							
-							v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[v_acpIndex].resource)}, -);
+							v_aeIndex := f_cse_preamble_registerAe({f_getResourceAddress(v_acpIndex)}, -);
 							
 							// Test Body
 							p_requestPrimitive.to_ := f_getResourceAddress(v_aeIndex);
@@ -7910,7 +7910,7 @@ module OneM2M_PermutationFunctions {
 							v_createRequest := f_getCreateRequestPrimitive(int1, m_createAcpBase, -1);
 							v_acpIndex := f_cse_createResource(int1, v_createRequest); // CSE child resource
 							
-							v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[v_acpIndex].resource)}, -);
+							v_aeIndex := f_cse_preamble_registerAe({f_getResourceAddress(v_acpIndex)}, -);
 			
 							vc_ae2.start(f_cse_createResource(int2, m_createAe(PX_TS_AE2.appId, -, PX_TS_AE2.aeIdStem, c_defaultAe2ResourceName, -), -1)); // AE2 is registred
 							f_aeSimu_checkComponentDoneAndGetVerdict(vc_ae2);
@@ -7972,7 +7972,7 @@ module OneM2M_PermutationFunctions {
 							v_createRequest.primitiveContent.accessControlPolicy.privileges.accessControlRule_list := {v_accessControlRule};
 							vc_acpIndex := f_cse_createResource(int1, v_createRequest); // CSE child resource
 							
-							v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[vc_acpIndex].resource)}, -);
+							v_aeIndex := f_cse_preamble_registerAe({f_getResourceAddress(vc_acpIndex)}, -);
 			
 							// Test Body
 							p_requestPrimitive.to_ := f_getResourceAddress(v_aeIndex);
@@ -8041,7 +8041,7 @@ module OneM2M_PermutationFunctions {
 							v_createRequest.primitiveContent.accessControlPolicy.privileges.accessControlRule_list := {v_accessControlRule};
 							vc_acpIndex := f_cse_createResource(int1, v_createRequest); // CSE child resource
 							
-							v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[vc_acpIndex].resource)}, -);
+							v_aeIndex := f_cse_preamble_registerAe({f_getResourceAddress(vc_acpIndex)}, -);
 			
 							// Test Body
 							p_requestPrimitive.to_ := f_getResourceAddress(v_aeIndex);
@@ -8103,7 +8103,7 @@ module OneM2M_PermutationFunctions {
 							v_acpIndex := f_cse_createResource(int1, v_createRequest); // CSE child resource
 							
 							//TODO How to indicate the location of the Originator (AE1)?
-							v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[v_acpIndex].resource)}, -);
+							v_aeIndex := f_cse_preamble_registerAe({f_getResourceAddress(v_acpIndex)}, -);
 			
 							// Test Body
 							p_requestPrimitive.to_ := f_getResourceAddress(v_aeIndex);
@@ -8160,7 +8160,7 @@ module OneM2M_PermutationFunctions {
 							v_acpIndex := f_cse_createResource(int1, v_createRequest); // CSE child resource
 							
 							//TODO How to indicate the location of the Originator (AE1)?
-							v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[v_acpIndex].resource)}, -);
+							v_aeIndex := f_cse_preamble_registerAe({f_getResourceAddress(v_acpIndex)}, -);
 			
 							// Test Body
 							p_requestPrimitive.to_ := f_getResourceAddress(v_aeIndex);
@@ -8215,7 +8215,7 @@ module OneM2M_PermutationFunctions {
 							v_createRequest.primitiveContent.accessControlPolicy.privileges.accessControlRule_list := {v_accessControlRule};
 							vc_acpIndex := f_cse_createResource(int1, v_createRequest); // CSE child resource
 							
-							v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[vc_acpIndex].resource)}, {f_getLocalPoA(PX_TS_AE1.mcaPortIn)});
+							v_aeIndex := f_cse_preamble_registerAe({f_getResourceAddress(vc_acpIndex)}, {f_getLocalPoA(PX_TS_AE1.mcaPortIn)});
 			
 							// Test Body
 							p_requestPrimitive.to_ := f_getResourceAddress(v_aeIndex);
@@ -8275,7 +8275,7 @@ module OneM2M_PermutationFunctions {
 							v_createRequest.primitiveContent.accessControlPolicy.privileges.accessControlRule_list := {v_accessControlRule};
 							vc_acpIndex := f_cse_createResource(int1, v_createRequest); // CSE child resource
 							
-							v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[vc_acpIndex].resource)}, {f_getLocalPoA(PX_TS_AE1.mcaPortIn)});
+							v_aeIndex := f_cse_preamble_registerAe({f_getResourceAddress(vc_acpIndex)}, {f_getLocalPoA(PX_TS_AE1.mcaPortIn)});
 			
 							// Test Body
 							p_requestPrimitive.to_ := f_getResourceAddress(v_aeIndex);
@@ -8385,7 +8385,7 @@ module OneM2M_PermutationFunctions {
 	
 							// Preamble
 							v_acpIndex := f_cse_createResource(int1, v_createRequest); // CSE child resource
-							v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[v_acpIndex].resource)}, -);
+							v_aeIndex := f_cse_preamble_registerAe({f_getResourceAddress(v_acpIndex)}, -);
 							v_containerIndex := f_cse_createResource(int3, m_createContainerBase, v_aeIndex);
 							
 							v_accessControlRule_1 := valueof(m_createAcr({PX_SUPER_AE_ID}, int63));
@@ -8462,9 +8462,9 @@ module OneM2M_PermutationFunctions {
 				// Preamble
 				f_cse_createAccessControlPolicyAux(-, -, int63);//c_CUDNDi)
     
-				v_aeIndex1 := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[vc_acpIndex].resource)}, -);//c_CRDNDi);
+				v_aeIndex1 := f_cse_preamble_registerAe({f_getResourceAddress(vc_acpIndex)}, -);//c_CRDNDi);
 	
-				vc_ae2.start(f_cse_createResource(int2, m_createAe(PX_TS_AE2.appId, {f_getResourceId(vc_resourcesList[vc_acpIndex].resource)}, PX_TS_AE2.aeIdStem, c_defaultAe2ResourceName, -), -1)); // AE2 is registred
+				vc_ae2.start(f_cse_createResource(int2, m_createAe(PX_TS_AE2.appId, {f_getResourceAddress(vc_acpIndex)}, PX_TS_AE2.aeIdStem, c_defaultAe2ResourceName, -), -1)); // AE2 is registred
 				f_aeSimu_checkComponentDoneAndGetVerdict(vc_ae2);
 					
 				v_aeIndex2 := f_getResourceFromAeSimu(vc_ae2);
diff --git a/OneM2M_Testcases_CSE_Release_1.ttcn b/OneM2M_Testcases_CSE_Release_1.ttcn
index 46aed99..dad61da 100644
--- a/OneM2M_Testcases_CSE_Release_1.ttcn
+++ b/OneM2M_Testcases_CSE_Release_1.ttcn
@@ -8367,7 +8367,7 @@ module OneM2M_Testcases_CSE_Release_1 {
 					// Preamble
 					f_cse_createAccessControlPolicyAux(-, -, int61);//c_CUDNDi)
 						
-					v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[vc_acpIndex].resource)}, -);//c_CRDNDi);
+					v_aeIndex := f_cse_preamble_registerAe({f_getResourceAddress(vc_acpIndex)}, -);//c_CRDNDi);
 				
 					v_request := f_getCreateRequestPrimitive(int23, v_createRequest, v_aeIndex);//Subscription 
 					
@@ -9179,7 +9179,7 @@ module OneM2M_Testcases_CSE_Release_1 {
 						
 						v_acpIndex2 := f_cse_createResource(int1, v_createRequestAcp2); // CSE child resource
 						
-						v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[v_acpIndex1].resource)}, -);
+						v_aeIndex := f_cse_preamble_registerAe({f_getResourceAddress(v_acpIndex1)}, -);
 
 						v_accessControlRule_1 := valueof(m_createAcr({f_getOriginator(v_aeIndex)}, int59)); // c_CRDNDi
 						v_accessControlRule_2 := valueof(m_createAcr({PX_SUPER_AE_ID, f_getOriginator(v_aeIndex)}, int63)); // c_CRUDNDi 
@@ -9190,7 +9190,7 @@ module OneM2M_Testcases_CSE_Release_1 {
 						
 						// Test Body
 						v_updateRequest := valueof(m_updateAeBase);
-						v_updateRequest.primitiveContent.aE.accessControlPolicyIDs := {f_getResourceId(vc_resourcesList[v_acpIndex2].resource)};
+						v_updateRequest.primitiveContent.aE.accessControlPolicyIDs := {f_getResourceAddress(v_acpIndex2)};
 						v_updateRequest := f_getUpdateRequestPrimitive(int1, v_aeIndex, v_updateRequest);
 						
 						f_send(e_mca_port, m_request(v_updateRequest));
@@ -9271,7 +9271,7 @@ module OneM2M_Testcases_CSE_Release_1 {
 						
 						v_acpIndex2 := f_cse_createResource(int1, v_createRequestAcp2); // CSE child resource
 						
-						v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[v_acpIndex1].resource)}, -);
+						v_aeIndex := f_cse_preamble_registerAe({f_getResourceAddress(v_acpIndex1)}, -);
 
 						v_accessControlRule_1 := valueof(m_createAcr({f_getOriginator(v_aeIndex)}, int63)); // c_CRDNDi
 						v_accessControlRule_2 := valueof(m_createAcr({PX_SUPER_AE_ID, f_getOriginator(v_aeIndex)}, int59)); // c_CRUDNDi 
@@ -9282,7 +9282,7 @@ module OneM2M_Testcases_CSE_Release_1 {
 						
 						// Test Body
 						v_updateRequest := valueof(m_updateAeBase);
-						v_updateRequest.primitiveContent.aE.accessControlPolicyIDs := {f_getResourceId(vc_resourcesList[v_acpIndex2].resource)};
+						v_updateRequest.primitiveContent.aE.accessControlPolicyIDs := {f_getResourceAddress(v_acpIndex2)};
 						v_updateRequest := f_getUpdateRequestPrimitive(int1, v_aeIndex, v_updateRequest);
 
 						f_send(e_mca_port, m_request(v_updateRequest));
@@ -10132,7 +10132,7 @@ module OneM2M_Testcases_CSE_Release_1 {
 				
 				v_resourceIndex := f_cse_createResource(c_containerResourceType, v_requestPrimitive, v_aeIndex);
 				
-				v_requestPrimitive := f_setAcpId(v_requestPrimitive, {f_getResourceId(vc_resourcesList[vc_acpIndex].resource)});
+				v_requestPrimitive := f_setAcpId(v_requestPrimitive, {f_getResourceAddress(vc_acpIndex)});
 				v_childResourceIndex := f_cse_createResource(c_containerResourceType, v_requestPrimitive, v_resourceIndex);
 				
 				v_request := valueof(m_retrieveFilterUsageOption(f_getResourceAddress(v_resourceIndex), f_getOriginator(v_resourceIndex), int1));
@@ -10409,12 +10409,12 @@ module OneM2M_Testcases_CSE_Release_1 {
 				// Preamble
 				f_cse_createAccessControlPolicyAux(-, -);//c_CRUDNDi)
 				
-				//v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[vc_acpIndex].resource)});
+				//v_aeIndex := f_cse_preamble_registerAe({f_getResourceAddress(vc_acpIndex)});
 				v_aeIndex := f_cse_preamble_registerAe();
 				
 				f_cse_updateAcpAuxResource(int31); //Not include DISCOVERY permission
 
-				v_createRequest.primitiveContent.container.accessControlPolicyIDs := {f_getResourceId(vc_resourcesList[vc_acpIndex].resource)};
+				v_createRequest.primitiveContent.container.accessControlPolicyIDs := {f_getResourceAddress(vc_acpIndex)};
 				v_createRequest.primitiveContent.container.labels := v_labels;
 				v_resourceIndex := f_cse_createResource(c_containerResourceType, v_createRequest, v_aeIndex);
 				
@@ -10645,7 +10645,7 @@ module OneM2M_Testcases_CSE_Release_1 {
 					v_containerIndex_1 := f_cse_createResource(int3, v_createContainerRequest_1, v_aeIndex); // AE child resource
 					v_containerIndex_2 := f_cse_createResource(int3, v_createContainerRequest_2, v_aeIndex); // AE child resource
 					
-					v_memberIDs := {f_getResourceId(vc_resourcesList[v_containerIndex_1].resource), f_getResourceId(vc_resourcesList[v_containerIndex_2].resource)};
+					v_memberIDs := {f_getResourceAddress(v_containerIndex_1), f_getResourceAddress(v_containerIndex_2)};
 					
 					v_createRequest := valueof(m_createGroup(c_maxNrOfMembers, v_memberIDs, omit, int3));
                                 
@@ -10821,7 +10821,7 @@ module OneM2M_Testcases_CSE_Release_1 {
 					// Preamble
 					v_aeIndex := f_cse_preamble_registerAe(); //c_CRUDNDi.
 					v_containerIndex := f_cse_createResource(int3, m_createContainerBase, v_aeIndex); // AE child resource
-					v_memberID :=  f_getResourceId(vc_resourcesList[v_containerIndex].resource);
+					v_memberID :=  f_getResourceAddress(v_containerIndex);
 					v_createRequest := valueof(m_createGroup(2, {v_memberID, v_memberID}, omit, int3));
 					v_createRequest := f_getCreateRequestPrimitive(int9, v_createRequest, v_aeIndex);
             		
@@ -10887,7 +10887,7 @@ module OneM2M_Testcases_CSE_Release_1 {
 					// Preamble
 					v_aeIndex := f_cse_preamble_registerAe(); //c_CRUDNDi
 					v_containerIndex := f_cse_createResource(int3, m_createContainerBase, v_aeIndex); // AE child resource
-					v_createRequest := valueof(m_createGroup(2, {f_getResourceId(vc_resourcesList[v_containerIndex].resource)}, omit, int3)); //Member type is set to Container
+					v_createRequest := valueof(m_createGroup(2, {f_getResourceAddress(v_containerIndex)}, omit, int3)); //Member type is set to Container
 					v_createRequest := f_getCreateRequestPrimitive(int9, v_createRequest, v_aeIndex);
                 	
 					// Test Body       
@@ -10954,7 +10954,7 @@ module OneM2M_Testcases_CSE_Release_1 {
 					// Preamble
 					v_aeIndex := f_cse_preamble_registerAe(); //c_CRUDNDi
 					v_containerIndex := f_cse_createResource(int3, m_createContainerBase, v_aeIndex); // AE child resource
-					v_createRequest := valueof(m_createGroup(2, {f_getResourceId(vc_resourcesList[v_containerIndex].resource)}, omit, int2, int3)); //Member type is set to AE and consistencyStrategy is set to MIXED
+					v_createRequest := valueof(m_createGroup(2, {f_getResourceAddress(v_containerIndex)}, omit, int2, int3)); //Member type is set to AE and consistencyStrategy is set to MIXED
 					v_createRequest := f_getCreateRequestPrimitive(int9, v_createRequest, v_aeIndex);                                                            
                     
 					// Test Body
@@ -11035,7 +11035,7 @@ module OneM2M_Testcases_CSE_Release_1 {
 					v_aeIndex := f_cse_preamble_registerAe(); //c_CRUDNDi
 					v_containerIndex := f_cse_createResource(int3, m_createContainer("NotInitialized", "MyContainer"), v_aeIndex);
 					v_groupIndex :=  f_cse_createResource(int9, m_createGroupBase, v_aeIndex);
-					v_memberIDs := {f_getResourceId(vc_resourcesList[v_groupIndex].resource), f_getResourceId(vc_resourcesList[v_containerIndex].resource)};
+					v_memberIDs := {f_getResourceAddress(v_groupIndex), f_getResourceAddress(v_containerIndex)};
 					v_createRequest := valueof(m_createGroup(2, v_memberIDs, omit, int3, int1, -, -)); //Member type is set to container and consistencyStrategy is set to ABANDON MEMBER (default value)
 					v_createRequest := f_getCreateRequestPrimitive(int9, v_createRequest, v_aeIndex);                                                       
                     
@@ -11060,7 +11060,7 @@ module OneM2M_Testcases_CSE_Release_1 {
 								setverdict(fail, __SCOPE__ & ": Error, memberIDs attribute not provided");
 							} 
 							else {
-								if(not match({f_getResourceId(vc_resourcesList[v_containerIndex].resource)}, v_response.primitive.responsePrimitive.primitiveContent.group_.memberIDs)){
+								if(not match({f_getResourceAddress(v_containerIndex)}, v_response.primitive.responsePrimitive.primitiveContent.group_.memberIDs)){
 									setverdict(fail, __SCOPE__ & ": Error, memberIDs attribute not correct");
 								}
 							}
@@ -11117,7 +11117,7 @@ module OneM2M_Testcases_CSE_Release_1 {
 					v_aeIndex := f_cse_preamble_registerAe(); //c_CRUDNDi
 					v_containerIndex := f_cse_createResource(int3, m_createContainer("NotInitialized", "MyContainer"), v_aeIndex);
 					v_groupIndex :=  f_cse_createResource(int9, m_createGroupBase, v_aeIndex);
-					v_memberIDs := {f_getResourceId(vc_resourcesList[v_groupIndex].resource), f_getResourceId(vc_resourcesList[v_containerIndex].resource)};
+					v_memberIDs := {f_getResourceAddress(v_groupIndex), f_getResourceAddress(v_containerIndex)};
 					v_createRequest := valueof(m_createGroup(2, v_memberIDs, omit, int3, int2, -, -)); //Member type is set to container and consistencyStrategy is set to ABANDON GROUP
 					v_createRequest := f_getCreateRequestPrimitive(int9, v_createRequest, v_aeIndex);                                                       
                     
@@ -11199,13 +11199,13 @@ module OneM2M_Testcases_CSE_Release_1 {
 					// Preamble
 					v_aeIndex_1 := f_cse_preamble_registerAe(-, -); //c_CRUDNDi
 					v_acpIndex := f_cse_createResource(int1, v_createAcp, -1); // AE child resource
-					v_containerRequestPrimitive := f_setAcpId(v_containerRequestPrimitive, {f_getResourceId(vc_resourcesList[v_acpIndex].resource)});
+					v_containerRequestPrimitive := f_setAcpId(v_containerRequestPrimitive, {f_getResourceAddress(v_acpIndex)});
 					v_containerIndex_1 := f_cse_createResource(int3, v_containerRequestPrimitive, v_aeIndex_1); // AE1 child resource
 					v_containerIndex_2 := f_cse_createResource(int3, v_containerRequestPrimitive, v_aeIndex_1); // AE2 child resource
 					v_contentInstanceIndex_1 := f_cse_createResource(int4, m_createContentInstanceBase, v_containerIndex_1); // Container_1 child resource
 					v_contentInstanceIndex_2 := f_cse_createResource(int4, m_createContentInstanceBase, v_containerIndex_2); // Container_2 child resource
-					v_memberIDs := {f_getResourceId(vc_resourcesList[v_containerIndex_1].resource), f_getResourceId(vc_resourcesList[v_containerIndex_2].resource)};
-					v_membersAcpIds := {f_getResourceId(vc_resourcesList[v_acpIndex].resource)};
+					v_memberIDs := {f_getResourceAddress(v_containerIndex_1), f_getResourceAddress(v_containerIndex_2)};
+					v_membersAcpIds := {f_getResourceAddress(v_acpIndex)};
 					v_groupIndex := f_cse_createResource(int9, m_createGroup(2, v_memberIDs, omit, int3, -, v_membersAcpIds), -1);
    
 					v_fanoutPointAddress := f_getResourceAddress(v_groupIndex) & "/" & c_resourceShortNameFanOutPoint & "/" & c_resourceShortNameLatest;
@@ -11314,7 +11314,7 @@ module OneM2M_Testcases_CSE_Release_1 {
 					v_containerIndex_1 := f_cse_createResource(int3, m_createContainerBase, v_aeIndex);
 					
 					
-					v_groupIndex := f_cse_createResource(int9, m_createGroup(2, {f_getResourceId(vc_resourcesList[v_containerIndex_1].resource)}, omit, int3, -, - , -), v_aeIndex);
+					v_groupIndex := f_cse_createResource(int9, m_createGroup(2, {f_getResourceAddress(v_containerIndex_1)}, omit, int3, -, - , -), v_aeIndex);
 					
 					v_updateRequest.primitiveContent.group_.memberIDs := {v_containerAddress_2};
 					v_request := f_getUpdateRequestPrimitive(int9, v_groupIndex, v_updateRequest);	// creating group
@@ -11389,8 +11389,8 @@ module OneM2M_Testcases_CSE_Release_1 {
 					v_aeIndex := f_cse_preamble_registerAe(); //c_CRUDNDi
 					v_containerIndex_1 := f_cse_createResource(int3, m_createContainer_noResourceName, v_aeIndex); // AE child resource
 					v_containerIndex_2 := f_cse_createResource(int3, m_createContainer_noResourceName, v_aeIndex); // AE child resource
-					v_memberId_1 :=  f_getResourceId(vc_resourcesList[v_containerIndex_1].resource);
-					v_memberId_2 :=  f_getResourceId(vc_resourcesList[v_containerIndex_2].resource);
+					v_memberId_1 :=  f_getResourceAddress(v_containerIndex_1);
+					v_memberId_2 :=  f_getResourceAddress(v_containerIndex_2);
 					v_groupIndex := f_cse_createResource(int9, m_createGroup(2, {v_memberId_1, v_memberId_2}, omit, -, -, -, -), v_aeIndex); // AE child resource
 					
 					v_updateRequest.primitiveContent.group_.memberIDs := {v_memberId_2, v_memberId_2}; 
@@ -11429,7 +11429,9 @@ module OneM2M_Testcases_CSE_Release_1 {
 							 setverdict(fail, __SCOPE__ & ": No answer while updating resource");
 						 }
 					 }
-                    
+					 
+					f_checkAeSimuStatus();
+					
 					 v_primitiveContentRetrievedResource := f_cse_retrieveResource(v_groupIndex);
 					 if(getverdict == pass){ 
 						 if(ischosen(v_primitiveContentRetrievedResource.group_)){
@@ -11481,9 +11483,9 @@ module OneM2M_Testcases_CSE_Release_1 {
 					v_aeIndex := f_cse_preamble_registerAe(); //c_CRUDNDi
 					v_containerIndex_1 := f_cse_createResource(int3, m_createContainer_noResourceName, v_aeIndex); // AE child resource
 					v_containerIndex_2 := f_cse_createResource(int3, m_createContainer_noResourceName, v_aeIndex); // AE child resource
-					v_groupIndex := f_cse_createResource(int9, m_createGroup(2, {f_getResourceId(vc_resourcesList[v_containerIndex_1].resource)}, omit, int3, -, -, -), v_aeIndex);
+					v_groupIndex := f_cse_createResource(int9, m_createGroup(2, {f_getResourceAddress(v_containerIndex_1)}, omit, int3, -, -, -), v_aeIndex);
 					
-					v_updateRequest.primitiveContent.group_.memberIDs := {f_getResourceId(vc_resourcesList[v_containerIndex_2].resource)};
+					v_updateRequest.primitiveContent.group_.memberIDs := {f_getResourceAddress(v_containerIndex_2)};
 					v_updateRequest := f_getUpdateRequestPrimitive(int9, v_groupIndex, v_updateRequest);
 					
 					// Test Body
@@ -11516,6 +11518,8 @@ module OneM2M_Testcases_CSE_Release_1 {
 						}
 					 }
         
+					f_checkAeSimuStatus();
+					
 					v_primitiveContentRetrievedResource := f_cse_retrieveResource(v_groupIndex);
 					if(getverdict == pass){ 
 						 if(ischosen(v_primitiveContentRetrievedResource.group_)){
@@ -11569,8 +11573,8 @@ module OneM2M_Testcases_CSE_Release_1 {
 					v_aeIndex := f_cse_preamble_registerAe(); //c_CRUDNDi
 					v_containerIndex := f_cse_createResource(int3, m_createContainerBase, v_aeIndex);
 					v_subGroupIndex :=  f_cse_createResource(int9, m_createGroupBase, v_aeIndex);
-					v_memberId_1 := f_getResourceId(vc_resourcesList[v_containerIndex].resource);
-					v_memberId_2 := f_getResourceId(vc_resourcesList[v_subGroupIndex].resource);
+					v_memberId_1 := f_getResourceAddress(v_containerIndex);
+					v_memberId_2 := f_getResourceAddress(v_subGroupIndex);
 					v_groupIndex := f_cse_createResource(int9, m_createGroup(2, {v_memberId_1}, omit, int3, int3, -, -), v_aeIndex); //Member type is set to Container (int3) and consistencyStrategy is set to MIXED (int3)
                 	
 					v_updateRequest.primitiveContent.group_.memberIDs := {v_memberId_1, v_memberId_2};
@@ -11618,6 +11622,8 @@ module OneM2M_Testcases_CSE_Release_1 {
 						}
 					}
         
+					f_checkAeSimuStatus();
+					
 					v_primitiveContentRetrievedResource := f_cse_retrieveResource(v_groupIndex);
 					if(getverdict == pass){ 
 						 if(ischosen(v_primitiveContentRetrievedResource.group_)){
@@ -11675,8 +11681,8 @@ module OneM2M_Testcases_CSE_Release_1 {
 					v_aeIndex := f_cse_preamble_registerAe(); //c_CRUDNDi
 					v_containerIndex := f_cse_createResource(int3, m_createContainerBase, v_aeIndex);
 					v_subGroupIndex :=  f_cse_createResource(int9, m_createGroupBase, v_aeIndex);
-					v_memberId_1 := f_getResourceId(vc_resourcesList[v_containerIndex].resource);
-					v_memberId_2 := f_getResourceId(vc_resourcesList[v_subGroupIndex].resource);
+					v_memberId_1 := f_getResourceAddress(v_containerIndex);
+					v_memberId_2 := f_getResourceAddress(v_subGroupIndex);
 					v_groupIndex := f_cse_createResource(int9, m_createGroup(2, {v_memberId_1}, omit, int3, int1), v_aeIndex);  //Member type is set to Container (int3) and consistencyStrategy is set to ABANDON MEMBER (default value)
                 	
 					v_updateRequest.primitiveContent.group_.memberIDs := {v_memberId_2, v_memberId_1};
@@ -11727,6 +11733,8 @@ module OneM2M_Testcases_CSE_Release_1 {
 						}
 					 }
         
+					f_checkAeSimuStatus();
+					
 					v_primitiveContentRetrievedResource := f_cse_retrieveResource(v_groupIndex);
 					if(getverdict == pass){ 
 						 if(ischosen(v_primitiveContentRetrievedResource.group_)){
@@ -11783,8 +11791,8 @@ module OneM2M_Testcases_CSE_Release_1 {
 					v_aeIndex := f_cse_preamble_registerAe(); //c_CRUDNDi
 					v_containerIndex := f_cse_createResource(int3, m_createContainerBase, v_aeIndex);
 					v_subGroupIndex :=  f_cse_createResource(int9, m_createGroupBase, v_aeIndex);
-					v_memberId_1 := f_getResourceId(vc_resourcesList[v_containerIndex].resource);
-					v_memberId_2 := f_getResourceId(vc_resourcesList[v_subGroupIndex].resource);
+					v_memberId_1 := f_getResourceAddress(v_containerIndex);
+					v_memberId_2 := f_getResourceAddress(v_subGroupIndex);
 					v_groupIndex := f_cse_createResource(int9, m_createGroup(2, {v_memberId_1}, omit, int3, int2), v_aeIndex);  //Member type is set to Container(int3) and consistencyStrategy is set to ABANDON GROUP (default value)
                                 	
 					v_updateRequest.primitiveContent.group_.memberIDs := {v_memberId_2, v_memberId_1};
@@ -11862,7 +11870,7 @@ module OneM2M_Testcases_CSE_Release_1 {
 					v_containerIndex_2 := f_cse_createResource(int3, m_createContainer_noResourceName, v_aeIndex); // AE child resource
 					v_containerIndex_3 := f_cse_createResource(int3, m_createContainer_noResourceName, v_aeIndex); // AE child resource
 					
-					v_memberIDs := {f_getResourceId(vc_resourcesList[v_containerIndex_1].resource), f_getResourceId(vc_resourcesList[v_containerIndex_2].resource)};
+					v_memberIDs := {f_getResourceAddress(v_containerIndex_1), f_getResourceAddress(v_containerIndex_2)};
 					
 					v_createRequest := valueof(m_createGroup(c_maxNrOfMembers, v_memberIDs, omit, int3));
 					
@@ -11870,7 +11878,7 @@ module OneM2M_Testcases_CSE_Release_1 {
     
 					//Test Body
 					v_request := f_getUpdateRequestPrimitive(int9, v_groupIndex, v_updateRequest);
-					v_memberIDs := v_memberIDs & {f_getResourceId(vc_resourcesList[v_containerIndex_3].resource)};
+					v_memberIDs := v_memberIDs & {f_getResourceAddress(v_containerIndex_3)};
 					v_request.primitiveContent.group_.memberIDs := v_memberIDs;
         
 					f_send(e_mca_port, m_request(v_request));
@@ -11893,6 +11901,8 @@ module OneM2M_Testcases_CSE_Release_1 {
 						}
 					 }
         
+					f_checkAeSimuStatus();
+					
 					v_primitiveContentRetrievedResource := f_cse_retrieveResource(v_groupIndex);
 					if(getverdict == pass){ 
 						//Check that the resource has NOT been udpated
@@ -11949,7 +11959,7 @@ module OneM2M_Testcases_CSE_Release_1 {
 					v_aeIndex := f_cse_preamble_registerAe(-, -); //c_CRUDNDi
 					v_containerIndex_1 := f_cse_createResource(int3, m_createContainer_noResourceName, v_aeIndex); // AE child resource
 					v_containerIndex_2 := f_cse_createResource(int3, m_createContainer_noResourceName, v_aeIndex); // AE child resource
-					v_memberIDs := {f_getResourceId(vc_resourcesList[v_containerIndex_1].resource), f_getResourceId(vc_resourcesList[v_containerIndex_2].resource)};
+					v_memberIDs := {f_getResourceAddress(v_containerIndex_1), f_getResourceAddress(v_containerIndex_2)};
 					v_groupIndex := f_cse_createResource(int9, m_createGroup(2, v_memberIDs, omit, int3), v_aeIndex);
 					
 					v_updateRequest := f_getUpdateRequestPrimitive(int9, v_groupIndex, v_updateRequest);
@@ -11975,6 +11985,8 @@ module OneM2M_Testcases_CSE_Release_1 {
 						 }
 					 }
         
+					f_checkAeSimuStatus();
+					
 					v_primitiveContentRetrievedResource := f_cse_retrieveResource(v_groupIndex);
 					if(getverdict == pass){ 
 						//Check that the resource has NOT been udpated
@@ -12049,7 +12061,7 @@ module OneM2M_Testcases_CSE_Release_1 {
 					
 					v_containerIndex_1 := f_cse_createResource(int3, m_createContainer_noResourceName, v_aeIndex); // AE child resource
 					
-					v_memberId_1 := f_getResourceId(vc_resourcesList[v_containerIndex_1].resource);
+					v_memberId_1 := f_getResourceAddress(v_containerIndex_1);
 					
 					v_createRequest := valueof(m_createGroup(c_maxNrOfMembers, {v_memberId_1}, omit, int3));
 					
@@ -12092,6 +12104,8 @@ module OneM2M_Testcases_CSE_Release_1 {
 						 }
 					 }
         
+					f_aeSimu_checkComponentDoneAndGetVerdict(vc_cse1);
+					
 					v_primitiveContentRetrievedResource := f_cse_retrieveResource(v_groupIndex);
 					if(getverdict == pass){ 
 						 if(ischosen(v_primitiveContentRetrievedResource.group_)){
@@ -12160,8 +12174,8 @@ module OneM2M_Testcases_CSE_Release_1 {
 					v_containerIndex_1 := f_cse_createResource(int3, m_createContainer_noResourceName, v_aeIndex); // AE child resource
 					v_containerIndex_2 := f_cse_createResource(int3, m_createContainer_noResourceName, v_aeIndex); // AE child resource
 					
-					v_memberId_1 := f_getResourceId(vc_resourcesList[v_containerIndex_1].resource);
-					v_memberId_2 := f_getResourceId(vc_resourcesList[v_containerIndex_2].resource);
+					v_memberId_1 := f_getResourceAddress(v_containerIndex_1);
+					v_memberId_2 := f_getResourceAddress(v_containerIndex_2);
 					
 					v_createRequest := valueof(m_createGroup(c_maxNrOfMembers, {v_memberId_1, v_memberId_2}, omit, int3));
 					
diff --git a/OneM2M_Testcases_CSE_Release_2.ttcn b/OneM2M_Testcases_CSE_Release_2.ttcn
index 98a6350..b9ad63d 100644
--- a/OneM2M_Testcases_CSE_Release_2.ttcn
+++ b/OneM2M_Testcases_CSE_Release_2.ttcn
@@ -3361,7 +3361,7 @@ module OneM2M_Testcases_CSE_Release_2 {
 					
 					f_cse_createAccessControlPolicyAux();
 					
-					v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[vc_acpIndex].resource)}, -);//AE1 is registred;
+					v_aeIndex := f_cse_preamble_registerAe({f_getResourceAddress(vc_acpIndex)}, -);//AE1 is registred;
 					
 					v_resourceIndex := f_cse_createResource(int15, m_createPollingChannelBase, v_aeIndex);
 					
@@ -3474,7 +3474,7 @@ module OneM2M_Testcases_CSE_Release_2 {
 					
 					f_cse_createAccessControlPolicyAux();
 					
-					v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[vc_acpIndex].resource)}, -);//AE1 is registred;
+					v_aeIndex := f_cse_preamble_registerAe({f_getResourceAddress(vc_acpIndex)}, -);//AE1 is registred;
 					
 					v_resourceIndex := f_cse_createResource(int15, m_createPollingChannelBase, v_aeIndex);
 					
@@ -3585,7 +3585,7 @@ module OneM2M_Testcases_CSE_Release_2 {
 					
 					f_cse_createAccessControlPolicyAux();
 					
-				    v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[vc_acpIndex].resource)}, -);//AE1 is registred;
+				    v_aeIndex := f_cse_preamble_registerAe({f_getResourceAddress(vc_acpIndex)}, -);//AE1 is registred;
 					
 					v_resourceIndex := f_cse_createResource(int15, m_createPollingChannelBase, v_aeIndex);
 					 
@@ -3813,7 +3813,7 @@ module OneM2M_Testcases_CSE_Release_2 {
 	
 					f_cse_createAccessControlPolicyAux();
 					 
-					v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[vc_acpIndex].resource)}, -);//AE1 is registred;
+					v_aeIndex := f_cse_preamble_registerAe({f_getResourceAddress(vc_acpIndex)}, -);//AE1 is registred;
 					 
 					v_resourceIndex := f_cse_createResource(int15, m_createPollingChannelBase, v_aeIndex);
 	
-- 
GitLab