From 52251196432f7af1db88437bb3070a43d79ce33a Mon Sep 17 00:00:00 2001 From: reinaortega <miguelangel.reinaortega@etsi.org> Date: Fri, 19 May 2017 08:59:32 +0200 Subject: [PATCH] Clean-Up - PX_URI_CSE removed. No needed any longer Signed-off-by: reinaortega <miguelangel.reinaortega@etsi.org> --- LibOneM2M/OneM2M_Functions.ttcn | 12 +++++++-- LibOneM2M/OneM2M_Pixits.ttcn | 4 +-- LibOneM2M/OneM2M_Templates.ttcn | 31 +-------------------- LibOneM2M/OneM2M_TypesAndValues.ttcn | 7 ++--- OneM2M_Testcases.ttcn | 40 ++++++++++++++-------------- 5 files changed, 34 insertions(+), 60 deletions(-) diff --git a/LibOneM2M/OneM2M_Functions.ttcn b/LibOneM2M/OneM2M_Functions.ttcn index 888f0c1..469f853 100644 --- a/LibOneM2M/OneM2M_Functions.ttcn +++ b/LibOneM2M/OneM2M_Functions.ttcn @@ -7,7 +7,7 @@ * * @author oneM2M * @version $URL: https://forge.etsi.org/svn/oneM2M/trunk/ttcn/LibOneM2M/OneM2M_Functions.ttcn $ - * $Id: OneM2M_Functions.ttcn 286 2017-05-19 06:25:02Z reinaortega $ + * $Id: OneM2M_Functions.ttcn 287 2017-05-19 06:59:12Z reinaortega $ * @desc Module containing functions for oneM2M * */ @@ -727,48 +727,56 @@ module OneM2M_Functions { if(isvalue(p_response.primitiveContent.any_1[0].AccessControlPolicy_optional) and not(ispresent(p_response.primitiveContent.any_1[0].AccessControlPolicy_optional.resourceName))) { p_response.primitiveContent.any_1[0].AccessControlPolicy_optional.resourceName := p_request.primitiveContent.any_1[0].AccessControlPolicy_optional.resourceName; + log(__SCOPE__ & ": Info: resourceName not returned. Using the one provided in the request: " & p_request.primitiveContent.any_1[0].AccessControlPolicy_optional.resourceName) } } case (int2) { if(isvalue(p_response.primitiveContent.any_1[0].AE_optional) and not(ispresent(p_response.primitiveContent.any_1[0].AE_optional.resourceName))) { p_response.primitiveContent.any_1[0].AE_optional.resourceName := p_request.primitiveContent.any_1[0].AE_optional.resourceName; + log(__SCOPE__ & ": Info: resourceName not returned. Using the one provided in the request: " & p_request.primitiveContent.any_1[0].AE_optional.resourceName) } } case (int3) { if(isvalue(p_response.primitiveContent.any_1[0].Container_optional) and not(ispresent(p_response.primitiveContent.any_1[0].Container_optional.resourceName))) { p_response.primitiveContent.any_1[0].Container_optional.resourceName := p_request.primitiveContent.any_1[0].Container_optional.resourceName; + log(__SCOPE__ & ": Info: resourceName not returned. Using the one provided in the request: " & p_request.primitiveContent.any_1[0].Container_optional.resourceName) } } case (int4) { if(isvalue(p_response.primitiveContent.any_1[0].ContentInstance_optional) and not(ispresent(p_response.primitiveContent.any_1[0].ContentInstance_optional.resourceName))) { p_response.primitiveContent.any_1[0].ContentInstance_optional.resourceName := p_request.primitiveContent.any_1[0].ContentInstance_optional.resourceName; + log(__SCOPE__ & ": Info: resourceName not returned. Using the one provided in the request: " & p_request.primitiveContent.any_1[0].ContentInstance_optional.resourceName) } } case (int15) { if (isvalue(p_response.primitiveContent.any_1[0].PollingChannel_optional) and not(ispresent(p_response.primitiveContent.any_1[0].PollingChannel_optional.resourceName))) { p_response.primitiveContent.any_1[0].PollingChannel_optional.resourceName := p_request.primitiveContent.any_1[0].PollingChannel_optional.resourceName; + log(__SCOPE__ & ": Info: resourceName not returned. Using the one provided in the request: " & p_request.primitiveContent.any_1[0].PollingChannel_optional.resourceName) } } case (int18) { if (isvalue(p_response.primitiveContent.any_1[0].Schedule_optional) and not(ispresent(p_response.primitiveContent.any_1[0].Schedule_optional.resourceName))) { p_response.primitiveContent.any_1[0].Schedule_optional.resourceName := p_request.primitiveContent.any_1[0].Schedule_optional.resourceName; + log(__SCOPE__ & ": Info: resourceName not returned. Using the one provided in the request: " & p_request.primitiveContent.any_1[0].Schedule_optional.resourceName) } } case (int23) { if (isvalue(p_response.primitiveContent.any_1[0].Subscription_optional) and not(ispresent(p_response.primitiveContent.any_1[0].Subscription_optional.resourceName))) { p_response.primitiveContent.any_1[0].Subscription_optional.resourceName := p_request.primitiveContent.any_1[0].Subscription_optional.resourceName; + log(__SCOPE__ & ": Info: resourceName not returned. Using the one provided in the request: " & p_request.primitiveContent.any_1[0].Subscription_optional.resourceName) } } case (int9) { if (isvalue(p_response.primitiveContent.any_1[0].Group_optional) and not(ispresent(p_response.primitiveContent.any_1[0].Group_optional.resourceName))) { p_response.primitiveContent.any_1[0].Group_optional.resourceName := p_request.primitiveContent.any_1[0].Group_optional.resourceName; + log(__SCOPE__ & ": Info: resourceName not returned. Using the one provided in the request: " & p_request.primitiveContent.any_1[0].Group_optional.resourceName) } } case else { @@ -1355,7 +1363,7 @@ module OneM2M_Functions { * @param p_announcementTargetResource Announcement Target Resource * @return p_annoucementTargetPoA Announcemenet Target PoA */ - function f_getAnnoucementTargetPoA(in charstring p_protocolBinding := PX_PROTOCOL_BINDING, in charstring p_announcementTargetAddress := PX_CSE1_ADDRESS, charstring p_announcementTargetResource := "/CseBaseTester" ) return charstring { + function f_getAnnouncementTargetPoA(in charstring p_protocolBinding := PX_PROTOCOL_BINDING, in charstring p_announcementTargetAddress := PX_CSE1_ADDRESS, charstring p_announcementTargetResource := "/CseBaseTester" ) return charstring { if(p_protocolBinding == "HTTP") { return "http://" & p_announcementTargetAddress & "/" & p_announcementTargetResource; diff --git a/LibOneM2M/OneM2M_Pixits.ttcn b/LibOneM2M/OneM2M_Pixits.ttcn index d3c432b..ce86553 100644 --- a/LibOneM2M/OneM2M_Pixits.ttcn +++ b/LibOneM2M/OneM2M_Pixits.ttcn @@ -7,7 +7,7 @@ * * @author oneM2M * @version $URL: https://forge.etsi.org/svn/oneM2M/trunk/ttcn/LibOneM2M/OneM2M_Pixits.ttcn $ - * $Id: OneM2M_Pixits.ttcn 286 2017-05-19 06:25:02Z reinaortega $ + * $Id: OneM2M_Pixits.ttcn 287 2017-05-19 06:59:12Z reinaortega $ * @desc Module containing Pixits for oneM2M * */ @@ -40,8 +40,6 @@ module OneM2M_Pixits { modulepar XSD.ID PX_CSE_RESOURCE_ID := "cseResourceId"; - modulepar XSD.AnyURI PX_URI_CSE := "in-name";//TODO to be deleted - modulepar boolean PX_UNSTRUCTURED := false; modulepar XSD.ID PX_AE1_ID_STEM := ""; diff --git a/LibOneM2M/OneM2M_Templates.ttcn b/LibOneM2M/OneM2M_Templates.ttcn index 788bd8c..9e78d7f 100644 --- a/LibOneM2M/OneM2M_Templates.ttcn +++ b/LibOneM2M/OneM2M_Templates.ttcn @@ -7,7 +7,7 @@ * * @author oneM2M * @version $URL: https://forge.etsi.org/svn/oneM2M/trunk/ttcn/LibOneM2M/OneM2M_Templates.ttcn $ - * $Id: OneM2M_Templates.ttcn 286 2017-05-19 06:25:02Z reinaortega $ + * $Id: OneM2M_Templates.ttcn 287 2017-05-19 06:59:12Z reinaortega $ * @desc Module containing templates for oneM2M * */ @@ -95,35 +95,6 @@ module OneM2M_Templates { group RequestPrimitives { group Retrieve { - - /** - * @desc - */ - template (value) RequestPrimitive m_retrieveCseBase := { - operation := int2, - to_ := PX_URI_CSE,//c_uri_cse,//@Martin - from_ := "admin:admin", - requestIdentifier := "m_retrieveCseBase" & f_rnd(1, 1000000), - resourceType := omit, - primitiveContent := omit, - roleIDs := omit, - originatingTimestamp := omit, - requestExpirationTimestamp := omit, - resultExpirationTimestamp := omit, - operationExecutionTime := omit, - responseType := omit, - resultPersistence := omit, - resultContent := omit, - eventCategory := omit, - deliveryAggregation := omit, - groupRequestIdentifier := omit, - filterCriteria := omit, - discoveryResultType := omit, - tokens := omit, - tokenIDs := omit, - localTokenIDs := omit, - tokenRequestIndicator := omit - }; /** * @desc Base RETRIEVE request primitive diff --git a/LibOneM2M/OneM2M_TypesAndValues.ttcn b/LibOneM2M/OneM2M_TypesAndValues.ttcn index fd9b780..c64e3cf 100644 --- a/LibOneM2M/OneM2M_TypesAndValues.ttcn +++ b/LibOneM2M/OneM2M_TypesAndValues.ttcn @@ -7,7 +7,7 @@ * * @author oneM2M * @version $URL: https://forge.etsi.org/svn/oneM2M/trunk/ttcn/LibOneM2M/OneM2M_TypesAndValues.ttcn $ - * $Id: OneM2M_TypesAndValues.ttcn 254 2017-05-02 15:55:08Z reinaortega $ + * $Id: OneM2M_TypesAndValues.ttcn 287 2017-05-19 06:59:12Z reinaortega $ * @desc Module containing types and values for oneM2M * */ @@ -16,10 +16,7 @@ module OneM2M_TypesAndValues { import from XSD all; import from OneM2M_Types all; - /* Constants */ - const charstring c_uri_cse := "/~/in-cse/"; - const charstring c_cse_name := "in-cse"; - + /* Constants */ const XSD.String c_defaultResourceName := "MyResource"; const XSD.String c_defaultGroupResourceName := "MyGroupResource"; const XSD.String c_defaultAccessControlPolicyResourceName := "MyAccessControlPolicyResource"; diff --git a/OneM2M_Testcases.ttcn b/OneM2M_Testcases.ttcn index cd9424e..c8fa74e 100644 --- a/OneM2M_Testcases.ttcn +++ b/OneM2M_Testcases.ttcn @@ -7,7 +7,7 @@ * * @author oneM2M * @version $URL: https://forge.etsi.org/svn/oneM2M/trunk/ttcn/OneM2M_Testcases.ttcn $ - * $Id: OneM2M_Testcases.ttcn 286 2017-05-19 06:25:02Z reinaortega $ + * $Id: OneM2M_Testcases.ttcn 287 2017-05-19 06:59:12Z reinaortega $ * @desc Module containing test cases for oneM2M * */ @@ -2974,7 +2974,7 @@ module OneM2M_Testcases { var template RequestPrimitive v_createRequest := m_createAcpBase; var ResponsePrimitive v_responsePrimitive; - v_createRequest.primitiveContent.any_1[0].AccessControlPolicy_optional.announceTo := {f_getAnnoucementTargetPoA()}; + v_createRequest.primitiveContent.any_1[0].AccessControlPolicy_optional.announceTo := {f_getAnnouncementTargetPoA()}; f_CSE_DMR_CRE_BV_016(int1, v_createRequest, mw_createAccessControlPolicyAnnc);//AccessControlPolicy } @@ -2984,7 +2984,7 @@ module OneM2M_Testcases { var template RequestPrimitive v_createRequest := m_createContainerBase; var ResponsePrimitive v_responsePrimitive; - v_createRequest.primitiveContent.any_1[0].Container_optional.announceTo := {f_getAnnoucementTargetPoA()}; + v_createRequest.primitiveContent.any_1[0].Container_optional.announceTo := {f_getAnnouncementTargetPoA()}; //f_CSE_DMR_CRE_BV_016(int3, v_createRequest, mw_createContainerAnnc);//Container //@ACV f_CSE_DMR_CRE_BV_016(int3, v_createRequest, mw_createContainerAnncBase);//Container @@ -2995,7 +2995,7 @@ module OneM2M_Testcases { var template RequestPrimitive v_createRequest := m_createContentInstanceBase; var ResponsePrimitive v_responsePrimitive; - v_createRequest.primitiveContent.any_1[0].ContentInstance_optional.announceTo := {f_getAnnoucementTargetPoA()}; + v_createRequest.primitiveContent.any_1[0].ContentInstance_optional.announceTo := {f_getAnnouncementTargetPoA()}; //f_CSE_DMR_CRE_BV_016(int4, v_createRequest, mw_createContentInstanceAnnc);//ContentInstance @ACV f_CSE_DMR_CRE_BV_016(int4, v_createRequest, mw_createContentInstanceAnncBase);//ContentInstance @@ -3006,7 +3006,7 @@ module OneM2M_Testcases { var template RequestPrimitive v_createRequest := m_createGroupBase; var ResponsePrimitive v_responsePrimitive; - v_createRequest.primitiveContent.any_1[0].Group_optional.announceTo := {f_getAnnoucementTargetPoA()}; + v_createRequest.primitiveContent.any_1[0].Group_optional.announceTo := {f_getAnnouncementTargetPoA()}; //f_CSE_DMR_CRE_BV_016(int9, v_createRequest, mw_createGroupAnnc);//Group //@ACV f_CSE_DMR_CRE_BV_016(int9, v_createRequest, mw_createGroupAnncBase);//Group @@ -3017,7 +3017,7 @@ module OneM2M_Testcases { var template RequestPrimitive v_createRequest := m_createLocationPolicy(int1, omit, omit, omit, omit); var ResponsePrimitive v_responsePrimitive; - v_createRequest.primitiveContent.any_1[0].LocationPolicy_optional.announceTo := {f_getAnnoucementTargetPoA()}; + v_createRequest.primitiveContent.any_1[0].LocationPolicy_optional.announceTo := {f_getAnnouncementTargetPoA()}; //f_CSE_DMR_CRE_BV_016(int10, v_createRequest, mw_createLocationPolicyAnnc);//LocationPolicy //@ACV f_CSE_DMR_CRE_BV_016(int10, v_createRequest, mw_createLocationPolicyAnncBase);//LocationPolicy @@ -3028,7 +3028,7 @@ module OneM2M_Testcases { var template RequestPrimitive v_createRequest := m_createMgmtObjBase; var ResponsePrimitive v_responsePrimitive; - v_createRequest.primitiveContent.any_1[0].MgmtObj_optional.announceTo := {f_getAnnoucementTargetPoA()}; + v_createRequest.primitiveContent.any_1[0].MgmtObj_optional.announceTo := {f_getAnnouncementTargetPoA()}; //f_CSE_DMR_CRE_BV_016(int13, v_createRequest, mw_createMgmtObjAnnc);//MgmtObj //@ACV f_CSE_DMR_CRE_BV_016(int13, v_createRequest, mw_createMgmtObjAnncBase);//MgmtObj @@ -3039,7 +3039,7 @@ module OneM2M_Testcases { var template RequestPrimitive v_createRequest := m_createNodeBase; var ResponsePrimitive v_responsePrimitive; - v_createRequest.primitiveContent.any_1[0].Node_optional.announceTo := {f_getAnnoucementTargetPoA()}; + v_createRequest.primitiveContent.any_1[0].Node_optional.announceTo := {f_getAnnouncementTargetPoA()}; f_CSE_DMR_CRE_BV_016(int14, v_createRequest, mw_createNodeAnnc);//Node } @@ -3049,7 +3049,7 @@ module OneM2M_Testcases { var template RequestPrimitive v_createRequest := m_createScheduleBase; var ResponsePrimitive v_responsePrimitive; - v_createRequest.primitiveContent.any_1[0].Schedule_optional.announceTo := {f_getAnnoucementTargetPoA()}; + v_createRequest.primitiveContent.any_1[0].Schedule_optional.announceTo := {f_getAnnouncementTargetPoA()}; //f_CSE_DMR_CRE_BV_016(int18, v_createRequest, mw_createScheduleAnnc);//Schedule //@ACV f_CSE_DMR_CRE_BV_016(int18, v_createRequest, mw_createScheduleAnncBase);//Schedule @@ -3122,7 +3122,7 @@ module OneM2M_Testcases { var RequestPrimitive v_requestPrimitive; var XSD.NonNegativeInteger maxByteSize := 512; //Correct value? Shall be indicated in TP? - v_createRequest.primitiveContent.any_1[0].Container_optional.announceTo := {f_getAnnoucementTargetPoA()}; + v_createRequest.primitiveContent.any_1[0].Container_optional.announceTo := {f_getAnnouncementTargetPoA()}; v_createRequest.primitiveContent.any_1[0].Container_optional.maxByteSize := maxByteSize; v_createRequest.primitiveContent.any_1[0].Container_optional.announcedAttribute := {"maxByteSize"}; //Correct value? Shall be indicated in TP? @@ -3148,7 +3148,7 @@ module OneM2M_Testcases { var RequestPrimitive v_requestPrimitive; var XSD.NonNegativeInteger contentSize := 512; //Correct value? Shall be indicated in TP? - v_createRequest.primitiveContent.any_1[0].ContentInstance_optional.announceTo := {f_getAnnoucementTargetPoA()}; + v_createRequest.primitiveContent.any_1[0].ContentInstance_optional.announceTo := {f_getAnnouncementTargetPoA()}; v_createRequest.primitiveContent.any_1[0].ContentInstance_optional.contentSize := contentSize; v_createRequest.primitiveContent.any_1[0].ContentInstance_optional.announcedAttribute := {"contentSize"}; //Correct value? Shall be indicated in TP? @@ -3174,7 +3174,7 @@ module OneM2M_Testcases { var RequestPrimitive v_requestPrimitive; var XSD.PositiveInteger maxNrOfMembers := 10; //Correct value? Shall be indicated in TP? - v_createRequest.primitiveContent.any_1[0].Group_optional.announceTo := {f_getAnnoucementTargetPoA()}; + v_createRequest.primitiveContent.any_1[0].Group_optional.announceTo := {f_getAnnouncementTargetPoA()}; v_createRequest.primitiveContent.any_1[0].Group_optional.maxNrOfMembers := maxNrOfMembers; v_createRequest.primitiveContent.any_1[0].Group_optional.announcedAttribute := {"maxNrOfMembers"}; //Correct value? Shall be indicated in TP? @@ -3200,7 +3200,7 @@ module OneM2M_Testcases { var RequestPrimitive v_requestPrimitive; var LocationSource locationSource := int1;//Network-based //Correct value? Shall be indicated in TP? - v_createRequest.primitiveContent.any_1[0].LocationPolicy_optional.announceTo := {f_getAnnoucementTargetPoA()}; + v_createRequest.primitiveContent.any_1[0].LocationPolicy_optional.announceTo := {f_getAnnouncementTargetPoA()}; v_createRequest.primitiveContent.any_1[0].LocationPolicy_optional.locationSource := locationSource; v_createRequest.primitiveContent.any_1[0].LocationPolicy_optional.announcedAttribute := {"locationSource"}; //Correct value? Shall be indicated in TP? @@ -3226,7 +3226,7 @@ module OneM2M_Testcases { var RequestPrimitive v_requestPrimitive; var XSD.String description := "Description of mgmtObj"; //Correct value? Shall be indicated in TP? - v_createRequest.primitiveContent.any_1[0].MgmtObj_optional.announceTo := {f_getAnnoucementTargetPoA()}; + v_createRequest.primitiveContent.any_1[0].MgmtObj_optional.announceTo := {f_getAnnouncementTargetPoA()}; v_createRequest.primitiveContent.any_1[0].MgmtObj_optional.description := description; v_createRequest.primitiveContent.any_1[0].MgmtObj_optional.announcedAttribute := {"description"}; //Correct value? Shall be indicated in TP? @@ -3251,7 +3251,7 @@ module OneM2M_Testcases { var template RequestPrimitive v_createRequest := m_createNodeBase; var RequestPrimitive v_requestPrimitive; - v_createRequest.primitiveContent.any_1[0].Node_optional.announceTo := {f_getAnnoucementTargetPoA()}; + v_createRequest.primitiveContent.any_1[0].Node_optional.announceTo := {f_getAnnouncementTargetPoA()}; //TODO node to be done. hostedCSELink attribute (OA) to be added!!! @@ -3264,7 +3264,7 @@ module OneM2M_Testcases { var RequestPrimitive v_requestPrimitive; var ScheduleEntries scheduleElement := {{"0,0,0 1 2,1,1,*"}}; - v_createRequest.primitiveContent.any_1[0].Schedule_optional.announceTo := {f_getAnnoucementTargetPoA()}; + v_createRequest.primitiveContent.any_1[0].Schedule_optional.announceTo := {f_getAnnouncementTargetPoA()}; v_createRequest.primitiveContent.any_1[0].Schedule_optional.scheduleElement := scheduleElement; //Correct value? Shall be indicated in TP? v_createRequest.primitiveContent.any_1[0].Schedule_optional.announcedAttribute := {"scheduleElement"}; //Correct value? Shall be indicated in TP? @@ -5957,7 +5957,7 @@ module OneM2M_Testcases { v_createRequest.primitiveContent.any_1[0].AccessControlPolicy_optional.labels := v_labels_1;//Attribute 3 v_updateRequest.primitiveContent.any_1[0].AccessControlPolicy_optional.privileges := v_privileges_2; //Attribute 1 - v_updateRequest.primitiveContent.any_1[0].AccessControlPolicy_optional.announceTo := {PX_URI_CSE};//Attribute 2 + v_updateRequest.primitiveContent.any_1[0].AccessControlPolicy_optional.announceTo := {f_getAnnouncementTargetPoA()};//Attribute 2 v_updateRequest.primitiveContent.any_1[0].AccessControlPolicy_optional.labels := v_labels_2;//Attribute 3 v_nullFields := {{"labels", omit}}; @@ -5995,7 +5995,7 @@ module OneM2M_Testcases { v_createRequest.primitiveContent.any_1[0].Schedule_optional.scheduleElement := {{"0,0,0 1 2,1,1,*"}};//Attribute 1 v_updateRequest.primitiveContent.any_1[0].Schedule_optional.scheduleElement := {{"1,1,1 1 2,1,1,*"}}; //Attribute 1 - v_updateRequest.primitiveContent.any_1[0].Schedule_optional.announceTo := {PX_URI_CSE};//Attribute 2 + v_updateRequest.primitiveContent.any_1[0].Schedule_optional.announceTo := {f_getAnnouncementTargetPoA()};//Attribute 2 v_updateRequest.primitiveContent.any_1[0].Schedule_optional.labels := v_labels_2;//Attribute 3 v_nullFields := {{"labels", omit}}; @@ -10584,7 +10584,7 @@ module OneM2M_Testcases { // Preamble v_aeIndex := f_cse_preamble_registerAe(omit,omit);//c_CUDNDi); - v_ae2Index := f_cse_createResource(int2, m_createAe(PX_APP_ID, -, PX_AE2_ID_STEM, "MyAe2", {f_getAnnoucementTargetPoA("HTTP", PX_AE2_ADDRESS, "")}), -1); + v_ae2Index := f_cse_createResource(int2, m_createAe(PX_APP_ID, -, PX_AE2_ID_STEM, "MyAe2", {f_getAnnouncementTargetPoA("HTTP", PX_AE2_ADDRESS, "")}), -1); v_request := f_getCreateRequestPrimitive(int23, v_createRequest, v_aeIndex);//Subscription v_request.primitiveContent.any_1[0].Subscription_optional.notificationURI := {f_getResourceAddress(v_ae2Index)}; @@ -10643,7 +10643,7 @@ module OneM2M_Testcases { // Preamble v_aeIndex := f_cse_preamble_registerAe(omit,omit);//c_CUDNDi); // set poa to MTC adress - v_ae2Index := f_cse_createResource(int2, m_createAe(PX_APP_ID, -, PX_AE2_ID_STEM, "MyAe2", {f_getAnnoucementTargetPoA("HTTP", PX_AE2_ADDRESS, "")})); + v_ae2Index := f_cse_createResource(int2, m_createAe(PX_APP_ID, -, PX_AE2_ID_STEM, "MyAe2", {f_getAnnouncementTargetPoA("HTTP", PX_AE2_ADDRESS, "")})); v_request := f_getCreateRequestPrimitive(int23, v_createRequest, v_aeIndex);//Subscription v_request.primitiveContent.any_1[0].Subscription_optional.notificationURI := {f_getResourceAddress(v_ae2Index)}; -- GitLab