diff --git a/LibOneM2M/OneM2M_Functions.ttcn b/LibOneM2M/OneM2M_Functions.ttcn
index 6d17f2b1c640bce4223489d2f54a14f1a3b72c80..6a413f6e1a75227e08d7c17afc9130f917d3e438 100644
--- a/LibOneM2M/OneM2M_Functions.ttcn
+++ b/LibOneM2M/OneM2M_Functions.ttcn
@@ -7,7 +7,7 @@
  *  
  *  @author     oneM2M
  *  @version    $URL: https://forge.etsi.org/svn/oneM2M/trunk/ttcn/LibOneM2M/OneM2M_Functions.ttcn $
- *              $Id: OneM2M_Functions.ttcn 242 2017-03-24 15:18:47Z reinaortega $
+ *              $Id: OneM2M_Functions.ttcn 247 2017-03-27 17:09:55Z reinaortega $
  *  @desc       Module containing functions for oneM2M
  *
  */
@@ -331,7 +331,22 @@ module OneM2M_Functions {
 //							}
 //						}
 						
-						f_cse_deleteResource(v_request);
+						mcaPort.send(m_request(v_request));
+						
+						tc_ac.start;
+						alt {
+							[] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) {
+								tc_ac.stop;
+								log(__SCOPE__&" INFO: Resource" & v_request.to_ & " deleted");
+							}
+							[] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) {
+								tc_ac.stop;
+								log(__SCOPE__&" INFO: Error while deleting resource " & v_request.to_);
+							}
+							[] tc_ac.timeout {
+								log(__SCOPE__&" INFO: No answer while deleting resource " & v_request.to_);
+							}	
+						}	
 						
 					}
 				}
@@ -514,6 +529,40 @@ module OneM2M_Functions {
 				
 			}// end f_cse_updateResource
 			
