diff --git a/LibOneM2M/OneM2M_Functions.ttcn b/LibOneM2M/OneM2M_Functions.ttcn
index 3880922eb71172658826f1e9a07d6a6c0fe60ca6..cf2cbc8bef09c1ea41f82e6c1f6954659c0b50a4 100644
--- a/LibOneM2M/OneM2M_Functions.ttcn
+++ b/LibOneM2M/OneM2M_Functions.ttcn
@@ -4545,6 +4545,22 @@ module OneM2M_Functions {
 					v_primitiveContent.timeSeries.contentInfo := ?;
 				}
 			}			
+			else if(ischosen(p_primitiveContent.timeSeriesInstance)){ // timeSeriesInstance
+				v_primitiveContent := {timeSeriesInstance := mw_contentTimeSeriesInstanceBase};
+				
+				if(ispresent(p_primitiveContent.timeSeriesInstance.labels)){
+					v_primitiveContent.timeSeriesInstance.labels := ?;
+				}
+				if(ispresent(p_primitiveContent.timeSeriesInstance.announceTo)){
+					v_primitiveContent.timeSeriesInstance.announceTo := ?;
+				}
+				if(ispresent(p_primitiveContent.timeSeriesInstance.announcedAttribute)){
+					v_primitiveContent.timeSeriesInstance.announcedAttribute := ?;
+				}
+				if(ispresent(p_primitiveContent.timeSeriesInstance.sequenceNr)){
+					v_primitiveContent.timeSeriesInstance.sequenceNr := ?;
+				}
+			}			
 			return v_primitiveContent;
 		}
 
diff --git a/LibOneM2M/OneM2M_Templates.ttcn b/LibOneM2M/OneM2M_Templates.ttcn
index 876ec06f419fe4893bbf1ff08f838aa32f1fb50a..a98b9fe7eddf88fbdf8ac104b7f2046dc8309647 100644
--- a/LibOneM2M/OneM2M_Templates.ttcn
+++ b/LibOneM2M/OneM2M_Templates.ttcn
@@ -6827,6 +6827,24 @@ module OneM2M_Templates {
 			choice := {choice_list := ?}	//O
 		}
 		
+		template TimeSeriesInstance_optional mw_contentTimeSeriesInstanceBase := {
+			resourceName := ?,//M
+			resourceType := ?,//M
+			resourceID := ?,//M
+			parentID := ?,//M
+			creationTime := ?,//M
+			lastModifiedTime := ?,//M
+			labels := *,//O
+			expirationTime := ?,//M
+			announceTo := *,//O
+			announcedAttribute := *,//O
+			dataGenerationTime := ?,//M
+			content := ?,//M
+			sequenceNr := *,//O
+			contentSize  := ?,//M
+			choice := *//O
+		};
+		
 		template (value) Role_optional mw_contentRole_allOmit := {
 			resourceName := omit,//O
 			resourceType := omit,//NP
diff --git a/OneM2M_PermutationFunctions.ttcn b/OneM2M_PermutationFunctions.ttcn
index 67b93efdeefe6d55b1b0d4ddcb03e5a052893779..2b4a2c13f89fa3c7e31575ff5dbfe61f5c3d2305 100644
--- a/OneM2M_PermutationFunctions.ttcn
+++ b/OneM2M_PermutationFunctions.ttcn
@@ -3376,7 +3376,7 @@ module OneM2M_PermutationFunctions {
 						// Local variables
 						var MsgIn v_response;
 						var RequestPrimitive v_request;
-						var integer v_containerIndex := -1;
+						var integer v_aeIndex := -1;
 						var integer v_parentIndex := -1;
 						var integer v_acpAuxIndex := -1;
 						var integer v_ae2Index := -1;
@@ -3402,15 +3402,19 @@ module OneM2M_PermutationFunctions {
 							v_acpAuxIndex := f_cse_preamble_createAcpAux();//c_CRUDNDi)
 						}     				
 						
-						v_parentIndex := f_cse_preamble_registerAe();//c_CRUDNDi); 
+						v_aeIndex := f_cse_preamble_registerAe();//c_CRUDNDi); 
 						
 						f_cse_preamble_subscriptionVerification(v_ae2Index, p_requestPrimitive, p_resourceType);
 						
 						
 						if(p_resourceType == int4) {
-							v_containerIndex := f_cse_createResource(int3, m_createContainerBase, v_parentIndex);
-							v_parentIndex := v_containerIndex;
+							v_parentIndex := f_cse_createResource(int3, m_createContainerBase, v_aeIndex);
+						}
+						
+						if(p_resourceType == int30) {
+							v_parentIndex := f_cse_createResource(int29, m_createTimeSeriesBase, v_aeIndex);
 						}
+	
 					
 						// Test Body
 						v_request := f_getCreateRequestPrimitive(p_resourceType, p_requestPrimitive, v_parentIndex);