From 5da1eef05a8d6af8d935393445476db6fb20607d Mon Sep 17 00:00:00 2001
From: reinaortega <miguelangel.reinaortega@etsi.org>
Date: Fri, 23 Feb 2018 11:54:08 +0100
Subject: [PATCH] Structuring of PICS

Signed-off-by: reinaortega <miguelangel.reinaortega@etsi.org>
---
 LibOneM2M/OneM2M_Pics.ttcn | 157 +++++++++++++++++++------------------
 1 file changed, 80 insertions(+), 77 deletions(-)

diff --git a/LibOneM2M/OneM2M_Pics.ttcn b/LibOneM2M/OneM2M_Pics.ttcn
index abdd8b7..78f1b72 100644
--- a/LibOneM2M/OneM2M_Pics.ttcn
+++ b/LibOneM2M/OneM2M_Pics.ttcn
@@ -28,83 +28,86 @@ module OneM2M_Pics {
 	modulepar boolean PICS_PRIMITIVE_SCOPE_SP_RELATIVE := true;
 	modulepar boolean PICS_PRIMITIVE_SCOPE_ABSOLUTE := true;
 	
-	//AccessControlPolicy optional attributes
-	
-	modulepar boolean PICS_ACP_LBL := true;
-	modulepar boolean PICS_ACP_AT := true;
-
-	//AE optional attributes
-	
-	modulepar boolean PICS_AE_LBL := true;
-	modulepar boolean PICS_AE_APN := true;
-	modulepar boolean PICS_AE_POA := true;
-	modulepar boolean PICS_AE_NL := true;
-	modulepar boolean PICS_AE_CSZ := true;
-	modulepar boolean PICS_AE_OR := true;
-	modulepar boolean PICS_AE_ACPI := true;
-	
-	//Container optional attributes
-	
-	modulepar boolean PICS_CNT_ACPI := true;
-	modulepar boolean PICS_CNT_MNI := true;
-	modulepar boolean PICS_CNT_MBS := true;
-	modulepar boolean PICS_CNT_MIA := true;
-	modulepar boolean PICS_CNT_OR := true;
-	modulepar boolean PICS_CNT_LI := true;
-	modulepar boolean PICS_CNT_RN := true;
-	modulepar boolean PICS_CNT_ET := true;
-	modulepar boolean PICS_CNT_LBL := true;
-	modulepar boolean PICS_CNT_CR := true;
-	
-	//ContentInstance optional attributes
-	
-	modulepar boolean PICS_CIN_CNF := true;
-	modulepar boolean PICS_CIN_RN := true;
-	modulepar boolean PICS_CIN_ET := true;
-	modulepar boolean PICS_CIN_LBL := true;
-	modulepar boolean PICS_CIN_CR := true;
-	modulepar boolean PICS_CIN_OR := true;	
-	
-	//CSEBase optional attributes
-	
-    modulepar boolean PICS_CB_CST := true;
-    modulepar boolean PICS_CB_NL := true;
-    
-   	//Group optional attributes
-   	
-	modulepar boolean PICS_GRP_LBL := true;
-	modulepar boolean PICS_GRP_GN := true;
-	modulepar boolean PICS_GRP_ACPI := true;
-	modulepar boolean PICS_GRP_MACP := true;
-    
-	//RemoteCSE optional attributes
-	
-	modulepar boolean PICS_CSR_LBL := true;
-	modulepar boolean PICS_CSR_CST := true;
-	modulepar boolean PICS_CSR_POA := true;
-	modulepar boolean PICS_CSR_NL := true;
-	modulepar boolean PICS_CSR_RN := true;
-	modulepar boolean PICS_CSR_ET := true;
-	modulepar boolean PICS_CSR_RR := true;
-	
-	//Subscription optional attributes
-	
-	modulepar boolean PICS_SUB_ACPI := true;
-	modulepar boolean PICS_SUB_ENC := true;
-	modulepar boolean PICS_SUB_EXC := true;
-	modulepar boolean PICS_SUB_NFU := true;
-	modulepar boolean PICS_SUB_NCT := true;
-	modulepar boolean PICS_SUB_NEC := true;
-	modulepar boolean PICS_SUB_SU := true;
-	modulepar boolean PICS_SUB_LBL := true;
-	modulepar boolean PICS_SUB_GPI := true;
-	modulepar boolean PICS_SUB_BN := true;
-	modulepar boolean PICS_SUB_RL := true;
-	modulepar boolean PICS_SUB_PN := true;
-	modulepar boolean PICS_SUB_NSP := true;
-	modulepar boolean PICS_SUB_LN := true;
-	modulepar boolean PICS_SUB_PSN := true;
-	modulepar boolean PICS_SUB_CR := true;
+	group ResourceOptionalAttributes {
+		//AccessControlPolicy optional attributes
 	
+		group AccessControlPolicyOptionalAttributes {	
+			modulepar boolean PICS_ACP_LBL := true;
+			modulepar boolean PICS_ACP_AT := true;
+		}
+		//AE optional attributes
+		group AeOptionalAttributes {
+			modulepar boolean PICS_AE_LBL := true;
+			modulepar boolean PICS_AE_APN := true;
+			modulepar boolean PICS_AE_POA := true;
+			modulepar boolean PICS_AE_NL := true;
+			modulepar boolean PICS_AE_CSZ := true;
+			modulepar boolean PICS_AE_OR := true;
+			modulepar boolean PICS_AE_ACPI := true;
+		}
+		//Container optional attributes
+		group ContainerOptionalAttributes {
+			modulepar boolean PICS_CNT_ACPI := true;
+			modulepar boolean PICS_CNT_MNI := true;
+			modulepar boolean PICS_CNT_MBS := true;
+			modulepar boolean PICS_CNT_MIA := true;
+			modulepar boolean PICS_CNT_OR := true;
+			modulepar boolean PICS_CNT_LI := true;
+			modulepar boolean PICS_CNT_RN := true;
+			modulepar boolean PICS_CNT_ET := true;
+			modulepar boolean PICS_CNT_LBL := true;
+			modulepar boolean PICS_CNT_CR := true;
+		}
+		//ContentInstance optional attributes
+		group ContentInstanceOptionalAttributes {
+			modulepar boolean PICS_CIN_CNF := true;
+			modulepar boolean PICS_CIN_RN := true;
+			modulepar boolean PICS_CIN_ET := true;
+			modulepar boolean PICS_CIN_LBL := true;
+			modulepar boolean PICS_CIN_CR := true;
+			modulepar boolean PICS_CIN_OR := true;	
+		}
+		//CSEBase optional attributes
+		group CSEBaseOptionalAttributes {
+		    modulepar boolean PICS_CB_CST := true;
+		    modulepar boolean PICS_CB_NL := true;
+		}
+	   	//Group optional attributes
+		group AccessControlPolicyOptionalAttributes {
+			modulepar boolean PICS_GRP_LBL := true;
+			modulepar boolean PICS_GRP_GN := true;
+			modulepar boolean PICS_GRP_ACPI := true;
+			modulepar boolean PICS_GRP_MACP := true;
+		}
+		//RemoteCSE optional attributes
+		group RemoteCSEOptionalAttributes {
+			modulepar boolean PICS_CSR_LBL := true;
+			modulepar boolean PICS_CSR_CST := true;
+			modulepar boolean PICS_CSR_POA := true;
+			modulepar boolean PICS_CSR_NL := true;
+			modulepar boolean PICS_CSR_RN := true;
+			modulepar boolean PICS_CSR_ET := true;
+			modulepar boolean PICS_CSR_RR := true;
+		}
+		//Subscription optional attributes
+		group SubscriptionOptionalAttributes {
+			modulepar boolean PICS_SUB_ACPI := true;
+			modulepar boolean PICS_SUB_ENC := true;
+			modulepar boolean PICS_SUB_EXC := true;
+			modulepar boolean PICS_SUB_NFU := true;
+			modulepar boolean PICS_SUB_NCT := true;
+			modulepar boolean PICS_SUB_NEC := true;
+			modulepar boolean PICS_SUB_SU := true;
+			modulepar boolean PICS_SUB_LBL := true;
+			modulepar boolean PICS_SUB_GPI := true;
+			modulepar boolean PICS_SUB_BN := true;
+			modulepar boolean PICS_SUB_RL := true;
+			modulepar boolean PICS_SUB_PN := true;
+			modulepar boolean PICS_SUB_NSP := true;
+			modulepar boolean PICS_SUB_LN := true;
+			modulepar boolean PICS_SUB_PSN := true;
+			modulepar boolean PICS_SUB_CR := true;
+		}
+	}
 	
 }  // end of module
-- 
GitLab