+			/**
+			 * @desc 
+			 * @param p_resourceIndex
+			 * @verdict 
+			 */
+			function f_cse_retrieveResource(integer p_resourceIndex) runs on CseTester return PrimitiveContent{
+				var MsgIn v_response;
+
+				mcaPort.send(m_request(m_retrieveResource(f_getResourceAddress(p_resourceIndex), f_getOriginator(p_resourceIndex))));
+				tc_ac.start;
+				alt {
+					[] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) -> value v_response {
+						tc_ac.stop;
+						setverdict(pass, __SCOPE__&":INFO: Resource retrieved successfuly");
+					}
+					[] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) -> value v_response {
+						tc_ac.stop;
+						setverdict(fail, __SCOPE__&":ERROR: Error while retrieving resource");
+					}
+					[] mcaPort.receive{
+						tc_ac.stop;
+						setverdict(fail, __SCOPE__&":ERROR: Unexpected message received");
+					}
+					[] tc_ac.timeout {
+						setverdict(inconc, __SCOPE__&":INFO: No answer while retrieving resource");
+					}
+				}	
+				
+				f_checkCseTesterStatus();
+				
+				return v_response.primitive.responsePrimitive.primitiveContent;
+				
+			}// end f_cse_retrievingResource
+			
 			/**
 			 * @desc 
 			 * @param p_requestPrimitive
@@ -528,17 +577,19 @@ module OneM2M_Functions {
 				alt {
 					[] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) {
 						tc_ac.stop;
-						log(__SCOPE__&"INFO: Resource" & p_requestPrimitive.to_ & " deleted");
+						setverdict(pass, __SCOPE__&" INFO: Resource" & p_requestPrimitive.to_ & " deleted");
 					}
 					[] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) {
 						tc_ac.stop;
-						log(__SCOPE__&"INFO: Error while deleting resource " & p_requestPrimitive.to_);
+						setverdict(inconc, __SCOPE__&" INFO: Error while deleting resource " & p_requestPrimitive.to_);
 					}
 					[] tc_ac.timeout {
-						log(__SCOPE__&"INFO: No answer while deleting resource " & p_requestPrimitive.to_);
+						setverdict(inconc, __SCOPE__&" INFO: No answer while deleting resource " & p_requestPrimitive.to_);
 					}	
 				}	
 				
+				f_checkCseTesterStatus();
+				
 			}// end f_cse_deleteResource
 			
 			/**
@@ -688,6 +739,12 @@ module OneM2M_Functions {
     						p_response.primitiveContent.any_1[0].Container_optional.resourceName :=  p_request.primitiveContent.any_1[0].Container_optional.resourceName;
     					}
     				}
+					case (int4) {
+						if(isvalue(p_response.primitiveContent.any_1[0].ContentInstance_optional) and
+								not(ispresent(p_response.primitiveContent.any_1[0].ContentInstance_optional.resourceName))) {
+							p_response.primitiveContent.any_1[0].ContentInstance_optional.resourceName :=  p_request.primitiveContent.any_1[0].ContentInstance_optional.resourceName;
+						}
+					}
     				case (int15) {
     					if (isvalue(p_response.primitiveContent.any_1[0].PollingChannel_optional) and
     							not(ispresent(p_response.primitiveContent.any_1[0].PollingChannel_optional.resourceName))) {
@@ -714,9 +771,6 @@ module OneM2M_Functions {
     				}
     				case else {
     					log(__SCOPE__&":WARNING: Resource Type "&int2str(enum2int(p_resourceType))&" not implemented");
-    					if (not PX_DISABLE_STOP_ON_ERROR) {
-    						testcase.stop;
-    					}
     				}
     			}
     
@@ -1159,6 +1213,9 @@ module OneM2M_Functions {
 			if(ischosen(p_contentResource.any_1[0].Container_optional)) {
 				return f_resourceIdCleaner(p_contentResource.any_1[0].Container_optional.resourceID);
 			}
+			if(ischosen(p_contentResource.any_1[0].ContentInstance_optional)) {
+				return f_resourceIdCleaner(p_contentResource.any_1[0].ContentInstance_optional.resourceID);
+			}
 			if(ischosen(p_contentResource.any_1[0].Schedule_optional)) {
 				return f_resourceIdCleaner(p_contentResource.any_1[0].Schedule_optional.resourceID);
 			}
@@ -1178,12 +1235,8 @@ module OneM2M_Functions {
 				return f_resourceIdCleaner(p_contentResource.any_1[0].ServiceSubscribedAppRule_optional.resourceID);
 			}
 			log(""&__SCOPE__&":WARNING: Primitive Content Kind not implemented");
-			if (PX_DISABLE_STOP_ON_ERROR) {
-				return "1";
-			} else {
-				testcase.stop;
-				return "1";
-			}
+			
+			return "resourceIDNotFound";
 			
 		}
 			
@@ -1201,6 +1254,9 @@ module OneM2M_Functions {
 			if(ischosen(p_contentResource.any_1[0].Container_optional)) {
 				return p_contentResource.any_1[0].Container_optional.resourceName;
 			}
+			if(ischosen(p_contentResource.any_1[0].ContentInstance_optional)) {
+				return p_contentResource.any_1[0].ContentInstance_optional.resourceName;
+			}
 			if(ischosen(p_contentResource.any_1[0].Schedule_optional)) {
 				return p_contentResource.any_1[0].Schedule_optional.resourceName;
 			}
@@ -1220,12 +1276,9 @@ module OneM2M_Functions {
 				return p_contentResource.any_1[0].ServiceSubscribedAppRule_optional.resourceName;
 			}
 			log(__SCOPE__&":WARNING: Primitive Content Kind not implemented");
-			if (PX_DISABLE_STOP_ON_ERROR) {
-				return "1";
-			} else {
-				testcase.stop;
-				return "1";
-			}
+			
+			return "resourceNameNotFound";
+			
 		}
 			
 		/**
@@ -1421,7 +1474,8 @@ module OneM2M_Functions {
 		 * @verdict 
 		 */
 		function f_checkCseTesterStatus() runs on CseTester {
-	
+			
+			log(getverdict());
 			if (getverdict != pass) {
 				 f_cse_postamble_deleteResources();
 				 // Tear down
diff --git a/LibOneM2M/OneM2M_Pixits.ttcn b/LibOneM2M/OneM2M_Pixits.ttcn
index 651db7e3ebb021814fbc81a7057c81fe257d29a6..3890959f47f6f51f02fb3786e92f8930999c68e0 100644
--- a/LibOneM2M/OneM2M_Pixits.ttcn
+++ b/LibOneM2M/OneM2M_Pixits.ttcn
@@ -7,7 +7,7 @@
  *  
  *  @author     oneM2M
  *  @version    $URL: https://forge.etsi.org/svn/oneM2M/trunk/ttcn/LibOneM2M/OneM2M_Pixits.ttcn $
- *              $Id: OneM2M_Pixits.ttcn 234 2017-03-20 16:37:29Z reinaortega $
+ *              $Id: OneM2M_Pixits.ttcn 247 2017-03-27 17:09:55Z reinaortega $
  *  @desc       Module containing Pixits for oneM2M
  *
  */
@@ -74,5 +74,4 @@ module OneM2M_Pixits {
 	modulepar Labels PX_LABELS := {"VALUE_1"}; 	
 	modulepar boolean PX_IS_LOC_CONTAINER	:= false;//default //set it to true when the container is created to store location information
 	
-	modulepar boolean PX_DISABLE_STOP_ON_ERROR := false;
 }  // end of module