diff --git a/.gitmodules b/.gitmodules
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/LibOneM2M/OneM2M_Functions.ttcn b/LibOneM2M/OneM2M_Functions.ttcn
index 25adc20be8404187bea582c8ee1d0e84a37623fe..b5d0cc3f1554f8eb0f5229405cb38f7864112044 100644
--- a/LibOneM2M/OneM2M_Functions.ttcn
+++ b/LibOneM2M/OneM2M_Functions.ttcn
@@ -14,7 +14,7 @@ module OneM2M_Functions {
 	import from XSD all;
 	import from OneM2M_Templates all;
 	import from OneM2M_Types all;
-    import from OneM2M_Ports all;
+  import from OneM2M_Ports all;
 	import from OneM2M_TypesAndValues all;
 	import from OneM2M_TestSystem all;
 	import from OneM2M_Pixits all;
@@ -578,7 +578,48 @@ module OneM2M_Functions {
 
 			// Connect
 		}			
+
+		function f_cf07Up(in CseTypeID p_cseType := int2)  runs on CseSimu system AeSystem {
+    
+			// Variables
+			var charstring v_binding;
+			var charstring v_binding_in;
+			var PrimitiveContent v_cSEBaseResource;
+			var charstring v_host;
+			vc_cseSimuDesc := PX_TS_CSE1;	
+		
+			//Initialization of component variables
+			vc_config := e_cf07;
+			vc_testSystemRole := e_cse; 
+			vc_cseType := p_cseType;
+			
+			//Creation of CSEBase
+			v_cSEBaseResource := f_generateLocalResource(-, -1, int5);
+			vc_cSEBaseIndex := f_setLocalResource(v_cSEBaseResource, int5, -1);
+			
+			// Map
+			map(self:mcaPort, system:mcaPort) param (vc_cseSimuDesc.mcaPort);//TODO To be consistent, we should use mcaPortIn for AE testing
+			map(self:mcaPortIn, system:mcaPortIn) param (vc_cseSimuDesc.mcaPortIn);//TODO To be consistent, we should use mcaPortIn for AE testing
+			map(self:acPort, system:acPort);
+			
+
+			f_setProtocolBinding(vc_cseSimuDesc.mcaPort, vc_cseSimuDesc.mcaPortIn, v_binding, v_host, v_binding_in);
+     	 	
+			vc_myInterfaces[enum2int(valueof(InterfaceIds:e_mcaPort))] := { mcaPort, v_host, v_binding, vc_cseSimuDesc.mcaPort.serialization };
+      		vc_myInterfaces[enum2int(valueof(InterfaceIds:e_mcaPortIn))] := { mcaPortIn, v_host, v_binding_in, vc_cseSimuDesc.mcaPortIn.serialization };
+
+			if(PX_UT_IMPLEMENTED) {
+			  map(self:utPort, system:utPort) param (PX_TS_UT);
+			}
+			activate(a_default());
+			vc_cseSimu := activate(a_cse_cf07());
 			
+			// Connect
+          
+			//Initialze the IUT
+          
+		} // End of function f_cf07Up
+		
 		/**
 		 * @desc Ports unmapping
 		 */
@@ -730,6 +771,18 @@ module OneM2M_Functions {
 			unmap(vc_ae2:acPort, system:acPort);
 		}// end f_cf06DownCseSimuMaster
 		
+		
+		function f_cf07Down()  runs on CseSimu system AeSystem {
+			
+			unmap(self:mcaPort, system:mcaPort);
+			unmap(self:mcaPortIn, system:mcaPortIn);
+			unmap(self:acPort, system:acPort);
+			if(PX_UT_IMPLEMENTED){
+			  unmap(self:utPort, system:utPort);
+			}
+			
+		} // End of function f_cfDown
+		
 	}//end group configFunctions
 	
 	group InfoPortCommunication {
@@ -1226,11 +1279,6 @@ module OneM2M_Functions {
 						setverdict(inconc, __SCOPE__&":INFO: Error while registering application");
 						stop;
 					}
-					[] mcaPort.receive {
-						tc_ac.stop;
-						setverdict(inconc, __SCOPE__&":INFO: Unexpected message received");
-						stop;
-					};
 					[] tc_ac.timeout {
 						setverdict(inconc, __SCOPE__&":INFO: No answer while registering resource");
 						stop;
@@ -2153,6 +2201,7 @@ module OneM2M_Functions {
 				function f_cse_notifyProcedure_subscriptionVerificationHandler(in ResponseStatusCode p_responseStatusCode := int2000) runs on AeSimu {
 					// Local variables
 					var ResponsePrimitive v_responsePrimitive;
+					var boolean v_notificationReceived := false;
 					var template Notification v_notificationRequest := mw_contentNotificationVerification;
 					
 					//Activate defaults when running on a PTC
@@ -2167,10 +2216,12 @@ module OneM2M_Functions {
 					alt {
 						[] mcaPortIn.receive(mw_request(mw_notifyNotification(v_notificationRequest))) -> value vc_request {
 							tc_ac.stop;
+							v_notificationReceived := true;
 							setverdict(pass, __SCOPE__ & ":INFO: Subscription Verification Notification received");
 						}
 						[] mcaPortIn.receive(mw_request(mw_notifyNotification(mw_contentNotification(?)))) -> value vc_request {
 							tc_ac.stop;
+							v_notificationReceived := true;
 							setverdict(inconc, __SCOPE__ & ":ERROR: Notification received but verificationRequest isn't set to TRUE");							
 						}
 						[] tc_ac.timeout {
@@ -2179,16 +2230,18 @@ module OneM2M_Functions {
 						}
 					}
 					
-					//Sending response to the notification received	
-					//Preparation of Notification response to be sent
-					v_responsePrimitive := valueof(m_responseNotification(p_responseStatusCode, omit));
-    				v_responsePrimitive.requestIdentifier := vc_request.primitive.requestPrimitive.requestIdentifier;
-					
-					if(getverdict != pass) {
-						v_responsePrimitive.responseStatusCode := int4000; 
+					if(v_notificationReceived) {
+						//Sending response to the notification received	
+						//Preparation of Notification response to be sent
+						v_responsePrimitive := valueof(m_responseNotification(p_responseStatusCode, omit));
+	    				v_responsePrimitive.requestIdentifier := vc_request.primitive.requestPrimitive.requestIdentifier;
+						
+						if(getverdict != pass) {
+							v_responsePrimitive.responseStatusCode := int4000; 
+						}
+						f_send(e_mcaPortIn, m_response(v_responsePrimitive));
 					}
-					f_send(e_mcaPortIn, m_response(v_responsePrimitive));
-					        
+
 				} //end f_cse_notifyProcedure_subscriptionVerificationHandler
 				
 				/**
@@ -4044,9 +4097,15 @@ module OneM2M_Functions {
 			 */
 			altstep a_cse_cf06_das() runs on AeSimu {
 			   [] a_cse_aeSimu();
-			}		
- 
- 
+			}
+			
+			 /**
+			 * @desc	Cse altstep for config 07
+			 */
+			 altstep a_cse_cf07() runs on CseSimu {
+			   [] a_ae_cseSimu();
+			 }	
+			
 			/**
 			  * @desc	Altstep for CseSimu
 			  */
@@ -5336,15 +5395,23 @@ module OneM2M_Functions {
   			log(">>> f_getLocalPoA: ", p_portDesc);
   
 			if (ischosen(p_portDesc.binding.httpBindingDesc)) {
-				v_poa := "http://" & p_portDesc.binding.httpBindingDesc.bindingDesc.tsAddress;
+				if (ispresent(p_portDesc.binding.httpBindingDesc.bindingDesc.useTls) and (p_portDesc.binding.httpBindingDesc.bindingDesc.useTls == true)) {
+					v_poa := "https://" & p_portDesc.binding.httpBindingDesc.bindingDesc.tsAddress;
+				} else {
+					v_poa := "http://" & p_portDesc.binding.httpBindingDesc.bindingDesc.tsAddress;
+				}
 				if (ispresent(p_portDesc.binding.httpBindingDesc.bindingDesc.localPort)) {
-			    	v_poa := v_poa & ":" & int2str(p_portDesc.binding.httpBindingDesc.bindingDesc.localPort);
-			    }
+					v_poa := v_poa & ":" & int2str(p_portDesc.binding.httpBindingDesc.bindingDesc.localPort);
+				}
 			} else if (ischosen(p_portDesc.binding.coapBindingDesc)) {
-			    v_poa := "coap://" & p_portDesc.binding.coapBindingDesc.bindingDesc.tsAddress;
-			    if (ispresent(p_portDesc.binding.coapBindingDesc.bindingDesc.localPort)) {
-			        v_poa := v_poa & ":" & int2str(p_portDesc.binding.coapBindingDesc.bindingDesc.localPort);
-			    }
+				if (ispresent(p_portDesc.binding.coapBindingDesc.bindingDesc.useTls) and (p_portDesc.binding.coapBindingDesc.bindingDesc.useTls == true)) {
+					v_poa := "coaps://" & p_portDesc.binding.coapBindingDesc.bindingDesc.tsAddress;
+				} else {
+					v_poa := "coap://" & p_portDesc.binding.coapBindingDesc.bindingDesc.tsAddress;
+				}
+   				if (ispresent(p_portDesc.binding.coapBindingDesc.bindingDesc.localPort)) {
+   					v_poa := v_poa & ":" & int2str(p_portDesc.binding.coapBindingDesc.bindingDesc.localPort);
+				}
 			} else if (ischosen(p_portDesc.binding.mqttBindingDesc)) {
 			    v_poa := "mqtt://" & p_portDesc.binding.mqttBindingDesc.bindingDesc.tsAddress;
 			    if (ispresent(p_portDesc.binding.mqttBindingDesc.bindingDesc.localPort)) {
@@ -6621,7 +6688,7 @@ module OneM2M_Functions {
 						//Calculate the SP-Relative-AE-ID following format defined in TS-0010 MQTT
 						v_aeResourceAddress := f_getResourceAddress(p_aeIndex, e_nonHierarchical, e_spRelative);
 						if(vc_resourcesList[p_aeIndex].resource.aE.aE_ID[0] == "S") {
-							v_spRelativeAeIdForMqtt := f_resourceIdCleaner(v_aeResourceAddress);
+							v_spRelativeAeIdForMqtt := oct2char(unichar2oct(f_resourceIdCleaner(v_aeResourceAddress)));
 						} else {
 							v_spRelativeAeIdForMqtt := f_getSpRelativeAeIdForMqtt(v_aeResourceAddress);
 						}
@@ -7052,6 +7119,11 @@ module OneM2M_Functions {
 		 */		
 		external function fx_validateESCertKEMessage(XSD.Base64Binary incomingMessage, integer stage) return boolean;			
 
+		/**
+		 * @desc Retrieve the specified ontology description. 
+		 * @param p_ontology_description The ontology description (e.g. /saref).
+		 */
+		external function fx_retrieve_formal_ontology(in charstring p_ontology_description) return charstring;
 
 	} // end externalFunctions
 	
diff --git a/LibOneM2M/OneM2M_Pics.ttcn b/LibOneM2M/OneM2M_Pics.ttcn
index ddde51f09735477fe5fd97c0f8270fe723b27fcc..00d8b2f7df1cbb57c985043c9e0d8c6b8eebf22c 100644
--- a/LibOneM2M/OneM2M_Pics.ttcn
+++ b/LibOneM2M/OneM2M_Pics.ttcn
@@ -6,7 +6,7 @@
  *  All rights reserved.
  *  
  *  @author     oneM2M/ETSI
- *  @desc       Module containing Pixits for oneM2M
+ *  @desc			 Module containing Pixits for oneM2M
  *
  */
 module OneM2M_Pics {
@@ -47,7 +47,8 @@ module OneM2M_Pics {
 	 */
 	modulepar boolean PICS_IN_CSE := true;
 	modulepar boolean PICS_MN_CSE := true;
-	modulepar boolean PICS_ASN_CSE := true;		
+	modulepar boolean PICS_ASN_CSE := true;
+	modulepar boolean PICS_AE_IPE := false;
 	
 	/**
 	 * @desc Resource Addressing methods 
@@ -189,6 +190,46 @@ module OneM2M_Pics {
 			modulepar boolean PICS_SERVICE_SUBSCRIBED_NODE := true;	
 			modulepar boolean PICS_REMOTE_PROVISIONING := true;	
 		}
+
+		group Onthology_based_interworking {
+			
+			/**
+			 * @desc Does the Test System provide an ontology server?
+			 */
+			modulepar boolean PICS_TS_ONTOLOGY_SERVER := true;
+			
+			/**
+			 * @desc Does the SUT support RESTfull API?
+			 */
+			modulepar boolean PICS_RESTFULL_API := true;
+			
+			/**
+			 * @desc Does the SUT support Discovery?
+			 */
+			modulepar boolean PICS_AE_IPE_DISCOVERY := true;
+			
+			/**
+			 * @desc The expected HTTP Content-type header value
+			 */
+			modulepar charstring PICS_HEADER_CONTENT_TYPE := "application/xml";
+			
+			/**
+			 * @desc The expected HTTP server where to retrieve the formal description of the ontology
+			 */
+			modulepar charstring PICS_HEADER_HOST := "www.someOrganization.org";
+			
+			/**
+			 * @desc HTTP Authorization if required
+			 */
+			modulepar boolean PICS_USE_TOKEN_HEADER := false;
+			modulepar charstring PICS_TOKEN_HEADER := "";
+			
+			/**
+			 * @desc HTTP GET Uri to retrieve the formal description of the ontology
+			 */
+			modulepar charstring PICS_OBI_URI := "/someOntology"; // TODO Could it be a Pixit?
+		}
+		
 	}
 	
 	group SecurityAttributes {
diff --git a/LibOneM2M/OneM2M_Pixits.ttcn b/LibOneM2M/OneM2M_Pixits.ttcn
index 8dffa35bca890205f34910a67ec75ddf0b6c4fc0..b8d678351797d9840e533a2f7e8bcfd79358999f 100644
--- a/LibOneM2M/OneM2M_Pixits.ttcn
+++ b/LibOneM2M/OneM2M_Pixits.ttcn
@@ -105,14 +105,6 @@ module OneM2M_Pixits {
 			 */			
 			modulepar PrimitiveScope PX_PRIMITIVE_SCOPE 	:= e_cseRelative;
 	
-			//WebSocket parameters
-			modulepar charstring PX_WS_PROTOCOL    := "oneM2M.R2.0.xml";
-			modulepar charstring PX_REQUEST_URI    := "/";
-			//MQTT parameters
-			modulepar charstring PX_HOSTING_CSE_ID := "CSE-ID";
-			modulepar charstring PX_CREDENTIAL_ID  := "admin:admin";
-	
-			
 			/**
 			 * @desc Protocol binding to use during test execution 
 			 */			
@@ -173,7 +165,8 @@ module OneM2M_Pixits {
 									tsAddress  := "127.0.0.1",
 									remotePort := 8080,														// SUT CoAP/HTTP port
 									localPort  := 3031,														// Test Adapter client port (for debug purpose only)
-									sutAddress := "127.0.0.1"
+									sutAddress := "127.0.0.1",
+									useTls     := false
 								}
 						}
 					},
@@ -187,7 +180,8 @@ module OneM2M_Pixits {
 								tsAddress  := "127.0.0.1",
 								remotePort := omit,
 								localPort  := 3041,															// Test Adapter listener port (AeSimu acts as server)
-								sutAddress := "127.0.0.1"
+								sutAddress := "127.0.0.1",
+								useTls     := false
 							}
 						}
 					},
@@ -205,7 +199,8 @@ module OneM2M_Pixits {
 									tsAddress  := "127.0.0.1",
 									remotePort := 8080,														// SUT CoAP/HTTP port
 									localPort  := 3032,														// Test Adapter client port (for debug purpose only)
-									sutAddress := "127.0.0.1"
+									sutAddress := "127.0.0.1",
+									useTls     := false
 								}
 						}
 					},
@@ -219,7 +214,8 @@ module OneM2M_Pixits {
 								tsAddress  := "127.0.0.1",
 								remotePort := omit,
 								localPort  := 3042,														// Test Adapter listener port (AeSimu acts as server)
-								sutAddress := "127.0.0.1"
+								sutAddress := "127.0.0.1",
+								useTls     := false
 							}
 						}
 					},
@@ -240,7 +236,8 @@ module OneM2M_Pixits {
 								tsAddress := "127.0.0.1",
 								remotePort:= 8080,
 								localPort := 3131,
-								sutAddress := "127.0.0.1"
+								sutAddress := "127.0.0.1",
+								useTls     := false
 							}
 						}
 					},
@@ -254,7 +251,8 @@ module OneM2M_Pixits {
 								tsAddress := "127.0.0.1",
 								remotePort:= omit,
 								localPort  := 3141,
-								sutAddress := "127.0.0.1"
+								sutAddress := "127.0.0.1",
+								useTls     := false
 							}
 						}
 					},
@@ -268,7 +266,8 @@ module OneM2M_Pixits {
 								tsAddress := "127.0.0.1",
 								remotePort:= 8080,
 								localPort := 4131,
-								sutAddress := "127.0.0.1"
+								sutAddress := "127.0.0.1",
+								useTls     := false
 							}
 						}
 					},
@@ -282,7 +281,8 @@ module OneM2M_Pixits {
 								tsAddress := "127.0.0.1",
 								remotePort:= omit,
 								localPort  := 4141,
-								sutAddress := "127.0.0.1"
+								sutAddress := "127.0.0.1",
+								useTls     := false
 							}
 						}
 					},
@@ -303,7 +303,8 @@ module OneM2M_Pixits {
 								tsAddress := "127.0.0.1",
 								remotePort:= 8080,
 								localPort := 3132,
-								sutAddress := "127.0.0.1"
+								sutAddress := "127.0.0.1",
+								useTls     := false
 							}
 						}
 					},
@@ -317,7 +318,8 @@ module OneM2M_Pixits {
 								tsAddress := "127.0.0.1",
 								remotePort:= 8080,
 								localPort  := 3142,
-								sutAddress := "127.0.0.1"
+								sutAddress := "127.0.0.1",
+								useTls     := false
 							}
 						}
 					},
@@ -331,7 +333,8 @@ module OneM2M_Pixits {
 								tsAddress := "127.0.0.1",
 								remotePort:= 8080,
 								localPort := 4132,
-								sutAddress := "127.0.0.1"
+								sutAddress := "127.0.0.1",
+								useTls     := false
 							}
 						}
 					},
@@ -345,14 +348,16 @@ module OneM2M_Pixits {
 								tsAddress := "127.0.0.1",
 								remotePort:= 8080,
 								localPort  := 4142,
-								sutAddress := "127.0.0.1"
+								sutAddress := "127.0.0.1",
+								useTls     := false
 							}
 						}
 					},
 					serialization := "json"
 				}
 			};
-			modulepar UtDesc PX_TS_UT := { url := "http://127.0.0.1:43000/" };
+
+			modulepar UrlDesc PX_TS_UT := { url := "http://127.0.0.1:43000/" };
 	
 			modulepar AeSimuComponentDesc PX_TS_DAS := { // DAS component settings
 				aeIdStem := "",
@@ -365,7 +370,8 @@ module OneM2M_Pixits {
 									tsAddress  := "127.0.0.1",
 									remotePort := 8080,														// SUT CoAP/HTTP port
 									localPort  := 3033,														// Test Adapter client port (for debug purpose only)
-									sutAddress := "127.0.0.1"
+									sutAddress := "127.0.0.1",
+									useTls     := false
 								}
 						}
 					},
@@ -379,14 +385,20 @@ module OneM2M_Pixits {
 								tsAddress  := "127.0.0.1",
 								remotePort := omit,
 								localPort  := 3043,															// Test Adapter listener port (AeSimu acts as server)
-								sutAddress := "127.0.0.1"
+								sutAddress := "127.0.0.1",
+								useTls     := false
 							}
 						}
 					},
 					serialization := "xml"
 				}
 			};
-				
+							
+			/**
+			 * @desc Simulated Ontology Server IP address and listening port 
+			 */
+			modulepar UrlDesc PX_TS_ONTOLOGY_SERVER := { url := "http://127.0.0.1:80/" };
+	
 		}
 		
 		group ExecutionParameters {
diff --git a/LibOneM2M/OneM2M_Ports.ttcn b/LibOneM2M/OneM2M_Ports.ttcn
index 4a404f7c81c47547b0a5b9abb7963e605d3e300f..dad32616c3f7422906e0d8a999f5f30843e1268a 100644
--- a/LibOneM2M/OneM2M_Ports.ttcn
+++ b/LibOneM2M/OneM2M_Ports.ttcn
@@ -64,7 +64,7 @@ module OneM2M_Ports {
 			UtTriggerAckPrimitive;
 		out 
 			UtTriggerPrimitive; 
-		map param (in UtDesc p_utDesc)
+		map param (in UrlDesc p_utDesc)
 	}
 	
 }//end module
diff --git a/LibOneM2M/OneM2M_Templates.ttcn b/LibOneM2M/OneM2M_Templates.ttcn
index 58ced2c0a040e2f43e3e1648bda9c6a7b986df27..01de67d7f01bcbf24be6ee128dc81bd188a0bcb7 100644
--- a/LibOneM2M/OneM2M_Templates.ttcn
+++ b/LibOneM2M/OneM2M_Templates.ttcn
@@ -209,6 +209,13 @@ module OneM2M_Templates {
 				vendorInformation := *
 			};
         	
+			template RequestPrimitive mw_retrieveFormalOntology(template XSD.ID p_targetResourceAddress := ?, template XSD.ID p_originator := ?, template XSD.AnyURI p_ontologyServerUri := ?) modifies mw_retrieve := {
+    		from_ := p_originator,
+				requestIdentifier := ?,
+				primitiveContent := { flexContainer := mw_contentFlexContainer(p_ontologyServerUri) },
+				releaseVersionIndicator := "3"
+			};
+        	
 			/**
 			 * @desc RETRIEVE request primitive for a single attribute in To field ("targetResourceAddress#AttributeName")
 			 * @param p_targetResourceAddress Target resource address (including "#AttributeName")
@@ -2232,7 +2239,7 @@ module OneM2M_Templates {
 				operationExecutionTime := *,
 				responseType := *,
 				resultPersistence := omit,
-				resultContent := omit,
+				resultContent := int0 ifpresent,
 				eventCategory := *,
 				deliveryAggregation := *,
 				groupRequestIdentifier := *,
@@ -2360,6 +2367,10 @@ module OneM2M_Templates {
 			notification := p_notification
 		};
 		 
+		template (present) PrimitiveContent mw_primitiveContentFlexContainer(template (present) FlexContainerResource_optional p_flexContainer := ?) := {
+			flexContainer := p_flexContainer
+		};
+		 
 		 
 		/**
 		 * @desc Base primitiveContent for CREATE operation for AEAnnc resource
@@ -7264,7 +7275,30 @@ module OneM2M_Templates {
 			nodeLink := omit //O
 		}
 		
-		template (value) DeviceAirConditioner_optional m_contentDeviceAirConditioner_allOmit := {
+		template (present) FlexContainerResource_optional mw_contentFlexContainer(
+																																							template (present) XSD.AnyURI p_ontologyRef := ?
+		) := {
+			resourceName := *,//O
+			resourceType := *,//NP
+			resourceID := *,//NP
+			parentID := *,//NP
+			creationTime := *,//NP
+			lastModifiedTime := *,//NP
+			labels := *,//O
+			accessControlPolicyIDs := *,//O
+			expirationTime := *,//O
+			dynamicAuthorizationConsultationIDs := *, //O
+			announceTo := *,//O
+			announcedAttribute := *,//O
+			stateTag := *,//NP
+			creator := *,//O
+			containerDefinition := *, //M
+			ontologyRef := *, //O
+			contentSize := *, //NP
+			nodeLink := * //O
+		}
+		
+		template DeviceAirConditioner_optional m_contentDeviceAirConditioner_allOmit := {
 			resourceName := omit,//O
 			resourceType := omit,//NP
 			resourceID := omit,//NP
diff --git a/LibOneM2M/OneM2M_Types.ttcn b/LibOneM2M/OneM2M_Types.ttcn
deleted file mode 100644
index ecebd2dd216af9236e0a61624a791cc735e596a8..0000000000000000000000000000000000000000
--- a/LibOneM2M/OneM2M_Types.ttcn
+++ /dev/null
@@ -1,8312 +0,0 @@
-/**
- *  Copyright Notification
- *  No part of this document may be reproduced, in an electronic retrieval system or otherwise, except as authorized by written permission.
- *  The copyright and the foregoing restriction extend to reproduction in all media.
- *  © 2016, oneM2M Partners Type 1 (ARIB, ATIS, CCSA, ETSI, TIA, TSDSI, TTA, TTC).
- *  All rights reserved.
- *  
- *  @author     oneM2M
- *  @version    $URL: https://oldforge.etsi.org/svn/oneM2M/trunk/ttcn/LibOneM2M/OneM2M_Types.ttcn $
- *              $Id: OneM2M_Types.ttcn 356 2017-08-21 12:25:14Z reinaortega $
- *  @desc       OneM2M data types module 
- *
- */
-module OneM2M_Types {
-
-
-import from XSD all;
-import from OneM2M_TypesAndValues {type Resource_2; type ResourceTypeList_1; type PrimitiveContent};
-import from OneM2M_Types_homeDevice {type Battery; type BatteryAnnc};
-
-
-type record AccessControlPolicy
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	Timestamp expirationTime,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional,
-	SetOfAcrs privileges,
-	SetOfAcrs selfPrivileges,
-	ListOfURIs authorizationDecisionResourceIDs,
-	ListOfURIs authorizationPolicyResourceIDs,
-	ListOfURIs authorizationInformationResourceIDs,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record AccessControlPolicyAnnc
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	Timestamp expirationTime,
-	XSD.AnyURI link,
-	SetOfAcrs privileges,
-	SetOfAcrs selfPrivileges,
-	ListOfURIs authorizationDecisionResourceIDs,
-	ListOfURIs authorizationPolicyResourceIDs,
-	ListOfURIs authorizationInformationResourceIDs,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-
-
-
-
-
-
-type record ActiveCmdhPolicy
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional,
-	MgmtDefinition mgmtDefinition,
-	ListOfURIs objectIDs optional,
-	ListOfURIs objectPaths optional,
-	XSD.String description optional,
-	XSD.AnyURI mgmtSchema optional,
-	XSD.ID activeCmdhPolicyLink
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-};
-
-
-type record AEContactListPerCSE
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	XSD.NonNegativeInteger cSE_ID,
-	ListOfM2MID aE_IDList optional
-}
-with {
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (cSE_ID) "name as 'CSE-ID'";
-  variant (aE_IDList) "name as 'AE-IDList'";
-};
-
-
-type record AEContactList
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	XSD.NonNegativeInteger numberImpactedCSEs,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription,
-			AEContactListPerCSE aEContactListPerCSE,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-  variant (choice.choice_list[-].aEContactListPerCSE) "name as capitalized";
-};
-
-
-type record AE
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional,
-	XSD.String appName optional,
-	XSD.String app_ID,
-	XSD.ID aE_ID,
-	PoaList pointOfAccess optional,
-	XSD.AnyURI ontologyRef optional,
-	XSD.AnyURI nodeLink optional,
-	XSD.Boolean requestReachability,
-	Serializations contentSerialization optional,
-	E2eSecInfo e2eSecInfo optional,
-	ExternalID m2M_Ext_ID optional,
-	SupportedReleaseVersions supportedReleaseVersions,
-	AERegistrationStatus registrationStatus optional,
-	XSD.Boolean trackRegistrationPoints optional,
-	SessionCapabilities sessionCapabilities optional,
-	XSD.Boolean triggerEnable optional,
-	ActivityPatternElements activityPatternElements optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Container container,
-			Group group_,
-			AccessControlPolicy accessControlPolicy,
-			Subscription subscription,
-			PollingChannel pollingChannel,
-			SemanticDescriptor semanticDescriptor,
-			TimeSeries timeSeries,
-			Sg_flexContainerResource_group sg_flexContainerResource,
-			SemanticMashupInstance semanticMashupInstance,
-			MultimediaSession multimediaSession,
-			CrossResourceSubscription crossResourceSubscription,
-			TriggerRequest triggerRequest,
-			TransactionMgmt transactionMgmt,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-  variant (app_ID) "name as 'App-ID'";
-  variant (aE_ID) "name as 'AE-ID'";
-  //variant (requestReachability) "text 'true' as '1'";
-  //variant (requestReachability) "text 'false' as '0'";
-  variant (m2M_Ext_ID) "name as 'M2M-Ext-ID'";
-  //variant (trackRegistrationPoints) "text 'true' as '1'";
-  //variant (trackRegistrationPoints) "text 'false' as '0'";
-  //variant (triggerEnable) "text 'true' as '1'";
-  //variant (triggerEnable) "text 'false' as '0'";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-  variant (choice.choice_list[-].group_) "name as 'group'";
-};
-
-
-type record AEAnnc
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs,
-	Timestamp expirationTime,
-	XSD.AnyURI link,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	XSD.String appName optional,
-	XSD.String app_ID optional,
-	XSD.ID aE_ID optional,
-	PoaList pointOfAccess optional,
-	XSD.AnyURI ontologyRef optional,
-	XSD.AnyURI nodeLink optional,
-	XSD.Boolean requestReachability optional,
-	Serializations contentSerialization optional,
-	E2eSecInfo e2eSecInfo optional,
-	SupportedReleaseVersions supportedReleaseVersions,
-	AERegistrationStatus registrationStatus optional,
-	XSD.Boolean trackRegistrationPoints optional,
-	SessionCapabilities sessionCapabilities optional,
-	XSD.Boolean triggerEnable optional,
-	ActivityPatternElements activityPatternElements optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Container container,
-			ContainerAnnc containerAnnc,
-			Group group_,
-			GroupAnnc groupAnnc,
-			AccessControlPolicy accessControlPolicy,
-			AccessControlPolicyAnnc accessControlPolicyAnnc,
-			Subscription subscription,
-			SemanticDescriptor semanticDescriptor,
-			TimeSeries timeSeries,
-			TimeSeriesAnnc timeSeriesAnnc,
-			Sg_flexContainerResource_group sg_flexContainerResource,
-			Sg_announcedFlexContainerResource_group sg_announcedFlexContainerResource,
-			SemanticMashupInstance semanticMashupInstance,
-			SemanticMashupInstanceAnnc semanticMashupInstanceAnnc,
-			MultimediaSession multimediaSession,
-			MultimediaSessionAnnc multimediaSessionAnnc,
-			CrossResourceSubscription crossResourceSubscription,
-			TriggerRequest triggerRequest,
-			TransactionMgmt transactionMgmt,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (app_ID) "name as 'App-ID'";
-  variant (aE_ID) "name as 'AE-ID'";
-  //variant (requestReachability) "text 'true' as '1'";
-  //variant (requestReachability) "text 'false' as '0'";
-  //variant (trackRegistrationPoints) "text 'true' as '1'";
-  //variant (trackRegistrationPoints) "text 'false' as '0'";
-  //variant (triggerEnable) "text 'true' as '1'";
-  //variant (triggerEnable) "text 'false' as '0'";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-  variant (choice.choice_list[-].group_) "name as 'group'";
-};
-
-
-type record AllJoynApp
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime optional,
-	Timestamp lastModifiedTime optional,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime optional,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	ListOfNCNames announcedAttribute optional,
-	XSD.NonNegativeInteger stateTag,
-	XSD.ID creator optional,
-	XSD.AnyURI containerDefinition,
-	XSD.AnyURI ontologyRef optional,
-	XSD.NonNegativeInteger contentSize,
-	XSD.AnyURI nodeLink optional,
-	AllJoynDirection direction,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record of union {
-			SemanticDescriptor semanticDescriptor,
-			Subscription subscription,
-			AllJoynSvcObject allJoynSvcObject
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record AllJoynAppAnnc
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime optional,
-	Timestamp lastModifiedTime optional,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs,
-	Timestamp expirationTime optional,
-	XSD.AnyURI link,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	XSD.NonNegativeInteger stateTag optional,
-	XSD.AnyURI containerDefinition,
-	XSD.AnyURI ontologyRef optional,
-	XSD.NonNegativeInteger contentSize optional,
-	XSD.AnyURI nodeLink optional,
-	AllJoynDirection direction,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record of union {
-			SemanticDescriptor semanticDescriptor,
-			SemanticDescriptorAnnc semanticDescriptorAnnc,
-			Subscription subscription,
-			AllJoynSvcObject allJoynSvcObject,
-			AllJoynSvcObjectAnnc allJoynSvcObjectAnnc
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record AllJoynInterface
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime optional,
-	Timestamp lastModifiedTime optional,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime optional,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	ListOfNCNames announcedAttribute optional,
-	XSD.NonNegativeInteger stateTag,
-	XSD.ID creator optional,
-	XSD.AnyURI containerDefinition,
-	XSD.AnyURI ontologyRef optional,
-	XSD.NonNegativeInteger contentSize,
-	XSD.AnyURI nodeLink optional,
-	XSD.AnyURI interfaceIntrospectXmlRef,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record of union {
-			SemanticDescriptor semanticDescriptor,
-			Subscription subscription,
-			AllJoynMethod allJoynMethod,
-			AllJoynProperty allJoynProperty,
-			Container container
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record AllJoynInterfaceAnnc
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime optional,
-	Timestamp lastModifiedTime optional,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs,
-	Timestamp expirationTime optional,
-	XSD.AnyURI link,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	XSD.NonNegativeInteger stateTag optional,
-	XSD.AnyURI containerDefinition,
-	XSD.AnyURI ontologyRef optional,
-	XSD.NonNegativeInteger contentSize optional,
-	XSD.AnyURI nodeLink optional,
-	XSD.AnyURI interfaceIntrospectXmlRef optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record of union {
-			SemanticDescriptor semanticDescriptor,
-			SemanticDescriptorAnnc semanticDescriptorAnnc,
-			Subscription subscription,
-			AllJoynMethod allJoynMethod,
-			AllJoynMethodAnnc allJoynMethodAnnc,
-			AllJoynProperty allJoynProperty,
-			AllJoynPropertyAnnc allJoynPropertyAnnc,
-			Container container,
-			ContainerAnnc containerAnnc
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record AllJoynMethodCall
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime optional,
-	Timestamp lastModifiedTime optional,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime optional,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	ListOfNCNames announcedAttribute optional,
-	XSD.NonNegativeInteger stateTag,
-	XSD.ID creator optional,
-	XSD.AnyURI containerDefinition,
-	XSD.AnyURI ontologyRef optional,
-	XSD.NonNegativeInteger contentSize,
-	XSD.AnyURI nodeLink optional,
-	XSD.String input optional,
-	XSD.String callStatus optional,
-	XSD.String output optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record of union {
-			SemanticDescriptor semanticDescriptor,
-			Subscription subscription
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record AllJoynMethodCallAnnc
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime optional,
-	Timestamp lastModifiedTime optional,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs,
-	Timestamp expirationTime optional,
-	XSD.AnyURI link,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	XSD.NonNegativeInteger stateTag optional,
-	XSD.AnyURI containerDefinition,
-	XSD.AnyURI ontologyRef optional,
-	XSD.NonNegativeInteger contentSize optional,
-	XSD.AnyURI nodeLink optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record of union {
-			SemanticDescriptor semanticDescriptor,
-			SemanticDescriptorAnnc semanticDescriptorAnnc,
-			Subscription subscription
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record AllJoynMethod
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime optional,
-	Timestamp lastModifiedTime optional,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime optional,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	ListOfNCNames announcedAttribute optional,
-	XSD.NonNegativeInteger stateTag,
-	XSD.ID creator optional,
-	XSD.AnyURI containerDefinition,
-	XSD.AnyURI ontologyRef optional,
-	XSD.NonNegativeInteger contentSize,
-	XSD.AnyURI nodeLink optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record of union {
-			SemanticDescriptor semanticDescriptor,
-			Subscription subscription,
-			AllJoynMethodCall allJoynMethodCall
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record AllJoynMethodAnnc
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime optional,
-	Timestamp lastModifiedTime optional,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs,
-	Timestamp expirationTime optional,
-	XSD.AnyURI link,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	XSD.NonNegativeInteger stateTag optional,
-	XSD.AnyURI containerDefinition,
-	XSD.AnyURI ontologyRef optional,
-	XSD.NonNegativeInteger contentSize optional,
-	XSD.AnyURI nodeLink optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record of union {
-			SemanticDescriptor semanticDescriptor,
-			SemanticDescriptorAnnc semanticDescriptorAnnc,
-			Subscription subscription,
-			AllJoynMethodCall allJoynMethodCall,
-			AllJoynMethodCallAnnc allJoynMethodCallAnnc
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record AllJoynProperty
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime optional,
-	Timestamp lastModifiedTime optional,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime optional,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	ListOfNCNames announcedAttribute optional,
-	XSD.NonNegativeInteger stateTag,
-	XSD.ID creator optional,
-	XSD.AnyURI containerDefinition,
-	XSD.AnyURI ontologyRef optional,
-	XSD.NonNegativeInteger contentSize,
-	XSD.AnyURI nodeLink optional,
-	XSD.String currentValue,
-	XSD.String requestedValue optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record of union {
-			SemanticDescriptor semanticDescriptor,
-			Subscription subscription
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record AllJoynPropertyAnnc
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime optional,
-	Timestamp lastModifiedTime optional,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs,
-	Timestamp expirationTime optional,
-	XSD.AnyURI link,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	XSD.NonNegativeInteger stateTag optional,
-	XSD.AnyURI containerDefinition,
-	XSD.AnyURI ontologyRef optional,
-	XSD.NonNegativeInteger contentSize optional,
-	XSD.AnyURI nodeLink optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record of union {
-			SemanticDescriptor semanticDescriptor,
-			SemanticDescriptorAnnc semanticDescriptorAnnc,
-			Subscription subscription
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record AllJoynSvcObject
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime optional,
-	Timestamp lastModifiedTime optional,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime optional,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	ListOfNCNames announcedAttribute optional,
-	XSD.NonNegativeInteger stateTag,
-	XSD.ID creator optional,
-	XSD.AnyURI containerDefinition,
-	XSD.AnyURI ontologyRef optional,
-	XSD.NonNegativeInteger contentSize,
-	XSD.AnyURI nodeLink optional,
-	XSD.String objectPath,
-	XSD.Boolean enable,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record of union {
-			SemanticDescriptor semanticDescriptor,
-			Subscription subscription,
-			AllJoynInterface allJoynInterface
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  //variant (enable) "text 'true' as '1'";
-  //variant (enable) "text 'false' as '0'";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record AllJoynSvcObjectAnnc
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime optional,
-	Timestamp lastModifiedTime optional,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs,
-	Timestamp expirationTime optional,
-	XSD.AnyURI link,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	XSD.NonNegativeInteger stateTag optional,
-	XSD.AnyURI containerDefinition,
-	XSD.AnyURI ontologyRef optional,
-	XSD.NonNegativeInteger contentSize optional,
-	XSD.AnyURI nodeLink optional,
-	XSD.String objectPath,
-	XSD.Boolean enable optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record of union {
-			SemanticDescriptor semanticDescriptor,
-			SemanticDescriptorAnnc semanticDescriptorAnnc,
-			Subscription subscription,
-			AllJoynInterface allJoynInterface,
-			AllJoynInterfaceAnnc allJoynInterfaceAnnc
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  //variant (enable) "text 'true' as '1'";
-  //variant (enable) "text 'false' as '0'";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record AreaNwkDeviceInfo
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional,
-	MgmtDefinition mgmtDefinition,
-	ListOfURIs objectIDs optional,
-	ListOfURIs objectPaths optional,
-	XSD.String description optional,
-	XSD.AnyURI mgmtSchema optional,
-	XSD.String devID,
-	XSD.String devType,
-	XSD.AnyURI areaNwkId,
-	XSD.NonNegativeInteger sleepInterval optional,
-	XSD.NonNegativeInteger sleepDuration optional,
-	XSD.String devStatus optional,
-	ListOfURIs listOfNeighbors,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of Subscription subscription_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.subscription_list) "untagged";
-  variant (choice.subscription_list[-]) "name as 'subscription'";
-};
-
-
-type record AreaNwkDeviceInfoAnnc
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs,
-	Timestamp expirationTime,
-	XSD.AnyURI link,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	MgmtDefinition mgmtDefinition,
-	ListOfURIs objectIDs optional,
-	ListOfURIs objectPaths optional,
-	XSD.String description optional,
-	XSD.AnyURI mgmtSchema optional,
-	XSD.String devID optional,
-	XSD.String devType optional,
-	XSD.AnyURI areaNwkId optional,
-	XSD.NonNegativeInteger sleepInterval optional,
-	XSD.NonNegativeInteger sleepDuration optional,
-	XSD.String devStatus optional,
-	ListOfURIs listOfNeighbors optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of Subscription subscription_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.subscription_list) "untagged";
-  variant (choice.subscription_list[-]) "name as 'subscription'";
-};
-
-
-type record AreaNwkInfo
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional,
-	MgmtDefinition mgmtDefinition,
-	ListOfURIs objectIDs optional,
-	ListOfURIs objectPaths optional,
-	XSD.String description optional,
-	XSD.AnyURI mgmtSchema optional,
-	XSD.String areaNwkType,
-	ListOfURIs listOfDevices,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of Subscription subscription_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.subscription_list) "untagged";
-  variant (choice.subscription_list[-]) "name as 'subscription'";
-};
-
-
-type record AreaNwkInfoAnnc
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs,
-	Timestamp expirationTime,
-	XSD.AnyURI link,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	MgmtDefinition mgmtDefinition,
-	ListOfURIs objectIDs optional,
-	ListOfURIs objectPaths optional,
-	XSD.String description optional,
-	XSD.AnyURI mgmtSchema optional,
-	XSD.String areaNwkType optional,
-	ListOfURIs listOfDevices optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of Subscription subscription_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.subscription_list) "untagged";
-  variant (choice.subscription_list[-]) "name as 'subscription'";
-};
-
-
-type record AuthorizationDecision_1
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	AuthorizationDecision_1 decision optional,
-	AuthorizationStatus status optional,
-	XSD.AnyURI to_ optional,
-	XSD.ID from_ optional,
-	Operation operation optional,
-	ResourceType requestedResourceType optional,
-	FilterCriteria filterUsage optional,
-	record length(1 .. infinity) of RoleID roleIDs optional,
-	record length(1 .. infinity) of TokenID tokenIDs optional,
-	record length(1 .. infinity) of DynAuthJWT tokens optional,
-	Timestamp requestTime optional,
-	LocationRegion originatorLocation optional,
-	IpAddress originatorIP optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as 'authorizationDecision'";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (to_) "name as 'to'";
-  variant (from_) "name as 'from'";
-  variant (roleIDs) "list";
-  variant (tokenIDs) "list";
-  variant (tokens) "list";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record AuthorizationInformation
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	AuthorizationStatus status optional,
-	XSD.ID from_ optional,
-	record length(1 .. infinity) of RoleID roleIDs optional,
-	record length(1 .. infinity) of TokenID tokenIDs optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Role role,
-			Token token,
-			Subscription subscription,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (from_) "name as 'from'";
-  variant (roleIDs) "list";
-  variant (tokenIDs) "list";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record AuthorizationPolicy
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	SetOfPermissions policies optional,
-	AcpCombiningAlgorithm combiningAlgorithm optional,
-	AuthorizationStatus status optional,
-	XSD.AnyURI to_ optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (to_) "name as 'to'";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record BackgroundDataTransfer
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	XSD.ID creator optional,
-	XSD.PositiveInteger volumePerNode,
-	XSD.PositiveInteger numberOfNodes,
-	ScheduleEntry desiredTimeWindow optional,
-	TransferSelectionGuidance transferSelectionGuidance optional,
-	LocationRegion geographicInformation optional,
-	XSD.AnyURI groupLink optional,
-	record of XSD.AnyURI memberIDs optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (memberIDs) "list";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record BatteryMgmt
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional,
-	MgmtDefinition mgmtDefinition,
-	ListOfURIs objectIDs optional,
-	ListOfURIs objectPaths optional,
-	XSD.String description optional,
-	XSD.AnyURI mgmtSchema optional,
-	XSD.UnsignedInt batteryLevel,
-	BatteryStatus batteryStatus,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of Subscription subscription_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.subscription_list) "untagged";
-  variant (choice.subscription_list[-]) "name as 'subscription'";
-};
-
-
-type record BatteryMgmtAnnc
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs,
-	Timestamp expirationTime,
-	XSD.AnyURI link,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	MgmtDefinition mgmtDefinition,
-	ListOfURIs objectIDs optional,
-	ListOfURIs objectPaths optional,
-	XSD.String description optional,
-	XSD.AnyURI mgmtSchema optional,
-	XSD.UnsignedInt batteryLevel optional,
-	BatteryStatus batteryStatus optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of Subscription subscription_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.subscription_list) "untagged";
-  variant (choice.subscription_list[-]) "name as 'subscription'";
-};
-
-
-type record CmdhBuffer
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional,
-	MgmtDefinition mgmtDefinition,
-	ListOfURIs objectIDs optional,
-	ListOfURIs objectPaths optional,
-	XSD.String description optional,
-	XSD.AnyURI mgmtSchema optional,
-	ListOfEventCatWithDef applicableEventCategory,
-	XSD.NonNegativeInteger maxBufferSize,
-	XSD.PositiveInteger storagePriority (1 .. !11)
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-};
-
-
-type record CmdhDefaults
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional,
-	MgmtDefinition mgmtDefinition,
-	ListOfURIs objectIDs optional,
-	ListOfURIs objectPaths optional,
-	XSD.String description optional,
-	XSD.AnyURI mgmtSchema optional,
-	record length(2 .. infinity) of MgmtLinkRef mgmtLink_list
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-  variant (mgmtLink_list) "untagged";
-  variant (mgmtLink_list[-]) "name as 'mgmtLink'";
-};
-
-
-type record CmdhDefEcValue
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional,
-	MgmtDefinition mgmtDefinition,
-	ListOfURIs objectIDs optional,
-	ListOfURIs objectPaths optional,
-	XSD.String description optional,
-	XSD.AnyURI mgmtSchema optional,
-	XSD.PositiveInteger order,
-	EventCat defEcValue,
-	ListOfM2MID requestOrigin,
-	XSD.AnySimpleType requestContext optional,//FIXME Use AnySimpleType instead
-	XSD.Boolean requestContextNotification optional,
-	XSD.AnySimpleType requestCharacteristics optional//FIXME Use AnySimpleType instead
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-  //variant (requestContextNotification) "text 'true' as '1'";
-  //variant (requestContextNotification) "text 'false' as '0'";
-};
-
-
-type record CmdhEcDefParamValues
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional,
-	MgmtDefinition mgmtDefinition,
-	ListOfURIs objectIDs optional,
-	ListOfURIs objectPaths optional,
-	XSD.String description optional,
-	XSD.AnyURI mgmtSchema optional,
-	ListOfEventCatWithDef applicableEventCategory,
-	XSD.Long defaultRequestExpTime,
-	XSD.Long defaultResultExpTime,
-	XSD.Long defaultOpExecTime,
-	XSD.Long defaultRespPersistence,
-	XSD.Boolean defaultDelAggregation
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-  //variant (defaultDelAggregation) "text 'true' as '1'";
-  //variant (defaultDelAggregation) "text 'false' as '0'";
-};
-
-
-type record CmdhLimits
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional,
-	MgmtDefinition mgmtDefinition,
-	ListOfURIs objectIDs optional,
-	ListOfURIs objectPaths optional,
-	XSD.String description optional,
-	XSD.AnyURI mgmtSchema optional,
-	XSD.PositiveInteger order,
-	ListOfM2MID requestOrigin,
-	XSD.AnySimpleType requestContext,//FIXME Use AnySimpleType instead
-	XSD.Boolean requestContextNotification optional,
-	XSD.AnySimpleType requestCharacteristics,//FIXME Use AnySimpleType instead
-	ListOfEventCat limitsEventCategory,
-	ListOfMinMax limitsRequestExpTime,
-	ListOfMinMax limitsResultExpTime,
-	ListOfMinMax limitsOpExecTime,
-	ListOfMinMax limitsRespPersistence,
-	enumerated {
-		x0,
-		x1,
-		x0_1
-	} limitsDelAggregation
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-  //variant (requestContextNotification) "text 'true' as '1'";
-  //variant (requestContextNotification) "text 'false' as '0'";
-  variant (limitsDelAggregation) "text 'x0' as '0'";
-  variant (limitsDelAggregation) "text 'x0_1' as '0 1'";
-  variant (limitsDelAggregation) "text 'x1' as '1'";
-};
-
-
-type record CmdhNetworkAccessRules
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional,
-	MgmtDefinition mgmtDefinition,
-	ListOfURIs objectIDs optional,
-	ListOfURIs objectPaths optional,
-	XSD.String description optional,
-	XSD.AnyURI mgmtSchema optional,
-	ListOfEventCatWithDef applicableEventCategories,
-	record of MgmtLinkRef mgmtLink_list
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-  variant (mgmtLink_list) "untagged";
-  variant (mgmtLink_list[-]) "name as 'mgmtLink'";
-};
-
-
-type record CmdhNwAccessRule
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional,
-	MgmtDefinition mgmtDefinition,
-	ListOfURIs objectIDs optional,
-	ListOfURIs objectPaths optional,
-	XSD.String description optional,
-	XSD.AnyURI mgmtSchema optional,
-	ListOfM2MID targetNetwork,
-	XSD.NonNegativeInteger minReqVolume,
-	XSD.NonNegativeInteger spreadingWaitTime,
-	BackOffParameters backOffParameters,
-	XSD.AnySimpleType otherConditions,//FIXME Use AnySimpleType instead
-	MgmtLinkRef mgmtLink
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-};
-
-
-type record CmdhPolicy
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional,
-	MgmtDefinition mgmtDefinition,
-	ListOfURIs objectIDs optional,
-	ListOfURIs objectPaths optional,
-	XSD.String description optional,
-	XSD.AnyURI mgmtSchema optional,
-	XSD.String cmdhPolicyName,
-	record length(4 .. infinity) of MgmtLinkRef mgmtLink_list
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-  variant (mgmtLink_list) "untagged";
-  variant (mgmtLink_list[-]) "name as 'mgmtLink'";
-};
-
-
-
-
-
-
-
-
-type XSD.AnyURI ID;
-
-
-type XSD.Token NodeID
-with {
-  variant "name as uncapitalized";
-};
-
-
-type XSD.Token DeviceID (pattern 	"(urn:dev:ops:[\dABCDEFabcdef]#6-[\w_%]#(1,)-[\w_%]#(1,))" & "|" &
-									"(urn:dev:os:[\dABCDEFabcdef]#6-[\w_%]#(1,))" & "|" &
-									"(urn:imei:\d#15)" & "|" &
-									"(urn:esn:[\dABCDEFabcdef]#8)" & "|" &
-									"(urn:meid:[\dABCDEFabcdef]#14)")
-with {
-  variant "name as uncapitalized";
-};
-
-
-type XSD.Token ExternalID
-with {
-  variant "name as uncapitalized";
-};
-
-
-type XSD.Token RequestID
-with {
-  variant "name as uncapitalized";
-};
-
-
-type XSD.String RoleID (pattern "([a-zA-Z0-9.\-,_]*)@([A-Za-z0-9\-_]*)(.([A-Za-z0-9\-_])*)*")
-with {
-  variant "name as uncapitalized";
-};
-
-
-type XSD.String TokenID (pattern "([a-zA-Z0-9.\-,_]*)@([A-Za-z0-9\-_]*)(.([A-Za-z0-9\-_])*)*")
-with {
-  variant "name as uncapitalized";
-};
-
-
-type XSD.AnyURI NhURI
-with {
-  variant "name as uncapitalized";
-};
-
-
-type record length(1 .. infinity) of XSD.ID AcpType
-with {
-  variant "name as uncapitalized";
-  variant "list";
-};
-
-
-type record length(1 .. infinity) of XSD.Token Labels
-with {
-  variant "name as uncapitalized";
-  variant "list";
-};
-
-
-type XSD.UnsignedInt TriggerRecipientID (0 .. 65535)
-with {
-  variant "name as uncapitalized";
-};
-
-
-
-
-type record length(1 .. infinity) of XSD.ID ListOfM2MID
-with {
-  variant "name as uncapitalized";
-  variant "list";
-};
-
-
-
-
-type XSD.Long LongMin_1 (-1 .. infinity)
-with {
-  variant "name as 'longMin-1'";
-};
-
-
-
-
-type record length(2) of LongMin_1 ListOfMinMax
-with {
-  variant "name as uncapitalized";
-  variant "list";
-};
-
-
-
-
-type record length(1 .. infinity) of Base64url SignatureList
-with {
-  variant "name as uncapitalized";
-  variant "list";
-};
-
-
-
-
-type XSD.String Base64url (pattern "([a-zA-Z0-9\-_=]+)")
-with {
-  variant "name as uncapitalized";
-};
-
-
-
-
-
-
-type XSD.Token Ipv4 (pattern 	"([0-9A-Fa-f]#(8)(/([0-9]|[1-2][0-9]|3[0-2]))#(0,1))" & "|" & 
-								"((25[0-5]|2[0-4][0-9]|[0-1]#(0,1)[0-9]#(0,1)[0-9])\.(25[0-5]|2[0-4][0-9]|[0-1]#(0,1)[0-9]#(0,1)[0-9])\.(25[0-5]|2[0-4][0-9]|[0-1]#(0,1)[0-9]#(0,1)[0-9])\.(25[0-5]|2[0-4][0-9]|[0-1]#(0,1)[0-9]#(0,1)[0-9])(/([0-9]|[1-2][0-9]|3[0-2]))#(0,1))")
-with {
-  variant "name as uncapitalized";
-};
-
-
-type XSD.Token Ipv6 (pattern 	"([0-9A-Fa-f]#(1,4)(:[0-9A-Fa-f]#(1,4))#7(/([0-9]|[1-9][0-9]|1[0-1][0-9]|12[0-8]))#(0,1))" & "|" &
-								"(:(:[0-9A-Fa-f]#(1,4))#(1,7))" & "|" & //Double colon start
-								"(([0-9A-Fa-f]#(1,4):)#(1,6)(:[0-9A-Fa-f]#(1,4))#1(/([0-9]|[1-9][0-9]|1[0-1][0-9]|12[0-8]))#(0,1))" & "|" & //Double colon middle
-								"(([0-9A-Fa-f]#(1,4):)#(1,5)(:[0-9A-Fa-f]#(1,4))#(1,2)(/([0-9]|[1-9][0-9]|1[0-1][0-9]|12[0-8]))#(0,1))" & "|" &
-								"(([0-9A-Fa-f]#(1,4):)#(1,4)(:[0-9A-Fa-f]#(1,4))#(1,3)(/([0-9]|[1-9][0-9]|1[0-1][0-9]|12[0-8]))#(0,1))" & "|" &
-								"(([0-9A-Fa-f]#(1,4):)#(1,3)(:[0-9A-Fa-f]#(1,4))#(1,4)(/([0-9]|[1-9][0-9]|1[0-1][0-9]|12[0-8]))#(0,1))" & "|" &
-								"(([0-9A-Fa-f]#(1,4):)#(1,2)(:[0-9A-Fa-f]#(1,4))#(1,5)(/([0-9]|[1-9][0-9]|1[0-1][0-9]|12[0-8]))#(0,1))" & "|" &
-								"(([0-9A-Fa-f]#(1,4):)#1(:[0-9A-Fa-f]#(1,4))#(1,6)(/([0-9]|[1-9][0-9]|1[0-1][0-9]|12[0-8]))#(0,1))" & "|" &
-								"(([0-9A-Fa-f]#(1,4):)#(1,7):(/([0-9]|[1-9][0-9]|1[0-1][0-9]|12[0-8]))#(0,1))" & "|" & //Double colon end
-								"(((:(:0#(1,4))#(0,3)(:(0#(1,4)|[fF]#4))#(0,1))|(0#(1,4):(:0#(1,4))#(0,2)(:(0#(1,4)|[fF]#4))#(0,1))|((0#(1,4):)#2(:0#(1,4))#(0,1)(:(0#(1,4)|[fF]#4))#(0,1))|((0#(1,4):)#3(:(0#(1,4)|[fF]#4))#(0,1))|((0#(1,4):)#4(0#(1,4)|[fF]#4)#(0,1))):(25[0-5]|2[0-4][0-9]|[0-1]#(0,1)[0-9]#(0,1)[0-9])\.(25[0-5]|2[0-4][0-9]|[0-1]#(0,1)[0-9]#(0,1)[0-9])\.(25[0-5]|2[0-4][0-9]|[0-1]#(0,1)[0-9]#(0,1)[0-9])\.(25[0-5]|2[0-4][0-9]|[0-1]#(0,1)[0-9]#(0,1)[0-9]))" & "|" & //Embedded IPv4 addresses without CIDR suffix. Should IPv4 CIDR suffix be added
-								"(::(/0)#(0,1))") //The unspecified address
-	
-with {
-  variant "name as uncapitalized";
-};
-
-
-type XSD.AnyURI PointOfAccess //TODO fixme (pattern "(http|HTTP|coap|COAP|mqtt|MQTT|ws|WS)(s|S)#(0,1)://[\w/!#$\^_.+\q{0, 0, 0, 38}&\-:;=]+")
-with {
-  variant "name as uncapitalized";
-};
-
-
-type record length(1 .. infinity) of PointOfAccess PoaList
-with {
-  variant "name as uncapitalized";
-  variant "list";
-};
-
-
-
-
-type XSD.String Timestamp (pattern "\d#(4)(0[1-9]|1[0-2])(0[1-9]|[1-2]\d|30|31)T([01]\d|2[0-3])[0-5]\d[0-5]\d(,\d#(1,6))#(0,1)")
-with {
-  variant "name as uncapitalized";
-};
-
-
-type union AbsRelTimestamp
-{
-	Timestamp alt_,
-	XSD.Long alt_1
-}
-with {
-  variant "name as uncapitalized";
-  variant "useUnion";
-  variant (alt_) "name as ''";
-  variant (alt_1) "name as ''";
-};
-
-
-type union MissingDataList
-{
-	ListOfTimeStamp alt_,
-	ListOfRelTimeStamp alt_1
-}
-with {
-  variant "name as uncapitalized";
-  variant "useUnion";
-  variant (alt_) "name as ''";
-  variant (alt_1) "name as ''";
-};
-
-
-
-
-type record length(1 .. infinity) of Timestamp ListOfTimeStamp
-with {
-  variant "name as uncapitalized";
-  variant "list";
-};
-
-
-
-
-type record length(1 .. infinity) of XSD.Long ListOfRelTimeStamp
-with {
-  variant "name as uncapitalized";
-  variant "list";
-};
-
-
-type XSD.String TypeOfContent (pattern "[\w/!#$\^_.+\q{0, 0, 0, 38}&\-]+")
-with {
-  variant "name as uncapitalized";
-};
-
-
-
-
-type enumerated PermittedMediaTypes
-{
-	applicationcbor,
-	applicationjson,
-	applicationxml
-}
-with {
-  variant "text 'applicationcbor' as 'application/cbor'";
-  variant "text 'applicationjson' as 'application/json'";
-  variant "text 'applicationxml' as 'application/xml'";
-  variant "name as uncapitalized";
-};
-
-
-
-
-type record length(1 .. infinity) of PermittedMediaTypes Serializations
-with {
-  variant "name as uncapitalized";
-  variant "list";
-};
-
-
-type XSD.String ContentInfo //TODO To be fixed (pattern "([\w/!#$^_.#(1,)&\-]#(1,)(:[0-2])#(0,1))" & "|" &
-							//							"([\w/!#$^_.#(1,)&\-]#(1,)((:[0-2])#(0,1))#(1,)((:[0-5])#(0,1)))")
-	
-with {
-  variant "name as uncapitalized";
-};
-
-
-type XSD.String MediaType (pattern "[\w/!#$\^_.+\q{0, 0, 0, 38}&\-;=]+")
-with {
-  variant "name as uncapitalized";
-};
-
-
-type record length(1 .. infinity) of MediaType ProtocolList
-with {
-  variant "name as uncapitalized";
-  variant "list";
-};
-
-
-type union EventCat
-{
-	StdEventCats alt_,
-	XSD.Integer alt_1 (100 .. 999)
-}
-with {
-  variant "name as uncapitalized";
-  variant "useUnion";
-  variant (alt_) "name as ''";
-  variant (alt_1) "name as ''";
-};
-
-
-type union EventCatWithDef
-{
-	enumerated {
-		int0(0)
-	} alt_,
-	StdEventCats alt_1,
-	XSD.Integer alt_2 (100 .. 999)
-}
-with {
-  variant "name as uncapitalized";
-  variant "useUnion";
-  variant (alt_) "name as ''";
-  variant (alt_) "useNumber";
-  variant (alt_1) "name as ''";
-  variant (alt_2) "name as 'alt_1'";
-  variant (alt_2) "name as ''";
-};
-
-
-type record length(1 .. infinity) of EventCat ListOfEventCat
-with {
-  variant "name as uncapitalized";
-  variant "list";
-};
-
-
-type record length(1 .. infinity) of EventCatWithDef ListOfEventCatWithDef
-with {
-  variant "name as uncapitalized";
-  variant "list";
-};
-
-
-type XSD.String ScheduleEntry (pattern "(((([*]|(([1-5]#(0,1)\d)\-([1-5]#(0,1)\d)))(\/([1-5]#(0,1)\d))#(0,1)|([1-5]#(0,1)\d))\,)#(0,)((([*]|(([1-5]#(0,1)\d)\-([1-5]#(0,1)\d)))(\/([1-5]#(0,1)\d))#(0,1))|([1-5]#(0,1)\d))[\q{0,0,0,32}\q{0,0,0,10}\t\r]#(1,))#2((([*]|((1#(0,1)\d|2[0-3])\-(1#(0,1)\d|2[0-3])))(\/1#(0,1)\d|2[0-3])#(0,1)|(1#(0,1)\d|2[0-3]))\,)#(0,)((([*]|((1#(0,1)\d|2[0-3])\-(1#(0,1)\d|2[0-3])))(\/1#(0,1)\d|2[0-3])#(0,1))|(1#(0,1)\d|2[0-3]))[\q{0,0,0,32}\q{0,0,0,10}\t\r]#(1,)((([*]|(([1-9]|1\d|2\d|3[01])\-([1-9]|1\d|2\d|3[01])))(\/[1-9]|1\d|2\d|3[01])#(0,1)|([1-9]|1\d|2\d|3[01]))\,)#(0,)((([*]|(([1-9]|1\d|2\d|3[01])\-([1-9]|1\d|2\d|3[01])))(\/[1-9]|1\d|2\d|3[01])#(0,1))|([1-9]|1\d|2\d|3[01]))[\q{0,0,0,32}\q{0,0,0,10}\t\r]#(1,)((([*]|(([1-9]|1[0-2])\-([1-9]|1[0-2])))(\/[1-9]|1[0-2])#(0,1)|([1-9]|1[0-2]))\,)#(0,)((([*]|(([1-9]|1[0-2])\-([1-9]|1[0-2])))(\/[1-9]|1[0-2])#(0,1))|([1-9]|1[0-2]))[\q{0,0,0,32}\q{0,0,0,10}\t\r]#(1,)((([*]|(([0-6])\-([0-6])))(\/[0-6])#(0,1)|([0-6]))\,)#(0,)((([*]|(([0-6])\-([0-6])))(\/[0-6])#(0,1))|([0-6]))[\q{0,0,0,32}\q{0,0,0,10}\t\r]#(1,)((([*]|(([2-9]\d\d\d)\-([2-9]\d\d\d)))(\/\d#(0,1)\d#(0,1)\d#(0,1)\d)#(0,1)|([2-9]\d\d\d))\,)#(0,)((([*]|(([2-9]\d\d\d)\-([2-9]\d\d\d)))(\/\d#(0,1)\d#(0,1)\d#(0,1)\d)#(0,1))|([2-9]\d\d\d))")
-
-									//"(([*]|[1-5]#(0,1)\d([,\-\/][1-5]#(0,1)\d)#(0,))[\q{0,0,0,32}\q{0,0,0,10}\t\r]#(1,))#2([*]|((1#(0,1)\d|2[0-3])([,\-\/](1#(0,1)\d|2[0-3]))#(0,)))[\q{0,0,0,32}\q{0,0,0,10}\t\r]#(1,)([*]|(([1-9]|1\d|2\d|3[01])([,\-\/]([1-9]|1\d|2\d|3[01]))#(0,)))[\q{0,0,0,32}\q{0,0,0,10}\t\r]#(1,)([*]|(([1-9]|1[0-2])([,\-\/]([1-9]|1[0-2]))#(0,)))[\q{0,0,0,32}\q{0,0,0,10}\t\r]#(1,)([*]|([0-6]([,\-\/][0-6])#(0,)))[\q{0,0,0,32}\q{0,0,0,10}\t\r]#(1,)([*](/\d#(0,1)\d#(0,1)\d#(0,1)\d)#(0,1))|(([2-9]\d\d\d)([,\-][2-9]\d\d\d[,]#(0,1))#(0,1)([/]\d#(0,1)\d#(0,1)\d#(0,1)\d[,]#(0,1))#(0,1))#(0,)")
-with {
-  variant "name as uncapitalized";
-};
-
-
-type record length(1 .. infinity) of XSD.AnyURI ListOfURIs
-with {
-  variant "name as uncapitalized";
-  variant "list";
-};
-
-
-type record length(1 .. infinity) of XSD.Duration ListOfDuration
-with {
-  variant "name as uncapitalized";
-  variant "list";
-};
-
-
-type record length(1 .. infinity) of XSD.NCName AttributeList_1
-with {
-  variant "name as 'attributeList'";
-  variant "list";
-};
-
-
-type record length(1 .. infinity) of ResourceType ResourceTypeList
-with {
-  variant "name as uncapitalized";
-  variant "list";
-};
-
-
-type XSD.String Sparql
-with {
-  variant "name as uncapitalized";
-};
-
-
-type XSD.String E2eCompactJWS (pattern "([a-zA-Z0-9\-_=]#(1,)).([a-zA-Z0-9\-_=]#(0,)).([A-Za-z0-9\-_=])#(1,)")
-with {
-  variant "name as uncapitalized";
-};
-
-
-type XSD.String E2eCompactJWE (pattern "([a-zA-Z0-9\-_=]#(1,)).([a-zA-Z0-9\-_=]#(0,)).([a-zA-Z0-9\-_=]#(0,)).([a-zA-Z0-9\-_=]#(0,)).([A-Za-z0-9\-_=])#(1,)")
-with {
-  variant "name as uncapitalized";
-};
-
-
-type union DynAuthJWT
-{
-	E2eCompactJWS alt_,
-	E2eCompactJWE alt_1
-}
-with {
-  variant "name as uncapitalized";
-  variant "useUnion";
-  variant (alt_) "name as ''";
-  variant (alt_1) "name as ''";
-};
-
-
-type XSD.String ResourceName (pattern "[a-zA-Z0-9]([a-zA-Z0-9.\-,_]#(0,))")
-with {
-  variant "name as uncapitalized";
-};
-
-
-type union LocationTargetID
-{
-	NodeID alt_,
-	ExternalID alt_1,
-	XSD.String alt_2 (pattern "([0-9]*)")
-}
-with {
-  variant "name as uncapitalized";
-  variant "useUnion";
-  variant (alt_) "name as ''";
-  variant (alt_1) "name as ''";
-  variant (alt_2) "name as ''";
-};
-
-
-type XSD.String ReleaseVersion (pattern "(2a|3)") //FIXME  All available releases backwards till 2a. XSD will define it as this
-with {
-  variant "name as uncapitalized";
-};
-
-
-type XSD.String ApplicableReleaseVersion (pattern "(1|2|2a|3)") //FIXME All available release backwards. XSD will define it as this
-with {
-  variant "name as uncapitalized";
-};
-
-
-type record length(1 .. infinity) of ApplicableReleaseVersion SupportedReleaseVersions
-with {
-  variant "name as uncapitalized";
-  variant "list";
-};
-
-
-type XSD.String TMGI (pattern "([a-fA-F0-9]#(6))[\d]#(5)[\d]#(0,1)");
-
-
-type XSD.String SessionDescriptionString
-with {
-  variant "name as uncapitalized";
-};
-
-
-type record length(1 .. infinity) of MediaType SessionCapabilities
-with {
-  variant "name as uncapitalized";
-  variant "list";
-};
-
-
-type record of XSD.AnyURI ResourceList
-with {
-  variant "name as uncapitalized";
-  variant "list";
-};
-
-
-
-
-
-
-
-
-type record DeliveryMetaData
-{
-	XSD.Boolean tracingOption,
-	ListOfM2MID tracingInfo optional
-}
-with {
-  variant "name as uncapitalized";
-  //variant (tracingOption) "text 'true' as '1'";
-  //variant (tracingOption) "text 'false' as '0'";
-};
-
-
-type record AggregatedRequest
-{
-	record length(1 .. infinity) of record {
-		Operation operation,
-		XSD.AnyURI to_,
-		XSD.ID from_,
-		RequestID requestIdentifier,
-		PrimitiveContent primitiveContent optional,
-		MetaInformation metaInformation optional
-	} request_list
-}
-with {
-  variant "name as uncapitalized";
-  variant (request_list) "untagged";
-  variant (request_list[-]) "name as 'request'";
-  variant (request_list[-].to_) "name as 'to'";
-  variant (request_list[-].from_) "name as 'from'";
-};
-
-
-type record MetaInformation
-{
-	ResourceType resourceType optional,
-	Timestamp originatingTimestamp optional,
-	AbsRelTimestamp requestExpirationTimestamp optional,
-	AbsRelTimestamp resultExpirationTimestamp optional,
-	AbsRelTimestamp operationExecutionTime optional,
-	ResponseTypeInfo responseType optional,
-	AbsRelTimestamp resultPersistence optional,
-	ResultContent resultContent optional,
-	EventCat eventCategory optional,
-	XSD.Boolean deliveryAggregation optional,
-	XSD.String groupRequestIdentifier optional,
-	FilterCriteria filterCriteria optional,
-	DesIdResType desiredIdentifierResultType optional,
-	record length(1 .. infinity) of RoleID roleIDs optional,
-	XSD.Boolean tokenRequestIndicator optional,
-	record length(1 .. infinity) of DynAuthJWT tokens optional,
-	record length(1 .. infinity) of TokenID tokenIDs optional,
-	record length(1 .. infinity) of XSD.NCName localTokenIDs optional,
-	ListOfURIs groupRequestTargetMembers optional,
-	XSD.Boolean authorSignIndicator optional,
-	SignatureList authorSigns optional,
-	XSD.Boolean authorRelIndicator optional,
-	XSD.Boolean semanticQueryIndicator optional,
-	ReleaseVersion releaseVersionIndicator,
-	XSD.String vendorInformation optional
-}
-with {
-  variant "name as uncapitalized";
-  //variant (deliveryAggregation) "text 'true' as '1'";
-  //variant (deliveryAggregation) "text 'false' as '0'";
-  variant (roleIDs) "list";
-  //variant (tokenRequestIndicator) "text 'true' as '1'";
-  //variant (tokenRequestIndicator) "text 'false' as '0'";
-  variant (tokens) "list";
-  variant (tokenIDs) "list";
-  variant (localTokenIDs) "list";
-  //variant (authorSignIndicator) "text 'true' as '1'";
-  //variant (authorSignIndicator) "text 'false' as '0'";
-  //variant (authorRelIndicator) "text 'true' as '1'";
-  //variant (authorRelIndicator) "text 'false' as '0'";
-  //variant (semanticQueryIndicator) "text 'true' as '1'";
-  //variant (semanticQueryIndicator) "text 'false' as '0'";
-};
-
-
-
-
-//FIXME Use this type instead type record PrimitiveContent
-
-
-type record EventNotificationCriteria
-{
-	Timestamp createdBefore optional,
-	Timestamp createdAfter optional,
-	Timestamp modifiedSince optional,
-	Timestamp unmodifiedSince optional,
-	XSD.PositiveInteger stateTagSmaller optional,
-	XSD.NonNegativeInteger stateTagBigger optional,
-	Timestamp expireBefore optional,
-	Timestamp expireAfter optional,
-	XSD.NonNegativeInteger sizeAbove optional,
-	XSD.PositiveInteger sizeBelow optional,
-	record of OperationMonitor operationMonitor_list,
-	AttributeList_1 attribute optional,
-	record length(0 .. 6) of NotificationEventType notificationEventType_list,
-	record length(1 .. infinity) of ResourceType childResourceType optional,
-	MissingData missingData optional,
-	FilterOperation filterOperation optional
-}
-with {
-  variant "name as uncapitalized";
-  variant (operationMonitor_list) "untagged";
-  variant (operationMonitor_list[-]) "name as 'operationMonitor'";
-  variant (notificationEventType_list) "untagged";
-  variant (notificationEventType_list[-]) "name as 'notificationEventType'";
-  variant (childResourceType) "list";
-};
-
-
-
-type record FilterCriteria
-{
-	Timestamp createdBefore optional,
-	Timestamp createdAfter optional,
-	Timestamp modifiedSince optional,
-	Timestamp unmodifiedSince optional,
-	XSD.PositiveInteger stateTagSmaller optional,
-	XSD.NonNegativeInteger stateTagBigger optional,
-	Timestamp expireBefore optional,
-	Timestamp expireAfter optional,
-	Labels labels optional,
-	Labels childLabels optional,
-	Labels parentLabels optional,
-	XSD.String labelsQuery optional,
-	ResourceTypeList resourceType optional,
-	record length(1 .. infinity) of ResourceType childResourceType optional,
-	record length(1 .. infinity) of ResourceType parentResourceType optional,
-	XSD.NonNegativeInteger sizeAbove optional,
-	XSD.PositiveInteger sizeBelow optional,
-	record of TypeOfContent contentType_list,
-	record of Attribute attribute_list,
-	record of Attribute childAttribute_list,
-	record of Attribute parentAttribute_list,
-	FilterUsage filterUsage optional,
-	XSD.NonNegativeInteger limit optional,
-	record of Sparql semanticsFilter_list,
-	FilterOperation filterOperation optional,
-	ContentFilterSyntax contentFilterSyntax optional,
-	XSD.String contentFilterQuery optional,
-	XSD.PositiveInteger level optional,
-	XSD.PositiveInteger offset optional,
-	XSD.AnyURI applyRelativePath optional
-}
-with {
-  variant "name as uncapitalized";
-  variant (childResourceType) "list";
-  variant (parentResourceType) "list";
-  variant (contentType_list) "untagged";
-  variant (contentType_list[-]) "name as 'contentType'";
-  variant (attribute_list) "untagged";
-  variant (attribute_list[-]) "name as 'attribute'";
-  variant (childAttribute_list) "untagged";
-  variant (childAttribute_list[-]) "name as 'childAttribute'";
-  variant (parentAttribute_list) "untagged";
-  variant (parentAttribute_list[-]) "name as 'parentAttribute'";
-  variant (semanticsFilter_list) "untagged";
-  variant (semanticsFilter_list[-]) "name as 'semanticsFilter'";
-};
-
-
-type record Attribute
-{
-	XSD.NCName name,
-	XSD.AnySimpleType value_//FIXME Use AnySimpleType instead
-}
-with {
-  variant "name as uncapitalized";
-  variant (value_) "name as 'value'";
-};
-
-
-type record ScheduleEntries
-{
-	record length(1 .. infinity) of ScheduleEntry scheduleEntry_list
-}
-with {
-  variant "name as uncapitalized";
-  variant (scheduleEntry_list) "untagged";
-  variant (scheduleEntry_list[-]) "name as 'scheduleEntry'";
-};
-
-
-
-
-
-
-type record ActionStatus
-{
-	XSD.AnyURI action_ optional,
-	Status status optional
-}
-with {
-  variant "name as uncapitalized";
-  variant (action_) "name as 'action'";
-};
-
-
-type record AnyArgType
-{
-	XSD.NCName name,
-	XSD.AnySimpleType value_//FIXME Use AnySimpleType instead
-}
-with {
-  variant "name as uncapitalized";
-  variant (value_) "name as 'value'";
-};
-
-
-type record ResetArgsType
-{
-	record of AnyArgType anyArg_list
-}
-with {
-  variant "name as uncapitalized";
-  variant (anyArg_list) "untagged";
-  variant (anyArg_list[-]) "name as 'anyArg'";
-};
-
-
-type record RebootArgsType
-{
-	record of AnyArgType anyArg_list
-}
-with {
-  variant "name as uncapitalized";
-  variant (anyArg_list) "untagged";
-  variant (anyArg_list[-]) "name as 'anyArg'";
-};
-
-
-type record UploadArgsType
-{
-	XSD.String fileType,
-	XSD.AnyURI uRL,
-	XSD.String username,
-	XSD.String password,
-	record of AnyArgType anyArg_list
-}
-with {
-  variant "name as uncapitalized";
-  variant (uRL) "name as capitalized";
-  variant (anyArg_list) "untagged";
-  variant (anyArg_list[-]) "name as 'anyArg'";
-};
-
-
-type record DownloadArgsType
-{
-	XSD.String fileType,
-	XSD.AnyURI uRL,
-	XSD.String username,
-	XSD.String password,
-	XSD.PositiveInteger filesize,
-	XSD.String targetFile,
-	XSD.PositiveInteger delaySeconds,
-	XSD.AnyURI successURL,
-	Timestamp startTime,
-	Timestamp completeTime,
-	record of AnyArgType anyArg_list
-}
-with {
-  variant "name as uncapitalized";
-  variant (uRL) "name as capitalized";
-  variant (anyArg_list) "untagged";
-  variant (anyArg_list[-]) "name as 'anyArg'";
-};
-
-
-type record SoftwareInstallArgsType
-{
-	XSD.AnyURI uRL,
-	XSD.String uUID,
-	XSD.String username,
-	XSD.String password,
-	XSD.String executionEnvRef,
-	record of AnyArgType anyArg_list
-}
-with {
-  variant "name as uncapitalized";
-  variant (uRL) "name as capitalized";
-  variant (uUID) "name as capitalized";
-  variant (anyArg_list) "untagged";
-  variant (anyArg_list[-]) "name as 'anyArg'";
-};
-
-
-type record SoftwareUpdateArgsType
-{
-	XSD.String uUID,
-	XSD.String version,
-	XSD.AnyURI uRL,
-	XSD.String username,
-	XSD.String password,
-	XSD.String executionEnvRef,
-	record of AnyArgType anyArg_list
-}
-with {
-  variant "name as uncapitalized";
-  variant (uUID) "name as capitalized";
-  variant (uRL) "name as capitalized";
-  variant (anyArg_list) "untagged";
-  variant (anyArg_list[-]) "name as 'anyArg'";
-};
-
-
-type record SoftwareUninstallArgsType
-{
-	XSD.String uUID,
-	XSD.String version,
-	XSD.String executionEnvRef,
-	record of AnyArgType anyArg_list
-}
-with {
-  variant "name as uncapitalized";
-  variant (uUID) "name as capitalized";
-  variant (anyArg_list) "untagged";
-  variant (anyArg_list[-]) "name as 'anyArg'";
-};
-
-
-type record ExecReqArgsListType
-{
-	union {
-		record of ResetArgsType reset_list,
-		record length(1 .. infinity) of RebootArgsType reboot_list,
-		record length(1 .. infinity) of UploadArgsType upload_list,
-		record length(1 .. infinity) of DownloadArgsType download_list,
-		record length(1 .. infinity) of SoftwareInstallArgsType softwareInstall_list,
-		record length(1 .. infinity) of SoftwareUpdateArgsType softwareUpdate_list,
-		record length(1 .. infinity) of SoftwareUninstallArgsType softwareUninstall_list
-	} choice
-}
-with {
-  variant "name as uncapitalized";
-  variant (choice) "untagged";
-  variant (choice.reset_list) "untagged";
-  variant (choice.reset_list[-]) "name as 'reset'";
-  variant (choice.reboot_list) "untagged";
-  variant (choice.reboot_list[-]) "name as 'reboot'";
-  variant (choice.upload_list) "untagged";
-  variant (choice.upload_list[-]) "name as 'upload'";
-  variant (choice.download_list) "untagged";
-  variant (choice.download_list[-]) "name as 'download'";
-  variant (choice.softwareInstall_list) "untagged";
-  variant (choice.softwareInstall_list[-]) "name as 'softwareInstall'";
-  variant (choice.softwareUpdate_list) "untagged";
-  variant (choice.softwareUpdate_list[-]) "name as 'softwareUpdate'";
-  variant (choice.softwareUninstall_list) "untagged";
-  variant (choice.softwareUninstall_list[-]) "name as 'softwareUninstall'";
-};
-
-
-type record MgmtLinkRef
-{
-	ResourceName name,
-	MgmtDefinition type_,
-	XSD.AnyURI base
-}
-with {
-  variant "name as uncapitalized";
-  variant (name) "attribute";
-  variant (type_) "name as 'type'";
-  variant (type_) "attribute";
-  variant (base) "untagged";
-};
-
-
-
-
-type record SetOfAcrs
-{
-	record of AccessControlRule accessControlRule_list
-}
-with {
-  variant "name as uncapitalized";
-  variant (accessControlRule_list) "untagged";
-  variant (accessControlRule_list[-]) "name as 'accessControlRule'";
-};
-
-
-type record AccessControlRule
-{
-	ListOfURIs accessControlOriginators,
-	AccessControlOperations accessControlOperations,
-	record of record {
-		record of ScheduleEntry accessControlWindow_list,
-		record {
-			record length(1 .. infinity) of Ipv4 ipv4Addresses optional,
-			record length(1 .. infinity) of Ipv6 ipv6Addresses optional
-		} accessControlIpAddresses optional,
-		LocationRegion accessControlLocationRegion optional
-	} accessControlContexts_list,
-	XSD.Boolean accessControlAuthenticationFlag optional,
-	record of record {
-		ResourceType resourceType optional,
-		SpecializationType specializationID optional,
-		record length(1 .. infinity) of ResourceType childResourceType
-	} accessControlObjectDetails_list
-}
-with {
-  variant "name as uncapitalized";
-  variant (accessControlContexts_list) "untagged";
-  variant (accessControlContexts_list[-]) "name as 'accessControlContexts'";
-  variant (accessControlContexts_list[-].accessControlWindow_list) "untagged";
-  variant (accessControlContexts_list[-].accessControlWindow_list[-]) "name as 'accessControlWindow'";
-  variant (accessControlContexts_list[-].accessControlIpAddresses.ipv4Addresses) "list";
-  variant (accessControlContexts_list[-].accessControlIpAddresses.ipv6Addresses) "list";
-  //variant (accessControlAuthenticationFlag) "text 'true' as '1'";
-  //variant (accessControlAuthenticationFlag) "text 'false' as '0'";
-  variant (accessControlObjectDetails_list) "untagged";
-  variant (accessControlObjectDetails_list[-]) "name as 'accessControlObjectDetails'";
-  variant (accessControlObjectDetails_list[-].childResourceType) "list";
-};
-
-
-type record ChildResourceRef
-{
-	ResourceName name,
-	XSD.AnyURI specializationID optional,
-	ResourceType type_,
-	XSD.AnyURI base
-}
-with {
-  //variant "name as uncapitalized";
-  variant (name) "attribute";
-  variant (specializationID) "attribute";
-  variant (type_) "name as 'type'";
-  variant (type_) "attribute";
-  variant (base) "untagged";
-};
-
-
-type record ResponseTypeInfo
-{
-	ResponseType responseTypeValue,
-	record of XSD.AnyURI notificationURI optional
-}
-with {
-  variant "name as uncapitalized";
-  variant (notificationURI) "list";
-};
-
-
-
-
-type record OperationResult
-{
-	ResponseStatusCode responseStatusCode,
-	RequestID requestIdentifier,
-	PrimitiveContent primitiveContent optional,
-	XSD.AnyURI to_ optional,
-	XSD.ID from_ optional,
-	Timestamp originatingTimestamp optional,
-	AbsRelTimestamp resultExpirationTimestamp optional,
-	EventCat eventCategory optional,
-	ContentStatus contentStatus optional,
-	XSD.PositiveInteger contentOffset optional
-}
-with {
-  variant "name as uncapitalized";
-  variant (to_) "name as 'to'";
-  variant (from_) "name as 'from'";
-};
-
-
-
-
-type record ContentRef
-{
-	record length(1 .. infinity) of record {
-		XSD.NCName name,
-		XSD.AnyURI uRI
-	} uRIReference_list
-}
-with {
-  variant "name as uncapitalized";
-  variant (uRIReference_list) "untagged";
-  variant (uRIReference_list[-]) "name as 'URIReference'";
-  variant (uRIReference_list[-].uRI) "name as capitalized";
-};
-
-
-type record DeletionContexts
-{
-	record of ScheduleEntry timeOfDay_list,
-	record of LocationRegion locationRegions_list
-}
-with {
-  variant "name as uncapitalized";
-  variant (timeOfDay_list) "untagged";
-  variant (timeOfDay_list[-]) "name as 'timeOfDay'";
-  variant (locationRegions_list) "untagged";
-  variant (locationRegions_list[-]) "name as 'locationRegions'";
-};
-
-
-type record LocationRegion
-{
-	union {
-		record length(1 .. infinity) of CountryCode countryCode,
-		record length(3) of XSD.Float circRegion
-	} choice
-}
-with {
-  variant "name as uncapitalized";
-  variant (choice) "untagged";
-  variant (choice.countryCode) "list";
-  variant (choice.circRegion) "list";
-};
-
-
-type XSD.String CountryCode (pattern "[A-Z]#(2)")
-with {
-  variant "name as uncapitalized";
-};
-
-
-type record MissingData
-{
-	XSD.PositiveInteger number,
-	XSD.Duration duration
-}
-with {
-  variant "name as uncapitalized";
-};
-
-
-
-
-
-
-type record ReceiverESPrimRandObject
-{
-	XSD.NCName esprimRandID,
-	XSD.NCName esprimRandValue,
-	AbsRelTimestamp esprimRandExpiry,
-	record length(1 .. infinity) of EsprimKeyGenAlgID esprimKeyGenAlgIDs,
-	record length(1 .. infinity) of EsprimProtocolAndAlgID esprimProtocolAndAlgIDs
-}
-with {
-  variant "name as uncapitalized";
-  variant (esprimKeyGenAlgIDs) "list";
-  variant (esprimProtocolAndAlgIDs) "list";
-};
-
-
-
-
-type record OriginatorESPrimRandObject
-{
-	XSD.NCName esprimRandID,
-	XSD.NCName esprimRandValue,
-	AbsRelTimestamp esprimRandExpiry,
-	EsprimKeyGenAlgID esprimKeyGenAlgIDs,
-	record length(1 .. infinity) of EsprimProtocolAndAlgID esprimProtocolAndAlgIDs
-}
-with {
-  variant "name as uncapitalized";
-  variant (esprimProtocolAndAlgIDs) "list";
-};
-
-
-type record E2eSecInfo
-{
-	record length(1 .. infinity) of Suid supportedE2ESecFeatures,
-	record length(1 .. infinity) of XSD.Base64Binary certificates optional,
-	ReceiverESPrimRandObject sharedReceiverESPrimRandObject optional
-}
-with {
-  variant "name as uncapitalized";
-  variant (supportedE2ESecFeatures) "list";
-  variant (certificates) "list";
-};
-
-
-type record TokenPermission
-{
-	ListOfM2MID resourceIDs optional,
-	SetOfAcrs privileges optional,
-	record length(1 .. infinity) of RoleID roleIDs optional
-}
-with {
-  variant "name as uncapitalized";
-  variant (roleIDs) "list";
-};
-
-
-type record TokenPermissions
-{
-	record of TokenPermission permission_list
-}
-with {
-  variant "name as uncapitalized";
-  variant (permission_list) "untagged";
-  variant (permission_list[-]) "name as 'permission'";
-};
-
-
-type record TokenClaimSet
-{
-	XSD.String version,
-	TokenID tokenID,
-	XSD.ID holder,
-	XSD.ID issuer,
-	Timestamp notBefore,
-	Timestamp notAfter,
-	XSD.String tokenName optional,
-	ListOfM2MID audience optional,
-	TokenPermissions permissions optional,
-	XSD.String extension_ optional
-}
-with {
-  variant "name as uncapitalized";
-  variant (extension_) "name as 'extension'";
-};
-
-
-type record DynAuthLocalTokenIdAssignments
-{
-	record length(1 .. infinity) of record {
-		XSD.NCName localTokenID,
-		TokenID tokenID
-	} localTokenIdAssignment_list
-}
-with {
-  variant "name as uncapitalized";
-  variant (localTokenIdAssignment_list) "untagged";
-  variant (localTokenIdAssignment_list[-]) "name as 'localTokenIdAssignment'";
-};
-
-
-type record DynAuthTokenSummary
-{
-	TokenID tokenID,
-	Timestamp notBefore,
-	Timestamp notAfter,
-	XSD.String tokenName optional,
-	ListOfM2MID audience optional
-}
-with {
-  variant "name as uncapitalized";
-};
-
-
-type record DynAuthTokenReqInfo
-{
-	record length(1 .. infinity) of record {
-		XSD.AnyURI uRI,
-		DynAuthDasRequest dasRequest optional,
-		DynAuthJWT securedDasRequest optional
-	} dasInfo_list
-}
-with {
-  variant "name as uncapitalized";
-  variant (dasInfo_list) "untagged";
-  variant (dasInfo_list[-]) "name as 'dasInfo'";
-  variant (dasInfo_list[-].uRI) "name as capitalized";
-};
-
-
-type record DynAuthDasRequest
-{
-	XSD.ID originator,
-	ResourceType targetedResourceType,
-	Operation operation,
-	record {
-		Ipv4 ipv4Address optional,
-		Ipv6 ipv6Address optional
-	} originatorIP optional,
-	LocationRegion originatorLocation optional,
-	record length(1 .. infinity) of RoleID originatorRoleIDs optional,
-	AbsRelTimestamp requestTimestamp optional,
-	XSD.AnyURI targetedResourceID optional,
-	AbsRelTimestamp proposedPrivilegesLifetime optional,
-	record length(1 .. infinity) of RoleID roleIDsFromACPs optional,
-	record length(1 .. infinity) of TokenID tokenIDs optional,
-	XSD.Boolean authorSignIndicator optional
-}
-with {
-  variant "name as uncapitalized";
-  variant (originatorRoleIDs) "list";
-  variant (roleIDsFromACPs) "list";
-  variant (tokenIDs) "list";
-  //variant (authorSignIndicator) "text 'true' as '1'";
-  //variant (authorSignIndicator) "text 'false' as '0'";
-};
-
-
-
-
-type record BackOffParameters
-{
-	record length(1 .. infinity) of record {
-		NetworkAction networkAction optional,
-		XSD.NonNegativeInteger initialBackoffTime,
-		XSD.NonNegativeInteger additionalBackoffTime,
-		XSD.NonNegativeInteger maximumBackoffTime,
-		XSD.NonNegativeInteger optionalRandomBackoffTime optional
-	} backOffParametersSet_list
-}
-with {
-  variant "name as uncapitalized";
-  variant (backOffParametersSet_list) "untagged";
-  variant (backOffParametersSet_list[-]) "name as 'backOffParametersSet'";
-};
-
-
-
-
-
-
-type record ListOfDataLinks
-{
-	record length(1 .. infinity) of DataLink dataLinkEntry_list
-}
-with {
-  variant "name as uncapitalized";
-  variant (dataLinkEntry_list) "untagged";
-  variant (dataLinkEntry_list[-]) "name as 'dataLinkEntry'";
-};
-
-
-
-
-type record DataLink
-{
-	XSD.AnyURI name,
-	XSD.ID dataContainerID,
-	XSD.NCName attributeName optional
-}
-with {
-  variant "name as uncapitalized";
-};
-
-
-type record OperationMonitor
-{
-	AccessControlOperations operations optional,
-	XSD.ID originator optional
-}
-with {
-  variant "name as uncapitalized";
-};
-
-
-type record DynAuthRelMapRequest
-{
-	XSD.ID originator optional,
-	record length(1 .. infinity) of TokenID tokenIDs optional,
-	record length(1 .. infinity) of DynAuthJWT tokens optional,
-	SignatureList authorSigns optional,
-	XSD.Boolean authorSignReqInfo optional
-}
-with {
-  variant "name as uncapitalized";
-  variant (tokenIDs) "list";
-  variant (tokens) "list";
-  //variant (authorSignReqInfo) "text 'true' as '1'";
-  //variant (authorSignReqInfo) "text 'false' as '0'";
-};
-
-
-type record DynAuthRelMapResponse
-{
-	record length(1 .. infinity) of TokenID tokenIDs optional,
-	record length(1 .. infinity) of DynAuthJWT tokens optional,
-	XSD.Boolean authorSignReqInfo optional,
-	SignatureList signature_ optional
-}
-with {
-  variant "name as uncapitalized";
-  variant (tokenIDs) "list";
-  variant (tokens) "list";
-  //variant (authorSignReqInfo) "text 'true' as '1'";
-  //variant (authorSignReqInfo) "text 'false' as '0'";
-  variant (signature_) "name as 'signature'";
-};
-
-
-type record IpAddress
-{
-	Ipv4 ipv4Address optional,
-	Ipv6 ipv6Address optional
-}
-with {
-  variant "name as uncapitalized";
-};
-
-
-type record SetOfPermissions
-{
-	record of SetOfAcrs privileges_list
-}
-with {
-  variant "name as uncapitalized";
-  variant (privileges_list) "untagged";
-  variant (privileges_list[-]) "name as 'privileges'";
-};
-
-
-type record SessionDescriptions
-{
-	record length(1 .. infinity) of SessionDescriptionString sessionDescription_list
-}
-with {
-  variant "name as uncapitalized";
-  variant (sessionDescription_list) "untagged";
-  variant (sessionDescription_list[-]) "name as 'sessionDescription'";
-};
-
-
-type record ActivityPatternElements
-{
-	record length(1 .. infinity) of ActivityPattern activityPatternElements_list
-}
-with {
-  variant "name as uncapitalized";
-  variant (activityPatternElements_list) "untagged";
-  variant (activityPatternElements_list[-]) "name as 'activityPatternElements'";
-};
-
-
-type record ActivityPattern
-{
-	record length(1 .. infinity) of ScheduleEntries scheduleElement_list,
-	StationaryIndication stationaryIndication optional,
-	XSD.PositiveInteger dataSizeIndicator optional
-}
-with {
-  variant "name as uncapitalized";
-  variant (scheduleElement_list) "untagged";
-  variant (scheduleElement_list[-]) "name as 'scheduleElement'";
-};
-
-
-type record EventNotificationCriteriaSet
-{
-	record length(1 .. infinity) of EventNotificationCriteria eventNotificationCriteriaEntry_list
-}
-with {
-  variant "name as uncapitalized";
-  variant (eventNotificationCriteriaEntry_list) "untagged";
-  variant (eventNotificationCriteriaEntry_list[-]) "name as 'eventNotificationCriteriaEntry'";
-};
-
-
-type record SpecializationType
-{
-	XSD.AnyURI containerDefinition optional,
-	MgmtDefinition mgmtDefinition optional
-}
-with {
-  variant "name as uncapitalized";
-};
-
-
-type record MashupMembers
-{
-	record length(1 .. infinity) of record {
-		XSD.AnyURI memberURI,
-		XSD.Double memberValue optional
-	} mashupMember_list
-}
-with {
-  variant "name as uncapitalized";
-  variant (mashupMember_list) "untagged";
-  variant (mashupMember_list[-]) "name as 'mashupMember'";
-};
-
-
-
-
-type record Resource_1
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional
-}
-with {
-  variant "name as 'resource'";
-  variant (resourceName) "attribute";
-};
-
-
-type record RegularResource
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional
-}
-with {
-  variant "name as uncapitalized";
-  variant (resourceName) "attribute";
-};
-
-
-type record AnnounceableResource
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional
-}
-with {
-  variant "name as uncapitalized";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-};
-
-
-type record AnnouncedResource
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs,
-	Timestamp expirationTime,
-	XSD.AnyURI link,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional
-}
-with {
-  variant "name as uncapitalized";
-  variant (resourceName) "attribute";
-};
-
-
-type record AnnounceableSubordinateResource
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	Timestamp expirationTime,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional
-}
-with {
-  variant "name as uncapitalized";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-};
-
-
-type record SubordinateResource
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	Timestamp expirationTime
-}
-with {
-  variant "name as uncapitalized";
-  variant (resourceName) "attribute";
-};
-
-
-type record AnnouncedSubordinateResource
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	Timestamp expirationTime,
-	XSD.AnyURI link
-}
-with {
-  variant "name as uncapitalized";
-  variant (resourceName) "attribute";
-};
-
-
-type record MgmtResource
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional,
-	MgmtDefinition mgmtDefinition,
-	ListOfURIs objectIDs optional,
-	ListOfURIs objectPaths optional,
-	XSD.String description optional,
-	XSD.AnyURI mgmtSchema optional
-}
-with {
-  variant "name as uncapitalized";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-};
-
-
-type record AnnouncedMgmtResource
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs,
-	Timestamp expirationTime,
-	XSD.AnyURI link,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	MgmtDefinition mgmtDefinition,
-	ListOfURIs objectIDs optional,
-	ListOfURIs objectPaths optional,
-	XSD.String description optional,
-	XSD.AnyURI mgmtSchema optional
-}
-with {
-  variant "name as uncapitalized";
-  variant (resourceName) "attribute";
-};
-
-
-
-
-type record length(1 .. infinity) of XSD.NCName ListOfNCNames
-with {
-  variant "name as uncapitalized";
-  variant "list";
-};
-
-
-type record FlexContainerResource
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime optional,
-	Timestamp lastModifiedTime optional,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime optional,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	ListOfNCNames announcedAttribute optional,
-	XSD.NonNegativeInteger stateTag,
-	XSD.ID creator optional,
-	XSD.AnyURI containerDefinition,
-	XSD.AnyURI ontologyRef optional,
-	XSD.NonNegativeInteger contentSize,
-	XSD.AnyURI nodeLink optional
-}
-with {
-  variant "name as uncapitalized";
-  variant (resourceName) "attribute";
-};
-
-
-type record AnnouncedFlexContainerResource
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime optional,
-	Timestamp lastModifiedTime optional,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs,
-	Timestamp expirationTime optional,
-	XSD.AnyURI link,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	XSD.NonNegativeInteger stateTag optional,
-	XSD.AnyURI containerDefinition,
-	XSD.AnyURI ontologyRef optional,
-	XSD.NonNegativeInteger contentSize optional,
-	XSD.AnyURI nodeLink optional
-}
-with {
-  variant "name as uncapitalized";
-  variant (resourceName) "attribute";
-};
-
-
-
-
-type union Sg_announceableSubordinateResource_group
-{
-	AnnounceableSubordinateResource sg_announceableSubordinateResource,
-	AccessControlPolicy accessControlPolicy,
-	ContentInstance contentInstance,
-	TimeSeriesInstance timeSeriesInstance
-}
-with {
-  variant "untagged";
-  variant (sg_announceableSubordinateResource) "form as qualified";
-  variant (sg_announceableSubordinateResource) "abstract";
-};
-
-
-type union Sg_announcedSubordinateResource_group
-{
-	AnnouncedSubordinateResource sg_announcedSubordinateResource,
-	AccessControlPolicyAnnc accessControlPolicyAnnc,
-	ContentInstanceAnnc contentInstanceAnnc,
-	TimeSeriesInstanceAnnc timeSeriesInstanceAnnc
-}
-with {
-  variant "untagged";
-  variant (sg_announcedSubordinateResource) "form as qualified";
-  variant (sg_announcedSubordinateResource) "abstract";
-};
-
-
-type union Sg_mgmtResource_group
-{
-	MgmtResource sg_mgmtResource,
-	ActiveCmdhPolicy activeCmdhPolicy,
-	AreaNwkDeviceInfo areaNwkDeviceInfo,
-	AreaNwkInfo areaNwkInfo,
-	Battery battery,
-	CmdhBuffer cmdhBuffer,
-	CmdhDefEcValue cmdhDefEcValue,
-	CmdhDefaults cmdhDefaults,
-	CmdhEcDefParamValues cmdhEcDefParamValues,
-	CmdhLimits cmdhLimits,
-	CmdhNetworkAccessRules cmdhNetworkAccessRules,
-	CmdhNwAccessRule cmdhNwAccessRule,
-	CmdhPolicy cmdhPolicy,
-	DeviceCapability deviceCapability,
-	DeviceInfo deviceInfo,
-	EventLog eventLog,
-	Firmware firmware,
-	Memory memory,
-	Reboot reboot,
-	Software software
-}
-with {
-  variant "untagged";
-  variant (sg_mgmtResource) "form as qualified";
-  variant (sg_mgmtResource) "abstract";
-};
-
-
-type union Sg_regularResource_group
-{
-	RegularResource sg_regularResource,
-	AEContactList aEContactList,
-	AEContactListPerCSE aEContactListPerCSE,
-	AuthorizationDecision_1 authorizationDecision,
-	AuthorizationInformation authorizationInformation,
-	AuthorizationPolicy authorizationPolicy,
-	BackgroundDataTransfer backgroundDataTransfer,
-	CrossResourceSubscription crossResourceSubscription,
-	Delivery delivery,
-	DynamicAuthorizationConsultation dynamicAuthorizationConsultation,
-	EventConfig eventConfig,
-	ExecInstance execInstance,
-	LocalMulticastGroup localMulticastGroup,
-	M2mServiceSubscriptionProfile m2mServiceSubscriptionProfile,
-	MgmtCmd mgmtCmd,
-	NotificationTargetMgmtPolicyRef notificationTargetMgmtPolicyRef,
-	NotificationTargetPolicy notificationTargetPolicy,
-	PolicyDeletionRules policyDeletionRules,
-	Request request,
-	Role role,
-	SemanticMashupResult semanticMashupResult,
-	SemanticMashupResultAnnc semanticMashupResultAnnc,
-	ServiceSubscribedAppRule serviceSubscribedAppRule,
-	ServiceSubscribedNode serviceSubscribedNode,
-	StatsCollect statsCollect,
-	StatsConfig statsConfig,
-	Subscription subscription,
-	Token token,
-	Transaction transaction,
-	TransactionMgmt transactionMgmt,
-	TriggerRequest triggerRequest
-}
-with {
-  variant "untagged";
-  variant (sg_regularResource) "form as qualified";
-  variant (sg_regularResource) "abstract";
-  variant (aEContactList) "name as capitalized";
-  variant (aEContactListPerCSE) "name as capitalized";
-};
-
-
-type union Sg_announceableResource_group
-{
-	AnnounceableResource sg_announceableResource,
-	AE aE,
-	Container container,
-	Group group_,
-	LocationPolicy locationPolicy,
-	MultimediaSession multimediaSession,
-	Node node,
-	Ontology ontology,
-	OntologyRepository ontologyRepository,
-	RemoteCSE remoteCSE,
-	Schedule schedule,
-	SemanticDescriptor semanticDescriptor,
-	SemanticMashupInstance semanticMashupInstance,
-	SemanticMashupJobProfile semanticMashupJobProfile,
-	TimeSeries timeSeries
-}
-with {
-  variant "untagged";
-  variant (sg_announceableResource) "form as qualified";
-  variant (sg_announceableResource) "abstract";
-  variant (aE) "name as capitalized";
-  variant (group_) "name as 'group'";
-};
-
-
-type union Sg_announcedResource_group
-{
-	AnnouncedResource sg_announcedResource,
-	AEAnnc aEAnnc,
-	ContainerAnnc containerAnnc,
-	GroupAnnc groupAnnc,
-	LocationPolicyAnnc locationPolicyAnnc,
-	MultimediaSessionAnnc multimediaSessionAnnc,
-	NodeAnnc nodeAnnc,
-	OntologyAnnc ontologyAnnc,
-	OntologyRepositoryAnnc ontologyRepositoryAnnc,
-	RemoteCSEAnnc remoteCSEAnnc,
-	ScheduleAnnc scheduleAnnc,
-	SemanticDescriptorAnnc semanticDescriptorAnnc,
-	SemanticMashupInstanceAnnc semanticMashupInstanceAnnc,
-	SemanticMashupJobProfileAnnc semanticMashupJobProfileAnnc,
-	TimeSeriesAnnc timeSeriesAnnc
-}
-with {
-  variant "untagged";
-  variant (sg_announcedResource) "form as qualified";
-  variant (sg_announcedResource) "abstract";
-  variant (aEAnnc) "name as capitalized";
-};
-
-
-type union Sg_flexContainerResource_group
-{
-	FlexContainerResource sg_flexContainerResource,
-	AllJoynApp allJoynApp,
-	AllJoynInterface allJoynInterface,
-	AllJoynMethod allJoynMethod,
-	AllJoynMethodCall allJoynMethodCall,
-	AllJoynProperty allJoynProperty,
-	AllJoynSvcObject allJoynSvcObject,
-	GenericInterworkingOperationInstance genericInterworkingOperationInstance,
-	GenericInterworkingService genericInterworkingService,
-	SvcFwWrapper svcFwWrapper,
-	SvcObjWrapper svcObjWrapper
-}
-with {
-  variant "untagged";
-  variant (sg_flexContainerResource) "form as qualified";
-  variant (sg_flexContainerResource) "abstract";
-};
-
-
-type union Sg_announcedFlexContainerResource_group
-{
-	AnnouncedFlexContainerResource sg_announcedFlexContainerResource,
-	AllJoynAppAnnc allJoynAppAnnc,
-	AllJoynInterfaceAnnc allJoynInterfaceAnnc,
-	AllJoynMethodAnnc allJoynMethodAnnc,
-	AllJoynMethodCallAnnc allJoynMethodCallAnnc,
-	AllJoynPropertyAnnc allJoynPropertyAnnc,
-	AllJoynSvcObjectAnnc allJoynSvcObjectAnnc,
-	GenericInterworkingOperationInstanceAnnc genericInterworkingOperationInstanceAnnc,
-	GenericInterworkingServiceAnnc genericInterworkingServiceAnnc,
-	SvcFwWrapperAnnc svcFwWrapperAnnc,
-	SvcObjWrapperAnnc svcObjWrapperAnnc
-}
-with {
-  variant "untagged";
-  variant (sg_announcedFlexContainerResource) "form as qualified";
-  variant (sg_announcedFlexContainerResource) "abstract";
-};
-
-
-type union Sg_announcedMgmtResource_group
-{
-	AnnouncedMgmtResource sg_announcedMgmtResource,
-	AreaNwkDeviceInfoAnnc areaNwkDeviceInfoAnnc,
-	AreaNwkInfoAnnc areaNwkInfoAnnc,
-	BatteryAnnc batteryAnnc,
-	DeviceCapabilityAnnc deviceCapabilityAnnc,
-	DeviceInfoAnnc deviceInfoAnnc,
-	EventLogAnnc eventLogAnnc,
-	FirmwareAnnc firmwareAnnc,
-	MemoryAnnc memoryAnnc,
-	RebootAnnc rebootAnnc,
-	SoftwareAnnc softwareAnnc
-}
-with {
-  variant "untagged";
-  variant (sg_announcedMgmtResource) "form as qualified";
-  variant (sg_announcedMgmtResource) "abstract";
-};
-
-
-type union Sg_resource_group
-{
-	Resource sg_resource,
-	CSEBase cSEBase
-}
-with {
-  variant "untagged";
-  variant (sg_resource) "form as qualified";
-  variant (sg_resource) "abstract";
-  variant (cSEBase) "name as capitalized";
-};
-
-
-type union Sg_subordinateResource_group
-{
-	SubordinateResource sg_subordinateResource,
-	PollingChannel pollingChannel
-}
-with {
-  variant "untagged";
-  variant (sg_subordinateResource) "form as qualified";
-  variant (sg_subordinateResource) "abstract";
-};
-
-
-type record Container
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional,
-	XSD.NonNegativeInteger stateTag,
-	XSD.ID creator optional,
-	XSD.NonNegativeInteger maxNrOfInstances optional,
-	XSD.NonNegativeInteger maxByteSize optional,
-	XSD.NonNegativeInteger maxInstanceAge optional,
-	XSD.NonNegativeInteger currentNrOfInstances,
-	XSD.NonNegativeInteger currentByteSize,
-	XSD.AnyURI locationID optional,
-	XSD.AnyURI ontologyRef optional,
-	XSD.Boolean disableRetrieval optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			ContentInstance contentInstance,
-			Container container,
-			Subscription subscription,
-			SemanticDescriptor semanticDescriptor,
-			Sg_flexContainerResource_group sg_flexContainerResource,
-			TimeSeries timeSeries,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-  //variant (disableRetrieval) "text 'true' as '1'";
-  //variant (disableRetrieval) "text 'false' as '0'";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record ContainerAnnc
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs,
-	Timestamp expirationTime,
-	XSD.AnyURI link,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	XSD.NonNegativeInteger stateTag,
-	XSD.NonNegativeInteger maxNrOfInstances optional,
-	XSD.NonNegativeInteger maxByteSize optional,
-	XSD.NonNegativeInteger maxInstanceAge optional,
-	XSD.NonNegativeInteger currentNrOfInstances optional,
-	XSD.NonNegativeInteger currentByteSize optional,
-	XSD.AnyURI locationID optional,
-	XSD.AnyURI ontologyRef optional,
-	XSD.Boolean disableRetrieval optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			ContentInstance contentInstance,
-			ContentInstanceAnnc contentInstanceAnnc,
-			Container container,
-			ContainerAnnc containerAnnc,
-			Subscription subscription,
-			SemanticDescriptor semanticDescriptor,
-			SemanticDescriptorAnnc semanticDescriptorAnnc,
-			Sg_flexContainerResource_group sg_flexContainerResource,
-			Sg_announcedFlexContainerResource_group sg_announcedFlexContainerResource,
-			TimeSeries timeSeries,
-			TimeSeriesAnnc timeSeriesAnnc,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  //variant (disableRetrieval) "text 'true' as '1'";
-  //variant (disableRetrieval) "text 'false' as '0'";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record ContentInstance
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	Timestamp expirationTime,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional,
-	XSD.NonNegativeInteger stateTag,
-	XSD.ID creator optional,
-	ContentInfo contentInfo optional,
-	XSD.NonNegativeInteger contentSize,
-	ContentRef contentRef optional,
-	XSD.AnyURI ontologyRef optional,
-	XSD.AnySimpleType content,//FIXME Use AnySimpleType instead
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			SemanticDescriptor semanticDescriptor,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record ContentInstanceAnnc
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	Timestamp expirationTime,
-	XSD.AnyURI link,
-	XSD.NonNegativeInteger stateTag,
-	ContentInfo contentInfo optional,
-	XSD.NonNegativeInteger contentSize optional,
-	XSD.AnyURI ontologyRef optional,
-	XSD.AnySimpleType content optional,//FIXME Use AnySimpleType instead
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			SemanticDescriptor semanticDescriptor,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record CrossResourceSubscription
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	XSD.ID creator,
-	ListOfURIs regularResourcesAsTarget optional,
-	ListOfURIs subscriptionResourcesAsTarget optional,
-	TimeWindowType timeWindowType,
-	AbsRelTimestamp timeWindowSize,
-	EventNotificationCriteriaSet eventNotificationCriteriaSet optional,
-	EventCat notificationEventCat optional,
-	XSD.PositiveInteger expirationCounter optional,
-	record of XSD.AnyURI notificationURI,
-	XSD.ID subscriberURI optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Schedule schedule,
-			NotificationTargetMgmtPolicyRef notificationTargetMgmtPolicyRef,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (notificationURI) "list";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record CSEBase
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	CseTypeID cseType optional,
-	XSD.ID cSE_ID,
-	ResourceTypeList_1 supportedResourceType optional,//TODO Remove inline type
-	PoaList pointOfAccess,
-	XSD.AnyURI nodeLink optional,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	Serializations contentSerialization optional,
-	E2eSecInfo e2eSecInfo optional,
-	SupportedReleaseVersions supportedReleaseVersions,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			RemoteCSE remoteCSE,
-			RemoteCSEAnnc remoteCSEAnnc,
-			Node node,
-			AE aE,
-			Container container,
-			Group group_,
-			AccessControlPolicy accessControlPolicy,
-			Subscription subscription,
-			MgmtCmd mgmtCmd,
-			LocationPolicy locationPolicy,
-			StatsConfig statsConfig,
-			StatsCollect statsCollect,
-			Request request,
-			Delivery delivery,
-			Schedule schedule,
-			M2mServiceSubscriptionProfile m2mServiceSubscriptionProfile,
-			ServiceSubscribedAppRule serviceSubscribedAppRule,
-			Role role,
-			Token token,
-			Sg_flexContainerResource_group sg_flexContainerResource,
-			AuthorizationDecision_1 authorizationDecision,
-			AuthorizationPolicy authorizationPolicy,
-			AuthorizationInformation authorizationInformation,
-			OntologyRepository ontologyRepository,
-			SemanticMashupJobProfile semanticMashupJobProfile,
-			SemanticMashupInstance semanticMashupInstance,
-			AEContactList aEContactList,
-			LocalMulticastGroup localMulticastGroup,
-			CrossResourceSubscription crossResourceSubscription,
-			BackgroundDataTransfer backgroundDataTransfer,
-			TransactionMgmt transactionMgmt,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (cSE_ID) "name as 'CSE-ID'";
-  variant (supportedResourceType) "list";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-  variant (choice.choice_list[-].aE) "name as capitalized";
-  variant (choice.choice_list[-].group_) "name as 'group'";
-  variant (choice.choice_list[-].aEContactList) "name as capitalized";
-};
-
-
-type record Delivery
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	XSD.ID source,
-	XSD.ID target,
-	Timestamp lifespan,
-	EventCat eventCat,
-	DeliveryMetaData deliveryMetaData,
-	AggregatedRequest aggregatedRequest,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record DeviceCapability
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional,
-	MgmtDefinition mgmtDefinition,
-	ListOfURIs objectIDs optional,
-	ListOfURIs objectPaths optional,
-	XSD.String description optional,
-	XSD.AnyURI mgmtSchema optional,
-	XSD.String capabilityName,
-	XSD.Boolean attached,
-	ActionStatus capabilityActionStatus,
-	XSD.Boolean currentState,
-	XSD.Boolean enable optional,
-	XSD.Boolean disable optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of Subscription subscription_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-  //variant (attached) "text 'true' as '1'";
-  //variant (attached) "text 'false' as '0'";
-  //variant (currentState) "text 'true' as '1'";
-  //variant (currentState) "text 'false' as '0'";
-  //variant (enable) "text 'true' as '1'";
-  //variant (enable) "text 'false' as '0'";
-  //variant (disable) "text 'true' as '1'";
-  //variant (disable) "text 'false' as '0'";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.subscription_list) "untagged";
-  variant (choice.subscription_list[-]) "name as 'subscription'";
-};
-
-
-type record DeviceCapabilityAnnc
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs,
-	Timestamp expirationTime,
-	XSD.AnyURI link,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	MgmtDefinition mgmtDefinition,
-	ListOfURIs objectIDs optional,
-	ListOfURIs objectPaths optional,
-	XSD.String description optional,
-	XSD.AnyURI mgmtSchema optional,
-	XSD.String capabilityName optional,
-	XSD.Boolean attached optional,
-	ActionStatus capabilityActionStatus optional,
-	XSD.Boolean currentState optional,
-	XSD.Boolean enable optional,
-	XSD.Boolean disable optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of Subscription subscription_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  //variant (attached) "text 'true' as '1'";
-  //variant (attached) "text 'false' as '0'";
-  //variant (currentState) "text 'true' as '1'";
-  //variant (currentState) "text 'false' as '0'";
-  //variant (enable) "text 'true' as '1'";
-  //variant (enable) "text 'false' as '0'";
-  //variant (disable) "text 'true' as '1'";
-  //variant (disable) "text 'false' as '0'";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.subscription_list) "untagged";
-  variant (choice.subscription_list[-]) "name as 'subscription'";
-};
-
-
-type record DeviceInfo
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional,
-	MgmtDefinition mgmtDefinition,
-	ListOfURIs objectIDs optional,
-	ListOfURIs objectPaths optional,
-	XSD.String description optional,
-	XSD.AnyURI mgmtSchema optional,
-	XSD.String deviceLabel,
-	XSD.String manufacturer,
-	XSD.String manufacturerDetailsLink optional,
-	Timestamp manufacturingDate optional,
-	XSD.String model,
-	XSD.String subModel optional,
-	XSD.String deviceType,
-	XSD.String deviceName optional,
-	XSD.String fwVersion optional,
-	XSD.String swVersion optional,
-	XSD.String hwVersion optional,
-	XSD.String osVersion optional,
-	XSD.String country optional,
-	XSD.String location optional,
-	Timestamp systemTime optional,
-	XSD.AnyURI supportURL optional,
-	XSD.AnyURI presentationURL optional,
-	ProtocolList protocol optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of Subscription subscription_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.subscription_list) "untagged";
-  variant (choice.subscription_list[-]) "name as 'subscription'";
-};
-
-
-type record DeviceInfoAnnc
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs,
-	Timestamp expirationTime,
-	XSD.AnyURI link,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	MgmtDefinition mgmtDefinition,
-	ListOfURIs objectIDs optional,
-	ListOfURIs objectPaths optional,
-	XSD.String description optional,
-	XSD.AnyURI mgmtSchema optional,
-	XSD.String deviceLabel optional,
-	XSD.String manufacturer optional,
-	XSD.String manufacturerDetailsLink optional,
-	Timestamp manufacturingDate optional,
-	XSD.String model optional,
-	XSD.String subModel optional,
-	XSD.String deviceType optional,
-	XSD.String deviceName optional,
-	XSD.String fwVersion optional,
-	XSD.String swVersion optional,
-	XSD.String hwVersion optional,
-	XSD.String osVersion optional,
-	XSD.String country optional,
-	XSD.String location optional,
-	Timestamp systemTime optional,
-	XSD.AnyURI supportURL optional,
-	XSD.AnyURI presentationURL optional,
-	ProtocolList protocol optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of Subscription subscription_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.subscription_list) "untagged";
-  variant (choice.subscription_list[-]) "name as 'subscription'";
-};
-
-
-type record DynamicAuthorizationConsultation
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	XSD.Boolean dynamicAuthorizationEnabled,
-	PoaList dynamicAuthorizationPoA,
-	Timestamp dynamicAuthorizationLifetime optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  //variant (dynamicAuthorizationEnabled) "text 'true' as '1'";
-  //variant (dynamicAuthorizationEnabled) "text 'false' as '0'";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type enumerated ResourceType
-{
-	int1(1),
-	int2(2),
-	int3(3),
-	int4(4),
-	int5(5),
-	int6(6),
-	int7(7),
-	int8(8),
-	int9(9),
-	int10(10),
-	int11(11),
-	int12(12),
-	int13(13),
-	int14(14),
-	int15(15),
-	int16(16),
-	int17(17),
-	int18(18),
-	int19(19),
-	int20(20),
-	int21(21),
-	int22(22),
-	int23(23),
-	int24(24),
-	int25(25),
-	int26(26),
-	int27(27),
-	int28(28),
-	int29(29),
-	int30(30),
-	int31(31),
-	int32(32),
-	int34(34),
-	int35(35),
-	int36(36),
-	int37(37),
-	int38(38),
-	int39(39),
-	int40(40),
-	int41(41),
-	int42(42),
-	int43(43),
-	int44(44),
-	int45(45),
-	int46(46),
-	int47(47),
-	int48(48),
-	int49(49),
-	int50(50),
-	int51(51),
-	int10001(10001),
-	int10002(10002),
-	int10003(10003),
-	int10004(10004),
-	int10009(10009),
-	int10010(10010),
-	int10013(10013),
-	int10014(10014),
-	int10016(10016),
-	int10018(10018),
-	int10024(10024),
-	int10028(10028),
-	int10029(10029),
-	int10030(10030),
-	int10034(10034),
-	int10038(10038),
-	int10039(10039),
-	int10040(10040),
-	int10041(10041),
-	int10042(10042)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated CseTypeID
-{
-	int1(1),
-	int2(2),
-	int3(3)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated LocationSource
-{
-	int1(1),
-	int2(2),
-	int3(3)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated StdEventCats
-{
-	int2(2),
-	int3(3),
-	int4(4)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated Operation
-{
-	int1(1),
-	int2(2),
-	int3(3),
-	int4(4),
-	int5(5)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated ResponseType
-{
-	int1(1),
-	int2(2),
-	int3(3),
-	int4(4),
-	int5(5)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated ResultContent
-{
-	int0(0),
-	int1(1),
-	int2(2),
-	int3(3),
-	int4(4),
-	int5(5),
-	int6(6),
-	int7(7),
-	int8(8),
-	int9(9),
-	int10(10)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated DesIdResType
-{
-	int1(1),
-	int2(2)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated ResponseStatusCode
-{
-	int1000(1000),
-	int1001(1001),
-	int1002(1002),
-	int2000(2000),
-	int2001(2001),
-	int2002(2002),
-	int2004(2004),
-	int4000(4000),
-	int4001(4001),
-	int4004(4004),
-	int4005(4005),
-	int4008(4008),
-	int4015(4015),
-	int4101(4101),
-	int4102(4102),
-	int4103(4103),
-	int4104(4104),
-	int4105(4105),
-	int4106(4106),
-	int4107(4107),
-	int4108(4108),
-	int4109(4109),
-	int4110(4110),
-	int4111(4111),
-	int4112(4112),
-	int4113(4113),
-	int4114(4114),
-	int4115(4115),
-	int4116(4116),
-	int4117(4117),
-	int4118(4118),
-	int4119(4119),
-	int4120(4120),
-	int4121(4121),
-	int4122(4122),
-	int4123(4123),
-	int4124(4124),
-	int4125(4125),
-	int5000(5000),
-	int5001(5001),
-	int5103(5103),
-	int5105(5105),
-	int5106(5106),
-	int5203(5203),
-	int5204(5204),
-	int5205(5205),
-	int5206(5206),
-	int5207(5207),
-	int5208(5208),
-	int5209(5209),
-	int5210(5210),
-	int5211(5211),
-	int5212(5212),
-	int5214(5214),
-	int5215(5215),
-	int5216(5216),
-	int5217(5217),
-	int5218(5218),
-	int5219(5219),
-	int5220(5220),
-	int5221(5221),
-	int5222(5222),
-	int6003(6003),
-	int6005(6005),
-	int6010(6010),
-	int6020(6020),
-	int6021(6021),
-	int6022(6022),
-	int6023(6023),
-	int6024(6024),
-	int6025(6025),
-	int6026(6026),
-	int6028(6028),
-	int6029(6029),
-	int6030(6030),
-	int6031(6031)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated RequestStatus
-{
-	int1(1),
-	int2(2),
-	int3(3),
-	int4(4),
-	int5(5)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated MemberType
-{
-	int0(0),
-	int1(1),
-	int2(2),
-	int3(3),
-	int4(4),
-	int5(5),
-	int6(6),
-	int7(7),
-	int8(8),
-	int9(9),
-	int10(10),
-	int11(11),
-	int12(12),
-	int13(13),
-	int14(14),
-	int15(15),
-	int16(16),
-	int17(17),
-	int18(18),
-	int19(19),
-	int20(20),
-	int21(21),
-	int22(22),
-	int23(23),
-	int24(24),
-	int25(25),
-	int26(26),
-	int27(27),
-	int28(28),
-	int29(29),
-	int30(30),
-	int31(31),
-	int32(32),
-	int34(34),
-	int35(35),
-	int36(36),
-	int37(37),
-	int38(38),
-	int39(39),
-	int40(40),
-	int41(41),
-	int42(42),
-	int43(43),
-	int44(44),
-	int46(46),
-	int47(47),
-	int48(48),
-	int49(49),
-	int50(50),
-	int51(51),
-	int10001(10001),
-	int10002(10002),
-	int10003(10003),
-	int10004(10004),
-	int10009(10009),
-	int10010(10010),
-	int10013(10013),
-	int10014(10014),
-	int10016(10016),
-	int10018(10018),
-	int10024(10024),
-	int10028(10028),
-	int10029(10029),
-	int10030(10030),
-	int10034(10034),
-	int10038(10038),
-	int10039(10039),
-	int10040(10040),
-	int10041(10041),
-	int10042(10042),
-	int10046(10046),
-	int20001(20001),
-	int20002(20002),
-	int20003(20003)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated ConsistencyStrategy
-{
-	int1(1),
-	int2(2),
-	int3(3)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated CmdType
-{
-	int1(1),
-	int2(2),
-	int3(3),
-	int4(4),
-	int5(5),
-	int6(6),
-	int7(7)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated ExecModeType
-{
-	int1(1),
-	int2(2),
-	int3(3),
-	int4(4)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated ExecStatusType
-{
-	int1(1),
-	int2(2),
-	int3(3),
-	int4(4),
-	int5(5),
-	int6(6)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated ExecResultType
-{
-	int0(0),
-	int1(1),
-	int2(2),
-	int3(3),
-	int4(4),
-	int5(5),
-	int6(6),
-	int7(7),
-	int8(8),
-	int9(9),
-	int10(10),
-	int11(11),
-	int12(12),
-	int13(13),
-	int14(14),
-	int15(15),
-	int16(16),
-	int19(19),
-	int20(20),
-	int21(21),
-	int22(22),
-	int23(23),
-	int24(24),
-	int25(25),
-	int26(26),
-	int27(27),
-	int28(28),
-	int29(29),
-	int30(30),
-	int31(31)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated PendingNotification
-{
-	int1(1),
-	int2(2)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated NotificationContentType
-{
-	int1(1),
-	int2(2),
-	int3(3),
-	int4(4)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated NotificationEventType
-{
-	int1(1),
-	int2(2),
-	int3(3),
-	int4(4),
-	int5(5),
-	int6(6),
-	int7(7)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated Status
-{
-	int0(0),
-	int1(1),
-	int2(2),
-	int3(3)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated BatteryStatus
-{
-	int1(1),
-	int2(2),
-	int3(3),
-	int4(4),
-	int5(5),
-	int6(6),
-	int7(7)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated MgmtDefinition
-{
-	int0(0),
-	int1001(1001),
-	int1002(1002),
-	int1003(1003),
-	int1004(1004),
-	int1005(1005),
-	int1006(1006),
-	int1007(1007),
-	int1008(1008),
-	int1009(1009),
-	int1010(1010),
-	int1011(1011),
-	int1012(1012),
-	int1013(1013),
-	int1014(1014),
-	int1015(1015),
-	int1016(1016),
-	int1017(1017),
-	int1018(1018),
-	int1019(1019),
-	int1020(1020),
-	int1021(1021),
-	int1022(1022),
-	int1023(1023),
-	int1024(1024),
-	int1025(1025),
-	int1026(1026)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated LogTypeId
-{
-	int1(1),
-	int2(2),
-	int3(3),
-	int4(4),
-	int5(5)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated LogStatus
-{
-	int1(1),
-	int2(2),
-	int3(3),
-	int4(4),
-	int5(5)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated EventType
-{
-	int1(1),
-	int2(2),
-	int3(3)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated StatsRuleStatusType
-{
-	int1(1),
-	int2(2)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated StatModelType
-{
-	int1(1)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated EncodingType
-{
-	int0(0),
-	int1(1),
-	int2(2)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-
-
-type enumerated AccessControlOperations
-{
-	int1(1),
-	int2(2),
-	int3(3),
-	int4(4),
-	int5(5),
-	int6(6),
-	int7(7),
-	int8(8),
-	int9(9),
-	int10(10),
-	int11(11),
-	int12(12),
-	int13(13),
-	int14(14),
-	int15(15),
-	int16(16),
-	int17(17),
-	int18(18),
-	int19(19),
-	int20(20),
-	int21(21),
-	int22(22),
-	int23(23),
-	int24(24),
-	int25(25),
-	int26(26),
-	int27(27),
-	int28(28),
-	int29(29),
-	int30(30),
-	int31(31),
-	int32(32),
-	int33(33),
-	int34(34),
-	int35(35),
-	int36(36),
-	int37(37),
-	int38(38),
-	int39(39),
-	int40(40),
-	int41(41),
-	int42(42),
-	int43(43),
-	int44(44),
-	int45(45),
-	int46(46),
-	int47(47),
-	int48(48),
-	int49(49),
-	int50(50),
-	int51(51),
-	int52(52),
-	int53(53),
-	int54(54),
-	int55(55),
-	int56(56),
-	int57(57),
-	int58(58),
-	int59(59),
-	int60(60),
-	int61(61),
-	int62(62),
-	int63(63)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated FilterUsage
-{
-	int1(1),
-	int2(2),
-	int3(3)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated NotificationTargetPolicyAction
-{
-	int1(1),
-	int2(2),
-	int3(3),
-	int4(4)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated LogicalOperator
-{
-	int1(1),
-	int2(2)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated FilterOperation
-{
-	int1(1),
-	int2(2)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated AllJoynDirection
-{
-	int1(1),
-	int2(2)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated ContentFilterSyntax
-{
-	int1(1)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated ContentSecurity
-{
-	int0(0),
-	int1(1),
-	int2(2),
-	int3(3),
-	int4(4),
-	int5(5)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated Suid
-{
-	int10(10),
-	int11(11),
-	int12(12),
-	int13(13),
-	int14(14),
-	int15(15),
-	int21(21),
-	int22(22),
-	int23(23),
-	int24(24),
-	int25(25),
-	int32(32),
-	int33(33),
-	int34(34),
-	int35(35),
-	int40(40),
-	int41(41),
-	int42(42),
-	int43(43),
-	int44(44),
-	int45(45)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated EsprimKeyGenAlgID
-{
-	int1(1)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated EsprimProtocolAndAlgID
-{
-	int10(10),
-	int11(11),
-	int12(12)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated StationaryIndication
-{
-	int1(1),
-	int2(2)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated ContentStatus
-{
-	int1(1),
-	int2(2)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated NetworkAction
-{
-	int1(1),
-	int2(2),
-	int3(3),
-	int4(4),
-	int5(5)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated TriggerPurpose
-{
-	int1(1),
-	int2(2),
-	int3(3),
-	int4(4)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated SerializationType
-{
-	int1(1),
-	int2(2),
-	int3(3),
-	int4(4),
-	int5(5),
-	int6(6),
-	int7(7)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated AuthorizationDecision
-{
-	int1(1),
-	int2(2)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated AuthorizationStatus
-{
-	int1(1),
-	int2(2),
-	int3(3),
-	int4(4),
-	int5(5)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated AcpCombiningAlgorithm
-{
-	int1(1)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated SemanticFormat
-{
-	int1(1),
-	int2(2),
-	int3(3),
-	int4(4),
-	int5(5),
-	int6(6),
-	int7(7)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated MashupMemberStoreType
-{
-	int1(1),
-	int2(2)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated MashupResultGenType
-{
-	int1(1),
-	int2(2),
-	int3(3),
-	int4(4)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated LocationUpdateEventCriteria
-{
-	int1(1)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated AERegistrationStatus
-{
-	int1(1),
-	int2(2)
-}
-with {
-  variant "useNumber";
-};
-
-
-type enumerated MulticastCapability
-{
-	int1(1),
-	int2(2)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated SessionState
-{
-	int1(1),
-	int2(2)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated TriggerStatus
-{
-	int1(1),
-	int2(2),
-	int3(3),
-	int4(4),
-	int5(5),
-	int6(6)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated TimeWindowType
-{
-	int1(1),
-	int2(2)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated TransferSelectionGuidance
-{
-	int1(1),
-	int2(2)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated TransactionMode
-{
-	int1(1),
-	int2(2)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated TransactionControl
-{
-	int1(1),
-	int2(2),
-	int3(3),
-	int4(4),
-	int5(5)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated TransactionState
-{
-	int1(1),
-	int2(2),
-	int3(3),
-	int4(4),
-	int5(5),
-	int6(6)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated TransactionLockType
-{
-	int1(1),
-	int2(2)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated TransactionMgmtHandling
-{
-	int1(1),
-	int2(2)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated LocationInformationType
-{
-	int1(1),
-	int2(2)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type enumerated GeofenceEventCriteria
-{
-	int1(1),
-	int2(2),
-	int3(3),
-	int4(4)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type record EventConfig
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	XSD.ID creator optional,
-	XSD.String eventID,
-	EventType eventType,
-	Timestamp eventStart optional,
-	Timestamp eventEnd optional,
-	record of Operation operationType optional,
-	XSD.NonNegativeInteger dataSize optional,
-	ResourceTypeList eventResourceTypes optional,
-	ListOfURIs eventResourceIDs optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (operationType) "list";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record EventLog
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional,
-	MgmtDefinition mgmtDefinition,
-	ListOfURIs objectIDs optional,
-	ListOfURIs objectPaths optional,
-	XSD.String description optional,
-	XSD.AnyURI mgmtSchema optional,
-	LogTypeId logTypeId,
-	XSD.String logData,
-	LogStatus logStatus,
-	XSD.Boolean logStart,
-	XSD.Boolean logStop,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of Subscription subscription_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-  //variant (logStart) "text 'true' as '1'";
-  //variant (logStart) "text 'false' as '0'";
-  //variant (logStop) "text 'true' as '1'";
-  //variant (logStop) "text 'false' as '0'";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.subscription_list) "untagged";
-  variant (choice.subscription_list[-]) "name as 'subscription'";
-};
-
-
-type record EventLogAnnc
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs,
-	Timestamp expirationTime,
-	XSD.AnyURI link,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	MgmtDefinition mgmtDefinition,
-	ListOfURIs objectIDs optional,
-	ListOfURIs objectPaths optional,
-	XSD.String description optional,
-	XSD.AnyURI mgmtSchema optional,
-	LogTypeId logTypeId optional,
-	XSD.String logData optional,
-	LogStatus logStatus optional,
-	XSD.Boolean logStart optional,
-	XSD.Boolean logStop optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of Subscription subscription_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  //variant (logStart) "text 'true' as '1'";
-  //variant (logStart) "text 'false' as '0'";
-  //variant (logStop) "text 'true' as '1'";
-  //variant (logStop) "text 'false' as '0'";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.subscription_list) "untagged";
-  variant (choice.subscription_list[-]) "name as 'subscription'";
-};
-
-
-type record ExecInstance
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ExecStatusType execStatus,
-	ExecResultType execResult,
-	XSD.Boolean execDisable optional,
-	NodeID execTarget,
-	ExecModeType execMode optional,
-	XSD.Duration execFrequency optional,
-	XSD.Duration execDelay optional,
-	XSD.NonNegativeInteger execNumber optional,
-	ExecReqArgsListType execReqArgs optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  //variant (execDisable) "text 'true' as '1'";
-  //variant (execDisable) "text 'false' as '0'";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record Firmware
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional,
-	MgmtDefinition mgmtDefinition,
-	ListOfURIs objectIDs optional,
-	ListOfURIs objectPaths optional,
-	XSD.String description optional,
-	XSD.AnyURI mgmtSchema optional,
-	XSD.String version,
-	XSD.String firmwareName,
-	XSD.AnyURI uRL,
-	XSD.Boolean update,
-	ActionStatus updateStatus,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of Subscription subscription_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-  variant (uRL) "name as capitalized";
-  //variant (update) "text 'true' as '1'";
-  //variant (update) "text 'false' as '0'";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.subscription_list) "untagged";
-  variant (choice.subscription_list[-]) "name as 'subscription'";
-};
-
-
-type record FirmwareAnnc
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs,
-	Timestamp expirationTime,
-	XSD.AnyURI link,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	MgmtDefinition mgmtDefinition,
-	ListOfURIs objectIDs optional,
-	ListOfURIs objectPaths optional,
-	XSD.String description optional,
-	XSD.AnyURI mgmtSchema optional,
-	XSD.String version optional,
-	XSD.String firmwareName optional,
-	XSD.AnyURI uRL optional,
-	XSD.Boolean update optional,
-	ActionStatus updateStatus optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of Subscription subscription_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (uRL) "name as capitalized";
-  //variant (update) "text 'true' as '1'";
-  //variant (update) "text 'false' as '0'";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.subscription_list) "untagged";
-  variant (choice.subscription_list[-]) "name as 'subscription'";
-};
-
-
-type record GenericInterworkingOperationInstance
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime optional,
-	Timestamp lastModifiedTime optional,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime optional,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	ListOfNCNames announcedAttribute optional,
-	XSD.NonNegativeInteger stateTag,
-	XSD.ID creator optional,
-	XSD.AnyURI containerDefinition,
-	XSD.AnyURI ontologyRef optional,
-	XSD.NonNegativeInteger contentSize,
-	XSD.AnyURI nodeLink optional,
-	XSD.String operationName,
-	XSD.String operationState,
-	ListOfDataLinks inputDataPointLinks optional,
-	ListOfDataLinks outputDataPointLinks optional,
-	ListOfDataLinks inputLinks optional,
-	ListOfDataLinks outputLinks optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			SemanticDescriptor semanticDescriptor,
-			Subscription subscription
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record GenericInterworkingOperationInstanceAnnc
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime optional,
-	Timestamp lastModifiedTime optional,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs,
-	Timestamp expirationTime optional,
-	XSD.AnyURI link,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	XSD.NonNegativeInteger stateTag optional,
-	XSD.AnyURI containerDefinition,
-	XSD.AnyURI ontologyRef optional,
-	XSD.NonNegativeInteger contentSize optional,
-	XSD.AnyURI nodeLink optional,
-	XSD.String operationName optional,
-	XSD.String operationState optional,
-	ListOfDataLinks inputDataPointLinks optional,
-	ListOfDataLinks outputDataPointLinks optional,
-	ListOfDataLinks inputLinks optional,
-	ListOfDataLinks outputLinks optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			SemanticDescriptor semanticDescriptor,
-			SemanticDescriptorAnnc semanticDescriptorAnnc,
-			Subscription subscription
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record GenericInterworkingService
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime optional,
-	Timestamp lastModifiedTime optional,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime optional,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	ListOfNCNames announcedAttribute optional,
-	XSD.NonNegativeInteger stateTag,
-	XSD.ID creator optional,
-	XSD.AnyURI containerDefinition,
-	XSD.AnyURI ontologyRef optional,
-	XSD.NonNegativeInteger contentSize,
-	XSD.AnyURI nodeLink optional,
-	XSD.String serviceName,
-	ListOfDataLinks inputDataPointLinks optional,
-	ListOfDataLinks outputDataPointLinks optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record of union {
-			GenericInterworkingService genericInterworkingService,
-			GenericInterworkingOperationInstance genericInterworkingOperationInstance,
-			SemanticDescriptor semanticDescriptor,
-			Subscription subscription
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record GenericInterworkingServiceAnnc
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime optional,
-	Timestamp lastModifiedTime optional,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs,
-	Timestamp expirationTime optional,
-	XSD.AnyURI link,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	XSD.NonNegativeInteger stateTag optional,
-	XSD.AnyURI containerDefinition,
-	XSD.AnyURI ontologyRef optional,
-	XSD.NonNegativeInteger contentSize optional,
-	XSD.AnyURI nodeLink optional,
-	XSD.String serviceName,
-	ListOfDataLinks inputDataPointLinks optional,
-	ListOfDataLinks outputDataPointLinks optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record of union {
-			GenericInterworkingServiceAnnc genericInterworkingServiceAnnc,
-			GenericInterworkingOperationInstanceAnnc genericInterworkingOperationInstanceAnnc,
-			SemanticDescriptor semanticDescriptor,
-			SemanticDescriptorAnnc semanticDescriptorAnnc,
-			Subscription subscription
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record Group
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional,
-	XSD.ID creator optional,
-	MemberType memberType,
-	SpecializationType specializationType optional,
-	XSD.NonNegativeInteger currentNrOfMembers,
-	XSD.PositiveInteger maxNrOfMembers,
-	record length(0 .. infinity) of XSD.AnyURI memberIDs,//TODO A list that can be empty,
-	ListOfURIs membersAccessControlPolicyIDs optional,
-	XSD.Boolean memberTypeValidated optional,
-	ConsistencyStrategy consistencyStrategy optional,
-	XSD.String groupName optional,
-	XSD.Boolean semanticSupportIndicator optional,
-	BatchNotify notifyAggregation optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription,
-			SemanticDescriptor semanticDescriptor,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-  variant (memberIDs) "list";
-  //variant (memberTypeValidated) "text 'true' as '1'";
-  //variant (memberTypeValidated) "text 'false' as '0'";
-  //variant (semanticSupportIndicator) "text 'true' as '1'";
-  //variant (semanticSupportIndicator) "text 'false' as '0'";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record GroupAnnc
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs,
-	Timestamp expirationTime,
-	XSD.AnyURI link,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	MemberType memberType optional,
-	SpecializationType specializationType optional,
-	XSD.NonNegativeInteger currentNrOfMembers optional,
-	XSD.PositiveInteger maxNrOfMembers optional,
-	record of XSD.AnyURI memberIDs optional,
-	ListOfURIs membersAccessControlPolicyIDs optional,
-	XSD.Boolean memberTypeValidated optional,
-	ConsistencyStrategy consistencyStrategy optional,
-	XSD.String groupName optional,
-	XSD.Boolean semanticSupportIndicator optional,
-	BatchNotify notifyAggregation optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription,
-			SemanticDescriptor semanticDescriptor,
-			SemanticDescriptorAnnc semanticDescriptorAnnc,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (memberIDs) "list";
-  //variant (memberTypeValidated) "text 'true' as '1'";
-  //variant (memberTypeValidated) "text 'false' as '0'";
-  //variant (semanticSupportIndicator) "text 'true' as '1'";
-  //variant (semanticSupportIndicator) "text 'false' as '0'";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-
-
-
-
-type record LocalMulticastGroup
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ExternalID externalGroupID optional,
-	IpAddress multicastAddress,
-	XSD.AnyURI multicastGroupFanoutTarget,
-	ListOfURIs memberList,
-	XSD.AnyURI responseTarget,
-	XSD.Duration responseTimeWindow optional,
-	TMGI tMGI optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			record length(0 .. 1) of enumerated { NULL_ } choice
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (tMGI) "name as capitalized";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record LocationPolicy
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional,
-	LocationSource locationSource,
-	LocationInformationType locationInformationType,
-	ListOfDuration locationUpdatePeriod optional,
-	LocationTargetID locationTargetID optional,
-	XSD.AnyURI locationServer optional,
-	XSD.AnyURI locationContainerID,
-	XSD.String locationContainerName optional,
-	XSD.String locationStatus,
-	XSD.AnySimpleType geographicalTargetArea optional,//FIXME Use AnySimpleType instead
-	GeofenceEventCriteria geofenceEventCriteria optional,
-	ExternalID authID optional,
-	XSD.Boolean retrieveLastKnownLocation optional,
-	LocationUpdateEventCriteria locationUpdateEventCriteria optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-  //variant (retrieveLastKnownLocation) "text 'true' as '1'";
-  //variant (retrieveLastKnownLocation) "text 'false' as '0'";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record LocationPolicyAnnc
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs,
-	Timestamp expirationTime,
-	XSD.AnyURI link,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	LocationSource locationSource optional,
-	LocationInformationType locationInformationType optional,
-	ListOfDuration locationUpdatePeriod optional,
-	LocationTargetID locationTargetID optional,
-	XSD.AnyURI locationServer optional,
-	XSD.AnyURI locationContainerID optional,
-	XSD.String locationContainerName optional,
-	XSD.String locationStatus optional,
-	XSD.AnySimpleType geographicalTargetArea optional,//FIXME Use AnySimpleType instead
-	GeofenceEventCriteria geofenceEventCriteria optional,
-	ExternalID authID optional,
-	XSD.Boolean retrieveLastKnownLocation optional,
-	LocationUpdateEventCriteria locationUpdateEventCriteria optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  //variant (retrieveLastKnownLocation) "text 'true' as '1'";
-  //variant (retrieveLastKnownLocation) "text 'false' as '0'";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record M2mServiceSubscriptionProfile
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			ServiceSubscribedNode serviceSubscribedNode,
-			Subscription subscription,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record Memory
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional,
-	MgmtDefinition mgmtDefinition,
-	ListOfURIs objectIDs optional,
-	ListOfURIs objectPaths optional,
-	XSD.String description optional,
-	XSD.AnyURI mgmtSchema optional,
-	XSD.UnsignedLong memAvailable,
-	XSD.UnsignedLong memTotal,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of Subscription subscription_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.subscription_list) "untagged";
-  variant (choice.subscription_list[-]) "name as 'subscription'";
-};
-
-
-type record MemoryAnnc
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs,
-	Timestamp expirationTime,
-	XSD.AnyURI link,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	MgmtDefinition mgmtDefinition,
-	ListOfURIs objectIDs optional,
-	ListOfURIs objectPaths optional,
-	XSD.String description optional,
-	XSD.AnyURI mgmtSchema optional,
-	XSD.UnsignedLong memAvailable optional,
-	XSD.UnsignedLong memTotal optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of Subscription subscription_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.subscription_list) "untagged";
-  variant (choice.subscription_list[-]) "name as 'subscription'";
-};
-
-
-type record MgmtCmd
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	XSD.String description optional,
-	CmdType cmdType,
-	ExecReqArgsListType execReqArgs optional,
-	XSD.Boolean execEnable,
-	NodeID execTarget,
-	ExecModeType execMode optional,
-	XSD.Duration execFrequency optional,
-	XSD.Duration execDelay optional,
-	XSD.NonNegativeInteger execNumber optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			ExecInstance execInstance,
-			Subscription subscription,
-			Transaction transaction
-		} choice_list
-	} choice
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  //variant (execEnable) "text 'true' as '1'";
-  //variant (execEnable) "text 'false' as '0'";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record MultimediaSession
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional,
-	XSD.ID sessionOriginatorID,
-	SessionDescriptions acceptedSessionDescriptions,
-	SessionDescriptions offeredSessionDescriptions,
-	SessionState sessionState,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record MultimediaSessionAnnc
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs,
-	Timestamp expirationTime,
-	XSD.AnyURI link,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	XSD.ID sessionOriginatorID,
-	SessionDescriptions acceptedSessionDescriptions,
-	SessionState sessionState,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record Node
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional,
-	NodeID nodeID,
-	XSD.ID hostedCSELink optional,
-	ListOfM2MID hostedAELinks optional,
-	ListOfM2MID hostedServiceLinks optional,
-	XSD.String mgmtClientAddress optional,
-	XSD.Boolean roamingStatus optional,
-	XSD.String networkID optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Memory memory,
-			Battery battery,
-			AreaNwkInfo areaNwkInfo,
-			AreaNwkDeviceInfo areaNwkDeviceInfo,
-			Firmware firmware,
-			Software software,
-			DeviceInfo deviceInfo,
-			DeviceCapability deviceCapability,
-			Reboot reboot,
-			EventLog eventLog,
-			CmdhPolicy cmdhPolicy,
-			ActiveCmdhPolicy activeCmdhPolicy,
-			Subscription subscription,
-			SemanticDescriptor semanticDescriptor,
-			Transaction transaction,
-			Schedule schedule
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-  //variant (roamingStatus) "text 'true' as '1'";
-  //variant (roamingStatus) "text 'false' as '0'";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record NodeAnnc
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs,
-	Timestamp expirationTime,
-	XSD.AnyURI link,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	NodeID nodeID,
-	XSD.ID hostedCSELink optional,
-	ListOfM2MID hostedAELinks optional,
-	ListOfM2MID hostedServiceLinks optional,
-	XSD.String mgmtClientAddress optional,
-	XSD.Boolean roamingStatus optional,
-	XSD.String networkID optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			MemoryAnnc memoryAnnc,
-			BatteryAnnc batteryAnnc,
-			AreaNwkInfoAnnc areaNwkInfoAnnc,
-			AreaNwkDeviceInfoAnnc areaNwkDeviceInfoAnnc,
-			FirmwareAnnc firmwareAnnc,
-			SoftwareAnnc softwareAnnc,
-			DeviceInfoAnnc deviceInfoAnnc,
-			DeviceCapabilityAnnc deviceCapabilityAnnc,
-			RebootAnnc rebootAnnc,
-			EventLogAnnc eventLogAnnc,
-			Subscription subscription,
-			SemanticDescriptor semanticDescriptor,
-			SemanticDescriptorAnnc semanticDescriptorAnnc,
-			Transaction transaction,
-			Schedule schedule
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  //variant (roamingStatus) "text 'true' as '1'";
-  //variant (roamingStatus) "text 'false' as '0'";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record NotificationTargetMgmtPolicyRef
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs notificationTargetURI optional,
-	XSD.AnyURI notificationlPolicyID optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record NotificationTargetPolicy
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	XSD.ID creator optional,
-	NotificationTargetPolicyAction action_,
-	XSD.Token policyLabel,
-	LogicalOperator rulesRelationship optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			PolicyDeletionRules policyDeletionRules,
-			Subscription subscription,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (action_) "name as 'action'";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type Notification_1 Notification
-with {
-  variant "name as uncapitalized";
-  variant "element";
-};
-
-
-type AggregatedNotification_1 AggregatedNotification
-with {
-  variant "name as uncapitalized";
-  variant "element";
-};
-
-
-type record AggregatedNotification_1
-{
-	record of Notification notification_list
-}
-with {
-  variant "name as 'aggregatedNotification'";
-  variant (notification_list) "untagged";
-  variant (notification_list[-]) "name as 'notification'";
-};
-
-type record Notification_1
-{
-	record {
-		Representation representation optional,
-		record {
-			Operation operation optional,
-			XSD.ID originator optional
-		} operationMonitor optional,
-		NotificationEventType notificationEventType optional
-	} notificationEvent optional,
-	XSD.Boolean verificationRequest optional,
-	XSD.Boolean subscriptionDeletion optional,
-	XSD.AnyURI subscriptionReference optional,
-	XSD.ID creator optional,
-	XSD.AnyURI notificationForwardingURI optional,
-	XSD.ID notificationTarget optional,
-	XSD.Boolean targetRemovalRequest optional,
-	XSD.Boolean targetRemovalAllowance optional,
-	record {
-		XSD.ID originator,
-		FilterCriteria filterCriteria
-	} iPEDiscoveryRequest optional,
-	XSD.Boolean aERegistrationPointChange optional,
-	XSD.Boolean aEReferenceIDChange optional,
-	XSD.ID trackingID1 optional,
-	XSD.ID trackingID2 optional
-}
-with {
-  variant "name as 'notification'";
-  //variant (verificationRequest) "text 'true' as '1'";
-  //variant (verificationRequest) "text 'false' as '0'";
-  //variant (subscriptionDeletion) "text 'true' as '1'";
-  //variant (subscriptionDeletion) "text 'false' as '0'";
-  //variant (targetRemovalRequest) "text 'true' as '1'";
-  //variant (targetRemovalRequest) "text 'false' as '0'";
-  //variant (targetRemovalAllowance) "text 'true' as '1'";
-  //variant (targetRemovalAllowance) "text 'false' as '0'";
-  variant (iPEDiscoveryRequest) "name as capitalized";
-  variant (aERegistrationPointChange) "name as capitalized";
-  //variant (aERegistrationPointChange) "text 'true' as '1'";
-  //variant (aERegistrationPointChange) "text 'false' as '0'";
-  variant (aEReferenceIDChange) "name as capitalized";
-  //variant (aEReferenceIDChange) "text 'true' as '1'";
-  //variant (aEReferenceIDChange) "text 'false' as '0'";
-};
-
-
-type SecurityInfo_1 SecurityInfo
-with {
-  variant "name as uncapitalized";
-  variant "element";
-};
-
-
-type record SecurityInfo_1
-{
-	SecurityInfoType securityInfoType optional,
-	DynAuthDasRequest dasRequest optional,
-	DynAuthDasResponse dasResponse optional,
-	ReceiverESPrimRandObject esprimRandObject optional,
-	E2eCompactJWE esprimObject optional,
-	XSD.Base64Binary escertkeMessage optional,
-	DynAuthRelMapRequest dynAuthRelMapRequest optional,
-	DynAuthRelMapResponse dynAuthRelMapResponse optional
-}
-with {
-  variant "name as 'securityInfo'";
-};
-
-
-type enumerated SecurityInfoType
-{
-	int1(1),
-	int2(2),
-	int3(3),
-	int4(4),
-	int5(5),
-	int6(6),
-	int7(7),
-	int8(8)
-}
-with {
-  variant "useNumber";
-  variant "name as uncapitalized";
-};
-
-
-type record DynAuthDasResponse
-{
-	record {
-		SetOfAcrs grantedPrivileges optional,
-		AbsRelTimestamp privilegesLifetime optional
-	} dynamicACPInfo optional,
-	record length(1 .. infinity) of DynAuthJWT tokens optional,
-	XSD.Boolean authorSignReqInfo optional
-}
-with {
-  variant "name as uncapitalized";
-  variant (tokens) "list";
-  //variant (authorSignReqInfo) "text 'true' as '1'";
-  //variant (authorSignReqInfo) "text 'false' as '0'";
-};
-
-
-//FIXME To replace Representation type by this
-type union Representation {
-	Resource_2 resource, 
-	URI uRI
-}
-with {
-	variant "name as 'representation'";
-	variant (uRI) "name as capitalized";
- };
-
-
-
-type record OntologyRepository
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional,
-	XSD.NonNegativeInteger stateTag,
-	XSD.ID creator optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription,
-			Ontology ontology,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record OntologyRepositoryAnnc
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs,
-	Timestamp expirationTime,
-	XSD.AnyURI link,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	XSD.NonNegativeInteger stateTag,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription,
-			Ontology ontology,
-			OntologyAnnc ontologyAnnc,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record Ontology
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional,
-	XSD.NonNegativeInteger stateTag,
-	XSD.ID creator optional,
-	XSD.String description optional,
-	SemanticFormat ontologyFormat,
-	XSD.AnySimpleType ontologyContent,//FIXME Use AnySimpleType instead
-	Sparql semanticOpExec optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record OntologyAnnc
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs,
-	Timestamp expirationTime,
-	XSD.AnyURI link,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	XSD.NonNegativeInteger stateTag,
-	XSD.String description optional,
-	SemanticFormat ontologyFormat optional,
-	XSD.AnySimpleType ontologyContent optional,//FIXME Use AnySimpleType instead
-	Sparql semanticOpExec optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record PolicyDeletionRules
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	DeletionContexts deletionRules optional,
-	LogicalOperator deletionRulesRelation optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record PollingChannel
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	Timestamp expirationTime,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record Reboot
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional,
-	MgmtDefinition mgmtDefinition,
-	ListOfURIs objectIDs optional,
-	ListOfURIs objectPaths optional,
-	XSD.String description optional,
-	XSD.AnyURI mgmtSchema optional,
-	XSD.Boolean reboot,
-	XSD.Boolean factoryReset,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of Subscription subscription_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-  //variant (reboot) "text 'true' as '1'";
-  //variant (reboot) "text 'false' as '0'";
-  //variant (factoryReset) "text 'true' as '1'";
-  //variant (factoryReset) "text 'false' as '0'";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.subscription_list) "untagged";
-  variant (choice.subscription_list[-]) "name as 'subscription'";
-};
-
-
-type record RebootAnnc
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs,
-	Timestamp expirationTime,
-	XSD.AnyURI link,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	MgmtDefinition mgmtDefinition,
-	ListOfURIs objectIDs optional,
-	ListOfURIs objectPaths optional,
-	XSD.String description optional,
-	XSD.AnyURI mgmtSchema optional,
-	XSD.Boolean reboot optional,
-	XSD.Boolean factoryReset optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of Subscription subscription_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  //variant (reboot) "text 'true' as '1'";
-  //variant (reboot) "text 'false' as '0'";
-  //variant (factoryReset) "text 'true' as '1'";
-  //variant (factoryReset) "text 'false' as '0'";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.subscription_list) "untagged";
-  variant (choice.subscription_list[-]) "name as 'subscription'";
-};
-
-
-type record RemoteCSE
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional,
-	CseTypeID cseType optional,
-	PoaList pointOfAccess optional,
-	XSD.AnyURI cSEBase,
-	XSD.ID cSE_ID,
-	ExternalID m2M_Ext_ID optional,
-	TriggerRecipientID trigger_Recipient_ID optional,
-	XSD.Boolean requestReachability,
-	XSD.AnyURI nodeLink optional,
-	XSD.UnsignedInt triggerReferenceNumber optional,
-	Serializations contentSerialization optional,
-	E2eSecInfo e2eSecInfo optional,
-	ListOfM2MID descendantCSEs optional,
-	SupportedReleaseVersions supportedReleaseVersions,
-	MulticastCapability multicastCapability optional,
-	ExternalID externalGroupID optional,
-	XSD.Boolean triggerEnable optional,
-	ActivityPatternElements activityPatternElements optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			NodeAnnc nodeAnnc,
-			Container container,
-			ContainerAnnc containerAnnc,
-			Group group_,
-			GroupAnnc groupAnnc,
-			AccessControlPolicy accessControlPolicy,
-			AccessControlPolicyAnnc accessControlPolicyAnnc,
-			Subscription subscription,
-			PollingChannel pollingChannel,
-			TimeSeries timeSeries,
-			TimeSeriesAnnc timeSeriesAnnc,
-			LocationPolicyAnnc locationPolicyAnnc,
-			AEAnnc aEAnnc,
-			Sg_flexContainerResource_group sg_flexContainerResource,
-			Sg_announcedFlexContainerResource_group sg_announcedFlexContainerResource,
-			OntologyRepositoryAnnc ontologyRepositoryAnnc,
-			SemanticMashupJobProfile semanticMashupJobProfile,
-			SemanticMashupJobProfileAnnc semanticMashupJobProfileAnnc,
-			SemanticMashupInstance semanticMashupInstance,
-			SemanticMashupInstanceAnnc semanticMashupInstanceAnnc,
-			CrossResourceSubscription crossResourceSubscription,
-			TransactionMgmt transactionMgmt,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-  variant (cSEBase) "name as capitalized";
-  variant (cSE_ID) "name as 'CSE-ID'";
-  variant (m2M_Ext_ID) "name as 'M2M-Ext-ID'";
-  variant (trigger_Recipient_ID) "name as 'Trigger-Recipient-ID'";
-  //variant (requestReachability) "text 'true' as '1'";
-  //variant (requestReachability) "text 'false' as '0'";
-  //variant (triggerEnable) "text 'true' as '1'";
-  //variant (triggerEnable) "text 'false' as '0'";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-  variant (choice.choice_list[-].group_) "name as 'group'";
-  variant (choice.choice_list[-].aEAnnc) "name as capitalized";
-};
-
-
-type record RemoteCSEAnnc
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs,
-	Timestamp expirationTime,
-	XSD.AnyURI link,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	CseTypeID cseType optional,
-	PoaList pointOfAccess optional,
-	XSD.AnyURI cSEBase optional,
-	XSD.ID cSE_ID optional,
-	XSD.Boolean requestReachability optional,
-	XSD.AnyURI nodeLink optional,
-	Serializations contentSerialization optional,
-	E2eSecInfo e2eSecInfo optional,
-	ListOfM2MID descendantCSEs optional,
-	SupportedReleaseVersions supportedReleaseVersions,
-	MulticastCapability multicastCapability optional,
-	ExternalID externalGroupID optional,
-	XSD.Boolean triggerEnable optional,
-	ActivityPatternElements activityPatternElements optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			NodeAnnc nodeAnnc,
-			Container container,
-			ContainerAnnc containerAnnc,
-			Group group_,
-			GroupAnnc groupAnnc,
-			AccessControlPolicy accessControlPolicy,
-			AccessControlPolicyAnnc accessControlPolicyAnnc,
-			Subscription subscription,
-			PollingChannel pollingChannel,
-			LocationPolicyAnnc locationPolicyAnnc,
-			TimeSeries timeSeries,
-			TimeSeriesAnnc timeSeriesAnnc,
-			AEAnnc aEAnnc,
-			Sg_flexContainerResource_group sg_flexContainerResource,
-			Sg_announcedFlexContainerResource_group sg_announcedFlexContainerResource,
-			OntologyRepositoryAnnc ontologyRepositoryAnnc,
-			SemanticMashupJobProfile semanticMashupJobProfile,
-			SemanticMashupJobProfileAnnc semanticMashupJobProfileAnnc,
-			SemanticMashupInstance semanticMashupInstance,
-			SemanticMashupInstanceAnnc semanticMashupInstanceAnnc,
-			CrossResourceSubscription crossResourceSubscription,
-			TransactionMgmt transactionMgmt,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (cSEBase) "name as capitalized";
-  variant (cSE_ID) "name as 'CSE-ID'";
-  //variant (requestReachability) "text 'true' as '1'";
-  //variant (requestReachability) "text 'false' as '0'";
-  //variant (triggerEnable) "text 'true' as '1'";
-  //variant (triggerEnable) "text 'false' as '0'";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-  variant (choice.choice_list[-].group_) "name as 'group'";
-  variant (choice.choice_list[-].aEAnnc) "name as capitalized";
-};
-
-
-type record RequestPrimitive
-{
-	Operation operation,
-	XSD.AnyURI to_,
-	XSD.ID from_ optional,
-	RequestID requestIdentifier,
-	ResourceType resourceType optional,
-	PrimitiveContent primitiveContent optional,
-	record length(1 .. infinity) of RoleID roleIDs optional,
-	Timestamp originatingTimestamp optional,
-	AbsRelTimestamp requestExpirationTimestamp optional,
-	AbsRelTimestamp resultExpirationTimestamp optional,
-	AbsRelTimestamp operationExecutionTime optional,
-	ResponseTypeInfo responseType optional,
-	AbsRelTimestamp resultPersistence optional,
-	ResultContent resultContent optional,
-	EventCat eventCategory optional,
-	XSD.Boolean deliveryAggregation optional,
-	XSD.String groupRequestIdentifier optional,
-	FilterCriteria filterCriteria optional,
-	DesIdResType desiredIdentifierResultType optional,
-	record length(1 .. infinity) of DynAuthJWT tokens optional,
-	record length(1 .. infinity) of TokenID tokenIDs optional,
-	record length(1 .. infinity) of XSD.NCName localTokenIDs optional,
-	XSD.Boolean tokenRequestIndicator optional,
-	ListOfURIs groupRequestTargetMembers optional,
-	XSD.Boolean authorSignIndicator optional,
-	SignatureList authorSigns optional,
-	XSD.Boolean authorRelIndicator optional,
-	XSD.Boolean semanticQueryIndicator optional,
-	ReleaseVersion releaseVersionIndicator,
-	XSD.String vendorInformation optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (to_) "name as 'to'";
-  variant (from_) "name as 'from'";
-  variant (roleIDs) "list";
-  //variant (deliveryAggregation) "text 'true' as '1'";
-  //variant (deliveryAggregation) "text 'false' as '0'";
-  variant (tokens) "list";
-  variant (tokenIDs) "list";
-  variant (localTokenIDs) "list";
-  //variant (tokenRequestIndicator) "text 'true' as '1'";
-  //variant (tokenRequestIndicator) "text 'false' as '0'";
-  //variant (authorSignIndicator) "text 'true' as '1'";
-  //variant (authorSignIndicator) "text 'false' as '0'";
-  //variant (authorRelIndicator) "text 'true' as '1'";
-  //variant (authorRelIndicator) "text 'false' as '0'";
-  //variant (semanticQueryIndicator) "text 'true' as '1'";
-  //variant (semanticQueryIndicator) "text 'false' as '0'";
-};
-
-
-type AttributeList_1 AttributeList
-with {
-  variant "name as uncapitalized";
-  variant "element";
-};
-
-
-type record Request
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	Operation operation,
-	XSD.AnyURI target,
-	XSD.ID originator,
-	RequestID requestID,
-	MetaInformation metaInformation,
-	PrimitiveContent primitiveContent optional,
-	RequestStatus requestStatus,
-	OperationResult operationResult,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record ResponsePrimitive
-{
-	ResponseStatusCode responseStatusCode,
-	RequestID requestIdentifier,
-	PrimitiveContent primitiveContent optional,
-	XSD.ID to_ optional,
-	XSD.ID from_ optional,
-	Timestamp originatingTimestamp optional,
-	AbsRelTimestamp resultExpirationTimestamp optional,
-	EventCat eventCategory optional,
-	ContentStatus contentStatus optional,
-	XSD.PositiveInteger contentOffset optional,
-	DynAuthLocalTokenIdAssignments assignedTokenIdentifiers optional,
-	DynAuthTokenReqInfo tokenRequestInformation optional,
-	XSD.Boolean authorSignReqInfo optional,
-	ReleaseVersion releaseVersionIndicator,
-	XSD.String vendorInformation optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (to_) "name as 'to'";
-  variant (from_) "name as 'from'";
-  //variant (authorSignReqInfo) "text 'true' as '1'";
-  //variant (authorSignReqInfo) "text 'false' as '0'";
-};
-
-
-type ResourceWrapper Resource
-with {
-  variant "name as uncapitalized";
-  variant "element";
-};
-
-
-type record length(0 .. infinity) of XSD.AnyURI URIList //TODO Allow URIList to be empty as defined in PRO
-with {
-  variant "list";
-  variant "element";
-};
-
-
-type XSD.AnyURI URI
-with {
-  variant "element";
-};
-
-
-type AggregatedResponse_1 AggregatedResponse
-with {
-  variant "name as uncapitalized";
-  variant "element";
-};
-
-
-type ListOfChildResourceRef ResourceRefList
-with {
-  variant "name as uncapitalized";
-  variant "element";
-};
-
-
-type XSD.String DebugInfo
-with {
-  variant "name as uncapitalized";
-  variant "element";
-};
-
-
-type XSD.String QueryResult
-with {
-  variant "name as uncapitalized";
-  variant "element";
-};
-
-
-type record ResourceWrapper
-{
-//	union {
-//		Sg_resource_group sg_resource,
-//		Sg_regularResource_group sg_regularResource,
-//		Sg_announcedResource_group sg_announcedResource,
-//		Sg_announceableResource_group sg_announceableResource,
-//		Sg_subordinateResource_group sg_subordinateResource,
-//		Sg_announcedSubordinateResource_group sg_announcedSubordinateResource,
-//		Sg_announceableSubordinateResource_group sg_announceableSubordinateResource,
-//		Sg_mgmtResource_group sg_mgmtResource,
-//		Sg_announcedMgmtResource_group sg_announcedMgmtResource,
-//		Sg_flexContainerResource_group sg_flexContainerResource,
-//		Sg_announcedFlexContainerResource_group sg_announcedFlexContainerResource
-//	} 
-	Resource_2 choice,//TODO Use Resource_2 type instead 
-	XSD.AnyURI uRI
-}
-with {
-  variant "name as uncapitalized";
-  variant (choice) "untagged";
-  variant (uRI) "name as capitalized";
-};
-
-
-type record AggregatedResponse_1
-{
-	XSD.AnyURI resourceID optional,
-	record of ResponsePrimitive responsePrimitive_list
-}
-with {
-  variant "name as 'aggregatedResponse'";
-  variant (responsePrimitive_list) "untagged";
-  variant (responsePrimitive_list[-]) "name as 'responsePrimitive'";
-};
-
-
-type record ListOfChildResourceRef
-{
-	record length(1 .. infinity) of ChildResourceRef resourceRef_list
-}
-with {
-  variant "name as uncapitalized";
-  variant (resourceRef_list) "untagged";
-  variant (resourceRef_list[-]) "name as 'resourceRef'";
-};
-
-
-type record Role
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	RoleID roleID,
-	XSD.ID issuer,
-	XSD.ID holder,
-	Timestamp notBefore,
-	Timestamp notAfter,
-	XSD.String roleName optional,
-	XSD.AnyURI tokenLink optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record Schedule
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional,
-	ScheduleEntries scheduleElement,
-	XSD.Boolean networkCoordinated,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-  //variant (networkCoordinated) "text 'true' as '1'";
-  //variant (networkCoordinated) "text 'false' as '0'";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record ScheduleAnnc
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs,
-	Timestamp expirationTime,
-	XSD.AnyURI link,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ScheduleEntries scheduleElement optional,
-	XSD.Boolean networkCoordinated,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  //variant (networkCoordinated) "text 'true' as '1'";
-  //variant (networkCoordinated) "text 'false' as '0'";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record SemanticDescriptor
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional,
-	XSD.ID creator optional,
-	SemanticFormat descriptorRepresentation optional,
-	Sparql semanticOpExec optional,
-	XSD.Base64Binary descriptor,
-	XSD.AnyURI ontologyRef optional,
-	ListOfURIs relatedSemantics optional,
-	XSD.Boolean semanticValidated optional,
-	XSD.Boolean validationEnable optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-  //variant (semanticValidated) "text 'true' as '1'";
-  //variant (semanticValidated) "text 'false' as '0'";
-  //variant (validationEnable) "text 'true' as '1'";
-  //variant (validationEnable) "text 'false' as '0'";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record SemanticDescriptorAnnc
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs,
-	Timestamp expirationTime,
-	XSD.AnyURI link,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	SemanticFormat descriptorRepresentation optional,
-	Sparql semanticOpExec optional,
-	XSD.Base64Binary descriptor optional,
-	XSD.AnyURI ontologyRef optional,
-	ListOfURIs relatedSemantics optional,
-	XSD.Boolean semanticValidated optional,
-	XSD.Boolean validationEnable optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  //variant (semanticValidated) "text 'true' as '1'";
-  //variant (semanticValidated) "text 'false' as '0'";
-  //variant (validationEnable) "text 'true' as '1'";
-  //variant (validationEnable) "text 'false' as '0'";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record SemanticMashupInstance
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional,
-	XSD.NonNegativeInteger stateTag,
-	XSD.ID creator optional,
-	XSD.AnyURI smjpID,
-	XSD.Base64Binary smjpInputParameter,
-	MashupMemberStoreType memberStoreType,
-	MashupMembers mashupMember optional,
-	MashupResultGenType resultGenType,
-	XSD.Duration periodForResultGen optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription,
-			SemanticMashupResult semanticMashupResult,
-			SemanticDescriptor semanticDescriptor,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record SemanticMashupInstanceAnnc
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs,
-	Timestamp expirationTime,
-	XSD.AnyURI link,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	XSD.NonNegativeInteger stateTag optional,
-	XSD.AnyURI smjpID optional,
-	XSD.Base64Binary smjpInputParameter optional,
-	MashupMemberStoreType memberStoreType optional,
-	MashupMembers mashupMember optional,
-	MashupResultGenType resultGenType optional,
-	XSD.Duration periodForResultGen optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription,
-			SemanticMashupResult semanticMashupResult,
-			SemanticMashupResultAnnc semanticMashupResultAnnc,
-			SemanticDescriptor semanticDescriptor,
-			SemanticDescriptorAnnc semanticDescriptorAnnc,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record SemanticMashupJobProfile
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional,
-	XSD.NonNegativeInteger stateTag,
-	XSD.ID creator optional,
-	Sparql memberFilter,
-	ListOfURIs smiID optional,
-	XSD.Base64Binary inputDescriptor optional,
-	XSD.Base64Binary outputDescriptor,
-	XSD.Base64Binary functionDescriptor,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription,
-			SemanticMashupInstance semanticMashupInstance,
-			SemanticDescriptor semanticDescriptor,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record SemanticMashupJobProfileAnnc
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs,
-	Timestamp expirationTime,
-	XSD.AnyURI link,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	XSD.NonNegativeInteger stateTag optional,
-	Sparql memberFilter optional,
-	ListOfURIs smiID optional,
-	XSD.Base64Binary inputDescriptor optional,
-	XSD.Base64Binary outputDescriptor optional,
-	XSD.Base64Binary functionDescriptor optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription,
-			SemanticMashupInstance semanticMashupInstance,
-			SemanticMashupInstanceAnnc semanticMashupInstanceAnnc,
-			SemanticDescriptor semanticDescriptor,
-			SemanticDescriptorAnnc semanticDescriptorAnnc,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record SemanticMashupResult
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	XSD.NonNegativeInteger stateTag,
-	XSD.ID creator optional,
-	XSD.Base64Binary smjpInputParameter optional,
-	Serializations mashupResultFormat,
-	XSD.Base64Binary mashupResult,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription,
-			SemanticDescriptor semanticDescriptor,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record SemanticMashupResultAnnc
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	XSD.NonNegativeInteger stateTag optional,
-	XSD.Base64Binary smjpInputParameter optional,
-	Serializations mashupResultFormat optional,
-	XSD.Base64Binary mashupResult optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription,
-			SemanticDescriptor semanticDescriptor,
-			SemanticDescriptorAnnc semanticDescriptorAnnc,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record ServiceSubscribedAppRule
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfM2MID applicableCredIDs optional,
-	ListOfM2MID allowedApp_IDs optional,
-	ListOfM2MID allowedAEs optional,
-	record length(1 .. infinity) of RoleID allowedRole_IDs optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (allowedApp_IDs) "name as 'allowedApp-IDs'";
-  variant (allowedRole_IDs) "name as 'allowedRole-IDs'";
-  variant (allowedRole_IDs) "list";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record ServiceSubscribedNode
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	NodeID nodeID,
-	XSD.ID cSE_ID optional,
-	record of DeviceID deviceIdentifier optional,
-	ListOfURIs ruleLinks optional,
-	XSD.Boolean niddRequired optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (cSE_ID) "name as 'CSE-ID'";
-  variant (deviceIdentifier) "list";
-  //variant (niddRequired) "text 'true' as '1'";
-  //variant (niddRequired) "text 'false' as '0'";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record Software
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional,
-	MgmtDefinition mgmtDefinition,
-	ListOfURIs objectIDs optional,
-	ListOfURIs objectPaths optional,
-	XSD.String description optional,
-	XSD.AnyURI mgmtSchema optional,
-	XSD.String version,
-	XSD.String softwareName,
-	XSD.AnyURI uRL,
-	XSD.Boolean install,
-	XSD.Boolean uninstall,
-	ActionStatus installStatus,
-	XSD.Boolean activate_ optional,
-	XSD.Boolean deactivate_ optional,
-	ActionStatus activeStatus optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of Subscription subscription_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-  variant (uRL) "name as capitalized";
-  //variant (install) "text 'true' as '1'";
-  //variant (install) "text 'false' as '0'";
-  //variant (uninstall) "text 'true' as '1'";
-  //variant (uninstall) "text 'false' as '0'";
-  variant (activate_) "name as 'activate'";
-  //variant (activate_) "text 'true' as '1'";
-  //variant (activate_) "text 'false' as '0'";
-  variant (deactivate_) "name as 'deactivate'";
-  //variant (deactivate_) "text 'true' as '1'";
-  //variant (deactivate_) "text 'false' as '0'";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.subscription_list) "untagged";
-  variant (choice.subscription_list[-]) "name as 'subscription'";
-};
-
-
-type record SoftwareAnnc
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs,
-	Timestamp expirationTime,
-	XSD.AnyURI link,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	MgmtDefinition mgmtDefinition,
-	ListOfURIs objectIDs optional,
-	ListOfURIs objectPaths optional,
-	XSD.String description optional,
-	XSD.AnyURI mgmtSchema optional,
-	XSD.String version optional,
-	XSD.String softwareName optional,
-	XSD.AnyURI uRL optional,
-	XSD.Boolean install optional,
-	XSD.Boolean uninstall optional,
-	ActionStatus installStatus optional,
-	XSD.Boolean activate_ optional,
-	XSD.Boolean deactivate_ optional,
-	ActionStatus activeStatus optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of Subscription subscription_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (uRL) "name as capitalized";
-  //variant (install) "text 'true' as '1'";
-  //variant (install) "text 'false' as '0'";
-  //variant (uninstall) "text 'true' as '1'";
-  //variant (uninstall) "text 'false' as '0'";
-  variant (activate_) "name as 'activate'";
-  //variant (activate_) "text 'true' as '1'";
-  //variant (activate_) "text 'false' as '0'";
-  variant (deactivate_) "name as 'deactivate'";
-  //variant (deactivate_) "text 'true' as '1'";
-  //variant (deactivate_) "text 'false' as '0'";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.subscription_list) "untagged";
-  variant (choice.subscription_list[-]) "name as 'subscription'";
-};
-
-
-type record StatsCollect
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	XSD.ID creator optional,
-	XSD.String statsCollectID,
-	XSD.ID collectingEntityID,
-	ListOfM2MID collectedEntityID,
-	StatsRuleStatusType statsRuleStatus,
-	StatModelType statModel,
-	ScheduleEntries collectPeriod optional,
-	XSD.String eventID optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record StatsConfig
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	XSD.ID creator optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			EventConfig eventConfig,
-			Subscription subscription,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record Subscription
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	XSD.ID creator optional,
-	EventNotificationCriteria eventNotificationCriteria optional,
-	XSD.PositiveInteger expirationCounter optional,
-	ListOfURIs notificationURI,
-	XSD.AnyURI groupID optional,
-	XSD.AnyURI notificationForwardingURI optional,
-	BatchNotify batchNotify optional,
-	RateLimit rateLimit optional,
-	XSD.PositiveInteger preSubscriptionNotify optional,
-	PendingNotification pendingNotification optional,
-	XSD.PositiveInteger notificationStoragePriority optional,
-	XSD.Boolean latestNotify optional,
-	NotificationContentType notificationContentType,
-	EventCat notificationEventCat optional,
-	XSD.AnyURI subscriberURI optional,
-	ListOfURIs associatedCrossResourceSub optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Schedule schedule,
-			NotificationTargetMgmtPolicyRef notificationTargetMgmtPolicyRef,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  //variant (latestNotify) "text 'true' as '1'";
-  //variant (latestNotify) "text 'false' as '0'";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record BatchNotify
-{
-	XSD.NonNegativeInteger number optional,
-	XSD.Duration duration optional
-}
-with {
-  variant "name as uncapitalized";
-};
-
-
-type record RateLimit
-{
-	XSD.NonNegativeInteger maxNrOfNotify optional,
-	XSD.Duration timeWindow optional
-}
-with {
-  variant "name as uncapitalized";
-};
-
-
-type record SvcFwWrapper
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime optional,
-	Timestamp lastModifiedTime optional,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime optional,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	ListOfNCNames announcedAttribute optional,
-	XSD.NonNegativeInteger stateTag,
-	XSD.ID creator optional,
-	XSD.AnyURI containerDefinition,
-	XSD.AnyURI ontologyRef optional,
-	XSD.NonNegativeInteger contentSize,
-	XSD.AnyURI nodeLink optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record of union {
-			SemanticDescriptor semanticDescriptor,
-			Subscription subscription
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record SvcFwWrapperAnnc
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime optional,
-	Timestamp lastModifiedTime optional,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs,
-	Timestamp expirationTime optional,
-	XSD.AnyURI link,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	XSD.NonNegativeInteger stateTag optional,
-	XSD.AnyURI containerDefinition,
-	XSD.AnyURI ontologyRef optional,
-	XSD.NonNegativeInteger contentSize optional,
-	XSD.AnyURI nodeLink optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record of union {
-			SemanticDescriptor semanticDescriptor,
-			SemanticDescriptorAnnc semanticDescriptorAnnc,
-			Subscription subscription
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record SvcObjWrapper
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime optional,
-	Timestamp lastModifiedTime optional,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime optional,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	ListOfNCNames announcedAttribute optional,
-	XSD.NonNegativeInteger stateTag,
-	XSD.ID creator optional,
-	XSD.AnyURI containerDefinition,
-	XSD.AnyURI ontologyRef optional,
-	XSD.NonNegativeInteger contentSize,
-	XSD.AnyURI nodeLink optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record of union {
-			SemanticDescriptor semanticDescriptor,
-			Subscription subscription,
-			AllJoynApp allJoynApp
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record SvcObjWrapperAnnc
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime optional,
-	Timestamp lastModifiedTime optional,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs,
-	Timestamp expirationTime optional,
-	XSD.AnyURI link,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	XSD.NonNegativeInteger stateTag optional,
-	XSD.AnyURI containerDefinition,
-	XSD.AnyURI ontologyRef optional,
-	XSD.NonNegativeInteger contentSize optional,
-	XSD.AnyURI nodeLink optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record of union {
-			SemanticDescriptor semanticDescriptor,
-			SemanticDescriptorAnnc semanticDescriptorAnnc,
-			Subscription subscription,
-			AllJoynAppAnnc allJoynAppAnnc
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record TimeSeriesInstance
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	Timestamp expirationTime,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional,
-	AbsRelTimestamp dataGenerationTime,
-	XSD.AnySimpleType content,//FIXME Use AnySimpleType instead
-	XSD.NonNegativeInteger sequenceNr optional,
-	XSD.NonNegativeInteger contentSize,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Transaction transaction,
-			SemanticDescriptor semanticDescriptor
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record TimeSeriesInstanceAnnc
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	Timestamp expirationTime,
-	XSD.AnyURI link,
-	AbsRelTimestamp dataGenerationTime optional,
-	XSD.AnySimpleType content optional,//FIXME Use AnySimpleType instead
-	XSD.NonNegativeInteger sequenceNr optional,
-	XSD.NonNegativeInteger contentSize optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Transaction transaction,
-			SemanticDescriptor semanticDescriptor
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record TimeSeries
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ListOfURIs announceTo optional,
-	record length(1 .. infinity) of XSD.NCName announcedAttribute optional,
-	XSD.ID creator optional,//TODO XSD to be changed to make it optional
-	XSD.NonNegativeInteger maxNrOfInstances optional,
-	XSD.NonNegativeInteger maxByteSize optional,
-	XSD.NonNegativeInteger maxInstanceAge optional,
-	XSD.NonNegativeInteger currentNrOfInstances,
-	XSD.NonNegativeInteger currentByteSize,
-	XSD.PositiveInteger periodicInterval optional,
-	XSD.Boolean missingDataDetect optional,
-	XSD.PositiveInteger missingDataMaxNr optional,
-	MissingDataList missingDataList optional,
-	XSD.NonNegativeInteger missingDataCurrentNr optional,
-	XSD.PositiveInteger missingDataDetectTimer optional,
-	XSD.AnyURI ontologyRef optional,
-	ContentInfo contentInfo optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			TimeSeriesInstance timeSeriesInstance,
-			Subscription subscription,
-			SemanticDescriptor semanticDescriptor,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (announcedAttribute) "list";
-  //variant (missingDataDetect) "text 'true' as '1'";
-  //variant (missingDataDetect) "text 'false' as '0'";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record TimeSeriesAnnc
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs,
-	Timestamp expirationTime,
-	XSD.AnyURI link,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	XSD.NonNegativeInteger maxNrOfInstances optional,
-	XSD.NonNegativeInteger maxByteSize optional,
-	XSD.NonNegativeInteger maxInstanceAge optional,
-	XSD.NonNegativeInteger currentNrOfInstances,
-	XSD.NonNegativeInteger currentByteSize,
-	XSD.PositiveInteger periodicInterval optional,
-	XSD.PositiveInteger missingDataMaxNr optional,
-	MissingDataList missingDataList optional,
-	XSD.NonNegativeInteger missingDataCurrentNr optional,
-	XSD.PositiveInteger missingDataDetectTimer optional,
-	XSD.AnyURI ontologyRef optional,
-	ContentInfo contentInfo optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			TimeSeriesInstance timeSeriesInstance,
-			TimeSeriesInstanceAnnc timeSeriesInstanceAnnc,
-			Subscription subscription,
-			SemanticDescriptor semanticDescriptor,
-			SemanticDescriptorAnnc semanticDescriptorAnnc,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record Token
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	TokenID tokenID,
-	DynAuthJWT tokenObject,
-	XSD.String version optional,
-	XSD.ID issuer optional,
-	XSD.ID holder optional,
-	Timestamp notBefore,
-	Timestamp notAfter optional,
-	XSD.String tokenName optional,
-	ListOfM2MID audience optional,
-	TokenPermissions permissions optional,
-	XSD.String extension_ optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (extension_) "name as 'extension'";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record TransactionMgmt
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	XSD.ID creator optional,
-	Timestamp transactionLockTime optional,
-	Timestamp transactionExecuteTime optional,
-	Timestamp transactionCommitTime optional,
-	Timestamp transactionExpirationTime optional,
-	TransactionMode transactionMode optional,
-	TransactionLockType transactionLockType optional,
-	TransactionControl transactionControl optional,
-	TransactionState transactionState,
-	XSD.NonNegativeInteger transactionMaxRetries optional,
-	TransactionMgmtHandling transactionMgmtHandling optional,
-	AggregatedRequest requestPrimitives,
-	AggregatedResponse responsePrimitives,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record Transaction
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	XSD.ID creator optional,
-	XSD.String transactionID,
-	TransactionControl transactionControl,
-	TransactionState transactionState,
-	Timestamp transactionLockTime optional,
-	Timestamp transactionExecuteTime optional,
-	Timestamp transactionCommitTime optional,
-	TransactionLockType transactionLockType optional,
-	RequestPrimitive requestPrimitive,
-	ResponsePrimitive responsePrimitive,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-
-type record TriggerPayload
-{
-	TriggerPurpose triggerPurpose,
-	XSD.AnyURI triggerInfoAddress optional,
-	PoaList triggerInfoPoA optional,
-	Operation triggerInfoOperation optional,
-	ResourceType targetedResourceType optional,
-	XSD.ID triggerInfoAE_ID optional,
-	record length(1 .. infinity) of SerializationType triggerInfoSerializationTypes optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (triggerInfoAE_ID) "name as 'triggerInfoAE-ID'";
-  variant (triggerInfoSerializationTypes) "list";
-};
-
-
-type record TriggerRequest
-{
-	ResourceName resourceName,
-	ResourceType resourceType,
-	XSD.ID resourceID,
-	NhURI parentID,
-	Timestamp creationTime,
-	Timestamp lastModifiedTime,
-	Labels labels optional,
-	AcpType accessControlPolicyIDs optional,
-	Timestamp expirationTime,
-	ListOfURIs dynamicAuthorizationConsultationIDs optional,
-	ExternalID m2M_Ext_ID,
-	TriggerRecipientID trigger_Recipient_ID,
-	TriggerPurpose triggerPurpose,
-	TriggerStatus triggerStatus,
-	XSD.Duration triggerValidityTime optional,
-	XSD.ID triggerInfoAE_ID optional,
-	XSD.AnyURI triggerInfoAddress optional,
-	Operation triggerInfoOperation optional,
-	ResourceType targetedResourceType optional,
-	XSD.String triggerReference optional,
-	union {
-		record length(1 .. infinity) of ChildResourceRef childResource_list,
-		record length(1 .. infinity) of union {
-			Subscription subscription,
-			Transaction transaction
-		} choice_list
-	} choice optional
-}
-with {
-  variant "name as uncapitalized";
-  variant "element";
-  variant (resourceName) "attribute";
-  variant (m2M_Ext_ID) "name as 'M2M-Ext-ID'";
-  variant (trigger_Recipient_ID) "name as 'Trigger-Recipient-ID'";
-  variant (triggerInfoAE_ID) "name as 'triggerInfoAE-ID'";
-  variant (choice) "untagged";
-  variant (choice.childResource_list) "untagged";
-  variant (choice.childResource_list[-]) "name as 'childResource'";
-  variant (choice.choice_list) "untagged";
-  variant (choice.choice_list[-]) "untagged";
-};
-
-	}
-	with {
-  encode "XML";
-  //variant "namespace as 'http://www.onem2m.org/xml/protocols' prefix 'm2m'";
-  //variant "controlNamespace 'http://www.w3.org/2001/XMLSchema-instance' prefix 'xsi'";
-	extension "anytype Resource, URI, Notification, AggregatedNotification, AggregatedResponse, ServiceSubscribedAppRule_optional, charstring, AnyURI, AttributeList, AE, AccessControlPolicy, AccessControlPolicy_optional, AccessControlPolicyAnnc_optional, ACP_update_invalid, AE_optional, AE_update_invalid,AEAnnc_optional, Container_optional, ContainerAnnc_optional, ContentInstanceAnnc_optional, CSEBase_optional, Container_update_invalid, ContentInstance_optional, Group_optional, Group_update_invalid,  GroupAnnc_optional, LocationPolicyAnnc_optional, MgmtResource_optional, AnnouncedMgmtResource_optional, Node_optional, NodeAnnc_optional, Schedule_optional, ScheduleAnnc_optional,  Schedule_update_invalid, Subscription_optional, Subscription_update_invalid, PollingChannel_optional, PollingChannel_update_invalid, LocationPolicy_optional, LocationPolicy_update_invalid, SemanticDescriptor_optional, FlexContainerResource_optional, GenericInterworkingOperationInstance_optional"
-}
diff --git a/LibOneM2M/OneM2M_TypesAndValues.ttcn b/LibOneM2M/OneM2M_TypesAndValues.ttcn
index 186db965b0c9fc665fbbfe7dc956d8a3e398b967..3aa24eaebf17ea847c1e83e8d67c41cb80746714 100644
--- a/LibOneM2M/OneM2M_TypesAndValues.ttcn
+++ b/LibOneM2M/OneM2M_TypesAndValues.ttcn
@@ -4100,13 +4100,17 @@ group OtherTypes {
 		e_cf03,
 		e_cf04,
 		e_cf06,
-		e_cf06DasSimuMaster
+		e_cf06DasSimuMaster,
+		e_cf07,
+		e_cf07OSSimuMaster
 	};
 	
 	type enumerated TestSystemRole {
 		e_cse,
 		e_ae,
-		e_das
+		e_ae_ipe,
+		e_das,
+		e_os
 	};
 		
 	type NhURI ParentID;
@@ -4330,7 +4334,8 @@ group OtherTypes {
 		charstring       tsAddress,
 		integer          remotePort optional,
 		integer          localPort optional,
-		charstring       sutAddress
+		charstring       sutAddress,
+		boolean          useTls
 	}
     
 	/**
@@ -4359,8 +4364,8 @@ group OtherTypes {
 	type record MqttBindingDesc {
 		ProtocolBindings bindingProtocol (e_mqtt),
 		BindingDesc      bindingDesc,
-		XSD.ID       	 originator,
-		XSD.ID		     receiver
+		XSD.ID       	 originator optional,
+		XSD.ID		     receiver optional
 	}
     
 	/**
@@ -4394,7 +4399,7 @@ group OtherTypes {
 	 * @member requestId    
 	 * @member url     Test System IP address
 	 */
-	type record UtDesc {
+	type record UrlDesc {
 		charstring url
 	}
     
diff --git a/LibOneM2M/UsefulTtcn3Types.ttcn b/LibOneM2M/UsefulTtcn3Types.ttcn
deleted file mode 100644
index fa8761c7851e99daea9c321872379b0b3b37ca4c..0000000000000000000000000000000000000000
--- a/LibOneM2M/UsefulTtcn3Types.ttcn
+++ /dev/null
@@ -1,86 +0,0 @@
-/**
- *  Copyright Notification
- *  No part of this document may be reproduced, in an electronic retrieval system or otherwise, except as authorized by written permission.
- *  The copyright and the foregoing restriction extend to reproduction in all media.
- *  © 2016, oneM2M Partners Type 1 (ARIB, ATIS, CCSA, ETSI, TIA, TSDSI, TTA, TTC).
- *  All rights reserved.
- *  
- *  @author     oneM2M/ETSI
- *  @desc       Useful types
- *
- */
-module UsefulTtcn3Types {
-
-
-    type integer byte (-128 .. 127) with { variant "/* 8 bit */" };
-
-    type integer unsignedbyte (0 .. 255) with { variant "/*unsigned 8 bit*/" };
-
-    type integer short (-32768 .. 32767) with { variant "/*16 bit*/" };
-
-    type integer unsignedshort (0 .. 65535) with { variant "/*unsigned 16 bit*/" };
-
-    type integer long (-2147483648 .. 2147483647) with { variant "/*32 bit*/" };
-
-    type integer unsignedlong (0 .. 4294967295) with { variant "/*unsigned 32 bit*/" };
-
-    type integer longlong /* (  -9223372036854775808 .. 9223372036854775807 ) */ with { variant "/*64 bit*/" };
-
-    type integer unsignedlonglong /* ( 0 .. 18446744073709551615 ) */ with { variant "/*unsigned 64 bit*/" };
-
-    type float IEEE754float with { variant "/*IEEE754 float*/" };
-
-    type float IEEE754double with { variant "/*IEEE754 double*/" };
-
-    type float IEEE754extfloat with { variant "/*IEEE754 extended float*/" };
-
-    type float IEEE754extdouble with { variant "/*IEEE754 extended double*/" };
-
-    type universal charstring utf8string with { variant "/*UTF-8*/" };
-
-    type universal charstring bmpstring ( char ( 0,0,0,0 ) .. char ( 0,0,255,255) ) with { variant "/*UCS-2*/" };
-
-    type universal charstring utf16string ( char ( 0,0,0,0 ) .. char ( 0,16,255,255) ) with { variant "/*UTF-16*/" };
-
-    type universal charstring iso8859string ( char ( 0,0,0,0 ) .. char ( 0,0,0,255) ) with { variant "/*8 bit*/" };
-
-    type record IDLfixed
-    {
-    	unsignedshort digits,
-    	short scale,
-    	charstring value_
-    }
-    with {
-    variant "/*IDL:fixed FORMAL/01-12-01 v.2.6*/";
-    };
-
-    /*
-    type charstring char length (1);
-
-    NOTE 1: The name of this useful type is the same as the TTCN-3 keyword used to denote universal
-    charstring values in the quadraple form. In general it is disallowed to use TTCN-3 keywords as
-    identifiers. The "char" useful type is a solitary exception and allowed only for backward compatibility
-    with previous versions of the TTCN-3 standard. (except Titan doesn't)
-
-    NOTE 2: The special string "8 bit" defined in clause 28.2.3 may be used with this type to specify a given encoding
-    for its values. Also, other properties of the base type can be changed by using attribute mechanisms.
-    */
-
-    type universal charstring uchar length (1);
-
-    /*
-    NOTE: Special strings defined in clause 28.2.3 except "8 bit" may be used with this type to specify a given
-    encoding for its values. Also, other properties of the base type can be changed by using attribute
-    mechanisms.
-    */
-
-    type bitstring bit length (1);
-
-    type hexstring hex length (1);
-
-    type octetstring octet length (1);
-
-}
-with {
-encode "XML";
-}
diff --git a/LibOneM2M/XSD.ttcn b/LibOneM2M/XSD.ttcn
deleted file mode 100644
index b93b30120e7d6eca966b53583d968535479b5291..0000000000000000000000000000000000000000
--- a/LibOneM2M/XSD.ttcn
+++ /dev/null
@@ -1,328 +0,0 @@
-/**
- *  Copyright Notification
- *  No part of this document may be reproduced, in an electronic retrieval system or otherwise, except as authorized by written permission.
- *  The copyright and the foregoing restriction extend to reproduction in all media.
- *  © 2016, oneM2M Partners Type 1 (ARIB, ATIS, CCSA, ETSI, TIA, TSDSI, TTA, TTC).
- *  All rights reserved.
- *  
- *  @author     oneM2M/ETSI
- *  @desc       XSD Aux
- *
- */
-module XSD {
-
-import from UsefulTtcn3Types all;
-
-//These constants are used in the XSD date/time type definitions
-const charstring
-  dash := "-",
-  cln  := ":",
-  year := "[0-9]#4",
-  yearExpansion := "(-([1-9][0-9]#(0,))#(,1))#(,1)",
-  month := "(0[1-9]|1[0-2])",
-  dayOfMonth := "(0[1-9]|[12][0-9]|3[01])",
-  hour := "([01][0-9]|2[0-3])",
-  minute := "([0-5][0-9])",
-  second := "([0-5][0-9])",
-  sFraction := "(.[0-9]#(1,))#(,1)",
-  endOfDayExt := "24:00:00(.0#(1,))#(,1)",
-  nums := "[0-9]#(1,)",
-  ZorTimeZoneExt := "(Z|[+-]((0[0-9]|1[0-3]):[0-5][0-9]|14:00))#(,1)",
-  durTime := "(T[0-9]#(1,)"&
-             "(H([0-9]#(1,)(M([0-9]#(1,)(S|.[0-9]#(1,)S))#(,1)|.[0-9]#(1,)S|S))#(,1)|"&
-             "M([0-9]#(1,)(S|.[0-9]#(1,)S)|.[0-9]#(1,)M)#(,1)|"&
-             "S|"&
-             ".[0-9]#(1,)S))";
-
-//anySimpleType
-
-type XMLCompatibleString AnySimpleType
-with {
-variant "XSD:anySimpleType";
-};
-
-//anyType;
-
-type record AnyType
-{
-	record of String embed_values optional,
-	record of String attr optional,
-	record of String elem_list
-}
-with {
-variant "XSD:anyType";
-//variant "embedValues";
-//variant (attr) "anyAttributes";
-//variant (elem_list) "anyElement";
-};
-// String types
-
-type XMLCompatibleString String
-with {
-variant "XSD:string";
-};
-
-type XMLStringWithNoCRLFHT NormalizedString
-with {
-variant "XSD:normalizedString";
-};
-
-type NormalizedString Token
-with {
-variant "XSD:token";
-};
-
-type XMLStringWithNoWhitespace Name
-with {
-variant "XSD:Name";
-};
-
-type XMLStringWithNoWhitespace NMTOKEN
-with {
-variant "XSD:NMTOKEN";
-};
-
-type Name NCName
-with {
-variant "XSD:NCName";
-};
-
-type NCName ID
-with {
-variant "XSD:ID";
-};
-
-type NCName IDREF
-with {
-variant "XSD:IDREF";
-};
-
-type NCName ENTITY
-with {
-variant "XSD:ENTITY";
-};
-
-type octetstring HexBinary
-with {
-variant "XSD:hexBinary";
-};
-
-type octetstring Base64Binary
-with {
-variant "XSD:base64Binary";
-};
-
-type XMLStringWithNoCRLFHT AnyURI
-with {
-variant "XSD:anyURI";
-};
-
-type charstring Language (pattern "[a-zA-Z]#(1,8)(-\w#(1,8))#(0,)")
-with {
-variant "XSD:language";
-};
-// Integer types
-
-type integer Integer
-with {
-variant "XSD:integer";
-};
-
-type integer PositiveInteger (1 .. infinity)
-with {
-variant "XSD:positiveInteger";
-};
-
-type integer NonPositiveInteger (-infinity .. 0)
-with {
-variant "XSD:nonPositiveInteger";
-};
-
-type integer NegativeInteger (-infinity .. -1)
-with {
-variant "XSD:negativeInteger";
-};
-
-type integer NonNegativeInteger (0 .. infinity)
-with {
-variant "XSD:nonNegativeInteger";
-};
-
-type longlong Long
-with {
-variant "XSD:long";
-};
-
-type unsignedlonglong UnsignedLong
-with {
-variant "XSD:unsignedLong";
-};
-
-type long Int
-with {
-variant "XSD:int";
-};
-
-type unsignedlong UnsignedInt
-with {
-variant "XSD:unsignedInt";
-};
-
-type short Short
-with {
-variant "XSD:short";
-};
-
-type unsignedshort UnsignedShort
-with {
-variant "XSD:unsignedShort";
-};
-
-type byte Byte
-with {
-variant "XSD:byte";
-};
-
-type unsignedbyte UnsignedByte
-with {
-variant "XSD:unsignedByte";
-};
-
-// Float types
-
-type float Decimal
-with {
-variant "XSD:decimal";
-};
-
-type IEEE754float Float
-with {
-variant "XSD:float";
-};
-
-type IEEE754double Double
-with {
-variant "XSD:double";
-};
-
-// Time types
-
-type charstring Duration (pattern
-  "{dash}#(,1)P({nums}(Y({nums}(M({nums}D{durTime}#(,1)|{durTime}#(,1))|D{durTime}#(,1))|" &
-  "{durTime}#(,1))|M({nums}D{durTime}#(,1)|{durTime}#(,1))|D{durTime}#(,1))|{durTime})")
-with {
-variant "XSD:duration";
-};
-
-type charstring DateTime (pattern
-  "{yearExpansion}{year}{dash}{month}{dash}{dayOfMonth}T({hour}{cln}{minute}{cln}{second}" &
- "{sFraction}|{endOfDayExt}){ZorTimeZoneExt}" )
-with {
-variant "XSD:dateTime";
-};
-
-type charstring Time (pattern
-  "({hour}{cln}{minute}{cln}{second}{sFraction}|{endOfDayExt}){ZorTimeZoneExt}" )
-with {
-variant "XSD:time";
-};
-
-type charstring Date (pattern
-  "{yearExpansion}{year}{dash}{month}{dash}{dayOfMonth}{ZorTimeZoneExt}" )
-with {
-variant "XSD:date";
-};
-
-type charstring GYearMonth (pattern
-  "{yearExpansion}{year}{dash}{month}{ZorTimeZoneExt}" )
-with {
-variant "XSD:gYearMonth";
-};
-
-type charstring GYear (pattern
-  "{yearExpansion}{year}{ZorTimeZoneExt}" )
-with {
-variant "XSD:gYear";
-};
-
-type charstring GMonthDay (pattern
- "{dash}{dash}{month}{dash}{dayOfMonth}{ZorTimeZoneExt}" )
-with {
-variant "XSD:gMonthDay";
-};
-
-type charstring GDay (pattern
-  "{dash}{dash}{dash}{dayOfMonth}{ZorTimeZoneExt}" )
-with {
-variant "XSD:gDay";
-};
-
-type charstring GMonth (pattern
-  "{dash}{dash}{month}{ZorTimeZoneExt}" )
-with {
-variant "XSD:gMonth";
-};
-
-// Sequence types
-
-type record of NMTOKEN NMTOKENS
-with {
-variant "XSD:NMTOKENS";
-};
-
-type record of IDREF IDREFS
-with {
-variant "XSD:IDREFS";
-};
-
-type record of ENTITY ENTITIES
-with {
-variant "XSD:ENTITIES";
-};
-
-type record QName
-{
-	AnyURI uri  optional,
-	NCName name
-}
-with {
-variant "XSD:QName";
-};
-
-// Boolean type
-
-type boolean Boolean
-with {
-variant "XSD:boolean";
-};
-
-//TTCN-3 type definitions supporting the mapping of W3C XML Schema built-in datatypes
-
-type utf8string XMLCompatibleString
-(
-	char(0,0,0,9)..char(0,0,0,9),
-	char(0,0,0,10)..char(0,0,0,10),
-	char(0,0,0,13)..char(0,0,0,13),
-  	char(0,0,0,32)..char(0,0,215,255),
-  	char(0,0,224,0)..char(0,0,255,253),
-  	char(0,1,0,0)..char(0,16,255,253)
-);
-
-type utf8string XMLStringWithNoWhitespace
-(
-	char(0,0,0,33)..char(0,0,215,255),
-  	char(0,0,224,0)..char(0,0,255,253),
-  	char(0,1,0,0)..char(0,16,255,253)
-);
-
-type utf8string XMLStringWithNoCRLFHT
-(
-	char(0,0,0,32)..char(0,0,215,255),
- 	char(0,0,224,0)..char(0,0,255,253),
-  	char(0,1,0,0)..char(0,16,255,253)
-);
-
-}
-with{
-encode "XML"
-}
diff --git a/OneM2M_PermutationFunctions.ttcn b/OneM2M_PermutationFunctions.ttcn
index a9a8bdd4d6444494a28f2fe6d8498d8926eab7b0..55f249009b4c694dd3f3475de86dda84f55e3b09 100644
--- a/OneM2M_PermutationFunctions.ttcn
+++ b/OneM2M_PermutationFunctions.ttcn
@@ -727,6 +727,346 @@ module OneM2M_PermutationFunctions {
 
 		}//end SUB subgroup
 
+		group Onthology_Based_Interworking {
+			
+			group Registration {
+				
+				function f_AE_OBI_REG_001() runs on CseSimu {
+					var template UtTriggerPrimitive v_utRequest := m_utCreateAe;
+					var template RequestPrimitive v_requestPrimitive := mw_createAe;
+					var universal charstring v_action :=  __SCOPE__ & ": Please, start AE-IPE device";
+					//primitives for mcaPortIn
+					var MsgIn v_request;
+					var integer v_parentIndex := -1;
+					var integer v_resourceIndex := -1;
+					var PrimitiveContent v_resource;
+					var ResponsePrimitive v_responsePrimitive;
+					
+					// Test control
+					if (not(PICS_AE_IPE)) {
+						setverdict(inconc, "PICS_AE_IPE shall be set");
+						return;
+					}
+		
+					f_cf07Up();
+		
+					//Send Trigger Message
+					v_utRequest.requestPrimitive.primitiveContent.aE.resourceName := "UNINITIALIZED";
+					v_requestPrimitive.primitiveContent.aE.resourceName := complement("UNINITIALIZED");
+					v_utRequest.requestPrimitive.to_ := f_getLocalResourceAddress(-, -, -);
+					f_ae_sendUtPrimitive(v_utRequest, v_action & f_getLocalResourceAddress(-, -, -));
+		
+					//Test behavior
+					tc_ac.start;
+					alt {
+					  [] mcaPortIn.receive(mw_request(mw_createAe)) -> value v_request {
+						tc_ac.stop;
+							setverdict(pass, __SCOPE__ & " : AE-IPE registration request is accepted!!");
+							v_resourceIndex := f_processCreateRequestPrimitive(v_request.primitive.requestPrimitive);  
+							
+							//send back responsePrimitive
+							f_send(e_mcaPortIn, m_response(vc_response.primitive.responsePrimitive));
+					  }
+					  [] tc_ac.timeout{
+							setverdict(fail, __SCOPE__ & " : Timeout due to no response received from requested SUT!");
+					  }
+					}
+					// Postamble
+					f_cf07Down();
+				}
+				
+			}
+			
+			group Initialization {
+				
+				function f_AE_OBI_INI_001() runs on CseSimu {
+					var template UtTriggerPrimitive v_utRequest := m_utCreateAe;
+					var template RequestPrimitive v_requestPrimitive := mw_createAe;
+					var universal charstring v_action :=  __SCOPE__ & ": Please, start AE-IPE device";
+					
+					// Test control
+					if (not(PICS_AE_IPE) or (not(PICS_TS_ONTOLOGY_SERVER))) {
+						setverdict(inconc, "PICS_AE_IPE and PICS_TS_ONTOLOGY_SERVER shall be set");
+						return;
+					}
+				
+					f_cf07Up();
+					
+					//Send Trigger Message
+					v_utRequest.requestPrimitive.to_ := f_getLocalResourceAddress(-, -, -);
+					v_utRequest.requestPrimitive.primitiveContent.aE.resourceName := "UNINITIALIZED";
+					f_ae_sendUtPrimitive(v_utRequest,v_action & f_getLocalResourceAddress(-, -, -));
+					
+					//Test behavior
+					tc_ac.start;
+					alt {
+						[] mcaPortIn.receive(mw_request(mw_retrieveFormalOntology(v_utRequest.requestPrimitive.to_, v_utRequest.requestPrimitive.from_, PICS_OBI_URI))) -> value vc_request {
+							tc_ac.stop;
+							// Retrieve the formal description of the ontology
+							f_prepare_formal_description_ontology(vc_request.primitive.requestPrimitive);
+							// And send it to the IUT
+							mcaPortIn.send(m_response(vc_response.primitive.responsePrimitive));
+							
+							// And the final verdict
+							setverdict(pass, __SCOPE__ & "SUT requests at least one of the formal description of the ontology required by none-oneM2M devices");
+						}
+						[] mcaPortIn.receive { // Any other message is unexpected
+							
+							tc_ac.stop;
+							// Send error
+							f_prepare_formal_description_ontology(vc_request.primitive.requestPrimitive, int4000);
+							mcaPortIn.send(m_response(vc_request.primitive.responsePrimitive));
+							setverdict(fail, __SCOPE__ & " : Unexpected Retrieve message received from requested SUT!");
+						}
+						[] tc_ac.timeout{
+							setverdict(fail, __SCOPE__ & " : Timeout due to no response received from requested SUT!");
+						}
+					}
+					
+					// Postamble
+					f_cf07Down();
+				}
+				
+				function f_prepare_formal_description_ontology(in RequestPrimitive p_request, in ResponseStatusCode p_responseStatusCode := int2000) runs on CseSimu {
+					vc_response.primitive.responsePrimitive := valueof(m_responsePrimitive(p_responseStatusCode, p_request.requestIdentifier));
+					if(p_responseStatusCode == int2000) {
+						var charstring v_ontology := fx_retrieve_formal_ontology(p_request.primitiveContent.flexContainer.ontologyRef);
+						// FIXME How to return the formal ontoilogu, this is an OWL file in string foramt
+						//vc_response.primitive.responsePrimitive.primitiveContent := ???;
+					}
+					
+					vc_response.primitive.responsePrimitive.from_ := PX_TS_CSE1.cseId;
+					vc_response.primitive.responsePrimitive.to_ := p_request.from_;
+				}
+				
+			}
+			
+			group Discovery {
+				
+				function f_await_ipe_registration(
+				                                  template UtTriggerPrimitive p_utRequest, 
+				                                  in universal charstring p_action,
+				                                  template RequestPrimitive p_request := mw_create, 
+				                                  in ResponseStatusCode p_responseStatusCode := int2001
+				                                  ) runs on CseSimu return integer {
+					var integer v_localResourceIndex := -1;
+					
+					//Send Trigger Message
+					p_utRequest.requestPrimitive.to_ := f_getLocalResourceAddress(-, -, -);
+					p_request.to_ := p_utRequest.requestPrimitive.to_;
+					f_ae_sendUtPrimitive(p_utRequest,p_action & f_getLocalResourceAddress(-, -, -));
+					
+					tc_ac.start;
+					alt {
+					  [] mcaPortIn.receive(mw_request(p_request)) -> value vc_request {
+							tc_ac.stop;
+							v_localResourceIndex := f_processCreateRequestPrimitive(vc_request.primitive.requestPrimitive, p_responseStatusCode);
+							f_send(e_mcaPortIn, m_response(vc_response.primitive.responsePrimitive));
+					  }
+					  [] tc_ac.timeout{
+							setverdict(inconc, __SCOPE__&":INFO: No creation for resource received");
+						}
+					}
+					
+					return v_localResourceIndex;
+				}
+				
+				function f_AE_OBI_DIS_001() runs on CseSimu {
+					var template UtTriggerPrimitive v_utRequest := m_utCreateAe;
+					var template RequestPrimitive v_requestPrimitive := mw_createAe;
+					var universal charstring v_action :=  __SCOPE__ & ": Please, start AE-IPE device";
+					
+					// Test control
+					if (not(PICS_AE_IPE) or not(PICS_AE_IPE_DISCOVERY)) {
+					  setverdict(inconc, "PICS_AE_IPE and PICS_AE_IPE_DISCOVERY shall be set");
+					  return;
+					}
+					
+					f_cf07Up();
+					
+					// Preamble
+					// Await for AE-IPE registration
+					v_utRequest.requestPrimitive.primitiveContent.aE.resourceName := "UNINITIALIZED";
+					v_requestPrimitive.primitiveContent.aE.resourceName := complement("UNINITIALIZED");
+					f_await_ipe_registration(v_utRequest, v_action);
+					// Give time to the AE-IPE to achieve the initial discovery
+					f_sleepIgnoreDef(5.0);
+					
+					// Test body
+					// Request for a non-oneM2M device description
+					f_send(e_mcaPortIn, m_request(m_retrieve(vc_request.primitive.requestPrimitive.from_, vc_request.primitive.requestPrimitive.to_)));
+					tc_ac.start;
+					alt {
+						[] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) {
+							tc_ac.stop;
+							setverdict(pass,__SCOPE__&":INFO: AE-IPE initial discovery successfuly done");
+						}
+						[] tc_ac.timeout {
+							setverdict(fail, __SCOPE__ & " : Timeout due to no required request received from SUT");
+						}
+					}
+					
+				}
+				
+				function f_AE_OBI_DIS_002() runs on CseSimu {
+					var template UtTriggerPrimitive v_utRequest := m_utCreateAe;
+					var template RequestPrimitive v_requestPrimitive := mw_createAe;
+					var universal charstring v_action :=  __SCOPE__ & ": Please, switch on a new none-oneM2M device";
+					
+					// Test control
+					if (not(PICS_AE_IPE) or not(PICS_AE_IPE_DISCOVERY)) {
+					  setverdict(inconc, "PICS_AE_IPE and PICS_AE_IPE_DISCOVERY shall be set");
+					  return;
+					}
+					
+					f_cf07Up();
+					
+					// Preamble
+					// Await for AE-IPE registration
+					v_utRequest.requestPrimitive.primitiveContent.aE.resourceName := "UNINITIALIZED";
+					v_requestPrimitive.primitiveContent.aE.resourceName := complement("UNINITIALIZED");
+					f_await_ipe_registration(v_utRequest, v_action);
+					// Give time to the AE-IPE to achieve the discovery of the new device
+					f_sleepIgnoreDef(5.0);
+					
+					// Test body
+					// Request for a non-oneM2M device description
+					f_send(e_mcaPortIn, m_request(m_retrieve(vc_request.primitive.requestPrimitive.from_, vc_request.primitive.requestPrimitive.to_)));
+					tc_ac.start;
+					alt {
+						[] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) {
+							tc_ac.stop;
+							setverdict(pass,__SCOPE__&":INFO: AE-IP successfuly discovered new device");
+						}
+						[] tc_ac.timeout {
+							setverdict(fail, __SCOPE__ & " : Timeout due to no required request received from SUT");
+						}
+					}
+					
+				}
+				
+				function f_AE_OBI_DIS_003() runs on CseSimu {
+					var template UtTriggerPrimitive v_utRequest := m_utCreateAe;
+					var template RequestPrimitive v_requestPrimitive := mw_createAe;
+					var universal charstring v_action :=  __SCOPE__ & ": Please, switch off the new none-oneM2M device";
+					
+					// Test control
+					if (not(PICS_AE_IPE) or not(PICS_AE_IPE_DISCOVERY)) {
+					  setverdict(inconc, "PICS_AE_IPE and PICS_AE_IPE_DISCOVERY shall be set");
+					  return;
+					}
+					
+					f_cf07Up();
+					
+					// Preamble
+					// Await for AE-IPE registration
+					v_utRequest.requestPrimitive.primitiveContent.aE.resourceName := "UNINITIALIZED";
+					v_requestPrimitive.primitiveContent.aE.resourceName := complement("UNINITIALIZED");
+					f_await_ipe_registration(v_utRequest, v_action);
+					// Give time to the AE-IPE to achieve the discovery of the new device
+					f_sleepIgnoreDef(5.0);
+					
+					// Test body
+					// Request for a non-oneM2M device description
+					f_send(e_mcaPortIn, m_request(m_retrieve(vc_request.primitive.requestPrimitive.from_, vc_request.primitive.requestPrimitive.to_)));
+					tc_ac.start;
+					alt {
+						[] mcaPort.receive(mw_response(mw_responsePrimitive(int4004))) {
+							tc_ac.stop;
+							setverdict(pass,__SCOPE__&":INFO: AE-IP successfuly discovered switched off device");
+						}
+						[] tc_ac.timeout {
+							setverdict(fail, __SCOPE__ & " : Timeout due to no required request received from SUT");
+						}
+					}
+					
+				}
+				
+				function f_AE_OBI_DIS_004() runs on CseSimu {
+					var template UtTriggerPrimitive v_utRequest := m_utCreateAe;
+					var template RequestPrimitive v_requestPrimitive := mw_createAe;
+					var universal charstring v_action :=  __SCOPE__ & ": Please, start AE-IPE device";
+					var RequestPrimitive v_request;
+					
+					// Test control
+					if (not(PICS_AE_IPE) or not(PICS_AE_IPE_DISCOVERY)) {
+					  setverdict(inconc, "PICS_AE_IPE and PICS_AE_IPE_DISCOVERY shall be set");
+					  return;
+					}
+					
+					f_cf07Up();
+					
+					// Preamble
+					// Await for AE-IPE registration
+					v_utRequest.requestPrimitive.primitiveContent.aE.resourceName := "UNINITIALIZED";
+					v_requestPrimitive.primitiveContent.aE.resourceName := complement("UNINITIALIZED");
+					f_await_ipe_registration(v_utRequest, v_action);
+					// Give time to the AE-IPE to achieve the discovery of the new device
+					f_sleepIgnoreDef(5.0);
+					
+					// Test body
+					v_request := valueof(m_retrieveFilterUsageOption(vc_request.primitive.requestPrimitive.from_, vc_request.primitive.requestPrimitive.to_, int1));
+					f_send(e_mcaPortIn, m_request(v_request));
+					tc_ac.start;
+					alt {
+						[] mcaPort.receive(mw_response(mw_responseDiscovery)) {
+							tc_ac.stop;
+							setverdict(pass,__SCOPE__&":INFO: AE-IP successfuly discovered switched off device");
+						}
+						[] tc_ac.timeout {
+							setverdict(fail, __SCOPE__ & " : Timeout due to no required request received from SUT");
+						}
+					}
+					
+				}
+				
+			}
+			
+			group Retrieve {
+				
+				function f_AE_OBI_RET_001() runs on CseSimu {
+					var template UtTriggerPrimitive v_utRequest := m_utCreateAe;
+					var template RequestPrimitive v_requestPrimitive := mw_createAe;
+					var universal charstring v_action :=  __SCOPE__ & ": Please, start AE-IPE device";
+					
+					// Test control
+					if (not(PICS_AE_IPE)) {
+					  setverdict(inconc, "PICS_AE_IPE shall be set");
+					  return;
+					}
+					
+					f_cf07Up();
+					
+					// Preamble
+					// Await for AE-IPE registration
+					v_utRequest.requestPrimitive.primitiveContent.aE.resourceName := "UNINITIALIZED";
+					v_requestPrimitive.primitiveContent.aE.resourceName := complement("UNINITIALIZED");
+					f_await_ipe_registration(v_utRequest, v_action);
+					// Give time to the AE-IPE to achieve the discovery of the new device
+					f_sleepIgnoreDef(5.0);
+					
+					// Test body
+					// Request for a non-oneM2M device description
+					// TODO Add more details
+					f_send(e_mcaPortIn, m_request(m_retrieve(vc_request.primitive.requestPrimitive.from_, vc_request.primitive.requestPrimitive.to_)));
+					tc_ac.start;
+					alt {
+						[] mcaPort.receive(mw_response(mw_responsePrimitive(int2001, mw_primitiveContentFlexContainer(mw_contentFlexContainer)))) {
+							tc_ac.stop;
+							setverdict(pass,__SCOPE__&":INFO: Response OK for retrieving");
+						}
+						[] tc_ac.timeout {
+							setverdict(fail, __SCOPE__ & " : Timeout due to no required request received from SUT");
+						}
+					}
+					
+				}
+				
+				
+			}
+			
+		}
+		
 		group Home_Appliance_Information_Model {
 			
 			group Create {
@@ -8215,6 +8555,8 @@ module OneM2M_PermutationFunctions {
 						var ListOfURIs v_memberIDs;
 						var AcpType v_acpIds;
 						var template RequestPrimitive v_createAcp := m_createAcp("PermissionForEveryone", -, -);
+						var template RequestPrimitive v_createContainerInAE1 := m_createContainerBase;
+						var template RequestPrimitive v_createContainerInAE2 := m_createContainerBase;
 						
 						// Test control
 						if(not(PICS_ACP_SUPPORT)) {
@@ -8244,9 +8586,11 @@ module OneM2M_PermutationFunctions {
 						
 						v_ae2LocalIndex := f_getLatestResource(vc_ae2); 
 						
-						v_containerIndex_1 := f_cse_createResource(int3, m_createContainerBase, v_aeIndex_1); // AE1 child resource
+						v_createContainerInAE1 := f_setAcpId(v_createContainerInAE1, v_acpIds);
+						v_containerIndex_1 := f_cse_createResource(int3, v_createContainerInAE1, v_aeIndex_1); // AE1 child resource
 	   
-						vc_ae2.start(f_cse_createResource(int3, m_createContainerBase, v_aeIndex_2));
+						v_createContainerInAE2 := f_setAcpId(v_createContainerInAE2, v_acpIds);
+						vc_ae2.start(f_cse_createResource(int3, v_createContainerInAE2, v_aeIndex_2));
 						f_aeSimu_checkComponentDoneAndGetVerdict(vc_ae2);
 	
 						
@@ -8823,6 +9167,7 @@ module OneM2M_PermutationFunctions {
 							// Local variables
 							var MsgIn v_response;
 							var integer v_aeIndex := -1;
+							var integer v_aeIndex2 := -1;
 							var integer v_acpIndex := -1;
 							var RequestPrimitive v_createRequest := valueof(m_createAcpBase);
 							var RequestPrimitive v_updateRequest;
@@ -8832,14 +9177,19 @@ module OneM2M_PermutationFunctions {
 							// Test control
 	
 							// Test component configuration
-							f_cf01Up();
+							f_cf01Up(true);
 	
 							// Test adapter configuration
 	
 							// 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)}, -);
-			
+							
+							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);
+					
+							v_aeIndex2 := f_getLatestResource(vc_ae2);
+							
 							v_accessControlRule_1 := valueof(m_createAcr({ f_getOriginator(v_aeIndex), PX_SUPER_AE_ID}, int63));
 							v_setOfArcs.accessControlRule_list := {v_accessControlRule_1};
 							v_updateRequest := valueof(m_updateAcpPrivileges(v_setOfArcs, v_setOfArcs));
@@ -8847,7 +9197,7 @@ module OneM2M_PermutationFunctions {
 			
 							// Test Body
 							p_requestPrimitive.to_ := f_getResourceAddress(v_aeIndex);
-							p_requestPrimitive.from_ := "UnknowOriginator";
+							p_requestPrimitive.from_ := f_getResourceId(vc_resourcesList[v_aeIndex2].resource);
 							p_requestPrimitive.requestIdentifier := valueof(p_requestPrimitive.requestIdentifier) & f_rnd(1, 1000000);
 	
 							f_send(e_mcaPort, m_request(valueof(p_requestPrimitive)));
@@ -9029,13 +9379,14 @@ module OneM2M_PermutationFunctions {
 							// Local variables
 							var MsgIn v_response;
 							var integer v_aeIndex := -1;
+							var integer v_aeIndex2 := -1;
 							var integer v_acpIndex := -1;
 							var RequestPrimitive v_createRequest;
 			
 							// Test control
 	
 							// Test component configuration
-							f_cf01Up();
+							f_cf01Up(true);
 	
 							// Test adapter configuration
 	
@@ -9045,9 +9396,14 @@ module OneM2M_PermutationFunctions {
 							
 							v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[v_acpIndex].resource)}, -);
 			
+							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);
+					
+							v_aeIndex2 := f_getLatestResource(vc_ae2);
+				
 							// Test Body
 							p_requestPrimitive.to_ := f_getResourceAddress(v_aeIndex);
-							p_requestPrimitive.from_ := "UnknowOriginator";
+							p_requestPrimitive.from_ := f_getResourceId(vc_resourcesList[v_aeIndex2].resource);
 							p_requestPrimitive.requestIdentifier := valueof(p_requestPrimitive.requestIdentifier) & f_rnd(1, 1000000);
 			
 							f_send(e_mcaPort, m_request(valueof(p_requestPrimitive)));
diff --git a/OneM2M_Testcases_AE_Release_1.ttcn b/OneM2M_Testcases_AE_Release_1.ttcn
index bfc286966b662afcb974b4141d0483eb032e599f..f60ad65e263e29875f6ab6b96e42712aec0e7bd4 100644
--- a/OneM2M_Testcases_AE_Release_1.ttcn
+++ b/OneM2M_Testcases_AE_Release_1.ttcn
@@ -634,7 +634,7 @@ module OneM2M_Testcases_AE_Release_1 {
 						var template UtTriggerPrimitive v_utRequest := m_utCreateAe;
 						var template RequestPrimitive v_createAe := mw_createAe;
 						var universal charstring v_action :=  __SCOPE__ & ": Please, send a valid AE CREATE Registration Request containing attribute ContentSerialization";
-						v_utRequest.requestPrimitive.primitiveContent.aE.contentSerialization := {applicationxml};
+						v_utRequest.requestPrimitive.primitiveContent.aE.contentSerialization := {xml};
 						v_utRequest.forcedFields := {{name := "contentSerialization", value_ := "UNINITIALIZED"}};
 						v_createAe.primitiveContent.aE.contentSerialization := ?;//Check value other than UNINITIALIZED, done by typing
 						v_cse1.start(f_AE_REG_CRE_002(v_utRequest,v_createAe,v_action));
@@ -1161,7 +1161,7 @@ module OneM2M_Testcases_AE_Release_1 {
 						var template RequestPrimitive v_expectedUpdateRequestAe;
 						var template UtTriggerPrimitive v_utRequest := m_utUpdateAe;
 						var universal charstring v_action :=  __SCOPE__ & ": Please, send a valid UPDATE Request for AE updating attribute contentSerialization to ";
-						v_utRequest.requestPrimitive.primitiveContent.aE.contentSerialization := {applicationxml};
+						v_utRequest.requestPrimitive.primitiveContent.aE.contentSerialization := {xml};
 						v_utRequest.forcedFields := {{name := "contentSerialization", value_ := "UNINITIALIZED"}};
 						
 						v_expectedUpdateRequestAe.primitiveContent.aE := mw_contentUpdateAe;
@@ -2132,8 +2132,10 @@ module OneM2M_Testcases_AE_Release_1 {
 					  v_response_rsp1.to_ := v_request_req1.primitive.requestPrimitive.from_;
 					  //Put in the primitiveContent a Notify request (req2) (simulated) from another node CSE
 					  v_request_req2 := valueof(m_notify(f_getLocalResourceAddress(v_pollingChannelIndex)));
+					  v_request_req2.from_ := PX_TS_CSE1.cseId;
 					  v_response_rsp1.primitiveContent := { requestPrimitive := v_request_req2 };
-					  mcaPortIn.send(m_response(v_response_rsp1));
+					  //send back responsePrimitive
+					  f_send(e_mcaPortIn, m_response(v_response_rsp1));
 				 }
 				 [] tc_ac.timeout {
 					 setverdict(inconc, __SCOPE__&":INFO: No request received for creating resource type Polling Channel");
diff --git a/OneM2M_Testcases_AE_Release_3.ttcn b/OneM2M_Testcases_AE_Release_3.ttcn
index d5d5a2e4f9cf37368691b8df173dd1943a25e3bb..44786d2d7130c321fe2266f5b6514a3e95f062c3 100644
--- a/OneM2M_Testcases_AE_Release_3.ttcn
+++ b/OneM2M_Testcases_AE_Release_3.ttcn
@@ -24,6 +24,105 @@ module OneM2M_Testcases_AE_Release_3 {
 
 	group AE {
 		
+		group OBI {
+			
+			group Registration {
+				
+				/**
+				 * @desc  Check that the IUT sends an AE initial registration request when it is started
+				 */
+				testcase TC_AE_OBI_REG_001() runs on Tester system AeSystem {
+					
+					var CseSimu v_cse1Simu := CseSimu.create("CSE1") alive;
+					
+					v_cse1Simu.start(f_AE_OBI_REG_001());
+					v_cse1Simu.done;
+				}
+				
+			}
+			
+			group Initialization {
+				
+				/**
+				 * @desc  Check that the IUT starts the Initialization sequence of an Ontology based Interworking 
+				 *        IPE and retrieves the formal description of the ontology
+				 */
+				testcase TC_AE_OBI_INI_001() runs on Tester system AeSystem {
+					
+					var CseSimu v_os1 := CseSimu.create("OS1") alive;
+					
+					v_os1.start(f_AE_OBI_INI_001());
+					v_os1.done;
+				}
+				
+			}
+			
+			group Discovery {
+				
+				/**
+				 * @desc  Check that the IUT starts the Initialization sequence of an Ontology based Interworking 
+				 *        IPE and retrieves the formal description of the ontology
+				 */
+				testcase TC_AE_OBI_DIS_001() runs on Tester system AeSystem {
+					
+					var CseSimu v_cse1Simu := CseSimu.create("CSE1") alive;
+					
+					v_cse1Simu.start(f_AE_OBI_DIS_001());
+					v_cse1Simu.done;
+				}
+				
+				/**
+				 * @desc  Check that the IUT continues to discover the devices in the non-oneM2M area
+				 */
+				testcase TC_AE_OBI_DIS_002() runs on Tester system AeSystem {
+					
+					var CseSimu v_cse1Simu := CseSimu.create("CSE1") alive;
+					
+					v_cse1Simu.start(f_AE_OBI_DIS_002());
+					v_cse1Simu.done;
+				}
+				
+				/**
+				 * @desc  Check that the IUT continues to discover the devices in the non-oneM2M area
+				 */
+				testcase TC_AE_OBI_DIS_003() runs on Tester system AeSystem {
+					
+					var CseSimu v_cse1Simu := CseSimu.create("CSE1") alive;
+					
+					v_cse1Simu.start(f_AE_OBI_DIS_003());
+					v_cse1Simu.done;
+				}
+				
+				/**
+				 * @desc  Check that the IUT accepts "on demand" discovery
+				 */
+				testcase TC_AE_OBI_DIS_004() runs on Tester system AeSystem {
+					
+					var CseSimu v_cse1Simu := CseSimu.create("CSE1") alive;
+					
+					v_cse1Simu.start(f_AE_OBI_DIS_004());
+					v_cse1Simu.done;
+				}
+				
+			}
+			
+			group Retrieve {
+				
+				/**
+				 * @desc  Check that the IUT accepts a retrieval request resource and responds 2000 (OK) status
+				 */
+				testcase TC_AE_OBI_RET_001() runs on Tester system AeSystem {
+					
+					var CseSimu v_cse1Simu := CseSimu.create("CSE1") alive;
+					
+					v_cse1Simu.start(f_AE_OBI_RET_001());
+					v_cse1Simu.done;
+				}
+				
+			}
+			
+		}
+		
 		group HAIM {
 			
 			group Create {
@@ -33,21 +132,6 @@ module OneM2M_Testcases_AE_Release_3 {
 				*/
 				group g_AE_HAIM_CRE_001 {
 							
-					testcase TC_AE_HAIM_CRE_001_AIR() runs on Tester system AeSystem {
-						
-						var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
-						var template UtTriggerPrimitive v_utRequest := m_utCreateDeviceAirConditioner;
-						var template RequestPrimitive v_requestPrimitive := mw_createDeviceAirConditioner;
-
-						var universal charstring v_action :=  __SCOPE__ & ": Please, send a valid CREATE Request for deviceAirConditioner device model to ";
-						var XSD.AnyURI v_containerDefinition := "org.onem2m.home.device.deviceAirConditioner";
-						
-						v_utRequest.requestPrimitive.primitiveContent.deviceAirConditioner.containerDefinition := v_containerDefinition;
-						v_requestPrimitive.primitiveContent.deviceAirConditioner.containerDefinition := v_containerDefinition;
-						
-						v_cse1.start(f_AE_HAIM_CRE_001(v_action, v_utRequest, v_requestPrimitive));
-						v_cse1.done;
-					}
 					
 					testcase TC_AE_HAIM_CRE_001_CLO() runs on Tester system AeSystem {
 						
diff --git a/OneM2M_Testcases_CSE_Release_1.ttcn b/OneM2M_Testcases_CSE_Release_1.ttcn
index ecd0b59fcbd175d3f6097648a030ffe174abb461..2abce727e704c9dc2a694650426b2cb618e292ab 100644
--- a/OneM2M_Testcases_CSE_Release_1.ttcn
+++ b/OneM2M_Testcases_CSE_Release_1.ttcn
@@ -43,7 +43,7 @@ module OneM2M_Testcases_CSE_Release_1 {
 				var integer i; 
 				var XSD.ID v_resourceAddress;
 				var RequestPrimitive v_request;
-				map(self:mcaPort, system:mcaPort); 
+				f_cf01Up(); 
 					
 				for (i:=0; i<lengthof(PX_RESOURCES_TO_BE_DELETED); i:= i+1) {  
 					
@@ -77,8 +77,7 @@ module OneM2M_Testcases_CSE_Release_1 {
 					}	
 				}
 			
-				unmap(self:mcaPort, system:mcaPort); 
-				stop;
+				f_cf01Down();
 			}	
 		
 		}//end group helpingTestCases
@@ -545,7 +544,7 @@ module OneM2M_Testcases_CSE_Release_1 {
 					f_send(e_mcaPort, m_request(v_request));
 					tc_ac.start;
 					alt {
-						[] mcaPort.receive(mw_response(mw_responsePrimitive(int4107))) {
+						[] mcaPort.receive(mw_response(mw_responsePrimitive(int4126))) {
 							tc_ac.stop;
 							setverdict(pass, __SCOPE__ & ": AE creation rejected.");
 						}
@@ -1244,7 +1243,7 @@ module OneM2M_Testcases_CSE_Release_1 {
 					f_send(e_mcaPort, m_request(v_request));
 					tc_ac.start;
 					alt {
-						[] mcaPort.receive(mw_response(mw_responsePrimitive(int4107))) {
+						[] mcaPort.receive(mw_response(mw_responsePrimitive(int4126))) {
 							tc_ac.stop;
 							setverdict(pass, __SCOPE__ & ": AE creation rejected.");
 						}
@@ -8327,21 +8326,30 @@ module OneM2M_Testcases_CSE_Release_1 {
 					// Local variables
 					var MsgIn v_response;
 					var integer v_aeIndex := -1;
+					var integer v_ae2Index := -1;
 					var template RequestPrimitive v_createRequest := m_createSubscriptionBase;
 					var RequestPrimitive v_request;
 			
 					// Test control
 
 					// Test component configuration
-					f_cf01Up();
+					f_cf01Up(true);
 
 					// Test adapter configuration
 
 					// Preamble
 					v_aeIndex := f_cse_preamble_registerAe();//c_CRUDNDi);		
 					
-					v_request := f_getCreateRequestPrimitive(int23, v_createRequest, v_aeIndex);//Subscription 
-					v_request.primitiveContent.subscription.notificationURI := {"NotReachableNotificationURI"};
+					vc_ae2.start(f_cse_createAccessControlPolicyAux("SubscriptionVerificationAcp",{"all"}, int63));
+					f_aeSimu_checkComponentDoneAndGetVerdict(vc_ae2);
+					
+					vc_ae2.start(f_cse_createResource_withAcpAux(int2, m_createAe(PX_TS_AE2.appId, -, PX_TS_AE2.aeIdStem, c_defaultAe2ResourceName, -), -1)); // AE2 is registred
+					f_aeSimu_checkComponentDoneAndGetVerdict(vc_ae2);
+					
+					v_ae2Index := f_getLatestResource(vc_ae2);
+					
+					v_request := f_getCreateRequestPrimitive(int23, m_createSubscriptionBase, v_aeIndex);
+					v_request.primitiveContent.subscription.notificationURI := {f_getResourceAddress(v_ae2Index)};
 					
 					// Test Body
 					f_send(e_mcaPort, m_request(v_request));
@@ -8421,6 +8429,7 @@ module OneM2M_Testcases_CSE_Release_1 {
 					v_resourceIndex := f_cse_createResource(int23, v_request, v_aeIndex);//Subscription 				
 					
 					if(vc_ae2.running) {
+						setverdict(inconc, __SCOPE__ & ": Notification not received");
 						vc_ae2.stop;
 					};
 					
@@ -9743,10 +9752,14 @@ module OneM2M_Testcases_CSE_Release_1 {
 				f_send(e_mcaPort, m_request(v_request));
 				tc_ac.start;
 				alt {
-					[] mcaPort.receive(mw_response(mw_responseDiscovery)){
+					[] mcaPort.receive(mw_response(mw_responseDiscovery({?}))){
 						tc_ac.stop;
 						setverdict(pass, __SCOPE__ & ": URI List Representation available");
 					}
+					[] mcaPort.receive(mw_response(mw_responseDiscovery)){
+						tc_ac.stop;
+						setverdict(fail, __SCOPE__ & ": URI List Representation available but not the expected number of elements");
+					}
 					[] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { 
 						tc_ac.stop;
 						setverdict(fail, __SCOPE__ & ": Wrong response status code");
@@ -9935,7 +9948,6 @@ module OneM2M_Testcases_CSE_Release_1 {
 				var RequestPrimitive v_request;
 				var integer v_childResourceIndex := -1;
 				const ResourceType c_containerResourceType := int3; 
-				var integer v_i_cont := 0;
 				
 				// Test control
 	
@@ -9955,17 +9967,18 @@ module OneM2M_Testcases_CSE_Release_1 {
 				f_send(e_mcaPort, m_request(v_request));
 				tc_ac.start;
 				alt {
-					[] mcaPort.receive(mw_response(mw_responseDiscovery)) -> value v_response {
+					[] mcaPort.receive(mw_response(mw_responseDiscovery({?}))) -> value v_response {
 						tc_ac.stop;
-						while (v_i_cont<lengthof(v_response.primitive.responsePrimitive.primitiveContent.uRIList)){
-							if (f_isNonHierarchical(v_response.primitive.responsePrimitive.primitiveContent.uRIList[v_i_cont])) {
-							  setverdict(pass, __SCOPE__ & ": Non-hierarchical address form present in URIList[" & int2str(v_i_cont) & "] element");
-							} else {
-							  setverdict(fail, __SCOPE__ & ": Non-hierarchical address form absent in URIList[" & int2str(v_i_cont) & "] element"); 
-							}
-							v_i_cont := v_i_cont + 1;
+						if (f_isNonHierarchical(v_response.primitive.responsePrimitive.primitiveContent.uRIList[0])) {
+						  setverdict(pass, __SCOPE__ & ": Non-hierarchical address form present in URIList[0] element");
+						} else {
+						  setverdict(fail, __SCOPE__ & ": Non-hierarchical address form absent in URIList[0] element"); 
 						}
 					}
+					[] mcaPort.receive(mw_response(mw_responseDiscovery)) -> value v_response {
+						tc_ac.stop;
+						setverdict(fail, __SCOPE__ & ": URI List Representation available but not the expected number of elements"); 
+					}
 					[] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { 
 						tc_ac.stop;
 						setverdict(fail, __SCOPE__ & ": Wrong response status code");
@@ -10005,6 +10018,7 @@ module OneM2M_Testcases_CSE_Release_1 {
 				var RequestPrimitive v_requestPrimitive := valueof(m_createContainerBase);
 				var integer v_aeIndex := -1;
 				var integer v_resourceIndex := -1;
+				var integer v_childResourceIndex := -1;
 				var RequestPrimitive v_request;
 				const ResourceType c_containerResourceType := int3; 
 				
@@ -10024,9 +10038,11 @@ module OneM2M_Testcases_CSE_Release_1 {
 				
 				v_aeIndex := f_cse_preamble_registerAe();//AE1 is registred;
 				
+				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_childResourceIndex := f_cse_createResource(c_containerResourceType, v_requestPrimitive, v_resourceIndex);
 				
-				v_resourceIndex := f_cse_createResource(c_containerResourceType, v_requestPrimitive, v_aeIndex);
 				v_request := valueof(m_retrieveFilterUsageOption(f_getResourceAddress(v_resourceIndex), f_getOriginator(v_resourceIndex), int1));
 				f_send(e_mcaPort, m_request(v_request));
 				tc_ac.start;
@@ -10366,7 +10382,6 @@ module OneM2M_Testcases_CSE_Release_1 {
 				var RequestPrimitive v_request;
 				var integer v_childResourceIndex := -1;
 				const ResourceType c_containerResourceType := int3; 
-				var integer v_i_cont := 0;
 				
 				// Test control
 	
@@ -10386,17 +10401,18 @@ module OneM2M_Testcases_CSE_Release_1 {
 				f_send(e_mcaPort, m_request(v_request));
 				tc_ac.start;
 				alt {
-					[] mcaPort.receive(mw_response(mw_responseDiscovery)) -> value v_response {
+					[] mcaPort.receive(mw_response(mw_responseDiscovery({?}))) -> value v_response {
 						tc_ac.stop;
-						while (v_i_cont<lengthof(v_response.primitive.responsePrimitive.primitiveContent.uRIList)){
-							if (f_isHierarchical(v_response.primitive.responsePrimitive.primitiveContent.uRIList[v_i_cont])) {
-							  setverdict(pass, __SCOPE__ & ": Hierarchical address form present in URIList[" & int2str(v_i_cont) & "] element");
-							} else {
-							  setverdict(fail, __SCOPE__ & ": Hierarchical address form absent in URIList[" & int2str(v_i_cont) & "] element"); 
-							}
-							v_i_cont := v_i_cont + 1;
+						if (f_isHierarchical(v_response.primitive.responsePrimitive.primitiveContent.uRIList[0])) {
+							setverdict(pass, __SCOPE__ & ": Hierarchical address form present in URIList[0] element");
+						} else {
+							setverdict(fail, __SCOPE__ & ": Hierarchical address form absent in URIList[0] element"); 
 						}
 					}
+					[] mcaPort.receive(mw_response(mw_responseDiscovery)){
+						tc_ac.stop;
+						setverdict(fail, __SCOPE__ & ": URI List Representation available but not the expected number of elements");
+					}
 					[] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { 
 						tc_ac.stop;
 						setverdict(fail, __SCOPE__ & ": Wrong response status code");
@@ -10439,7 +10455,6 @@ module OneM2M_Testcases_CSE_Release_1 {
 				var RequestPrimitive v_request;
 				var integer v_childResourceIndex := -1;
 				const ResourceType c_containerResourceType := int3; 
-				var integer v_i_cont := 0;
 				
 				// Test control
 	
@@ -10459,17 +10474,18 @@ module OneM2M_Testcases_CSE_Release_1 {
 				f_send(e_mcaPort, m_request(v_request));
 				tc_ac.start;
 				alt {
-					[] mcaPort.receive(mw_response(mw_responseDiscovery)) -> value v_response {
+					[] mcaPort.receive(mw_response(mw_responseDiscovery({?}))) -> value v_response {
 						tc_ac.stop;
-						while (v_i_cont<lengthof(v_response.primitive.responsePrimitive.primitiveContent.uRIList)){
-							if (f_isHierarchical(v_response.primitive.responsePrimitive.primitiveContent.uRIList[v_i_cont])) {
-							  setverdict(pass, __SCOPE__ & ": Hierarchical address form present in URIList[" & int2str(v_i_cont) & "] element");
-							} else {
-							  setverdict(fail, __SCOPE__ & ": Hierarchical address form absent in URIList[" & int2str(v_i_cont) & "] element"); 
-							}
-							v_i_cont := v_i_cont + 1;
+						if (f_isHierarchical(v_response.primitive.responsePrimitive.primitiveContent.uRIList[0])) {
+							setverdict(pass, __SCOPE__ & ": Hierarchical address form present in URIList[0] element");
+						} else {
+							setverdict(fail, __SCOPE__ & ": Hierarchical address form absent in URIList[0] element"); 
 						}
 					}
+					[] mcaPort.receive(mw_response(mw_responseDiscovery)){
+						tc_ac.stop;
+						setverdict(fail, __SCOPE__ & ": URI List Representation available but not the expected number of elements");
+					}
 					[] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { 
 						tc_ac.stop;
 						setverdict(fail, __SCOPE__ & ": Wrong response status code");
diff --git a/OneM2M_Testcases_CSE_Release_2.ttcn b/OneM2M_Testcases_CSE_Release_2.ttcn
index 2c20dbc755e3079e3a07459ed3184bdf1e2afc88..e079999f8ad9684ae1ddda25170379b790f50623 100644
--- a/OneM2M_Testcases_CSE_Release_2.ttcn
+++ b/OneM2M_Testcases_CSE_Release_2.ttcn
@@ -2002,7 +2002,7 @@ module OneM2M_Testcases_CSE_Release_2 {
 						v_contentResponse.container := mw_contentContainer_allOmit;
 						v_contentResponse.container.lastModifiedTime := ?;
 						v_contentResponse.container.stateTag := ?; 
-						v_contentResponse.container.labels := ?; 
+						v_contentResponse.container.labels := omit; 
 						v_updateRequest.primitiveContent.container.labels := {"VALUE_1"};
 						
 						v_ae1.start(f_CSE_DMR_UPD_022(int3, m_createContainerBase, v_contentResponse, int3, m_createContainerBase, v_updateRequest));//Container
@@ -2017,7 +2017,7 @@ module OneM2M_Testcases_CSE_Release_2 {
 
 						v_contentResponse.group_ := mw_contentGroup_allOmit;
 						v_contentResponse.group_.lastModifiedTime := ?;
-						v_contentResponse.group_.labels := ?; 
+						v_contentResponse.group_.labels := omit; 
 						v_updateRequest.primitiveContent.group_.labels := {"VALUE_1"};
 					
 						v_ae1.start(f_CSE_DMR_UPD_022(int9, m_createGroupBase, v_contentResponse, int23, m_createSubscriptionBase, v_updateRequest));//Group
@@ -2032,7 +2032,7 @@ module OneM2M_Testcases_CSE_Release_2 {
 	
 						v_contentResponse.accessControlPolicy := mw_contentAcp_allOmit;
 						v_contentResponse.accessControlPolicy.lastModifiedTime := ?;
-						v_contentResponse.accessControlPolicy.labels := ?; 
+						v_contentResponse.accessControlPolicy.labels := omit; 
 						v_updateRequest.primitiveContent.accessControlPolicy.labels := {"VALUE_1"};
 	
 						v_ae1.start(f_CSE_DMR_UPD_022(int1, m_createAcpBase,v_contentResponse, int23, m_createSubscriptionBase, v_updateRequest));//AccessControlPolicy
diff --git a/OneM2M_Testcases_CSE_Release_3.ttcn b/OneM2M_Testcases_CSE_Release_3.ttcn
index a401acc6ec1fba7f80b3e9dcb91637ebfc980cb5..12a7e215a580fc068068f0e58e7da242c346fa08 100644
--- a/OneM2M_Testcases_CSE_Release_3.ttcn
+++ b/OneM2M_Testcases_CSE_Release_3.ttcn
@@ -28,13 +28,20 @@ module OneM2M_Testcases_CSE_Release_3 {
 	
 		group helpingTestCases {//These are not part of the test suite, just for verification purposes
 			
-			testcase TC_DELETE_RESOURCES() runs on AeSimu system CseSystem {
+			testcase TC_DELETE_RESOURCES() runs on Tester system CseSystem {
+				var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+							
+					v_ae1.start(f_DELETE_RESOURCES()); 	
+					v_ae1.done;					
+			}
+				
+			function f_DELETE_RESOURCES() runs on AeSimu system CseSystem{
 				
 				timer t_ac := 5.0;
 				var integer i; 
 				var XSD.ID v_resourceAddress;
 				var RequestPrimitive v_request;
-				map(self:mcaPort, system:mcaPort) param (PX_TS_AE1.mcaPort);
+				f_cf01Up();
 					
 				for (i:=0; i<lengthof(PX_RESOURCES_TO_BE_DELETED); i:= i+1) {  
 					
@@ -68,7 +75,7 @@ module OneM2M_Testcases_CSE_Release_3 {
 					}	
 				}
 			
-				unmap(self:mcaPort, system:mcaPort); 
+				f_cf01Down();
 				stop;
 			}	
 		
@@ -250,7 +257,7 @@ module OneM2M_Testcases_CSE_Release_3 {
 						var template RequestPrimitive v_createRequest := m_createAe(PX_TS_AE1.appId);
 						var template PrimitiveContent v_contentResponse;
 						
-						v_createRequest.primitiveContent.aE.contentSerialization := {applicationxml};
+						v_createRequest.primitiveContent.aE.contentSerialization := {xml};
 
 						v_contentResponse.aE := mw_contentAeBase;
 						v_contentResponse.aE.contentSerialization := ?;