From 4cee472fc950f4e0d82935f3c7c47bc6a85fc34d Mon Sep 17 00:00:00 2001
From: Miguel Angel Reina Ortega <miguelangel.reinaortega@etsi.org>
Date: Thu, 14 Nov 2024 14:11:07 +0000
Subject: [PATCH] Deployed 90c3142 to v4.3.0 in public with MkDocs 1.6.1 and
 mike 2.1.3

---
 public/latest                                 |   2 +-
 public/latestR4                               |   2 +-
 public/v4.3.0/5.1/index.html                  |   3 ++-
 ...ion_eXtra_Information_for_Test_v4.3.0.docx | Bin 959894 -> 959912 bytes
 ...ion_eXtra_Information_for_Test_v4.3.0.epub | Bin 485920 -> 485941 bytes
 ...tion_eXtra_Information_for_Test_v4.3.0.pdf | Bin 683373 -> 683412 bytes
 public/v4.3.0/feed_json_created.json          |   2 +-
 public/v4.3.0/feed_json_updated.json          |   2 +-
 public/v4.3.0/feed_rss_created.xml            |   2 +-
 public/v4.3.0/feed_rss_updated.xml            |   2 +-
 public/v4.3.0/search/search_index.json        |   2 +-
 public/versions.json                          |  10 +++++-----
 12 files changed, 14 insertions(+), 13 deletions(-)

diff --git a/public/latest b/public/latest
index 4b23c7e2..1ddc0f60 120000
--- a/public/latest
+++ b/public/latest
@@ -1 +1 @@
-v4.1.1
\ No newline at end of file
+v4.3.0
\ No newline at end of file
diff --git a/public/latestR4 b/public/latestR4
index 4b23c7e2..1ddc0f60 120000
--- a/public/latestR4
+++ b/public/latestR4
@@ -1 +1 @@
-v4.1.1
\ No newline at end of file
+v4.3.0
\ No newline at end of file
diff --git a/public/v4.3.0/5.1/index.html b/public/v4.3.0/5.1/index.html
index d8883279..e0e4481f 100644
--- a/public/v4.3.0/5.1/index.html
+++ b/public/v4.3.0/5.1/index.html
@@ -962,7 +962,8 @@
 <p>APTs used by the oneM2M test suite are described in figure 5.1-1. The test system will simulate valid and invalid protocol behaviour, and will analyse the reaction of the IUT.</p>
 <p><img alt="Figure 5.1-1: Abstract protocol testers - oneM2M" src="../media/image2.png" /></p>
 <p><strong>Figure 5.1-1: Abstract protocol testers - oneM2M</strong></p>
-<p>As figure 5.1-1 illustrates, the corresponding ATS needs to use lower layers to establish a proper connection to the system under test (SUT) over a physical link (Lower layers link). Four different lower layers have been specified corresponding to the binding protocols considered in oneM2M: HTTP, CoAP, WebSocket and MQTT.</p>
+<p>As figure 5.1-1 illustrates, the corresponding ATS needs to use lower layers to establish a proper connection to the implementation under test (SUT) over several physical links (Lower layers link). Four different lower layers have been specified corresponding to the binding protocols considered in oneM2M: HTTP, CoAP, WebSocket and MQTT.</p>
+<p>This is a new sentence.</p>
 
 
 
diff --git a/public/v4.3.0/download/TS-0019-Abstract_Test_Suite_and_implementation_eXtra_Information_for_Test_v4.3.0.docx b/public/v4.3.0/download/TS-0019-Abstract_Test_Suite_and_implementation_eXtra_Information_for_Test_v4.3.0.docx
index eed133c54055469329e86033f9180fd3f2856aa4..138ffdcd00716cb685307451a43d54a5a600e7bb 100644
GIT binary patch
delta 17574
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

delta 17593
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
ZxORL_JV@;537Q2eJK7jB+KF&ue*xFiy$}EZ

diff --git a/public/v4.3.0/download/TS-0019-Abstract_Test_Suite_and_implementation_eXtra_Information_for_Test_v4.3.0.epub b/public/v4.3.0/download/TS-0019-Abstract_Test_Suite_and_implementation_eXtra_Information_for_Test_v4.3.0.epub
index 84be14dca271e1f02599434aaaddc2bdd5845d6b..9b4a00a6b2de8996486ff4dd3d7d86b2d28b3357 100644
GIT binary patch
delta 10557
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

delta 10441
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
LtdAM+pQZi><=D2~

diff --git a/public/v4.3.0/download/TS-0019-Abstract_Test_Suite_and_implementation_eXtra_Information_for_Test_v4.3.0.pdf b/public/v4.3.0/download/TS-0019-Abstract_Test_Suite_and_implementation_eXtra_Information_for_Test_v4.3.0.pdf
index da801fd34b115f2c27fa2b74c0802ba6cd32f707..7f29fff9e66f35968a53c7e8c5d2c8e43dca4c13 100644
GIT binary patch
delta 11776
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
anYg%lxmZ{t^6;|ra&jQj&`7CBBmNJ4e{*#J

delta 11728
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

diff --git a/public/v4.3.0/feed_json_created.json b/public/v4.3.0/feed_json_created.json
index cb5abf79..1877a6f4 100644
--- a/public/v4.3.0/feed_json_created.json
+++ b/public/v4.3.0/feed_json_created.json
@@ -1 +1 @@
-{"version": "https://jsonfeed.org/version/1", "title": "oneM2M TS-0019", "home_page_url": "https://specifications.onem2m.org/ts-0019/v4.3.0/", "feed_url": "https://specifications.onem2m.org/ts-0019/v4.3.0/feed_json_created.json", "description": "oneM2M Specifications navigator", "icon": null, "authors": [], "language": "en", "items": [{"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/download/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/download/", "title": "Download", "content_html": "<p>Download baseline for TS-0019 version v4.3.0:</p>\n<p>[<img alt=\"Word\" src=\"images/Word.png\">](TS-0019-Abstract_Test_Suite_and_implementation_eXtra_Information_for_Test_v4.3.0.do...</p>", "image": null, "date_published": "2024-11-14T14:08:10.765506+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/B/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/B/", "title": "Annex B (informative): Bibliography", "content_html": "<p>ISO/IEC 9646-6 (1994): \"Information technology - Open Systems Interconnection - Conformance testing methodology and framework - Part 6: Protocol profile test...</p>", "image": null, "date_published": "2024-11-14T14:08:10.748089+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/A/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/A/", "title": "A", "content_html": "", "image": null, "date_published": "2024-11-14T14:08:10.725345+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/A.1/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/A.1/", "title": "A.1 Electronic annex, zip file with TTCN-3 code", "content_html": "<p>This ATS has been produced using the Testing and Test Control Notation (TTCN) according to ETSI ES 201 873-1 <a href=\"../2.1/#_ref_6\">[6]</a>.</p>\n<p>This test sui...</p>", "image": null, "date_published": "2024-11-14T14:08:10.710841+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/8/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/8/", "title": "8 TTCN-3 Verifications", "content_html": "<p>The principles for Verifying the TTCN-3 test code are given in oneM2M TS-0015 <a href=\"../2.2/#_ref_i.2\">[i.2]</a>.</p>\n<p>All test cases provided with the present...</p>", "image": null, "date_published": "2024-11-14T14:08:10.686542+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7/", "title": "7", "content_html": "", "image": null, "date_published": "2024-11-14T14:08:10.664971+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.3/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.3/", "title": "7.3 IXIT", "content_html": "<p>The following parameters are used by the oneM2M ATS for the correct execution of the test cases.</p>\n<p><strong>Table 7.3-1: oneM2M ATS IXITs</strong><a name=\"table_7.3-1\">&lt;/a...</p>", "image": null, "date_published": "2024-11-14T14:08:10.651037+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.2/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.2/", "title": "7.2 Naming conventions", "content_html": "<h3>7.2.1 General guidelines</h3>\n<p>This test suite follows the naming convention guidelines provided in oneM2M TS-0015 <a href=\"../2.2/#_ref_i.2\">[i.2]</a>.</p>\n<p>The n...</p>", "image": null, "date_published": "2024-11-14T14:08:10.622633+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.1/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.1/", "title": "7.1 Testing conventions", "content_html": "<h3>7.1.1 Testing states</h3>\n<h4>7.1.1.1 Initial state</h4>\n<p>All test cases start with the function f_preamble_XYZ. This function brings the IUT in an \"initialized...</p>", "image": null, "date_published": "2024-11-14T14:08:10.590531+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.0/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.0/", "title": "7.0 Introduction", "content_html": "<p>The ATS conventions are intended to give a better understanding of the ATS but they also describe the conventions made for the development of the ATS. These ...</p>", "image": null, "date_published": "2024-11-14T14:08:10.575587+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/6/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/6/", "title": "6 Untestable Test Purposes", "content_html": "<p>Void.</p>", "image": null, "date_published": "2024-11-14T14:08:10.554747+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5/", "title": "5", "content_html": "", "image": null, "date_published": "2024-11-14T14:08:10.539844+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.6/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.6/", "title": "5.6 Test strategy", "content_html": "<p>This clause introduces the test strategy being used for the TTCN-3 test cases. The chosen strategy permits to have a clear structure of the code that facilit...</p>", "image": null, "date_published": "2024-11-14T14:08:10.524218+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.5/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.5/", "title": "5.5 Test components", "content_html": "<h3>5.5.1 Tester</h3>\n<p>The Tester test component includes a set of ports, timers and variables that are common to the other defined components which are described ...</p>", "image": null, "date_published": "2024-11-14T14:08:10.503780+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.4/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.4/", "title": "5.4 Ports and ASPs (Abstract Services Primitives)", "content_html": "<h3>5.4.0 Introduction</h3>\n<p>The oneM2M ATS implements the following ports:</p>\n<ul>\n<li>The mcaPort and mcaPortIn</li>\n<li>The mccPort and mccPortIn</li>\n<li>The acPort</li>\n<li>The utPort</li>\n<li>...</li>\n</ul>", "image": null, "date_published": "2024-11-14T14:08:10.471821+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.3/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.3/", "title": "5.3 Test architecture", "content_html": "<p>The approach for the implementation of an Abstract Protocol Tester selected in oneM2M follows the recommendation of the oneM2M Testing Framework oneM2M TS-00...</p>", "image": null, "date_published": "2024-11-14T14:08:10.420528+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.2/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.2/", "title": "5.2 Test Configuration", "content_html": "<h3>5.2.1 AE Test Configuration</h3>\n<p>Test configurations are defined to test different entities such as CSE and AE, etc.</p>\n<p>Figure 5.2.1-1 shows a AE test configura...</p>", "image": null, "date_published": "2024-11-14T14:08:10.399997+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.1/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.1/", "title": "5.1 Abstract protocol tester", "content_html": "<p>An abstract protocol tester (APT) is a process that provides behaviours for testing an IUT by emulating a peer IUT at the same layer, and enabling to address...</p>", "image": null, "date_published": "2024-11-14T14:08:10.381903+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/4/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/4/", "title": "4 Conventions", "content_html": "<p>The key words \"Shall\", \"Shall not\", \"May\", \"Need not\", \"Should\", \"Should not\" in this document are to be interpreted as described in the oneM2M Drafting Rule...</p>", "image": null, "date_published": "2024-11-14T14:08:10.366614+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/3/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/3/", "title": "3", "content_html": "", "image": null, "date_published": "2024-11-14T14:08:10.349898+00:00", "authors": [], "tags": null}]}
\ No newline at end of file
+{"version": "https://jsonfeed.org/version/1", "title": "oneM2M TS-0019", "home_page_url": "https://specifications.onem2m.org/ts-0019/v4.3.0/", "feed_url": "https://specifications.onem2m.org/ts-0019/v4.3.0/feed_json_created.json", "description": "oneM2M Specifications navigator", "icon": null, "authors": [], "language": "en", "items": [{"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/download/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/download/", "title": "Download", "content_html": "<p>Download baseline for TS-0019 version v4.3.0:</p>\n<p>[<img alt=\"Word\" src=\"images/Word.png\">](TS-0019-Abstract_Test_Suite_and_implementation_eXtra_Information_for_Test_v4.3.0.do...</p>", "image": null, "date_published": "2024-11-14T14:11:07.543489+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/B/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/B/", "title": "Annex B (informative): Bibliography", "content_html": "<p>ISO/IEC 9646-6 (1994): \"Information technology - Open Systems Interconnection - Conformance testing methodology and framework - Part 6: Protocol profile test...</p>", "image": null, "date_published": "2024-11-14T14:11:07.525785+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/A/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/A/", "title": "A", "content_html": "", "image": null, "date_published": "2024-11-14T14:11:07.508651+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/A.1/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/A.1/", "title": "A.1 Electronic annex, zip file with TTCN-3 code", "content_html": "<p>This ATS has been produced using the Testing and Test Control Notation (TTCN) according to ETSI ES 201 873-1 <a href=\"../2.1/#_ref_6\">[6]</a>.</p>\n<p>This test sui...</p>", "image": null, "date_published": "2024-11-14T14:11:07.492855+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/8/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/8/", "title": "8 TTCN-3 Verifications", "content_html": "<p>The principles for Verifying the TTCN-3 test code are given in oneM2M TS-0015 <a href=\"../2.2/#_ref_i.2\">[i.2]</a>.</p>\n<p>All test cases provided with the present...</p>", "image": null, "date_published": "2024-11-14T14:11:07.469418+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7/", "title": "7", "content_html": "", "image": null, "date_published": "2024-11-14T14:11:07.454527+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.3/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.3/", "title": "7.3 IXIT", "content_html": "<p>The following parameters are used by the oneM2M ATS for the correct execution of the test cases.</p>\n<p><strong>Table 7.3-1: oneM2M ATS IXITs</strong><a name=\"table_7.3-1\">&lt;/a...</p>", "image": null, "date_published": "2024-11-14T14:11:07.439791+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.2/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.2/", "title": "7.2 Naming conventions", "content_html": "<h3>7.2.1 General guidelines</h3>\n<p>This test suite follows the naming convention guidelines provided in oneM2M TS-0015 <a href=\"../2.2/#_ref_i.2\">[i.2]</a>.</p>\n<p>The n...</p>", "image": null, "date_published": "2024-11-14T14:11:07.410771+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.1/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.1/", "title": "7.1 Testing conventions", "content_html": "<h3>7.1.1 Testing states</h3>\n<h4>7.1.1.1 Initial state</h4>\n<p>All test cases start with the function f_preamble_XYZ. This function brings the IUT in an \"initialized...</p>", "image": null, "date_published": "2024-11-14T14:11:07.376481+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.0/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.0/", "title": "7.0 Introduction", "content_html": "<p>The ATS conventions are intended to give a better understanding of the ATS but they also describe the conventions made for the development of the ATS. These ...</p>", "image": null, "date_published": "2024-11-14T14:11:07.323022+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/6/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/6/", "title": "6 Untestable Test Purposes", "content_html": "<p>Void.</p>", "image": null, "date_published": "2024-11-14T14:11:07.303102+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5/", "title": "5", "content_html": "", "image": null, "date_published": "2024-11-14T14:11:07.287020+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.6/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.6/", "title": "5.6 Test strategy", "content_html": "<p>This clause introduces the test strategy being used for the TTCN-3 test cases. The chosen strategy permits to have a clear structure of the code that facilit...</p>", "image": null, "date_published": "2024-11-14T14:11:07.272556+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.5/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.5/", "title": "5.5 Test components", "content_html": "<h3>5.5.1 Tester</h3>\n<p>The Tester test component includes a set of ports, timers and variables that are common to the other defined components which are described ...</p>", "image": null, "date_published": "2024-11-14T14:11:07.253780+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.4/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.4/", "title": "5.4 Ports and ASPs (Abstract Services Primitives)", "content_html": "<h3>5.4.0 Introduction</h3>\n<p>The oneM2M ATS implements the following ports:</p>\n<ul>\n<li>The mcaPort and mcaPortIn</li>\n<li>The mccPort and mccPortIn</li>\n<li>The acPort</li>\n<li>The utPort</li>\n<li>...</li>\n</ul>", "image": null, "date_published": "2024-11-14T14:11:07.218030+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.3/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.3/", "title": "5.3 Test architecture", "content_html": "<p>The approach for the implementation of an Abstract Protocol Tester selected in oneM2M follows the recommendation of the oneM2M Testing Framework oneM2M TS-00...</p>", "image": null, "date_published": "2024-11-14T14:11:07.161434+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.2/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.2/", "title": "5.2 Test Configuration", "content_html": "<h3>5.2.1 AE Test Configuration</h3>\n<p>Test configurations are defined to test different entities such as CSE and AE, etc.</p>\n<p>Figure 5.2.1-1 shows a AE test configura...</p>", "image": null, "date_published": "2024-11-14T14:11:07.139045+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.1/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.1/", "title": "5.1 Abstract protocol tester", "content_html": "<p>An abstract protocol tester (APT) is a process that provides behaviours for testing an IUT by emulating a peer IUT at the same layer, and enabling to address...</p>", "image": null, "date_published": "2024-11-14T14:11:07.119520+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/4/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/4/", "title": "4 Conventions", "content_html": "<p>The key words \"Shall\", \"Shall not\", \"May\", \"Need not\", \"Should\", \"Should not\" in this document are to be interpreted as described in the oneM2M Drafting Rule...</p>", "image": null, "date_published": "2024-11-14T14:11:07.102124+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/3/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/3/", "title": "3", "content_html": "", "image": null, "date_published": "2024-11-14T14:11:07.084522+00:00", "authors": [], "tags": null}]}
\ No newline at end of file
diff --git a/public/v4.3.0/feed_json_updated.json b/public/v4.3.0/feed_json_updated.json
index 06fd4611..7ce6594b 100644
--- a/public/v4.3.0/feed_json_updated.json
+++ b/public/v4.3.0/feed_json_updated.json
@@ -1 +1 @@
-{"version": "https://jsonfeed.org/version/1", "title": "oneM2M TS-0019", "home_page_url": "https://specifications.onem2m.org/ts-0019/v4.3.0/", "feed_url": "https://specifications.onem2m.org/ts-0019/v4.3.0/feed_json_updated.json", "description": "oneM2M Specifications navigator", "icon": null, "authors": [], "language": "en", "items": [{"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/download/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/download/", "title": "Download", "content_html": "<p>Download baseline for TS-0019 version v4.3.0:</p>\n<p>[<img alt=\"Word\" src=\"images/Word.png\">](TS-0019-Abstract_Test_Suite_and_implementation_eXtra_Information_for_Test_v4.3.0.do...</p>", "image": null, "date_modified": "2024-11-14T14:08:10.765520+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/B/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/B/", "title": "Annex B (informative): Bibliography", "content_html": "<p>ISO/IEC 9646-6 (1994): \"Information technology - Open Systems Interconnection - Conformance testing methodology and framework - Part 6: Protocol profile test...</p>", "image": null, "date_modified": "2024-11-14T14:08:10.748103+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/A/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/A/", "title": "A", "content_html": "", "image": null, "date_modified": "2024-11-14T14:08:10.725359+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/A.1/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/A.1/", "title": "A.1 Electronic annex, zip file with TTCN-3 code", "content_html": "<p>This ATS has been produced using the Testing and Test Control Notation (TTCN) according to ETSI ES 201 873-1 <a href=\"../2.1/#_ref_6\">[6]</a>.</p>\n<p>This test sui...</p>", "image": null, "date_modified": "2024-11-14T14:08:10.710855+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/8/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/8/", "title": "8 TTCN-3 Verifications", "content_html": "<p>The principles for Verifying the TTCN-3 test code are given in oneM2M TS-0015 <a href=\"../2.2/#_ref_i.2\">[i.2]</a>.</p>\n<p>All test cases provided with the present...</p>", "image": null, "date_modified": "2024-11-14T14:08:10.686556+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7/", "title": "7", "content_html": "", "image": null, "date_modified": "2024-11-14T14:08:10.664984+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.3/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.3/", "title": "7.3 IXIT", "content_html": "<p>The following parameters are used by the oneM2M ATS for the correct execution of the test cases.</p>\n<p><strong>Table 7.3-1: oneM2M ATS IXITs</strong><a name=\"table_7.3-1\">&lt;/a...</p>", "image": null, "date_modified": "2024-11-14T14:08:10.651050+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.2/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.2/", "title": "7.2 Naming conventions", "content_html": "<h3>7.2.1 General guidelines</h3>\n<p>This test suite follows the naming convention guidelines provided in oneM2M TS-0015 <a href=\"../2.2/#_ref_i.2\">[i.2]</a>.</p>\n<p>The n...</p>", "image": null, "date_modified": "2024-11-14T14:08:10.622647+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.1/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.1/", "title": "7.1 Testing conventions", "content_html": "<h3>7.1.1 Testing states</h3>\n<h4>7.1.1.1 Initial state</h4>\n<p>All test cases start with the function f_preamble_XYZ. This function brings the IUT in an \"initialized...</p>", "image": null, "date_modified": "2024-11-14T14:08:10.590544+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.0/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.0/", "title": "7.0 Introduction", "content_html": "<p>The ATS conventions are intended to give a better understanding of the ATS but they also describe the conventions made for the development of the ATS. These ...</p>", "image": null, "date_modified": "2024-11-14T14:08:10.575600+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/6/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/6/", "title": "6 Untestable Test Purposes", "content_html": "<p>Void.</p>", "image": null, "date_modified": "2024-11-14T14:08:10.554760+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5/", "title": "5", "content_html": "", "image": null, "date_modified": "2024-11-14T14:08:10.539857+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.6/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.6/", "title": "5.6 Test strategy", "content_html": "<p>This clause introduces the test strategy being used for the TTCN-3 test cases. The chosen strategy permits to have a clear structure of the code that facilit...</p>", "image": null, "date_modified": "2024-11-14T14:08:10.524235+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.5/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.5/", "title": "5.5 Test components", "content_html": "<h3>5.5.1 Tester</h3>\n<p>The Tester test component includes a set of ports, timers and variables that are common to the other defined components which are described ...</p>", "image": null, "date_modified": "2024-11-14T14:08:10.503794+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.4/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.4/", "title": "5.4 Ports and ASPs (Abstract Services Primitives)", "content_html": "<h3>5.4.0 Introduction</h3>\n<p>The oneM2M ATS implements the following ports:</p>\n<ul>\n<li>The mcaPort and mcaPortIn</li>\n<li>The mccPort and mccPortIn</li>\n<li>The acPort</li>\n<li>The utPort</li>\n<li>...</li>\n</ul>", "image": null, "date_modified": "2024-11-14T14:08:10.471834+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.3/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.3/", "title": "5.3 Test architecture", "content_html": "<p>The approach for the implementation of an Abstract Protocol Tester selected in oneM2M follows the recommendation of the oneM2M Testing Framework oneM2M TS-00...</p>", "image": null, "date_modified": "2024-11-14T14:08:10.420542+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.2/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.2/", "title": "5.2 Test Configuration", "content_html": "<h3>5.2.1 AE Test Configuration</h3>\n<p>Test configurations are defined to test different entities such as CSE and AE, etc.</p>\n<p>Figure 5.2.1-1 shows a AE test configura...</p>", "image": null, "date_modified": "2024-11-14T14:08:10.400011+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.1/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.1/", "title": "5.1 Abstract protocol tester", "content_html": "<p>An abstract protocol tester (APT) is a process that provides behaviours for testing an IUT by emulating a peer IUT at the same layer, and enabling to address...</p>", "image": null, "date_modified": "2024-11-14T14:08:10.381916+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/4/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/4/", "title": "4 Conventions", "content_html": "<p>The key words \"Shall\", \"Shall not\", \"May\", \"Need not\", \"Should\", \"Should not\" in this document are to be interpreted as described in the oneM2M Drafting Rule...</p>", "image": null, "date_modified": "2024-11-14T14:08:10.366627+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/3/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/3/", "title": "3", "content_html": "", "image": null, "date_modified": "2024-11-14T14:08:10.349910+00:00", "authors": [], "tags": null}]}
\ No newline at end of file
+{"version": "https://jsonfeed.org/version/1", "title": "oneM2M TS-0019", "home_page_url": "https://specifications.onem2m.org/ts-0019/v4.3.0/", "feed_url": "https://specifications.onem2m.org/ts-0019/v4.3.0/feed_json_updated.json", "description": "oneM2M Specifications navigator", "icon": null, "authors": [], "language": "en", "items": [{"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/download/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/download/", "title": "Download", "content_html": "<p>Download baseline for TS-0019 version v4.3.0:</p>\n<p>[<img alt=\"Word\" src=\"images/Word.png\">](TS-0019-Abstract_Test_Suite_and_implementation_eXtra_Information_for_Test_v4.3.0.do...</p>", "image": null, "date_modified": "2024-11-14T14:11:07.543505+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/B/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/B/", "title": "Annex B (informative): Bibliography", "content_html": "<p>ISO/IEC 9646-6 (1994): \"Information technology - Open Systems Interconnection - Conformance testing methodology and framework - Part 6: Protocol profile test...</p>", "image": null, "date_modified": "2024-11-14T14:11:07.525804+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/A/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/A/", "title": "A", "content_html": "", "image": null, "date_modified": "2024-11-14T14:11:07.508667+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/A.1/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/A.1/", "title": "A.1 Electronic annex, zip file with TTCN-3 code", "content_html": "<p>This ATS has been produced using the Testing and Test Control Notation (TTCN) according to ETSI ES 201 873-1 <a href=\"../2.1/#_ref_6\">[6]</a>.</p>\n<p>This test sui...</p>", "image": null, "date_modified": "2024-11-14T14:11:07.492871+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/8/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/8/", "title": "8 TTCN-3 Verifications", "content_html": "<p>The principles for Verifying the TTCN-3 test code are given in oneM2M TS-0015 <a href=\"../2.2/#_ref_i.2\">[i.2]</a>.</p>\n<p>All test cases provided with the present...</p>", "image": null, "date_modified": "2024-11-14T14:11:07.469433+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7/", "title": "7", "content_html": "", "image": null, "date_modified": "2024-11-14T14:11:07.454544+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.3/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.3/", "title": "7.3 IXIT", "content_html": "<p>The following parameters are used by the oneM2M ATS for the correct execution of the test cases.</p>\n<p><strong>Table 7.3-1: oneM2M ATS IXITs</strong><a name=\"table_7.3-1\">&lt;/a...</p>", "image": null, "date_modified": "2024-11-14T14:11:07.439807+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.2/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.2/", "title": "7.2 Naming conventions", "content_html": "<h3>7.2.1 General guidelines</h3>\n<p>This test suite follows the naming convention guidelines provided in oneM2M TS-0015 <a href=\"../2.2/#_ref_i.2\">[i.2]</a>.</p>\n<p>The n...</p>", "image": null, "date_modified": "2024-11-14T14:11:07.410788+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.1/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.1/", "title": "7.1 Testing conventions", "content_html": "<h3>7.1.1 Testing states</h3>\n<h4>7.1.1.1 Initial state</h4>\n<p>All test cases start with the function f_preamble_XYZ. This function brings the IUT in an \"initialized...</p>", "image": null, "date_modified": "2024-11-14T14:11:07.376499+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.0/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/7.0/", "title": "7.0 Introduction", "content_html": "<p>The ATS conventions are intended to give a better understanding of the ATS but they also describe the conventions made for the development of the ATS. These ...</p>", "image": null, "date_modified": "2024-11-14T14:11:07.323038+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/6/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/6/", "title": "6 Untestable Test Purposes", "content_html": "<p>Void.</p>", "image": null, "date_modified": "2024-11-14T14:11:07.303118+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5/", "title": "5", "content_html": "", "image": null, "date_modified": "2024-11-14T14:11:07.287038+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.6/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.6/", "title": "5.6 Test strategy", "content_html": "<p>This clause introduces the test strategy being used for the TTCN-3 test cases. The chosen strategy permits to have a clear structure of the code that facilit...</p>", "image": null, "date_modified": "2024-11-14T14:11:07.272573+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.5/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.5/", "title": "5.5 Test components", "content_html": "<h3>5.5.1 Tester</h3>\n<p>The Tester test component includes a set of ports, timers and variables that are common to the other defined components which are described ...</p>", "image": null, "date_modified": "2024-11-14T14:11:07.253801+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.4/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.4/", "title": "5.4 Ports and ASPs (Abstract Services Primitives)", "content_html": "<h3>5.4.0 Introduction</h3>\n<p>The oneM2M ATS implements the following ports:</p>\n<ul>\n<li>The mcaPort and mcaPortIn</li>\n<li>The mccPort and mccPortIn</li>\n<li>The acPort</li>\n<li>The utPort</li>\n<li>...</li>\n</ul>", "image": null, "date_modified": "2024-11-14T14:11:07.218047+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.3/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.3/", "title": "5.3 Test architecture", "content_html": "<p>The approach for the implementation of an Abstract Protocol Tester selected in oneM2M follows the recommendation of the oneM2M Testing Framework oneM2M TS-00...</p>", "image": null, "date_modified": "2024-11-14T14:11:07.161451+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.2/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.2/", "title": "5.2 Test Configuration", "content_html": "<h3>5.2.1 AE Test Configuration</h3>\n<p>Test configurations are defined to test different entities such as CSE and AE, etc.</p>\n<p>Figure 5.2.1-1 shows a AE test configura...</p>", "image": null, "date_modified": "2024-11-14T14:11:07.139062+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.1/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/5.1/", "title": "5.1 Abstract protocol tester", "content_html": "<p>An abstract protocol tester (APT) is a process that provides behaviours for testing an IUT by emulating a peer IUT at the same layer, and enabling to address...</p>", "image": null, "date_modified": "2024-11-14T14:11:07.119537+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/4/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/4/", "title": "4 Conventions", "content_html": "<p>The key words \"Shall\", \"Shall not\", \"May\", \"Need not\", \"Should\", \"Should not\" in this document are to be interpreted as described in the oneM2M Drafting Rule...</p>", "image": null, "date_modified": "2024-11-14T14:11:07.102140+00:00", "authors": [], "tags": null}, {"id": "https://specifications.onem2m.org/ts-0019/v4.3.0/3/", "url": "https://specifications.onem2m.org/ts-0019/v4.3.0/3/", "title": "3", "content_html": "", "image": null, "date_modified": "2024-11-14T14:11:07.084540+00:00", "authors": [], "tags": null}]}
\ No newline at end of file
diff --git a/public/v4.3.0/feed_rss_created.xml b/public/v4.3.0/feed_rss_created.xml
index 60b97fe3..ccffda3d 100644
--- a/public/v4.3.0/feed_rss_created.xml
+++ b/public/v4.3.0/feed_rss_created.xml
@@ -1 +1 @@
-<?xml version="1.0" encoding="UTF-8" ?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/"> <channel><title>oneM2M TS-0019</title><description>oneM2M Specifications navigator</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/</link><atom:link href="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml" rel="self" type="application/rss+xml" /><docs>https://git.onem2m.org/specifications/ts/ts-0019.git</docs><language>en</language> <pubDate>Thu, 14 Nov 2024 14:08:10 -0000</pubDate> <lastBuildDate>Thu, 14 Nov 2024 14:08:10 -0000</lastBuildDate> <ttl>1440</ttl> <generator>MkDocs RSS plugin - v1.16.0</generator> <item> <title>Download</title> <description>&lt;p&gt;Download baseline for TS-0019 version v4.3.0:&lt;/p&gt;&lt;p&gt;[&lt;img alt=&#34;Word&#34; src=&#34;images/Word.png&#34;&gt;](TS-0019-Abstract_Test_Suite_and_implementation_eXtra_Information_for_Test_v4.3.0.do...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/download/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/download/</guid> </item> <item> <title>Annex B (informative): Bibliography</title> <description>&lt;p&gt;ISO/IEC 9646-6 (1994): &#34;Information technology - Open Systems Interconnection - Conformance testing methodology and framework - Part 6: Protocol profile test...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/B/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/B/</guid> </item> <item> <title>A</title> <description></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/A/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/A/</guid> </item> <item> <title>A.1 Electronic annex, zip file with TTCN-3 code</title> <description>&lt;p&gt;This ATS has been produced using the Testing and Test Control Notation (TTCN) according to ETSI ES 201 873-1 &lt;a href=&#34;../2.1/#_ref_6&#34;&gt;[6]&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;This test sui...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/A.1/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/A.1/</guid> </item> <item> <title>8 TTCN-3 Verifications</title> <description>&lt;p&gt;The principles for Verifying the TTCN-3 test code are given in oneM2M TS-0015 &lt;a href=&#34;../2.2/#_ref_i.2&#34;&gt;[i.2]&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;All test cases provided with the present...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/8/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/8/</guid> </item> <item> <title>7</title> <description></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7/</guid> </item> <item> <title>7.3 IXIT</title> <description>&lt;p&gt;The following parameters are used by the oneM2M ATS for the correct execution of the test cases.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Table 7.3-1: oneM2M ATS IXITs&lt;/strong&gt;&lt;a name=&#34;table_7.3-1&#34;&gt;&amp;lt;/a...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7.3/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7.3/</guid> </item> <item> <title>7.2 Naming conventions</title> <description>&lt;h3&gt;7.2.1 General guidelines&lt;/h3&gt;&lt;p&gt;This test suite follows the naming convention guidelines provided in oneM2M TS-0015 &lt;a href=&#34;../2.2/#_ref_i.2&#34;&gt;[i.2]&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;The n...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7.2/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7.2/</guid> </item> <item> <title>7.1 Testing conventions</title> <description>&lt;h3&gt;7.1.1 Testing states&lt;/h3&gt;&lt;h4&gt;7.1.1.1 Initial state&lt;/h4&gt;&lt;p&gt;All test cases start with the function f_preamble_XYZ. This function brings the IUT in an &#34;initialized...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7.1/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7.1/</guid> </item> <item> <title>7.0 Introduction</title> <description>&lt;p&gt;The ATS conventions are intended to give a better understanding of the ATS but they also describe the conventions made for the development of the ATS. These ...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7.0/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7.0/</guid> </item> <item> <title>6 Untestable Test Purposes</title> <description>&lt;p&gt;Void.&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/6/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/6/</guid> </item> <item> <title>5</title> <description></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5/</guid> </item> <item> <title>5.6 Test strategy</title> <description>&lt;p&gt;This clause introduces the test strategy being used for the TTCN-3 test cases. The chosen strategy permits to have a clear structure of the code that facilit...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.6/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.6/</guid> </item> <item> <title>5.5 Test components</title> <description>&lt;h3&gt;5.5.1 Tester&lt;/h3&gt;&lt;p&gt;The Tester test component includes a set of ports, timers and variables that are common to the other defined components which are described ...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.5/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.5/</guid> </item> <item> <title>5.4 Ports and ASPs (Abstract Services Primitives)</title> <description>&lt;h3&gt;5.4.0 Introduction&lt;/h3&gt;&lt;p&gt;The oneM2M ATS implements the following ports:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;The mcaPort and mcaPortIn&lt;/li&gt;&lt;li&gt;The mccPort and mccPortIn&lt;/li&gt;&lt;li&gt;The acPort&lt;/li&gt;&lt;li&gt;The utPort&lt;/li&gt;&lt;li&gt;...&lt;/li&gt;&lt;/ul&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.4/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.4/</guid> </item> <item> <title>5.3 Test architecture</title> <description>&lt;p&gt;The approach for the implementation of an Abstract Protocol Tester selected in oneM2M follows the recommendation of the oneM2M Testing Framework oneM2M TS-00...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.3/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.3/</guid> </item> <item> <title>5.2 Test Configuration</title> <description>&lt;h3&gt;5.2.1 AE Test Configuration&lt;/h3&gt;&lt;p&gt;Test configurations are defined to test different entities such as CSE and AE, etc.&lt;/p&gt;&lt;p&gt;Figure 5.2.1-1 shows a AE test configura...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.2/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.2/</guid> </item> <item> <title>5.1 Abstract protocol tester</title> <description>&lt;p&gt;An abstract protocol tester (APT) is a process that provides behaviours for testing an IUT by emulating a peer IUT at the same layer, and enabling to address...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.1/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.1/</guid> </item> <item> <title>4 Conventions</title> <description>&lt;p&gt;The key words &#34;Shall&#34;, &#34;Shall not&#34;, &#34;May&#34;, &#34;Need not&#34;, &#34;Should&#34;, &#34;Should not&#34; in this document are to be interpreted as described in the oneM2M Drafting Rule...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/4/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/4/</guid> </item> <item> <title>3</title> <description></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/3/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/3/</guid> </item> </channel></rss>
\ No newline at end of file
+<?xml version="1.0" encoding="UTF-8" ?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/"> <channel><title>oneM2M TS-0019</title><description>oneM2M Specifications navigator</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/</link><atom:link href="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml" rel="self" type="application/rss+xml" /><docs>https://git.onem2m.org/specifications/ts/ts-0019.git</docs><language>en</language> <pubDate>Thu, 14 Nov 2024 14:11:06 -0000</pubDate> <lastBuildDate>Thu, 14 Nov 2024 14:11:06 -0000</lastBuildDate> <ttl>1440</ttl> <generator>MkDocs RSS plugin - v1.16.0</generator> <item> <title>Download</title> <description>&lt;p&gt;Download baseline for TS-0019 version v4.3.0:&lt;/p&gt;&lt;p&gt;[&lt;img alt=&#34;Word&#34; src=&#34;images/Word.png&#34;&gt;](TS-0019-Abstract_Test_Suite_and_implementation_eXtra_Information_for_Test_v4.3.0.do...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/download/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/download/</guid> </item> <item> <title>Annex B (informative): Bibliography</title> <description>&lt;p&gt;ISO/IEC 9646-6 (1994): &#34;Information technology - Open Systems Interconnection - Conformance testing methodology and framework - Part 6: Protocol profile test...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/B/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/B/</guid> </item> <item> <title>A</title> <description></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/A/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/A/</guid> </item> <item> <title>A.1 Electronic annex, zip file with TTCN-3 code</title> <description>&lt;p&gt;This ATS has been produced using the Testing and Test Control Notation (TTCN) according to ETSI ES 201 873-1 &lt;a href=&#34;../2.1/#_ref_6&#34;&gt;[6]&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;This test sui...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/A.1/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/A.1/</guid> </item> <item> <title>8 TTCN-3 Verifications</title> <description>&lt;p&gt;The principles for Verifying the TTCN-3 test code are given in oneM2M TS-0015 &lt;a href=&#34;../2.2/#_ref_i.2&#34;&gt;[i.2]&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;All test cases provided with the present...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/8/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/8/</guid> </item> <item> <title>7</title> <description></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7/</guid> </item> <item> <title>7.3 IXIT</title> <description>&lt;p&gt;The following parameters are used by the oneM2M ATS for the correct execution of the test cases.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Table 7.3-1: oneM2M ATS IXITs&lt;/strong&gt;&lt;a name=&#34;table_7.3-1&#34;&gt;&amp;lt;/a...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7.3/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7.3/</guid> </item> <item> <title>7.2 Naming conventions</title> <description>&lt;h3&gt;7.2.1 General guidelines&lt;/h3&gt;&lt;p&gt;This test suite follows the naming convention guidelines provided in oneM2M TS-0015 &lt;a href=&#34;../2.2/#_ref_i.2&#34;&gt;[i.2]&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;The n...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7.2/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7.2/</guid> </item> <item> <title>7.1 Testing conventions</title> <description>&lt;h3&gt;7.1.1 Testing states&lt;/h3&gt;&lt;h4&gt;7.1.1.1 Initial state&lt;/h4&gt;&lt;p&gt;All test cases start with the function f_preamble_XYZ. This function brings the IUT in an &#34;initialized...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7.1/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7.1/</guid> </item> <item> <title>7.0 Introduction</title> <description>&lt;p&gt;The ATS conventions are intended to give a better understanding of the ATS but they also describe the conventions made for the development of the ATS. These ...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7.0/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7.0/</guid> </item> <item> <title>6 Untestable Test Purposes</title> <description>&lt;p&gt;Void.&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/6/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/6/</guid> </item> <item> <title>5</title> <description></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5/</guid> </item> <item> <title>5.6 Test strategy</title> <description>&lt;p&gt;This clause introduces the test strategy being used for the TTCN-3 test cases. The chosen strategy permits to have a clear structure of the code that facilit...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.6/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.6/</guid> </item> <item> <title>5.5 Test components</title> <description>&lt;h3&gt;5.5.1 Tester&lt;/h3&gt;&lt;p&gt;The Tester test component includes a set of ports, timers and variables that are common to the other defined components which are described ...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.5/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.5/</guid> </item> <item> <title>5.4 Ports and ASPs (Abstract Services Primitives)</title> <description>&lt;h3&gt;5.4.0 Introduction&lt;/h3&gt;&lt;p&gt;The oneM2M ATS implements the following ports:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;The mcaPort and mcaPortIn&lt;/li&gt;&lt;li&gt;The mccPort and mccPortIn&lt;/li&gt;&lt;li&gt;The acPort&lt;/li&gt;&lt;li&gt;The utPort&lt;/li&gt;&lt;li&gt;...&lt;/li&gt;&lt;/ul&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.4/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.4/</guid> </item> <item> <title>5.3 Test architecture</title> <description>&lt;p&gt;The approach for the implementation of an Abstract Protocol Tester selected in oneM2M follows the recommendation of the oneM2M Testing Framework oneM2M TS-00...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.3/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.3/</guid> </item> <item> <title>5.2 Test Configuration</title> <description>&lt;h3&gt;5.2.1 AE Test Configuration&lt;/h3&gt;&lt;p&gt;Test configurations are defined to test different entities such as CSE and AE, etc.&lt;/p&gt;&lt;p&gt;Figure 5.2.1-1 shows a AE test configura...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.2/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.2/</guid> </item> <item> <title>5.1 Abstract protocol tester</title> <description>&lt;p&gt;An abstract protocol tester (APT) is a process that provides behaviours for testing an IUT by emulating a peer IUT at the same layer, and enabling to address...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.1/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.1/</guid> </item> <item> <title>4 Conventions</title> <description>&lt;p&gt;The key words &#34;Shall&#34;, &#34;Shall not&#34;, &#34;May&#34;, &#34;Need not&#34;, &#34;Should&#34;, &#34;Should not&#34; in this document are to be interpreted as described in the oneM2M Drafting Rule...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/4/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/4/</guid> </item> <item> <title>3</title> <description></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/3/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_created.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/3/</guid> </item> </channel></rss>
\ No newline at end of file
diff --git a/public/v4.3.0/feed_rss_updated.xml b/public/v4.3.0/feed_rss_updated.xml
index 41b01c8a..a4c2ced4 100644
--- a/public/v4.3.0/feed_rss_updated.xml
+++ b/public/v4.3.0/feed_rss_updated.xml
@@ -1 +1 @@
-<?xml version="1.0" encoding="UTF-8" ?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/"> <channel><title>oneM2M TS-0019</title><description>oneM2M Specifications navigator</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/</link><atom:link href="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml" rel="self" type="application/rss+xml" /><docs>https://git.onem2m.org/specifications/ts/ts-0019.git</docs><language>en</language> <pubDate>Thu, 14 Nov 2024 14:08:10 -0000</pubDate> <lastBuildDate>Thu, 14 Nov 2024 14:08:10 -0000</lastBuildDate> <ttl>1440</ttl> <generator>MkDocs RSS plugin - v1.16.0</generator> <item> <title>Download</title> <description>&lt;p&gt;Download baseline for TS-0019 version v4.3.0:&lt;/p&gt;&lt;p&gt;[&lt;img alt=&#34;Word&#34; src=&#34;images/Word.png&#34;&gt;](TS-0019-Abstract_Test_Suite_and_implementation_eXtra_Information_for_Test_v4.3.0.do...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/download/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/download/</guid> </item> <item> <title>Annex B (informative): Bibliography</title> <description>&lt;p&gt;ISO/IEC 9646-6 (1994): &#34;Information technology - Open Systems Interconnection - Conformance testing methodology and framework - Part 6: Protocol profile test...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/B/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/B/</guid> </item> <item> <title>A</title> <description></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/A/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/A/</guid> </item> <item> <title>A.1 Electronic annex, zip file with TTCN-3 code</title> <description>&lt;p&gt;This ATS has been produced using the Testing and Test Control Notation (TTCN) according to ETSI ES 201 873-1 &lt;a href=&#34;../2.1/#_ref_6&#34;&gt;[6]&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;This test sui...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/A.1/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/A.1/</guid> </item> <item> <title>8 TTCN-3 Verifications</title> <description>&lt;p&gt;The principles for Verifying the TTCN-3 test code are given in oneM2M TS-0015 &lt;a href=&#34;../2.2/#_ref_i.2&#34;&gt;[i.2]&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;All test cases provided with the present...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/8/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/8/</guid> </item> <item> <title>7</title> <description></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7/</guid> </item> <item> <title>7.3 IXIT</title> <description>&lt;p&gt;The following parameters are used by the oneM2M ATS for the correct execution of the test cases.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Table 7.3-1: oneM2M ATS IXITs&lt;/strong&gt;&lt;a name=&#34;table_7.3-1&#34;&gt;&amp;lt;/a...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7.3/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7.3/</guid> </item> <item> <title>7.2 Naming conventions</title> <description>&lt;h3&gt;7.2.1 General guidelines&lt;/h3&gt;&lt;p&gt;This test suite follows the naming convention guidelines provided in oneM2M TS-0015 &lt;a href=&#34;../2.2/#_ref_i.2&#34;&gt;[i.2]&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;The n...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7.2/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7.2/</guid> </item> <item> <title>7.1 Testing conventions</title> <description>&lt;h3&gt;7.1.1 Testing states&lt;/h3&gt;&lt;h4&gt;7.1.1.1 Initial state&lt;/h4&gt;&lt;p&gt;All test cases start with the function f_preamble_XYZ. This function brings the IUT in an &#34;initialized...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7.1/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7.1/</guid> </item> <item> <title>7.0 Introduction</title> <description>&lt;p&gt;The ATS conventions are intended to give a better understanding of the ATS but they also describe the conventions made for the development of the ATS. These ...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7.0/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7.0/</guid> </item> <item> <title>6 Untestable Test Purposes</title> <description>&lt;p&gt;Void.&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/6/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/6/</guid> </item> <item> <title>5</title> <description></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5/</guid> </item> <item> <title>5.6 Test strategy</title> <description>&lt;p&gt;This clause introduces the test strategy being used for the TTCN-3 test cases. The chosen strategy permits to have a clear structure of the code that facilit...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.6/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.6/</guid> </item> <item> <title>5.5 Test components</title> <description>&lt;h3&gt;5.5.1 Tester&lt;/h3&gt;&lt;p&gt;The Tester test component includes a set of ports, timers and variables that are common to the other defined components which are described ...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.5/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.5/</guid> </item> <item> <title>5.4 Ports and ASPs (Abstract Services Primitives)</title> <description>&lt;h3&gt;5.4.0 Introduction&lt;/h3&gt;&lt;p&gt;The oneM2M ATS implements the following ports:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;The mcaPort and mcaPortIn&lt;/li&gt;&lt;li&gt;The mccPort and mccPortIn&lt;/li&gt;&lt;li&gt;The acPort&lt;/li&gt;&lt;li&gt;The utPort&lt;/li&gt;&lt;li&gt;...&lt;/li&gt;&lt;/ul&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.4/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.4/</guid> </item> <item> <title>5.3 Test architecture</title> <description>&lt;p&gt;The approach for the implementation of an Abstract Protocol Tester selected in oneM2M follows the recommendation of the oneM2M Testing Framework oneM2M TS-00...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.3/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.3/</guid> </item> <item> <title>5.2 Test Configuration</title> <description>&lt;h3&gt;5.2.1 AE Test Configuration&lt;/h3&gt;&lt;p&gt;Test configurations are defined to test different entities such as CSE and AE, etc.&lt;/p&gt;&lt;p&gt;Figure 5.2.1-1 shows a AE test configura...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.2/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.2/</guid> </item> <item> <title>5.1 Abstract protocol tester</title> <description>&lt;p&gt;An abstract protocol tester (APT) is a process that provides behaviours for testing an IUT by emulating a peer IUT at the same layer, and enabling to address...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.1/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.1/</guid> </item> <item> <title>4 Conventions</title> <description>&lt;p&gt;The key words &#34;Shall&#34;, &#34;Shall not&#34;, &#34;May&#34;, &#34;Need not&#34;, &#34;Should&#34;, &#34;Should not&#34; in this document are to be interpreted as described in the oneM2M Drafting Rule...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/4/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/4/</guid> </item> <item> <title>3</title> <description></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/3/</link> <pubDate>Thu, 14 Nov 2024 14:08:10 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/3/</guid> </item> </channel></rss>
\ No newline at end of file
+<?xml version="1.0" encoding="UTF-8" ?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/"> <channel><title>oneM2M TS-0019</title><description>oneM2M Specifications navigator</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/</link><atom:link href="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml" rel="self" type="application/rss+xml" /><docs>https://git.onem2m.org/specifications/ts/ts-0019.git</docs><language>en</language> <pubDate>Thu, 14 Nov 2024 14:11:06 -0000</pubDate> <lastBuildDate>Thu, 14 Nov 2024 14:11:06 -0000</lastBuildDate> <ttl>1440</ttl> <generator>MkDocs RSS plugin - v1.16.0</generator> <item> <title>Download</title> <description>&lt;p&gt;Download baseline for TS-0019 version v4.3.0:&lt;/p&gt;&lt;p&gt;[&lt;img alt=&#34;Word&#34; src=&#34;images/Word.png&#34;&gt;](TS-0019-Abstract_Test_Suite_and_implementation_eXtra_Information_for_Test_v4.3.0.do...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/download/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/download/</guid> </item> <item> <title>Annex B (informative): Bibliography</title> <description>&lt;p&gt;ISO/IEC 9646-6 (1994): &#34;Information technology - Open Systems Interconnection - Conformance testing methodology and framework - Part 6: Protocol profile test...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/B/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/B/</guid> </item> <item> <title>A</title> <description></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/A/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/A/</guid> </item> <item> <title>A.1 Electronic annex, zip file with TTCN-3 code</title> <description>&lt;p&gt;This ATS has been produced using the Testing and Test Control Notation (TTCN) according to ETSI ES 201 873-1 &lt;a href=&#34;../2.1/#_ref_6&#34;&gt;[6]&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;This test sui...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/A.1/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/A.1/</guid> </item> <item> <title>8 TTCN-3 Verifications</title> <description>&lt;p&gt;The principles for Verifying the TTCN-3 test code are given in oneM2M TS-0015 &lt;a href=&#34;../2.2/#_ref_i.2&#34;&gt;[i.2]&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;All test cases provided with the present...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/8/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/8/</guid> </item> <item> <title>7</title> <description></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7/</guid> </item> <item> <title>7.3 IXIT</title> <description>&lt;p&gt;The following parameters are used by the oneM2M ATS for the correct execution of the test cases.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Table 7.3-1: oneM2M ATS IXITs&lt;/strong&gt;&lt;a name=&#34;table_7.3-1&#34;&gt;&amp;lt;/a...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7.3/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7.3/</guid> </item> <item> <title>7.2 Naming conventions</title> <description>&lt;h3&gt;7.2.1 General guidelines&lt;/h3&gt;&lt;p&gt;This test suite follows the naming convention guidelines provided in oneM2M TS-0015 &lt;a href=&#34;../2.2/#_ref_i.2&#34;&gt;[i.2]&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;The n...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7.2/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7.2/</guid> </item> <item> <title>7.1 Testing conventions</title> <description>&lt;h3&gt;7.1.1 Testing states&lt;/h3&gt;&lt;h4&gt;7.1.1.1 Initial state&lt;/h4&gt;&lt;p&gt;All test cases start with the function f_preamble_XYZ. This function brings the IUT in an &#34;initialized...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7.1/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7.1/</guid> </item> <item> <title>7.0 Introduction</title> <description>&lt;p&gt;The ATS conventions are intended to give a better understanding of the ATS but they also describe the conventions made for the development of the ATS. These ...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/7.0/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/7.0/</guid> </item> <item> <title>6 Untestable Test Purposes</title> <description>&lt;p&gt;Void.&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/6/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/6/</guid> </item> <item> <title>5</title> <description></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5/</guid> </item> <item> <title>5.6 Test strategy</title> <description>&lt;p&gt;This clause introduces the test strategy being used for the TTCN-3 test cases. The chosen strategy permits to have a clear structure of the code that facilit...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.6/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.6/</guid> </item> <item> <title>5.5 Test components</title> <description>&lt;h3&gt;5.5.1 Tester&lt;/h3&gt;&lt;p&gt;The Tester test component includes a set of ports, timers and variables that are common to the other defined components which are described ...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.5/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.5/</guid> </item> <item> <title>5.4 Ports and ASPs (Abstract Services Primitives)</title> <description>&lt;h3&gt;5.4.0 Introduction&lt;/h3&gt;&lt;p&gt;The oneM2M ATS implements the following ports:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;The mcaPort and mcaPortIn&lt;/li&gt;&lt;li&gt;The mccPort and mccPortIn&lt;/li&gt;&lt;li&gt;The acPort&lt;/li&gt;&lt;li&gt;The utPort&lt;/li&gt;&lt;li&gt;...&lt;/li&gt;&lt;/ul&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.4/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.4/</guid> </item> <item> <title>5.3 Test architecture</title> <description>&lt;p&gt;The approach for the implementation of an Abstract Protocol Tester selected in oneM2M follows the recommendation of the oneM2M Testing Framework oneM2M TS-00...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.3/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.3/</guid> </item> <item> <title>5.2 Test Configuration</title> <description>&lt;h3&gt;5.2.1 AE Test Configuration&lt;/h3&gt;&lt;p&gt;Test configurations are defined to test different entities such as CSE and AE, etc.&lt;/p&gt;&lt;p&gt;Figure 5.2.1-1 shows a AE test configura...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.2/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.2/</guid> </item> <item> <title>5.1 Abstract protocol tester</title> <description>&lt;p&gt;An abstract protocol tester (APT) is a process that provides behaviours for testing an IUT by emulating a peer IUT at the same layer, and enabling to address...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/5.1/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/5.1/</guid> </item> <item> <title>4 Conventions</title> <description>&lt;p&gt;The key words &#34;Shall&#34;, &#34;Shall not&#34;, &#34;May&#34;, &#34;Need not&#34;, &#34;Should&#34;, &#34;Should not&#34; in this document are to be interpreted as described in the oneM2M Drafting Rule...&lt;/p&gt;</description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/4/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/4/</guid> </item> <item> <title>3</title> <description></description><link>https://specifications.onem2m.org/ts-0019/v4.3.0/3/</link> <pubDate>Thu, 14 Nov 2024 14:11:07 +0000</pubDate><source url="https://specifications.onem2m.org/ts-0019/v4.3.0/feed_rss_updated.xml">oneM2M TS-0019</source><guid isPermaLink="true">https://specifications.onem2m.org/ts-0019/v4.3.0/3/</guid> </item> </channel></rss>
\ No newline at end of file
diff --git a/public/v4.3.0/search/search_index.json b/public/v4.3.0/search/search_index.json
index 5b6ae9f2..de105cc8 100644
--- a/public/v4.3.0/search/search_index.json
+++ b/public/v4.3.0/search/search_index.json
@@ -1 +1 @@
-{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"","text":"oneM2MTechnical Specification oneM2MTechnical Specification Document Number oneM2M-TS-0019-V-4.1.1 Document Name: Abstract Test Suite and Implementation eXtra Information for Test Date: 2024 March 1 Abstract: Abstract Test Suite and Implementation eXtra Information for Test consists of :-    Definition of the Abstract Protocol Tester (APT)-    Definition of TTCN-3 test architecture-    Development of TTCN-3 test suite, e.g. naming conventions, code documentation, test case structure.-    IXIT proforma; Template Version:23 February 2015 (Do not modify) Template Version:23 February 2015 (Do not modify) <p>This Specification is provided for future development work within oneM2M only. The Partners accept no liability for any use of this Specification.</p> <p>The present document has not been subject to any approval process by the oneM2M Partners Type 1.  Published oneM2M specifications and reports for implementation should be obtained via the oneM2M Partners' Publications Offices.</p> <p>About oneM2M </p> <p>The purpose and goal of oneM2M is to develop technical specifications which address the need for a common M2M Service Layer that can be readily embedded within various hardware and software, and relied upon to connect the myriad of devices in the field with M2M application servers worldwide. </p> <p>More information about oneM2M may be found at:  http//www.oneM2M.org</p> <p>Copyright Notification</p> <p>(c) 2019, oneM2M Partners Type 1 (ARIB, ATIS, CCSA, ETSI, TIA, TSDSI, TTA, TTC).</p> <p>All rights reserved.</p> <p>The copyright extends to reproduction in all media.</p> <p>Notice of Disclaimer &amp; Limitation of Liability </p> <p>The information provided in this document is directed solely to professionals who have the appropriate degree of experience to understand and interpret its contents in accordance with generally accepted engineering or other professional standards and applicable regulations. No recommendation as to products or vendors is made or should be implied. </p> <p>NO REPRESENTATION OR WARRANTY IS MADE THAT THE INFORMATION IS TECHNICALLY ACCURATE OR SUFFICIENT OR CONFORMS TO ANY STATUTE, GOVERNMENTAL RULE OR REGULATION, AND FURTHER, NO REPRESENTATION OR WARRANTY IS MADE OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR AGAINST INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS. NO oneM2M PARTNER TYPE 1 SHALL BE LIABLE, BEYOND THE AMOUNT OF ANY SUM RECEIVED IN PAYMENT BY THAT PARTNER FOR THIS DOCUMENT, WITH RESPECT TO ANY CLAIM, AND IN NO EVENT SHALL oneM2M BE LIABLE FOR LOST PROFITS OR OTHER INCIDENTAL OR CONSEQUENTIAL DAMAGES. oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PROVIDED IN THIS DOCUMENT IS AT THE RISK OF THE USER.</p>"},{"location":"0/","title":"0","text":"oneM2MTechnical Specification oneM2MTechnical Specification Document Number oneM2M-TS-0019-V-4.1.1 Document Name: Abstract Test Suite and Implementation eXtra Information for Test Date: 2024 March 1 Abstract: Abstract Test Suite and Implementation eXtra Information for Test consists of :-    Definition of the Abstract Protocol Tester (APT)-    Definition of TTCN-3 test architecture-    Development of TTCN-3 test suite, e.g. naming conventions, code documentation, test case structure.-    IXIT proforma; Template Version:23 February 2015 (Do not modify) Template Version:23 February 2015 (Do not modify) <p>This Specification is provided for future development work within oneM2M only. The Partners accept no liability for any use of this Specification.</p> <p>The present document has not been subject to any approval process by the oneM2M Partners Type 1.  Published oneM2M specifications and reports for implementation should be obtained via the oneM2M Partners' Publications Offices.</p> <p>About oneM2M </p> <p>The purpose and goal of oneM2M is to develop technical specifications which address the need for a common M2M Service Layer that can be readily embedded within various hardware and software, and relied upon to connect the myriad of devices in the field with M2M application servers worldwide. </p> <p>More information about oneM2M may be found at:  http//www.oneM2M.org</p> <p>Copyright Notification</p> <p>(c) 2019, oneM2M Partners Type 1 (ARIB, ATIS, CCSA, ETSI, TIA, TSDSI, TTA, TTC).</p> <p>All rights reserved.</p> <p>The copyright extends to reproduction in all media.</p> <p>Notice of Disclaimer &amp; Limitation of Liability </p> <p>The information provided in this document is directed solely to professionals who have the appropriate degree of experience to understand and interpret its contents in accordance with generally accepted engineering or other professional standards and applicable regulations. No recommendation as to products or vendors is made or should be implied. </p> <p>NO REPRESENTATION OR WARRANTY IS MADE THAT THE INFORMATION IS TECHNICALLY ACCURATE OR SUFFICIENT OR CONFORMS TO ANY STATUTE, GOVERNMENTAL RULE OR REGULATION, AND FURTHER, NO REPRESENTATION OR WARRANTY IS MADE OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR AGAINST INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS. NO oneM2M PARTNER TYPE 1 SHALL BE LIABLE, BEYOND THE AMOUNT OF ANY SUM RECEIVED IN PAYMENT BY THAT PARTNER FOR THIS DOCUMENT, WITH RESPECT TO ANY CLAIM, AND IN NO EVENT SHALL oneM2M BE LIABLE FOR LOST PROFITS OR OTHER INCIDENTAL OR CONSEQUENTIAL DAMAGES. oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PROVIDED IN THIS DOCUMENT IS AT THE RISK OF THE USER.</p>"},{"location":"1/","title":"1 Scope","text":"<p>The present document contains the Abstract Test Suite (ATS) for oneM2M as defined in oneM2M TS-0001 [1] and oneM2M TS-0004 [2] in compliance with the relevant requirements and in accordance with the relevant guidance given in ISO/IEC 96467 [5].</p> <p>The objective of the present document is to provide a basis for conformance tests for oneM2M products giving a high probability of interoperability between different manufacturers' equipment.</p> <p>The ISO standard for the methodology of conformance testing (ISO/IEC 96461 [3] and ISO/IEC 96462 [4]) as well as oneM2M TS-0015 Testing Framework [i.2] are used as a basis for the test methodology.</p>"},{"location":"2.1/","title":"2.1 Normative references","text":"<p>References are either specific (identified by date of publication and/or edition number or version number) or nonspecific. For specific references, only the cited version applies. For non-specific references, the latest version of the referenced document (including any amendments) applies.</p> <p>The following referenced documents are necessary for the application of the present document.</p> <ul> <li>[1]    oneM2M TS-0001: \"Functional Architecture\".</li> <li>[2]    oneM2M TS-0004: \"Service Layer Core Protocol\".</li> <li>[3]    ISO/IEC 9646-1 (1994): \"Information technology - Open Systems Interconnection - Conformance testing methodology and framework - Part 1: General concepts\".</li> <li>[4]    ISO/IEC 9646-2 (1994): \"Information technology - Open Systems Interconnection - Conformance testing methodology and framework - Part 2: Abstract Test Suite specification\".</li> <li>[5]    ISO/IEC 9646-7 (1995): \"Information technology - Open Systems Interconnection - Conformance testing methodology and framework - Part 7: Implementation Conformance Statements\".</li> <li>[6]    ETSI ES 201 873-1 (V4.5.1): \"Methods for Testing and Specification (MTS); The Testing and Test Control Notation version 3; Part 1: TTCN-3 Core Language\".</li> <li> <p>[7]    oneM2M TS-0018: \"Test Suite Structure and Test Purposes\".</p> </li> <li> <p>[8]                     3GPP TS 29.122; T8 reference point for Northbound APIs (Release 15)</p> </li> </ul>"},{"location":"2.2/","title":"2.2 Informative references","text":"<p>References are either specific (identified by date of publication and/or edition number or version number) or nonspecific. For specific references, only the cited version applies. For non-specific references, the latest version of the referenced document (including any amendments) applies.</p> <p>The following referenced documents are not necessary for the application of the present document but they assist the user with regard to a particular subject area.</p> <ul> <li>[i.1]    oneM2M Drafting Rules.</li> </ul> <p>Note</p> <p>Available at http://www.onem2m.org/images/files/oneM2M-Drafting-Rules.pdf.</p> <ul> <li>[i.2]    oneM2M TS-0015: \"Testing Framework\".</li> <li>[i.3]    oneM2M TS-0025: \"Product profiles\".</li> </ul>"},{"location":"3.1/","title":"3.1 Terms","text":"<p>For the purposes of the present document, the terms given in ISO/IEC 96461 [3], ISO/IEC 96467 [5] and oneM2M TS-0015 [i.2] apply.</p>"},{"location":"3.2/","title":"3.2 Symbols","text":"<p>For the purposes of the present document, the following abbreviations apply:</p> <p><code>AE    Application Entity</code> <code>APT    Abstract Protocol Tester</code> <code>ATM    Abstract Test Method</code> <code>ATS    Abstract Test Suite</code> <code>CoAP    Constrained Application Protocol</code> <code>CSE    Common Service Entity</code> <code>HTTP    Hypertext Transfer Protocol</code> <code>IP    Internet Protocol</code> <code>IUT    Implementation Under Test</code> <code>IXIT    Implementation eXtra Information for Test</code> <code>JSON    JavaScript Object Notation</code> <code>MQTT    Message Queuing Telemetry Transport</code> <code>MTC    Main Test Component</code> <code>PA    Platform Adaptor</code> <code>PICS    Protocol Implementation Conformance Statement</code> <code>PTC    Paralell Test Component</code> <code>PX    PiXit</code> <code>SA    System Adaptor</code> <code>SUT    System Under Test</code> <code>TC    Test Case</code> <code>TCP    Transmission Control Protocol</code> <code>TP    Test Purposes</code> <code>TS    Test System</code> <code>TSS    Test Suite Structure</code> <code>TTCN    Tree and Tabular Combined Notation</code> <code>UDP    User Datagram Protocol</code> <code>UT    Upper Tester</code> <code>XML    eXtensible Markup Language</code> </p>"},{"location":"4/","title":"4 Conventions","text":"<p>The key words \"Shall\", \"Shall not\", \"May\", \"Need not\", \"Should\", \"Should not\" in this document are to be interpreted as described in the oneM2M Drafting Rules [i.1].</p>"},{"location":"5.1/","title":"5.1 Abstract protocol tester","text":"<p>An abstract protocol tester (APT) is a process that provides behaviours for testing an IUT by emulating a peer IUT at the same layer, and enabling to address a single test objective.</p> <p>APTs used by the oneM2M test suite are described in figure 5.1-1. The test system will simulate valid and invalid protocol behaviour, and will analyse the reaction of the IUT.</p> <p></p> <p>Figure 5.1-1: Abstract protocol testers - oneM2M</p> <p>As figure 5.1-1 illustrates, the corresponding ATS needs to use lower layers to establish a proper connection to the system under test (SUT) over a physical link (Lower layers link). Four different lower layers have been specified corresponding to the binding protocols considered in oneM2M: HTTP, CoAP, WebSocket and MQTT.</p>"},{"location":"5.2/","title":"5.2 Test Configuration","text":""},{"location":"5.2/#521-ae-test-configuration","title":"5.2.1 AE Test Configuration","text":"<p>Test configurations are defined to test different entities such as CSE and AE, etc.</p> <p>Figure 5.2.1-1 shows a AE test configuration which is mapped to CF03 in clause 6.3.3.3 in oneM2M TS0015 [i.2] and aligns with conformance test system architecture in clause 6.3.3.2 in oneM2M TS-0015 [i.2].</p> <p>The TTCN-3 Test Component in Test System sends triggering actions or behaviour to the Upper Tester Application of SUT through upper tester transport link Ut  while the IUT sends/receives oneM2M service primitives through Mca to/from CSE in Test System.</p> <p></p> <p>Figure 5.2.1-1: AE test configuration</p>"},{"location":"5.3/","title":"5.3 Test architecture","text":"<p>The approach for the implementation of an Abstract Protocol Tester selected in oneM2M follows the recommendation of the oneM2M Testing Framework oneM2M TS-0015 [i.2] where the TTCN-3 language and its architecture are recommended.</p> <p>Following this recommendation the oneM2M tester architecture comprises a non-platform dependent Test Suite, and a platform dependent part.</p> <p></p> <p>Note</p> <p>However, it can be implemented in a semi-independent manner, which will minimize the dependency to those elements.</p> <p>Figure 5.3-1: High level oneM2M Test Architecture</p> <ul> <li>oneM2M TTCN -3 Abstract Test Suite:  the test suite is platform independent, and it is the cornerstone of the architecture. It allows a complete decoupling between the test suite and the rest of the test system. The test suite is composed of a complete set of test cases covering oneM2M requirements specified by oneM2M TS0001 [1] and oneM2M TS-0004 [2].</li> <li>oneM2M System Adaptor :  this is the platform dependent part that includes adaptors and codecs (out of the scope of the present document). This part of the architecture definition depends on the specific platform (e.g. Windows or Linux) and test tool on which the tester is going to run.</li> </ul> <p>Figure 5.3-2 shows the oneM2M TTCN-3 test architecture design used for the oneM2M ATS. The Test Suite needs to interact with the System Adaptor to implement the collection of TTCN-3 test cases that are intended to be used to test the oneM2M IUTs.</p> <p>The oneM2M TTCN-3 test cases implement the test algorithms specified in the TSS&amp;TP document oneM2M TS0018 [7], including verdict logic that allows pass/fail diagnosis.</p> <p>The test algorithms use the interfaces defined in [1] and [2] (mca, mcc) in order to:</p> <ol> <li>control the test event to be sent towards the IUT; and</li> <li>observe the test events received from the IUT.</li> </ol> <p>In TTCN-3 these two interfaces have been implemented through a set of logical TTCN-3 ports (mcaPort and mcaPortIn for mca interface, and mccPort and mccPortIn for mcc interface) which allows oneM2M message primitives exchange with the IUT.</p> <p></p> <p>Figure 5.3-2: oneM2M Test Architecture</p> <p>The oneM2M primitive messages have been mapped into TTCN-3 structure. Through this mapping, the TTCN-3 is able to build and send these messages, as well as receive them via the ports defined above.</p> <p>Additionally, the test cases are able to control and configure the test platform through a dedicated port called acPort while port utPort enables oneM2M TTCN-3 Test Component module to trigger specific action or behaviour on IUT. TTCN3 Test Components can also exchange information through a dedicated port called infoPort.</p> <p>To build up a tester, the test platform needs to be also developed (out of scope). This test platform is composed of three adaptation layers:</p> <ul> <li>PA (Platform Adaptor) layer functionality implements the communication between the TTCN-3 modules and external elements that constitute the test tool such as timers and external functions. The External functions are a powerful resources supported by TTCN-3 language. An External function is a function declared at the TTCN-3 level but implemented at the native level.</li> <li> <p>SA (System Adaptor) layer functionality is divided into two modules:</p> <ul> <li>oneM2M lower layers stack module implements the communication with the IUT and carries out the oneM2M primitives messages sent to or received from the IUT. This module is based on TCP or UDP depending on the binding supported by the IUT. The binding is a system adaptor parameter.</li> <li>Upper Tester Transport module implements functions that enable triggering specific actions or behaviour on the IUT.</li> </ul> </li> <li> <p>CODECS layer is the part of the tester to encode and decode messages between the TTCN-3 abstract internal data representation and the format required by the related base standard which the IUT understands. Several CODECS are required in oneM2M tester to cope with the bindings considered in oneM2M (HTTP, CoAP, MQTT) and the serialization methods (xml, json).</p> </li> </ul>"},{"location":"5.4/","title":"5.4 Ports and ASPs (Abstract Services Primitives)","text":""},{"location":"5.4/#540-introduction","title":"5.4.0 Introduction","text":"<p>The oneM2M ATS implements the following ports:</p> <ul> <li>The mcaPort and mcaPortIn</li> <li>The mccPort and mccPortIn</li> <li>The acPort</li> <li>The utPort</li> <li>The InfoPort</li> </ul>"},{"location":"5.4/#541-mcaport-mcaportin-mccport-mccportin","title":"5.4.1 mcaPort, mcaPortIn, mccPort, mccPortIn","text":"<p>These ports are used to send and receive the following message sets:</p> <ul> <li>Request Primitives messages in accordance with oneM2M TS-0004 [2].</li> <li>Response Primitives messages in accordance with oneM2M TS-0004 [2].</li> </ul> <p>Two primitives are currently defined for these ports indicated as table 5.4.1-1:</p> <ol> <li>The M2MRequestPrimitive - to send or receive oneM2M messages to/from the IUT. Depending on the IUT to be tested:<ol> <li>If the IUT is an AE, these messages are either received or sent by the tester which is associated with the CSE role through the mcaPortIn or the mcaPort respectively.</li> <li>If the IUT is a CSE, these messages are either sent or received by the tester when it plays the AE role through the mcaPort or the mcaPortIn respectively, or sent or received by the tester when it plays the CSE role through the mccPort or the mccPortIn respectively.</li> </ol> </li> <li>The M2MResponsePrimitive - to send or receive oneM2M messages to/from the IUT. Depending on the IUT to be tested:<ol> <li>If the IUT is an AE, these messages are either sent or received by the tester which is associated with the CSE role through the mcaPortIn or the mcaPort respectively.</li> <li>If the IUT is a CSE, these messages are either sent or received by the tester when it plays the CSE role through the mccPortIn or the mccPort respectively, sent or received by the tester when it plays the AE role through the mcaPortIn or mcaPort respectively.</li> </ol> </li> </ol> <p>Both primitives contain another parameters that permits to dynamically configure the test adaptor for every single sending. These parameters are:</p> <ul> <li>Host: IP address of the IUT</li> <li>XML Namespace</li> <li>Protocol binding</li> <li>Serialization</li> <li>ForceFields: used to force invalid or empty values to certain attributes. This behaviour shall be implemented by the System Adaptor.</li> </ul> <p>Table 5.4.1-1: Mapping of TTCN-3 Primitives to oneM2M Service Primitives</p> TTCN-3 Primitive oneM2M Message Direction IUT M2MRequestPrimitive Request Primitive &lt;=&gt; AE M2MRequestPrimitive Request Primitive &lt;=&gt; CSE M2MResponsePrimitive Response Primitive &lt;=&gt; AE M2MResponsePrimitive Response Primitive &lt;=&gt; CSE"},{"location":"5.4/#542-mcnport-mcnportin","title":"5.4.2 mcnPort, mcnPortIn","text":"<p>These ports are used to send and receive the following message sets:</p> <ul> <li>Request Primitives messages in accordance with oneM2M TS-0004 [2].</li> <li>Response Primitives messages in accordance with oneM2M TS-0004 [2].</li> </ul> <p>Two primitives are currently defined for these ports indicated:</p> <ol> <li> <p>The T8Request - to send T8 request messages to/from the IUT according to 3GPP TS 29.122 [8]. </p> </li> <li> <p>The T8Response - to receive T8 response messages to/from the IUT according to 3GPP TS 29.122 [8].</p> </li> </ol> <p>Further primitives might be defined to support other underlying networks.</p>"},{"location":"5.4/#543-mccportinternal","title":"5.4.3 mccPortInternal","text":"<p>This port is used to send and receive the following message sets between TTCN-3 components:</p> <ul> <li>Request Primitives messages in accordance with oneM2M TS-0004 [2].</li> <li>Response Primitives messages in accordance with oneM2M TS-0004 [2].</li> </ul>"},{"location":"5.4/#544-utport","title":"5.4.4 utPort","text":""},{"location":"5.4/#5440-introduction","title":"5.4.4.0 Introduction","text":"<p>The utPort is included in the oneM2M ATS in order to be able to stimulate the IUT and receive extra information from IUT upper layers. For instance, the utPort can be applied to automate AE testing shown as clause 5.4.4.1.</p>"},{"location":"5.4/#5441-usage-for-automated-ae-testing","title":"5.4.4.1 Usage for Automated AE Testing","text":"<p>The utPort is in charge of the communication between TTCN-3 Test Component module in Test System and the Upper Tester Application in SUT.</p> <p>Functionalities that TTCN-3 Test Component module and the Upper Tester Application are required to implement are listed as follows:</p> <ul> <li>TTCN-3 Test Component is able to configure the Test System and send standardized triggering commands to the SUT (Upper Tester Application).</li> <li>Upper Tester Application can process the triggering command messages received from Test System (TTCN-3 Test Component) and stimulates IUT to act following the corresponding triggering command (i.e. sending oneM2M service primitives to Test System through Mca port).</li> </ul> <p>oneM2M service Primitive defined for utPort is listed as follows:</p> <ul> <li>The UtTrigger primitive is used to trigger upper layer events in IUT (i.e. sending oneM2M service primitives to Test System through Mca port).</li> <li>The UtTriggerAck primitive is used by IUT to send acknowledgement back to the Test System.</li> </ul> <p>The Upper Tester Application in SUT can be implemented as an embedded source code. An example for implementation of automated AE test for Registration is shown as figure 5.4.4.1-1.</p> <p></p> <p>Figure 5.4.4.1-1: Example of automated AE test using Ut interface</p>"},{"location":"5.4/#5442-upper-tester-control-primitives","title":"5.4.4.2 Upper Tester Control Primitives","text":""},{"location":"5.4/#54421-introduction","title":"5.4.4.2.1 Introduction","text":"<p>The upper tester triggering message is used to transport control commands between Test System and the Upper Tester Application. The control command will contain essential parameters that are required for certain test case.</p> <p>The upper tester triggering message type maps to particular message formats for exchanging data and those message formats are defined by TTCN-3 primitive as shown at table 5.4.4.2.1-1, U tTrigger  and U tTriggerAck  primitive.</p> <p>Table 5.4.4.2.1-1: Mapping of TTCN-3 Primitives to oneM2M Service Primitives</p> Upper Tester Control Message Type TTCN-3 Primitives Direction Direction Trigger UtTrigger Primitive TS UT Trigger Acknowledgement UtTriggerAck Primitive UT TS"},{"location":"5.4/#54422-uttrigger-and-uttriggerack-primitives","title":"5.4.4.2.2 UtTrigger and UtTriggerAck Primitives","text":"<p>The UtTrigger primitive is initialized by the Test System to send triggering message to the target IUT as depicted in figure 5.4.4.2.2-1. The IUT will send acknowledgement message back to the Test System using UtTriggerAck primitive if trigger message is successfully transported to the IUT. Then IUT starts interaction with Test System through oneM2M request and response primitives.</p> <p></p> <p>Figure 5.4.4.2.2-1: Trigger message flow</p> <p>Table 5.4.4.2.2-1 defines UtTrigger and UtTriggerAck primitives including oneM2M data types to which are mapped as well as examples to show how to implement UtTrigger and UtTriggerAck primitives.</p> <p>Table 5.4.4.2.2-1: UtTrigger and UtTriggerAck Primitive</p> Ut Control Primitive Mapping to oneM2M data types Description Reference Triggering Message HTTP message UtTrigger Primitive requestPrimitive ONLY essential parameters included for certain test caseSee note 1 oneM2MTS-0004 [2] EXAMPLE 1:If the test objective is to test \"Test System triggers IUT to execute a test case for creation of &lt; AE &gt; with labels attribute under a CSEBase resource \", then the triggering message would be serialized as following. EXAMPLE 1:If the test objective is to test \"Test System triggers IUT to execute a test case for creation of &lt; AE &gt; with labels attribute under a CSEBase resource \", then the triggering message would be serialized as following. UtTrigger Primitive requestPrimitive ONLY essential parameters included for certain test caseSee note 1 oneM2MTS-0004 [2] Request{\"m2m:rqp\" :{    \"op\": 1, //indicate CREATE operation    \"ty\": 2, //indicate AE resource type    \"to\": {TEST_SYSTEM_ADDRESS},         \"pc\": {            \"m2m:ae\": {                \"lbl\":\"UNINITIALIZED\" //indicate that attribute labels needs to be included            },         }         \"rvi\": \"2a\"}} RequestPOST  /{SUT_UT_APPLICATION_URL} HTTP/1.1Host : {SUT_IP_ADDRESS:PORT}Content-Length : {PAYLOAD_LENGTH}Content-Type : application/ json{\"m2m:rqp\" :{    \"op\": 1, //indicate CREATE operation    \"ty\": 2, //indicate AE resource type    \"to\": {TEST_SYSTEM_ADDRESS},         \"pc\": {            \"m2m:ae\": {                \"lbl\":\"UNINITIALIZED\" //indicate that attribute labels needs to be included            }         },         \"rvi\": \"2a\"}} UtTrigger Primitive requestPrimitive ONLY essential parameters included for certain test caseSee note 1 oneM2MTS-0004 [2] EXAMPLE 2: If the test objective is to test \"Test System triggers IUT to execute a test case for delete of a &lt; AE &gt; resource. \", then the triggering message would be serialized as following. EXAMPLE 2: If the test objective is to test \"Test System triggers IUT to execute a test case for delete of a &lt; AE &gt; resource. \", then the triggering message would be serialized as following. UtTrigger Primitive requestPrimitive ONLY essential parameters included for certain test caseSee note 1 oneM2MTS-0004 [2] Request{\"m2m:rqp\" :{  \"op\": 4, //indicate DELETE operation  \"to\": {TARGET_AE_RESOURCE_ADDRESS}, //indicate Target AE resource address     \"rvi\": \"2a\"}} RequestPOST  /{SUT_UT_APPLICATION_URL} HTTP/1.1Host : {SUT_IP_ADDRESS:PORT}Content-Length : {PAYLOAD_LENGTH}Content-Type : application/ json{\"m2m:rqp\" :{  \"op\": 4, //indicate DELETE operation  \"to\": {TARGET_AE_RESOURCE_ADDRESS}, //indicate Target AE resource address     \"rvi\": \"2a\"}} UtTriggerPrimitive N/A Special upper tester commands N/A \"RESET\" RequestPOST  /{SUT_UT_APPLICATION_URL} HTTP/1.1Host : {SUT_IP_ADDRESS:PORT}X-M2M-UTCMD: Reset UtTrigger Ack Primitive responsePrimitive ONLY responseStatusCode attribute includedSee note 2 oneM2M TS-0004 [2] Response{    \"m2m:rsp\": {        \"rsc\": 2000    }}For any triggering response, it only contains a response status code, and the response status code for the triggering operation can only be set to either 2000 (OK) or 4000 (BAD_REQUEST) according to the rules for triggering operations. ResponseHTTP/1.1 200 OKX-M2M-RSC: 2000 NOTE 1:    Additional rules defined in table 5.4.4.2.2-3 are also applied.NOTE 2:    Attribute response status code is defined at table 5.4.4.2.2-3. NOTE 1:    Additional rules defined in table 5.4.4.2.2-3 are also applied.NOTE 2:    Attribute response status code is defined at table 5.4.4.2.2-3. NOTE 1:    Additional rules defined in table 5.4.4.2.2-3 are also applied.NOTE 2:    Attribute response status code is defined at table 5.4.4.2.2-3. NOTE 1:    Additional rules defined in table 5.4.4.2.2-3 are also applied.NOTE 2:    Attribute response status code is defined at table 5.4.4.2.2-3. NOTE 1:    Additional rules defined in table 5.4.4.2.2-3 are also applied.NOTE 2:    Attribute response status code is defined at table 5.4.4.2.2-3. NOTE 1:    Additional rules defined in table 5.4.4.2.2-3 are also applied.NOTE 2:    Attribute response status code is defined at table 5.4.4.2.2-3. <p>Table 5.4.4.2.2-2: Definition of special Upper Tester commands</p> Value Interpretation Reset Inidicates that the IUT should reset <p>The rules for defining UtTrigger and UtTriggerAck primitives are:</p> <ol> <li> <p>UtTrigger primitive is represented in requestPrimitive serialized in JSON format. </p> </li> <li> <p>UtTrigger primitive shall be interpreted as follows:</p> <ul> <li>Any attribute/parameter containing a value shall be present and equal in the triggered request primitive.</li> <li>Any attribute/parameter containing \"UNINITIALIZED\" value shall be present in the triggered request primitive.</li> <li>Any other attribute/parameter shall comply with oneM2M TS-0004 [2].</li> </ul> </li> <li> <p>Parameters within UtTrigger are listed as following:</p> <ul> <li>operation: (mandatory) operation type that IUT is triggered to perform.</li> <li>resourceType: (optional) resource type of a target resource against which IUT is triggered to perform certain operation</li> <li>to: (mandatory) target resource against which IUT is triggered to perform certain operation. </li> <li>primitiveContent: (optional) represents the resource attributes that shall be included in the requestPrimitive.</li> </ul> </li> </ol> <p>Table 5.4.4.2.2-3: Definition of ResponseStatusCode for UtTriggerAck primitive</p> Response Status Code Description Response Status Code Value Interpretation OK 2000 The SUT receives successfully the triggering message from Test System BAD_REQUEST 4000 The SUT does not interpret correctly the UtTrigger primitive NOTE:    Only above two response status codes are allowed to use in UtTriggerAck primitive. NOTE:    Only above two response status codes are allowed to use in UtTriggerAck primitive. NOTE:    Only above two response status codes are allowed to use in UtTriggerAck primitive."},{"location":"5.4/#54423-control-communication-protocol","title":"5.4.4.2.3 Control Communication Protocol","text":"<p>Protocol used for proceeding communications between Test System and Upper Tester Application is designated to the Hypertext Transfer Protocol (HTTP) protocol owning it is an application protocol that is widely supported by most all IoT devices and various intrinsic features such as persistent connection, ease of programming, flexibility, etc.</p>"},{"location":"5.4/#54424-control-message-serialization","title":"5.4.4.2.4 Control Message Serialization","text":"<p>Control commands that are wrapped within a request body of HTTP message shall be serialized into JavaScript Object Notation (JSON) because it is very lightweight and easy to parse and generate for machines.</p>"},{"location":"5.4/#545-acport","title":"5.4.5 acPort","text":"<p>The acPort is included in the oneM2M ATS in order to be able to control and configure the test adaptor for specific cases.</p>"},{"location":"5.4/#546-infoport","title":"5.4.6 infoPort","text":"<p>The infoPort is included in the oneM2M ATS in order for the TTCN-3 test components to be able to exchange information such as last response primitives or request primitives received by a component, retrieved primitive contents.</p>"},{"location":"5.5/","title":"5.5 Test components","text":""},{"location":"5.5/#551-tester","title":"5.5.1 Tester","text":"<p>The Tester test component includes a set of ports, timers and variables that are common to the other defined components which are described in table 5.5.1-1.</p> <p>Table 5.5.1-1: Tester component elements</p> Name Instance type Element type Description acPort port AdapterControlPort Port that communicates with the adapter for sending configuration parameters infoPort port InfoPort Port between test components for exchanging information utPort port UpperTesterPort Port that communicates with the UT Application for triggering actions on the IUT tc_ac timer N/A Timer for the reception of a message tc_wait timer N/A Timer for the reaction of the IUT to an upper tester primitive tc_done Timer N/A Timer for waiting completion of a component behaviour vc_config variable Configurations Configuration being used for the given test case vc_testSystemRole variable TestSystemRole Role of the test component vc_componentRegistered variable boolean Flag to indicate when a component has registered to the IUT vc_resetRequired variable Boolean Flag to indicate whether a reset of the IUT is necessary vc_resourcesList variable MyResourcesList List of all resources created by the test system on the IUT vc_resourcesIndexToBeDeleted variable IntegerList List of indexes of resources created by the test system on the IUT that need to be deleted vc_acpIndex variable integer Index of accessControlPolicy resource used by the test system by default (when required) vc_request variable MsgIn Latest request primitive received/sent vc_response variable MsgIn Latest response primitive received/sent vc_aeSimu variable default Reference to the default behaviour for an AeSimu component vc_cseSimu variable default Reference to the default behaviour for an CseSimu component vc_primitiveContentRetrievedResource variable PrimitiveContent Latest content of a RETRIEVE operation vc_myInterfaces variable Interfaces Parameters for the ports of the given component:Port (mcaPort, mcaPortIn, mccPort, mccPortIn)Host (SUT IP address :port)Protocol bindingSerialization <p>Note that vc_aeSimu and vc_cseSimu are not common to the other defined test components, but those variables are required in Tester for the correct activation/deactivation of default behaviours.</p>"},{"location":"5.5/#552-aesimu","title":"5.5.2 AeSimu","text":"<p>The AeSimu test component extends the Tester component by adding elements specific to an AE entity. Table 5.5.2-1 summarizes those elements.</p> <p>Table 5.5.2-1: AeSimu component elements</p> Name Instance type Element type Description mcaPort port OneM2MPort Port that implements the mca interface when test system is the client (sending requests) mcaPortIn port OneM2MPort Port that implements the mca interface when test system is the server (receiving requests) vc_ae2 test component AeSimu Reference to the AE2 component when required vc_cse1 test component CseSimu Reference to the CSE1 component when CF02 is used vc_ae1 test component AeSimu Reference to the AE1 component when required vc_das test component AeSimu Reference to the DAS component when required vc_aeSimuDesc variable AeSimuComponentDesc Component configuration extracted from required (AE1 or AE2) tester pixit vc_dasSimuDesc variable AeSimuComponentDesc Component configuration extracted from DAS tester pixit vc_auxiliaryAe2Up variable boolean Flag to indicate that AE2 component has been started vc_aeIndex variable integer Index of the AE resource in vc_resourcesList created by AeSimu component"},{"location":"5.5/#553-csesimu","title":"5.5.3 CseSimu","text":"<p>The CseSimu test component extends the Tester component by adding elements specific to an CSE entity. Table 5.5.3-1 summarizes those elements.</p> <p>Table 5.5.3-1: CseSimu component elements</p> Name Instance type Element type Description mcaPort port OneM2MPort Port that implements the mca interface when test system is the client (sending requests) mcaPortIn port OneM2MPort Port that implements the mca interface when test system is the server (receiving requests) mccPort port OneM2MPort Port that implements the mcc interface when test system is the client (sending requests) mccPortIn port OneM2MPort Port that implements the mcc interface when test system is the server (receiving requests) mccPortInternal port OneM2MPortInternal Port that implements the mcc and mcc' interfaces between TTCN-3 components vc_ae1 test component AeSimu Reference to the AE1 component when CF02 (CseSimu as master) is used vc_cse2 test component CseSimu Reference to the CSE1 component when required vc_cseSimuDesc variable CseSimuComponentDesc Component configuration extracted from required (CSE1 or CSE2) tester pixit vc_localResourcesList variable MyResourcesList List of all resources created by the IUT on the test system vc_localCSEBaseAnncIndex variable integer Index of the CSEBaseAnnc resource corresponding to the IUT vc_localRemoteCseIndex variable integer Index of the remoteCSE resource in vc_localResourcesList representing the IUT (CSE) vc_remoteCseIndex variable integer Index of the remoteCSE resource in vc_resourcesList representing the CseSimu component vc_cSEBaseIndex variable integer Index of the CSEBase resource in vc_localResourcesList of the CseSimu component vc_cseType variable CseTypeID CSE type of the test system (default is MN) vc_auxiliaryCse2Up variable boolean Flag to indicate that CSE2 component has been started"},{"location":"5.5/#554-scefsimu","title":"5.5.4 ScefSimu","text":"<p>The ScefSimu test component extends the Tester component by adding elements specific to an SCEF entity. Table 5.5.4-1 summarizes those elements.</p> <p>Table 5.5.4-1: ScefSimu component elements</p> Name Instance type Element type Description mcnPort port OneM2MPort Port that implements the mcn interface when test system is the client (sending requests) mcnPortIn port OneM2MPort Port that implements the mcn interface when test system is the server (receiving requests) vc_ae1 test component AeSimu Reference to the AE1 component when required vc_cse2 test component CseSimu Reference to the CSE1 component when required vc_aeSimuDesc variable AeSimuComponentDesc Component configuration extracted from required (AE1) tester pixit vc_cseSimuDesc variable CseSimuComponentDesc Component configuration extracted from required (CSE1) tester pixit vc_cseType variable CseTypeID CSE type of the test system (default is MN) vc_scefSimuDesc variable ScefSimuComponentDesc Component configuration extracted from required (SCEF) tester pixit vc_configurations variable NiddConfigurations NIDD configurations of SCEF component"},{"location":"5.6/","title":"5.6 Test strategy","text":"<p>This clause introduces the test strategy being used for the TTCN-3 test cases. The chosen strategy permits to have a clear structure of the code that facilitates an easy navigation throw the different test steps.</p> <p>The use of the TTCN-3 MTC and PTC(s) is as depicted in figure 5.6-1.</p> <p></p> <p>Figure 5.6-1: Use of TTCN-3 components</p> <p>At the start of the test case execution, the MTC is created. Then, the MTC executes the following steps:</p> <ul> <li>Step 1) initialization of the master PTC.</li> <li>Step 2) initialization of some parameters if required for the permutation test cases.</li> <li> <p>Step 3) running of the appropriate function on the master PTC. The function run on the master PTC implements a given Test Purpose. Such function follows a code structure as indicated here below:</p> <ul> <li>Local Variables, declaration of local variables.</li> <li>Test Control, checking IUT capability parameters required for the proper execution of the test.</li> <li>Test Component Configuration, that initializes the given test component and other test components acting as slave PTC(s) as required by a given configuration.</li> <li>Test adapter configuration, that configures the test adapter throw the acPort if required.</li> <li>Preamble, that implements the necessary test steps as described in the Initial conditions of a Test Purpose. It may also implement additional test steps which are required for the correct execution of the test.</li> <li>Test body, that implements the test steps as described in the Expected behaviour of a Test Purpose.</li> <li>Postamble, that implements the necessary test steps to bring the IUT back to the initial state.</li> <li>Tear down, that finalizes properly the TTCN-3 ports used by the different test components depending on the configuration.</li> </ul> </li> </ul> <p>While master PTC follows the test structure described above, slave PTC(s) run only certain procedures, usually one by one, as mandated by the master PTC.</p> <p>A procedure usually implements a oneM2M request-response exchange between a given PTC and the IUT, although it can implement any other specific action (sending or reception of a message, several request-response exchanges, etc.).</p> <ul> <li>Step 4) checking of some parameters if required for the permutation test cases.</li> </ul> <p>This test strategy may slightly vary for certain cases where specific requirements need to be fulfilled.</p>"},{"location":"6/","title":"6 Untestable Test Purposes","text":"<p>Void.</p>"},{"location":"7.0/","title":"7.0 Introduction","text":"<p>The ATS conventions are intended to give a better understanding of the ATS but they also describe the conventions made for the development of the ATS. These conventions shall be considered during any later maintenance or further development of the ATS.</p> <p>The ATS conventions contain two clauses, the naming conventions and the implementation conventions. The naming conventions describe the structure of the naming of all ATS elements. The implementation conventions describe the functional structure of the ATS.</p> <p>To define the ATS, the guidelines of oneM2M TS-0015 [i.2] were considered.</p>"},{"location":"7.1/","title":"7.1 Testing conventions","text":""},{"location":"7.1/#711-testing-states","title":"7.1.1 Testing states","text":""},{"location":"7.1/#7111-initial-state","title":"7.1.1.1 Initial state","text":"<p>All test cases start with the function f_preamble_XYZ. This function brings the IUT in an \"initialized\" state by performing some actions such as registration of AE, creation of auxiliary access control policy resource, creation of additional needed resources.</p>"},{"location":"7.1/#7112-final-state","title":"7.1.1.2 Final state","text":"<p>All test cases end with the function f_postamble_XYZ. This function brings the IUT back in an \"idle\" state which means deletion of all created resources being used by the test case so that next test case execution is not disturbed.</p> <p>As necessary, further actions may be included in the f_postamble functions.</p>"},{"location":"7.2/","title":"7.2 Naming conventions","text":""},{"location":"7.2/#721-general-guidelines","title":"7.2.1 General guidelines","text":"<p>This test suite follows the naming convention guidelines provided in oneM2M TS-0015 [i.2].</p> <p>The naming convention is based on the following underlying principles:</p> <ul> <li>in most cases, identifiers should be prefixed with a short alphabetic string (specified in table 7.2.1-1) indicating the type of TTCN3 element it represents;</li> <li>suffixes should not be used except in those specific cases identified in table 7.2.1-1;</li> <li>prefixes and suffixes should be separated from the body of the identifier with an underscore (\"_\");</li> </ul> <p><code>EXAMPLE 1:    c\\_sixteen, t\\_wait.</code> </p> <ul> <li>only module names, data type names and module parameters should begin with an uppercase letter. All other names (i.e. the part of the identifier following the prefix) should begin with a lowercase letter;</li> <li>the start of second and subsequent words in an identifier should be indicated by capitalizing the first character. Underscores should not be used for this purpose.</li> </ul> <p><code>EXAMPLE 2:    f\\_initialState.</code> </p> <p>Table 7.2.1-1 specifies the naming guidelines for each element of the TTCN3 language indicating the recommended prefix, suffixes (if any) and capitalization.</p> <p>Table 7.2.1-1: TTCN-3 generic naming conventions</p> Language element Naming convention Prefix Example identifier Module Use upper-case initial letter none OneM2M_Templates Group within a module Use lower-case initial letter none messageGroup Data type Use upper-case initial letter none SetupContents Message template Use lower-case initial letter m_ m_setupInit Message template with wildcard or matching expression Use lower-case initial letters mw_ mw_anyUserReply Signature template Use lower-case initial letter s_ s_callSignature Port instance Use lower-case initial letter none signallingPort Test component instance Use lower-case initial letter none userTerminal Constant Use lower-case initial letter c_ c_maxRetransmission Constant (defined within component type) Use lower-case initial letter cc_ cc_minDuration External constant Use lower-case initial letter cx_ cx_macId Function Use lower-case initial letter f_ f_authentication() External function Use lower-case initial letter fx_ fx_calculateLength() Altstep (incl. Default) Use lower-case initial letter a_ a_receiveSetup() Test case Use ETSI numbering TC_ TC_COR_0009_47_ND Variable (local) Use lower-case initial letter v_ v_macId Variable (defined within a component type) Use lower-case initial letters vc_ vc_systemName Timer (local) Use lower-case initial letter t_ t_wait Timer (defined within a component) Use lower-case initial letters tc_ tc_authMin Module parameters for PICS Use all upper case letters PICS_ PICS_DOOROPEN Module parameters for other parameters Use all upper case letters PX_ PX_TESTER_STATION_ID Formal Parameters Use lower-case initial letter p_ p_macId Enumerated Values Use lower-case initial letter e_ e_syncOk"},{"location":"7.2/#722-onem2m-specific-ttcn-3-naming-conventions","title":"7.2.2 oneM2M specific TTCN-3 naming conventions","text":"<p>Next to such general naming conventions, table 7.2.2-1 shows specific naming conventions that apply to the oneM2M TTCN-3 ATS.</p> <p>Table 7.2.2-1: oneM2M specific TTCN-3 naming conventions</p> Language element Naming convention Prefix Example identifier oneM2M Module Use upper-case initial letter OneM2M_ OneM2M_Testcases_ Module containing oneM2M types Use upper-case initial letter OneM2M_Types OneM2M_Types Module containing types and values Use upper-case initial letter OneM2M_TypesAndValues OneM2M_TypesAndValues Module containing Templates Use upper-case initial letter OneM2M_Templates OneM2M_Templates Module containing test cases Use upper-case initial letter OneM2M_Testcases OneM2M_Testcases Module containing functions Use upper-case initial letter OneM2M_Functions OneM2M_Functions Module containing external functions Use upper-case initial letter OneM2M_ExternalFunctions OneM2M_ExternalFunctions Module containing components, ports and message definitions Use upper-case initial letter OneM2M_TestSystem OneM2M_TestSystem Module containing module parameters Use upper-case initial letter OneM2M_Pixits OneM2M_Pixits"},{"location":"7.2/#723-usage-of-log-statements","title":"7.2.3 Usage of Log statements","text":"<p>All TTCN-3 log statements use the following format using the same order:</p> <ul> <li>The TTCN-3 test case or function identifier in which the log statement is defined.</li> <li>One of the categories of log: INFO, WARNING, ERROR, TIMEOUT, NONE.</li> <li>Free text.</li> </ul> <p><code>EXAMPLE 1:    **log** (\"f\\_utInitializeIut: INFO: IUT initialized\");</code> </p> <p>Furthermore, the following rules are applied too:</p> <ul> <li>All TTCN-3 setverdict statements are combined (as defined in TTCN-3 - ETSI ES 201 873-1 [6]) with a log statement following the same above rules (see example 2).</li> </ul> <p><code>EXAMPLE 2:    **setverdict** (**pass** , \"TC\\_ONEM2M\\_CSE\\_DMR\\_CRE\\_001: Received correct message\");</code> </p>"},{"location":"7.2/#724-test-case-tc-identifier","title":"7.2.4 Test Case (TC) identifier","text":"<p>Table 7.2.4-1: TC naming convention</p> Identifier: TC_&lt;root&gt;_&lt;gr&gt;_&lt;sgr&gt;_&lt;nn&gt;_&lt;per&gt; &lt;root&gt; = root ONEM2M oneM2M &lt;gr&gt; = group CSE CSE testing AE AE testing &lt;sgr&gt; = subgroup REG Registration DMR Data Management and Repository SUB Subscription and Notification GMG Group Management DIS Discovery LOC Location DMG Device Management CMDH Communication Management and Delivery Handling SEC Security &lt;nn&gt; = sequential number 001 to 999 &lt;per&gt; = permutation P1_P2_..PN Permutation parameters <p><code>EXAMPLE:    TP identifier:    TP/oneM2M/CSE/DMR/CRE/001</code> <code>TC identifier:    TC\\_ONEM2M\\_CSE\\_DMR\\_CRE\\_001.</code> </p>"},{"location":"7.3/","title":"7.3 IXIT","text":"<p>The following parameters are used by the oneM2M ATS for the correct execution of the test cases.</p> <p>Table 7.3-1: oneM2M ATS IXITs</p> GROUP IXIT NAME DESCRIPTION DEFAULT VALUE IutParameters PX_IN_CSE MN-CSE True IutParameters PX_MN_CSE IN-CSE False IutParameters PX_ASN_CSE ASN-CSE False IutParameters PX_SUT_ADDRESS SUT address \"127.0.0.1:8080\" IutParameters PX_UT_IMPLEMENTED Upper Tester implemented False IutParameters PX_CSE_NAME IUT CSE Name \"cseName\" IutParameters PX_CSE_ID IUT CSE-ID with SP-relative-CSE-ID format (relative) according to oneM2M TS-0001 [1], table 7.2-1 \"/cseId\" IutParameters PX_CSE_RESOURCE_ID IUT CSE resource ID with Unstructured-CSE-relative-Resource-ID (relative) format according to oneM2MTS-0001 [1], table 7.2-1 \"cseResourceId\" IutParameters PX_SP_ID IUT M2M-SP-ID with M2M-SP-ID format (absolute) according to oneM2M TS-0001 [1], table 7.2-1 Unstructured-CSE-relative -Resource-ID \"//om2m.org\" IutParameters PX_SUPER_AE_ID AE-ID with privileges to CREATE at the IUT CSEBase with AE-ID-Stem format (relative) according to oneM2M TS-0001 [1], table 7.2-1 \"admin:admin\" IutParameters PX_SUPER_CSE_ID CSE-ID with privileges to CREATE at the IUT CSEBase with SPrelative-CSE-ID format (relative) according to oneM2M TS-0001 [1], table 7.2-1 \"/admin:admin\" IutParameters PX_ALLOWED_C_AE_IDS {\"C-AllowedAeId\"} IutParameters PX_NOT_ALLOWED_C_AE_IDS {\"C-NotAllowedAeId\"} IutParameters PX_ALLOWED_S_AE_IDS {\"S-AllowedAeId\"} IutParameters PX_NOT_ALLOWED_S_AE_IDS {\"S-NotAllowedAeId\"} IutParameters PX_NOT_ALLOWED_APP_ID \"NotAllowedAppId\" IutParameters PX_ADDRESSING_METHOD Addressing method e_hierarchical IutParameters PX_PRIMITIVE_SCOPE Primitive scope e_cseRelative IutParameters PX_WS_PROTOCOL WebSocket protocol \"oneM2M.R2.0.xml\" IutParameters PX_REQUEST_URI WebSocket context \"/\" IutParameters PX_HOSTING_CSE_ID Hosting CSE-ID for MQTT \"CSE-ID\" IutParameters PX_CREDENTIAL_ID Credential-ID for MQTT \"admin:admin\" IutParameters PX_XML_NAMESPACE XML Namespace \"m2m=\"\"http://www.onem2m.org/xml/protocols\"\"\" IutParameters PX_ACOR AccessControlOriginators {\"all\"} IutParameters PX_TCONFIG_IUT Time to configure IUT after a requested action 10.0 TesterParameters PX_TS_AE1 AE1 component settings aeIdStem = \"\"appId = \"NMyApp1Id\"mcaPort and mcaPortIn settings which include per port the following info:Binding: - bindingProtocol - bindingDesc:        - tsAddress        - localPort        - sutAddress        - remotePortSerialization TesterParameters PX_TS_AE2 AE2 component settings aeIdStem = \"\"appId = \"NMyApp2Id\"mcaPort and mcaPortIn settings which include per port the following info:Binding: - bindingProtocol - bindingDesc:        - tsAddress        - localPort        - sutAddress        - remotePortSerialization TesterParameters PX_TS_CSE1 CSE1 component settings cseName = \"CSE1_NAME\"cseId = \"/CSE1_ID\"cseResourceId = \"CSE1_RESOURCE_ID\"spId = \"//onem2m.org\"supportedResourceType = {int1, int2, int3, int16}mcaPort, mcaPortIn, mccPort and mccPortIn settings which include per port the following info:Binding: - bindingProtocol - bindingDesc:        - tsAddress        - localPort        - sutAddress        - remotePortSerialization TesterParameters PX_TS_CSE2 CSE2 component settings cseName = \"CSE2_NAME\"cseId = \"/CSE2_ID\"cseResourceId = \"CSE2_RESOURCE_ID\"spId = \"//onem2m.org\"supportedResourceType = {int1, int2, int3, int16}mcaPort, mcaPortIn, mccPort and mccPortIn settings which include per port the following info:Binding: - bindingProtocol - bindingDesc:        - tsAddress        - localPort        - sutAddress        - remotePortSerialization PX_TS_DAS DAS1 component settings aeIdStem = \"\"appId = \"\"mcaPort and mcaPortIn settings which include per port the following info:Binding: - bindingProtocol - bindingDesc:        - tsAddress        - localPort        - sutAddress        - remotePortSerialization PX_TS_UT UpperTester settings url = \"http://127.0.0.1:43000/\" ExecutionParameters PX_RESOURCES_TO_BE_DELETED (For debugging purposes) {\"MyAe\", \"MyAccessControlPolicyResource\", \"SubscriptionVerificationAcp\", \"MyAcp\", \"MyRemoteCSEResource\"} ExecutionParameters PX_RUN_POSTAMBLE (For debugging purposes) true ExecutionParameters PX_CERTIFICATE_PATH charstring \"\" ExecutionParameters PX_CERTIFICATE_NAME charstring \"\" ExecutionParameters PX_PAIRWISEKEY_METHOD PairwiseKeyMethod e_establish ExecutionParameters PX_KEY_PROVISION Provisioned e_preProvisioning"},{"location":"8/","title":"8 TTCN-3 Verifications","text":"<p>The principles for Verifying the TTCN-3 test code are given in oneM2M TS-0015 [i.2].</p> <p>All test cases provided with the present document in annex A which correspond to at least one of the product profiles defined in oneM2M TS-0025 [i.3] have been verified at the time of publication of the present document which corresponds with the TTCN-3 code gitlab tag provided in annex A.</p>"},{"location":"A.1/","title":"A.1 Electronic annex, zip file with TTCN-3 code","text":"<p>This ATS has been produced using the Testing and Test Control Notation (TTCN) according to ETSI ES 201 873-1 [6].</p> <p>This test suite has been compiled error-free using two different commercial TTCN-3 compilers.</p> <p>The TTCN-3 library modules, which form parts of the present document, are contained in the following gitLab tag:</p> <p>https://git.onem2m.org/TST/ATS/-/tags/TS-0019-baseline-v4_1_1 </p> <p></p>"},{"location":"B/","title":"Annex B (informative): Bibliography","text":"<p>ISO/IEC 9646-6 (1994): \"Information technology - Open Systems Interconnection - Conformance testing methodology and framework - Part 6: Protocol profile test specification\".</p> <p>oneM2M TS-0017: \"Implementation Conformance Statement\".</p> <p>oneM2M TS-0031: \"Feature catalogue\".</p>"},{"location":"download/","title":"Download","text":"<p>Download baseline for TS-0019 version v4.3.0:</p> <p></p>"}]}
\ No newline at end of file
+{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"","text":"oneM2MTechnical Specification oneM2MTechnical Specification Document Number oneM2M-TS-0019-V-4.1.1 Document Name: Abstract Test Suite and Implementation eXtra Information for Test Date: 2024 March 1 Abstract: Abstract Test Suite and Implementation eXtra Information for Test consists of :-    Definition of the Abstract Protocol Tester (APT)-    Definition of TTCN-3 test architecture-    Development of TTCN-3 test suite, e.g. naming conventions, code documentation, test case structure.-    IXIT proforma; Template Version:23 February 2015 (Do not modify) Template Version:23 February 2015 (Do not modify) <p>This Specification is provided for future development work within oneM2M only. The Partners accept no liability for any use of this Specification.</p> <p>The present document has not been subject to any approval process by the oneM2M Partners Type 1.  Published oneM2M specifications and reports for implementation should be obtained via the oneM2M Partners' Publications Offices.</p> <p>About oneM2M </p> <p>The purpose and goal of oneM2M is to develop technical specifications which address the need for a common M2M Service Layer that can be readily embedded within various hardware and software, and relied upon to connect the myriad of devices in the field with M2M application servers worldwide. </p> <p>More information about oneM2M may be found at:  http//www.oneM2M.org</p> <p>Copyright Notification</p> <p>(c) 2019, oneM2M Partners Type 1 (ARIB, ATIS, CCSA, ETSI, TIA, TSDSI, TTA, TTC).</p> <p>All rights reserved.</p> <p>The copyright extends to reproduction in all media.</p> <p>Notice of Disclaimer &amp; Limitation of Liability </p> <p>The information provided in this document is directed solely to professionals who have the appropriate degree of experience to understand and interpret its contents in accordance with generally accepted engineering or other professional standards and applicable regulations. No recommendation as to products or vendors is made or should be implied. </p> <p>NO REPRESENTATION OR WARRANTY IS MADE THAT THE INFORMATION IS TECHNICALLY ACCURATE OR SUFFICIENT OR CONFORMS TO ANY STATUTE, GOVERNMENTAL RULE OR REGULATION, AND FURTHER, NO REPRESENTATION OR WARRANTY IS MADE OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR AGAINST INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS. NO oneM2M PARTNER TYPE 1 SHALL BE LIABLE, BEYOND THE AMOUNT OF ANY SUM RECEIVED IN PAYMENT BY THAT PARTNER FOR THIS DOCUMENT, WITH RESPECT TO ANY CLAIM, AND IN NO EVENT SHALL oneM2M BE LIABLE FOR LOST PROFITS OR OTHER INCIDENTAL OR CONSEQUENTIAL DAMAGES. oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PROVIDED IN THIS DOCUMENT IS AT THE RISK OF THE USER.</p>"},{"location":"0/","title":"0","text":"oneM2MTechnical Specification oneM2MTechnical Specification Document Number oneM2M-TS-0019-V-4.1.1 Document Name: Abstract Test Suite and Implementation eXtra Information for Test Date: 2024 March 1 Abstract: Abstract Test Suite and Implementation eXtra Information for Test consists of :-    Definition of the Abstract Protocol Tester (APT)-    Definition of TTCN-3 test architecture-    Development of TTCN-3 test suite, e.g. naming conventions, code documentation, test case structure.-    IXIT proforma; Template Version:23 February 2015 (Do not modify) Template Version:23 February 2015 (Do not modify) <p>This Specification is provided for future development work within oneM2M only. The Partners accept no liability for any use of this Specification.</p> <p>The present document has not been subject to any approval process by the oneM2M Partners Type 1.  Published oneM2M specifications and reports for implementation should be obtained via the oneM2M Partners' Publications Offices.</p> <p>About oneM2M </p> <p>The purpose and goal of oneM2M is to develop technical specifications which address the need for a common M2M Service Layer that can be readily embedded within various hardware and software, and relied upon to connect the myriad of devices in the field with M2M application servers worldwide. </p> <p>More information about oneM2M may be found at:  http//www.oneM2M.org</p> <p>Copyright Notification</p> <p>(c) 2019, oneM2M Partners Type 1 (ARIB, ATIS, CCSA, ETSI, TIA, TSDSI, TTA, TTC).</p> <p>All rights reserved.</p> <p>The copyright extends to reproduction in all media.</p> <p>Notice of Disclaimer &amp; Limitation of Liability </p> <p>The information provided in this document is directed solely to professionals who have the appropriate degree of experience to understand and interpret its contents in accordance with generally accepted engineering or other professional standards and applicable regulations. No recommendation as to products or vendors is made or should be implied. </p> <p>NO REPRESENTATION OR WARRANTY IS MADE THAT THE INFORMATION IS TECHNICALLY ACCURATE OR SUFFICIENT OR CONFORMS TO ANY STATUTE, GOVERNMENTAL RULE OR REGULATION, AND FURTHER, NO REPRESENTATION OR WARRANTY IS MADE OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR AGAINST INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS. NO oneM2M PARTNER TYPE 1 SHALL BE LIABLE, BEYOND THE AMOUNT OF ANY SUM RECEIVED IN PAYMENT BY THAT PARTNER FOR THIS DOCUMENT, WITH RESPECT TO ANY CLAIM, AND IN NO EVENT SHALL oneM2M BE LIABLE FOR LOST PROFITS OR OTHER INCIDENTAL OR CONSEQUENTIAL DAMAGES. oneM2M EXPRESSLY ADVISES ANY AND ALL USE OF OR RELIANCE UPON THIS INFORMATION PROVIDED IN THIS DOCUMENT IS AT THE RISK OF THE USER.</p>"},{"location":"1/","title":"1 Scope","text":"<p>The present document contains the Abstract Test Suite (ATS) for oneM2M as defined in oneM2M TS-0001 [1] and oneM2M TS-0004 [2] in compliance with the relevant requirements and in accordance with the relevant guidance given in ISO/IEC 96467 [5].</p> <p>The objective of the present document is to provide a basis for conformance tests for oneM2M products giving a high probability of interoperability between different manufacturers' equipment.</p> <p>The ISO standard for the methodology of conformance testing (ISO/IEC 96461 [3] and ISO/IEC 96462 [4]) as well as oneM2M TS-0015 Testing Framework [i.2] are used as a basis for the test methodology.</p>"},{"location":"2.1/","title":"2.1 Normative references","text":"<p>References are either specific (identified by date of publication and/or edition number or version number) or nonspecific. For specific references, only the cited version applies. For non-specific references, the latest version of the referenced document (including any amendments) applies.</p> <p>The following referenced documents are necessary for the application of the present document.</p> <ul> <li>[1]    oneM2M TS-0001: \"Functional Architecture\".</li> <li>[2]    oneM2M TS-0004: \"Service Layer Core Protocol\".</li> <li>[3]    ISO/IEC 9646-1 (1994): \"Information technology - Open Systems Interconnection - Conformance testing methodology and framework - Part 1: General concepts\".</li> <li>[4]    ISO/IEC 9646-2 (1994): \"Information technology - Open Systems Interconnection - Conformance testing methodology and framework - Part 2: Abstract Test Suite specification\".</li> <li>[5]    ISO/IEC 9646-7 (1995): \"Information technology - Open Systems Interconnection - Conformance testing methodology and framework - Part 7: Implementation Conformance Statements\".</li> <li>[6]    ETSI ES 201 873-1 (V4.5.1): \"Methods for Testing and Specification (MTS); The Testing and Test Control Notation version 3; Part 1: TTCN-3 Core Language\".</li> <li> <p>[7]    oneM2M TS-0018: \"Test Suite Structure and Test Purposes\".</p> </li> <li> <p>[8]                     3GPP TS 29.122; T8 reference point for Northbound APIs (Release 15)</p> </li> </ul>"},{"location":"2.2/","title":"2.2 Informative references","text":"<p>References are either specific (identified by date of publication and/or edition number or version number) or nonspecific. For specific references, only the cited version applies. For non-specific references, the latest version of the referenced document (including any amendments) applies.</p> <p>The following referenced documents are not necessary for the application of the present document but they assist the user with regard to a particular subject area.</p> <ul> <li>[i.1]    oneM2M Drafting Rules.</li> </ul> <p>Note</p> <p>Available at http://www.onem2m.org/images/files/oneM2M-Drafting-Rules.pdf.</p> <ul> <li>[i.2]    oneM2M TS-0015: \"Testing Framework\".</li> <li>[i.3]    oneM2M TS-0025: \"Product profiles\".</li> </ul>"},{"location":"3.1/","title":"3.1 Terms","text":"<p>For the purposes of the present document, the terms given in ISO/IEC 96461 [3], ISO/IEC 96467 [5] and oneM2M TS-0015 [i.2] apply.</p>"},{"location":"3.2/","title":"3.2 Symbols","text":"<p>For the purposes of the present document, the following abbreviations apply:</p> <p><code>AE    Application Entity</code> <code>APT    Abstract Protocol Tester</code> <code>ATM    Abstract Test Method</code> <code>ATS    Abstract Test Suite</code> <code>CoAP    Constrained Application Protocol</code> <code>CSE    Common Service Entity</code> <code>HTTP    Hypertext Transfer Protocol</code> <code>IP    Internet Protocol</code> <code>IUT    Implementation Under Test</code> <code>IXIT    Implementation eXtra Information for Test</code> <code>JSON    JavaScript Object Notation</code> <code>MQTT    Message Queuing Telemetry Transport</code> <code>MTC    Main Test Component</code> <code>PA    Platform Adaptor</code> <code>PICS    Protocol Implementation Conformance Statement</code> <code>PTC    Paralell Test Component</code> <code>PX    PiXit</code> <code>SA    System Adaptor</code> <code>SUT    System Under Test</code> <code>TC    Test Case</code> <code>TCP    Transmission Control Protocol</code> <code>TP    Test Purposes</code> <code>TS    Test System</code> <code>TSS    Test Suite Structure</code> <code>TTCN    Tree and Tabular Combined Notation</code> <code>UDP    User Datagram Protocol</code> <code>UT    Upper Tester</code> <code>XML    eXtensible Markup Language</code> </p>"},{"location":"4/","title":"4 Conventions","text":"<p>The key words \"Shall\", \"Shall not\", \"May\", \"Need not\", \"Should\", \"Should not\" in this document are to be interpreted as described in the oneM2M Drafting Rules [i.1].</p>"},{"location":"5.1/","title":"5.1 Abstract protocol tester","text":"<p>An abstract protocol tester (APT) is a process that provides behaviours for testing an IUT by emulating a peer IUT at the same layer, and enabling to address a single test objective.</p> <p>APTs used by the oneM2M test suite are described in figure 5.1-1. The test system will simulate valid and invalid protocol behaviour, and will analyse the reaction of the IUT.</p> <p></p> <p>Figure 5.1-1: Abstract protocol testers - oneM2M</p> <p>As figure 5.1-1 illustrates, the corresponding ATS needs to use lower layers to establish a proper connection to the implementation under test (SUT) over several physical links (Lower layers link). Four different lower layers have been specified corresponding to the binding protocols considered in oneM2M: HTTP, CoAP, WebSocket and MQTT.</p> <p>This is a new sentence.</p>"},{"location":"5.2/","title":"5.2 Test Configuration","text":""},{"location":"5.2/#521-ae-test-configuration","title":"5.2.1 AE Test Configuration","text":"<p>Test configurations are defined to test different entities such as CSE and AE, etc.</p> <p>Figure 5.2.1-1 shows a AE test configuration which is mapped to CF03 in clause 6.3.3.3 in oneM2M TS0015 [i.2] and aligns with conformance test system architecture in clause 6.3.3.2 in oneM2M TS-0015 [i.2].</p> <p>The TTCN-3 Test Component in Test System sends triggering actions or behaviour to the Upper Tester Application of SUT through upper tester transport link Ut  while the IUT sends/receives oneM2M service primitives through Mca to/from CSE in Test System.</p> <p></p> <p>Figure 5.2.1-1: AE test configuration</p>"},{"location":"5.3/","title":"5.3 Test architecture","text":"<p>The approach for the implementation of an Abstract Protocol Tester selected in oneM2M follows the recommendation of the oneM2M Testing Framework oneM2M TS-0015 [i.2] where the TTCN-3 language and its architecture are recommended.</p> <p>Following this recommendation the oneM2M tester architecture comprises a non-platform dependent Test Suite, and a platform dependent part.</p> <p></p> <p>Note</p> <p>However, it can be implemented in a semi-independent manner, which will minimize the dependency to those elements.</p> <p>Figure 5.3-1: High level oneM2M Test Architecture</p> <ul> <li>oneM2M TTCN -3 Abstract Test Suite:  the test suite is platform independent, and it is the cornerstone of the architecture. It allows a complete decoupling between the test suite and the rest of the test system. The test suite is composed of a complete set of test cases covering oneM2M requirements specified by oneM2M TS0001 [1] and oneM2M TS-0004 [2].</li> <li>oneM2M System Adaptor :  this is the platform dependent part that includes adaptors and codecs (out of the scope of the present document). This part of the architecture definition depends on the specific platform (e.g. Windows or Linux) and test tool on which the tester is going to run.</li> </ul> <p>Figure 5.3-2 shows the oneM2M TTCN-3 test architecture design used for the oneM2M ATS. The Test Suite needs to interact with the System Adaptor to implement the collection of TTCN-3 test cases that are intended to be used to test the oneM2M IUTs.</p> <p>The oneM2M TTCN-3 test cases implement the test algorithms specified in the TSS&amp;TP document oneM2M TS0018 [7], including verdict logic that allows pass/fail diagnosis.</p> <p>The test algorithms use the interfaces defined in [1] and [2] (mca, mcc) in order to:</p> <ol> <li>control the test event to be sent towards the IUT; and</li> <li>observe the test events received from the IUT.</li> </ol> <p>In TTCN-3 these two interfaces have been implemented through a set of logical TTCN-3 ports (mcaPort and mcaPortIn for mca interface, and mccPort and mccPortIn for mcc interface) which allows oneM2M message primitives exchange with the IUT.</p> <p></p> <p>Figure 5.3-2: oneM2M Test Architecture</p> <p>The oneM2M primitive messages have been mapped into TTCN-3 structure. Through this mapping, the TTCN-3 is able to build and send these messages, as well as receive them via the ports defined above.</p> <p>Additionally, the test cases are able to control and configure the test platform through a dedicated port called acPort while port utPort enables oneM2M TTCN-3 Test Component module to trigger specific action or behaviour on IUT. TTCN3 Test Components can also exchange information through a dedicated port called infoPort.</p> <p>To build up a tester, the test platform needs to be also developed (out of scope). This test platform is composed of three adaptation layers:</p> <ul> <li>PA (Platform Adaptor) layer functionality implements the communication between the TTCN-3 modules and external elements that constitute the test tool such as timers and external functions. The External functions are a powerful resources supported by TTCN-3 language. An External function is a function declared at the TTCN-3 level but implemented at the native level.</li> <li> <p>SA (System Adaptor) layer functionality is divided into two modules:</p> <ul> <li>oneM2M lower layers stack module implements the communication with the IUT and carries out the oneM2M primitives messages sent to or received from the IUT. This module is based on TCP or UDP depending on the binding supported by the IUT. The binding is a system adaptor parameter.</li> <li>Upper Tester Transport module implements functions that enable triggering specific actions or behaviour on the IUT.</li> </ul> </li> <li> <p>CODECS layer is the part of the tester to encode and decode messages between the TTCN-3 abstract internal data representation and the format required by the related base standard which the IUT understands. Several CODECS are required in oneM2M tester to cope with the bindings considered in oneM2M (HTTP, CoAP, MQTT) and the serialization methods (xml, json).</p> </li> </ul>"},{"location":"5.4/","title":"5.4 Ports and ASPs (Abstract Services Primitives)","text":""},{"location":"5.4/#540-introduction","title":"5.4.0 Introduction","text":"<p>The oneM2M ATS implements the following ports:</p> <ul> <li>The mcaPort and mcaPortIn</li> <li>The mccPort and mccPortIn</li> <li>The acPort</li> <li>The utPort</li> <li>The InfoPort</li> </ul>"},{"location":"5.4/#541-mcaport-mcaportin-mccport-mccportin","title":"5.4.1 mcaPort, mcaPortIn, mccPort, mccPortIn","text":"<p>These ports are used to send and receive the following message sets:</p> <ul> <li>Request Primitives messages in accordance with oneM2M TS-0004 [2].</li> <li>Response Primitives messages in accordance with oneM2M TS-0004 [2].</li> </ul> <p>Two primitives are currently defined for these ports indicated as table 5.4.1-1:</p> <ol> <li>The M2MRequestPrimitive - to send or receive oneM2M messages to/from the IUT. Depending on the IUT to be tested:<ol> <li>If the IUT is an AE, these messages are either received or sent by the tester which is associated with the CSE role through the mcaPortIn or the mcaPort respectively.</li> <li>If the IUT is a CSE, these messages are either sent or received by the tester when it plays the AE role through the mcaPort or the mcaPortIn respectively, or sent or received by the tester when it plays the CSE role through the mccPort or the mccPortIn respectively.</li> </ol> </li> <li>The M2MResponsePrimitive - to send or receive oneM2M messages to/from the IUT. Depending on the IUT to be tested:<ol> <li>If the IUT is an AE, these messages are either sent or received by the tester which is associated with the CSE role through the mcaPortIn or the mcaPort respectively.</li> <li>If the IUT is a CSE, these messages are either sent or received by the tester when it plays the CSE role through the mccPortIn or the mccPort respectively, sent or received by the tester when it plays the AE role through the mcaPortIn or mcaPort respectively.</li> </ol> </li> </ol> <p>Both primitives contain another parameters that permits to dynamically configure the test adaptor for every single sending. These parameters are:</p> <ul> <li>Host: IP address of the IUT</li> <li>XML Namespace</li> <li>Protocol binding</li> <li>Serialization</li> <li>ForceFields: used to force invalid or empty values to certain attributes. This behaviour shall be implemented by the System Adaptor.</li> </ul> <p>Table 5.4.1-1: Mapping of TTCN-3 Primitives to oneM2M Service Primitives</p> TTCN-3 Primitive oneM2M Message Direction IUT M2MRequestPrimitive Request Primitive &lt;=&gt; AE M2MRequestPrimitive Request Primitive &lt;=&gt; CSE M2MResponsePrimitive Response Primitive &lt;=&gt; AE M2MResponsePrimitive Response Primitive &lt;=&gt; CSE"},{"location":"5.4/#542-mcnport-mcnportin","title":"5.4.2 mcnPort, mcnPortIn","text":"<p>These ports are used to send and receive the following message sets:</p> <ul> <li>Request Primitives messages in accordance with oneM2M TS-0004 [2].</li> <li>Response Primitives messages in accordance with oneM2M TS-0004 [2].</li> </ul> <p>Two primitives are currently defined for these ports indicated:</p> <ol> <li> <p>The T8Request - to send T8 request messages to/from the IUT according to 3GPP TS 29.122 [8]. </p> </li> <li> <p>The T8Response - to receive T8 response messages to/from the IUT according to 3GPP TS 29.122 [8].</p> </li> </ol> <p>Further primitives might be defined to support other underlying networks.</p>"},{"location":"5.4/#543-mccportinternal","title":"5.4.3 mccPortInternal","text":"<p>This port is used to send and receive the following message sets between TTCN-3 components:</p> <ul> <li>Request Primitives messages in accordance with oneM2M TS-0004 [2].</li> <li>Response Primitives messages in accordance with oneM2M TS-0004 [2].</li> </ul>"},{"location":"5.4/#544-utport","title":"5.4.4 utPort","text":""},{"location":"5.4/#5440-introduction","title":"5.4.4.0 Introduction","text":"<p>The utPort is included in the oneM2M ATS in order to be able to stimulate the IUT and receive extra information from IUT upper layers. For instance, the utPort can be applied to automate AE testing shown as clause 5.4.4.1.</p>"},{"location":"5.4/#5441-usage-for-automated-ae-testing","title":"5.4.4.1 Usage for Automated AE Testing","text":"<p>The utPort is in charge of the communication between TTCN-3 Test Component module in Test System and the Upper Tester Application in SUT.</p> <p>Functionalities that TTCN-3 Test Component module and the Upper Tester Application are required to implement are listed as follows:</p> <ul> <li>TTCN-3 Test Component is able to configure the Test System and send standardized triggering commands to the SUT (Upper Tester Application).</li> <li>Upper Tester Application can process the triggering command messages received from Test System (TTCN-3 Test Component) and stimulates IUT to act following the corresponding triggering command (i.e. sending oneM2M service primitives to Test System through Mca port).</li> </ul> <p>oneM2M service Primitive defined for utPort is listed as follows:</p> <ul> <li>The UtTrigger primitive is used to trigger upper layer events in IUT (i.e. sending oneM2M service primitives to Test System through Mca port).</li> <li>The UtTriggerAck primitive is used by IUT to send acknowledgement back to the Test System.</li> </ul> <p>The Upper Tester Application in SUT can be implemented as an embedded source code. An example for implementation of automated AE test for Registration is shown as figure 5.4.4.1-1.</p> <p></p> <p>Figure 5.4.4.1-1: Example of automated AE test using Ut interface</p>"},{"location":"5.4/#5442-upper-tester-control-primitives","title":"5.4.4.2 Upper Tester Control Primitives","text":""},{"location":"5.4/#54421-introduction","title":"5.4.4.2.1 Introduction","text":"<p>The upper tester triggering message is used to transport control commands between Test System and the Upper Tester Application. The control command will contain essential parameters that are required for certain test case.</p> <p>The upper tester triggering message type maps to particular message formats for exchanging data and those message formats are defined by TTCN-3 primitive as shown at table 5.4.4.2.1-1, U tTrigger  and U tTriggerAck  primitive.</p> <p>Table 5.4.4.2.1-1: Mapping of TTCN-3 Primitives to oneM2M Service Primitives</p> Upper Tester Control Message Type TTCN-3 Primitives Direction Direction Trigger UtTrigger Primitive TS UT Trigger Acknowledgement UtTriggerAck Primitive UT TS"},{"location":"5.4/#54422-uttrigger-and-uttriggerack-primitives","title":"5.4.4.2.2 UtTrigger and UtTriggerAck Primitives","text":"<p>The UtTrigger primitive is initialized by the Test System to send triggering message to the target IUT as depicted in figure 5.4.4.2.2-1. The IUT will send acknowledgement message back to the Test System using UtTriggerAck primitive if trigger message is successfully transported to the IUT. Then IUT starts interaction with Test System through oneM2M request and response primitives.</p> <p></p> <p>Figure 5.4.4.2.2-1: Trigger message flow</p> <p>Table 5.4.4.2.2-1 defines UtTrigger and UtTriggerAck primitives including oneM2M data types to which are mapped as well as examples to show how to implement UtTrigger and UtTriggerAck primitives.</p> <p>Table 5.4.4.2.2-1: UtTrigger and UtTriggerAck Primitive</p> Ut Control Primitive Mapping to oneM2M data types Description Reference Triggering Message HTTP message UtTrigger Primitive requestPrimitive ONLY essential parameters included for certain test caseSee note 1 oneM2MTS-0004 [2] EXAMPLE 1:If the test objective is to test \"Test System triggers IUT to execute a test case for creation of &lt; AE &gt; with labels attribute under a CSEBase resource \", then the triggering message would be serialized as following. EXAMPLE 1:If the test objective is to test \"Test System triggers IUT to execute a test case for creation of &lt; AE &gt; with labels attribute under a CSEBase resource \", then the triggering message would be serialized as following. UtTrigger Primitive requestPrimitive ONLY essential parameters included for certain test caseSee note 1 oneM2MTS-0004 [2] Request{\"m2m:rqp\" :{    \"op\": 1, //indicate CREATE operation    \"ty\": 2, //indicate AE resource type    \"to\": {TEST_SYSTEM_ADDRESS},         \"pc\": {            \"m2m:ae\": {                \"lbl\":\"UNINITIALIZED\" //indicate that attribute labels needs to be included            },         }         \"rvi\": \"2a\"}} RequestPOST  /{SUT_UT_APPLICATION_URL} HTTP/1.1Host : {SUT_IP_ADDRESS:PORT}Content-Length : {PAYLOAD_LENGTH}Content-Type : application/ json{\"m2m:rqp\" :{    \"op\": 1, //indicate CREATE operation    \"ty\": 2, //indicate AE resource type    \"to\": {TEST_SYSTEM_ADDRESS},         \"pc\": {            \"m2m:ae\": {                \"lbl\":\"UNINITIALIZED\" //indicate that attribute labels needs to be included            }         },         \"rvi\": \"2a\"}} UtTrigger Primitive requestPrimitive ONLY essential parameters included for certain test caseSee note 1 oneM2MTS-0004 [2] EXAMPLE 2: If the test objective is to test \"Test System triggers IUT to execute a test case for delete of a &lt; AE &gt; resource. \", then the triggering message would be serialized as following. EXAMPLE 2: If the test objective is to test \"Test System triggers IUT to execute a test case for delete of a &lt; AE &gt; resource. \", then the triggering message would be serialized as following. UtTrigger Primitive requestPrimitive ONLY essential parameters included for certain test caseSee note 1 oneM2MTS-0004 [2] Request{\"m2m:rqp\" :{  \"op\": 4, //indicate DELETE operation  \"to\": {TARGET_AE_RESOURCE_ADDRESS}, //indicate Target AE resource address     \"rvi\": \"2a\"}} RequestPOST  /{SUT_UT_APPLICATION_URL} HTTP/1.1Host : {SUT_IP_ADDRESS:PORT}Content-Length : {PAYLOAD_LENGTH}Content-Type : application/ json{\"m2m:rqp\" :{  \"op\": 4, //indicate DELETE operation  \"to\": {TARGET_AE_RESOURCE_ADDRESS}, //indicate Target AE resource address     \"rvi\": \"2a\"}} UtTriggerPrimitive N/A Special upper tester commands N/A \"RESET\" RequestPOST  /{SUT_UT_APPLICATION_URL} HTTP/1.1Host : {SUT_IP_ADDRESS:PORT}X-M2M-UTCMD: Reset UtTrigger Ack Primitive responsePrimitive ONLY responseStatusCode attribute includedSee note 2 oneM2M TS-0004 [2] Response{    \"m2m:rsp\": {        \"rsc\": 2000    }}For any triggering response, it only contains a response status code, and the response status code for the triggering operation can only be set to either 2000 (OK) or 4000 (BAD_REQUEST) according to the rules for triggering operations. ResponseHTTP/1.1 200 OKX-M2M-RSC: 2000 NOTE 1:    Additional rules defined in table 5.4.4.2.2-3 are also applied.NOTE 2:    Attribute response status code is defined at table 5.4.4.2.2-3. NOTE 1:    Additional rules defined in table 5.4.4.2.2-3 are also applied.NOTE 2:    Attribute response status code is defined at table 5.4.4.2.2-3. NOTE 1:    Additional rules defined in table 5.4.4.2.2-3 are also applied.NOTE 2:    Attribute response status code is defined at table 5.4.4.2.2-3. NOTE 1:    Additional rules defined in table 5.4.4.2.2-3 are also applied.NOTE 2:    Attribute response status code is defined at table 5.4.4.2.2-3. NOTE 1:    Additional rules defined in table 5.4.4.2.2-3 are also applied.NOTE 2:    Attribute response status code is defined at table 5.4.4.2.2-3. NOTE 1:    Additional rules defined in table 5.4.4.2.2-3 are also applied.NOTE 2:    Attribute response status code is defined at table 5.4.4.2.2-3. <p>Table 5.4.4.2.2-2: Definition of special Upper Tester commands</p> Value Interpretation Reset Inidicates that the IUT should reset <p>The rules for defining UtTrigger and UtTriggerAck primitives are:</p> <ol> <li> <p>UtTrigger primitive is represented in requestPrimitive serialized in JSON format. </p> </li> <li> <p>UtTrigger primitive shall be interpreted as follows:</p> <ul> <li>Any attribute/parameter containing a value shall be present and equal in the triggered request primitive.</li> <li>Any attribute/parameter containing \"UNINITIALIZED\" value shall be present in the triggered request primitive.</li> <li>Any other attribute/parameter shall comply with oneM2M TS-0004 [2].</li> </ul> </li> <li> <p>Parameters within UtTrigger are listed as following:</p> <ul> <li>operation: (mandatory) operation type that IUT is triggered to perform.</li> <li>resourceType: (optional) resource type of a target resource against which IUT is triggered to perform certain operation</li> <li>to: (mandatory) target resource against which IUT is triggered to perform certain operation. </li> <li>primitiveContent: (optional) represents the resource attributes that shall be included in the requestPrimitive.</li> </ul> </li> </ol> <p>Table 5.4.4.2.2-3: Definition of ResponseStatusCode for UtTriggerAck primitive</p> Response Status Code Description Response Status Code Value Interpretation OK 2000 The SUT receives successfully the triggering message from Test System BAD_REQUEST 4000 The SUT does not interpret correctly the UtTrigger primitive NOTE:    Only above two response status codes are allowed to use in UtTriggerAck primitive. NOTE:    Only above two response status codes are allowed to use in UtTriggerAck primitive. NOTE:    Only above two response status codes are allowed to use in UtTriggerAck primitive."},{"location":"5.4/#54423-control-communication-protocol","title":"5.4.4.2.3 Control Communication Protocol","text":"<p>Protocol used for proceeding communications between Test System and Upper Tester Application is designated to the Hypertext Transfer Protocol (HTTP) protocol owning it is an application protocol that is widely supported by most all IoT devices and various intrinsic features such as persistent connection, ease of programming, flexibility, etc.</p>"},{"location":"5.4/#54424-control-message-serialization","title":"5.4.4.2.4 Control Message Serialization","text":"<p>Control commands that are wrapped within a request body of HTTP message shall be serialized into JavaScript Object Notation (JSON) because it is very lightweight and easy to parse and generate for machines.</p>"},{"location":"5.4/#545-acport","title":"5.4.5 acPort","text":"<p>The acPort is included in the oneM2M ATS in order to be able to control and configure the test adaptor for specific cases.</p>"},{"location":"5.4/#546-infoport","title":"5.4.6 infoPort","text":"<p>The infoPort is included in the oneM2M ATS in order for the TTCN-3 test components to be able to exchange information such as last response primitives or request primitives received by a component, retrieved primitive contents.</p>"},{"location":"5.5/","title":"5.5 Test components","text":""},{"location":"5.5/#551-tester","title":"5.5.1 Tester","text":"<p>The Tester test component includes a set of ports, timers and variables that are common to the other defined components which are described in table 5.5.1-1.</p> <p>Table 5.5.1-1: Tester component elements</p> Name Instance type Element type Description acPort port AdapterControlPort Port that communicates with the adapter for sending configuration parameters infoPort port InfoPort Port between test components for exchanging information utPort port UpperTesterPort Port that communicates with the UT Application for triggering actions on the IUT tc_ac timer N/A Timer for the reception of a message tc_wait timer N/A Timer for the reaction of the IUT to an upper tester primitive tc_done Timer N/A Timer for waiting completion of a component behaviour vc_config variable Configurations Configuration being used for the given test case vc_testSystemRole variable TestSystemRole Role of the test component vc_componentRegistered variable boolean Flag to indicate when a component has registered to the IUT vc_resetRequired variable Boolean Flag to indicate whether a reset of the IUT is necessary vc_resourcesList variable MyResourcesList List of all resources created by the test system on the IUT vc_resourcesIndexToBeDeleted variable IntegerList List of indexes of resources created by the test system on the IUT that need to be deleted vc_acpIndex variable integer Index of accessControlPolicy resource used by the test system by default (when required) vc_request variable MsgIn Latest request primitive received/sent vc_response variable MsgIn Latest response primitive received/sent vc_aeSimu variable default Reference to the default behaviour for an AeSimu component vc_cseSimu variable default Reference to the default behaviour for an CseSimu component vc_primitiveContentRetrievedResource variable PrimitiveContent Latest content of a RETRIEVE operation vc_myInterfaces variable Interfaces Parameters for the ports of the given component:Port (mcaPort, mcaPortIn, mccPort, mccPortIn)Host (SUT IP address :port)Protocol bindingSerialization <p>Note that vc_aeSimu and vc_cseSimu are not common to the other defined test components, but those variables are required in Tester for the correct activation/deactivation of default behaviours.</p>"},{"location":"5.5/#552-aesimu","title":"5.5.2 AeSimu","text":"<p>The AeSimu test component extends the Tester component by adding elements specific to an AE entity. Table 5.5.2-1 summarizes those elements.</p> <p>Table 5.5.2-1: AeSimu component elements</p> Name Instance type Element type Description mcaPort port OneM2MPort Port that implements the mca interface when test system is the client (sending requests) mcaPortIn port OneM2MPort Port that implements the mca interface when test system is the server (receiving requests) vc_ae2 test component AeSimu Reference to the AE2 component when required vc_cse1 test component CseSimu Reference to the CSE1 component when CF02 is used vc_ae1 test component AeSimu Reference to the AE1 component when required vc_das test component AeSimu Reference to the DAS component when required vc_aeSimuDesc variable AeSimuComponentDesc Component configuration extracted from required (AE1 or AE2) tester pixit vc_dasSimuDesc variable AeSimuComponentDesc Component configuration extracted from DAS tester pixit vc_auxiliaryAe2Up variable boolean Flag to indicate that AE2 component has been started vc_aeIndex variable integer Index of the AE resource in vc_resourcesList created by AeSimu component"},{"location":"5.5/#553-csesimu","title":"5.5.3 CseSimu","text":"<p>The CseSimu test component extends the Tester component by adding elements specific to an CSE entity. Table 5.5.3-1 summarizes those elements.</p> <p>Table 5.5.3-1: CseSimu component elements</p> Name Instance type Element type Description mcaPort port OneM2MPort Port that implements the mca interface when test system is the client (sending requests) mcaPortIn port OneM2MPort Port that implements the mca interface when test system is the server (receiving requests) mccPort port OneM2MPort Port that implements the mcc interface when test system is the client (sending requests) mccPortIn port OneM2MPort Port that implements the mcc interface when test system is the server (receiving requests) mccPortInternal port OneM2MPortInternal Port that implements the mcc and mcc' interfaces between TTCN-3 components vc_ae1 test component AeSimu Reference to the AE1 component when CF02 (CseSimu as master) is used vc_cse2 test component CseSimu Reference to the CSE1 component when required vc_cseSimuDesc variable CseSimuComponentDesc Component configuration extracted from required (CSE1 or CSE2) tester pixit vc_localResourcesList variable MyResourcesList List of all resources created by the IUT on the test system vc_localCSEBaseAnncIndex variable integer Index of the CSEBaseAnnc resource corresponding to the IUT vc_localRemoteCseIndex variable integer Index of the remoteCSE resource in vc_localResourcesList representing the IUT (CSE) vc_remoteCseIndex variable integer Index of the remoteCSE resource in vc_resourcesList representing the CseSimu component vc_cSEBaseIndex variable integer Index of the CSEBase resource in vc_localResourcesList of the CseSimu component vc_cseType variable CseTypeID CSE type of the test system (default is MN) vc_auxiliaryCse2Up variable boolean Flag to indicate that CSE2 component has been started"},{"location":"5.5/#554-scefsimu","title":"5.5.4 ScefSimu","text":"<p>The ScefSimu test component extends the Tester component by adding elements specific to an SCEF entity. Table 5.5.4-1 summarizes those elements.</p> <p>Table 5.5.4-1: ScefSimu component elements</p> Name Instance type Element type Description mcnPort port OneM2MPort Port that implements the mcn interface when test system is the client (sending requests) mcnPortIn port OneM2MPort Port that implements the mcn interface when test system is the server (receiving requests) vc_ae1 test component AeSimu Reference to the AE1 component when required vc_cse2 test component CseSimu Reference to the CSE1 component when required vc_aeSimuDesc variable AeSimuComponentDesc Component configuration extracted from required (AE1) tester pixit vc_cseSimuDesc variable CseSimuComponentDesc Component configuration extracted from required (CSE1) tester pixit vc_cseType variable CseTypeID CSE type of the test system (default is MN) vc_scefSimuDesc variable ScefSimuComponentDesc Component configuration extracted from required (SCEF) tester pixit vc_configurations variable NiddConfigurations NIDD configurations of SCEF component"},{"location":"5.6/","title":"5.6 Test strategy","text":"<p>This clause introduces the test strategy being used for the TTCN-3 test cases. The chosen strategy permits to have a clear structure of the code that facilitates an easy navigation throw the different test steps.</p> <p>The use of the TTCN-3 MTC and PTC(s) is as depicted in figure 5.6-1.</p> <p></p> <p>Figure 5.6-1: Use of TTCN-3 components</p> <p>At the start of the test case execution, the MTC is created. Then, the MTC executes the following steps:</p> <ul> <li>Step 1) initialization of the master PTC.</li> <li>Step 2) initialization of some parameters if required for the permutation test cases.</li> <li> <p>Step 3) running of the appropriate function on the master PTC. The function run on the master PTC implements a given Test Purpose. Such function follows a code structure as indicated here below:</p> <ul> <li>Local Variables, declaration of local variables.</li> <li>Test Control, checking IUT capability parameters required for the proper execution of the test.</li> <li>Test Component Configuration, that initializes the given test component and other test components acting as slave PTC(s) as required by a given configuration.</li> <li>Test adapter configuration, that configures the test adapter throw the acPort if required.</li> <li>Preamble, that implements the necessary test steps as described in the Initial conditions of a Test Purpose. It may also implement additional test steps which are required for the correct execution of the test.</li> <li>Test body, that implements the test steps as described in the Expected behaviour of a Test Purpose.</li> <li>Postamble, that implements the necessary test steps to bring the IUT back to the initial state.</li> <li>Tear down, that finalizes properly the TTCN-3 ports used by the different test components depending on the configuration.</li> </ul> </li> </ul> <p>While master PTC follows the test structure described above, slave PTC(s) run only certain procedures, usually one by one, as mandated by the master PTC.</p> <p>A procedure usually implements a oneM2M request-response exchange between a given PTC and the IUT, although it can implement any other specific action (sending or reception of a message, several request-response exchanges, etc.).</p> <ul> <li>Step 4) checking of some parameters if required for the permutation test cases.</li> </ul> <p>This test strategy may slightly vary for certain cases where specific requirements need to be fulfilled.</p>"},{"location":"6/","title":"6 Untestable Test Purposes","text":"<p>Void.</p>"},{"location":"7.0/","title":"7.0 Introduction","text":"<p>The ATS conventions are intended to give a better understanding of the ATS but they also describe the conventions made for the development of the ATS. These conventions shall be considered during any later maintenance or further development of the ATS.</p> <p>The ATS conventions contain two clauses, the naming conventions and the implementation conventions. The naming conventions describe the structure of the naming of all ATS elements. The implementation conventions describe the functional structure of the ATS.</p> <p>To define the ATS, the guidelines of oneM2M TS-0015 [i.2] were considered.</p>"},{"location":"7.1/","title":"7.1 Testing conventions","text":""},{"location":"7.1/#711-testing-states","title":"7.1.1 Testing states","text":""},{"location":"7.1/#7111-initial-state","title":"7.1.1.1 Initial state","text":"<p>All test cases start with the function f_preamble_XYZ. This function brings the IUT in an \"initialized\" state by performing some actions such as registration of AE, creation of auxiliary access control policy resource, creation of additional needed resources.</p>"},{"location":"7.1/#7112-final-state","title":"7.1.1.2 Final state","text":"<p>All test cases end with the function f_postamble_XYZ. This function brings the IUT back in an \"idle\" state which means deletion of all created resources being used by the test case so that next test case execution is not disturbed.</p> <p>As necessary, further actions may be included in the f_postamble functions.</p>"},{"location":"7.2/","title":"7.2 Naming conventions","text":""},{"location":"7.2/#721-general-guidelines","title":"7.2.1 General guidelines","text":"<p>This test suite follows the naming convention guidelines provided in oneM2M TS-0015 [i.2].</p> <p>The naming convention is based on the following underlying principles:</p> <ul> <li>in most cases, identifiers should be prefixed with a short alphabetic string (specified in table 7.2.1-1) indicating the type of TTCN3 element it represents;</li> <li>suffixes should not be used except in those specific cases identified in table 7.2.1-1;</li> <li>prefixes and suffixes should be separated from the body of the identifier with an underscore (\"_\");</li> </ul> <p><code>EXAMPLE 1:    c\\_sixteen, t\\_wait.</code> </p> <ul> <li>only module names, data type names and module parameters should begin with an uppercase letter. All other names (i.e. the part of the identifier following the prefix) should begin with a lowercase letter;</li> <li>the start of second and subsequent words in an identifier should be indicated by capitalizing the first character. Underscores should not be used for this purpose.</li> </ul> <p><code>EXAMPLE 2:    f\\_initialState.</code> </p> <p>Table 7.2.1-1 specifies the naming guidelines for each element of the TTCN3 language indicating the recommended prefix, suffixes (if any) and capitalization.</p> <p>Table 7.2.1-1: TTCN-3 generic naming conventions</p> Language element Naming convention Prefix Example identifier Module Use upper-case initial letter none OneM2M_Templates Group within a module Use lower-case initial letter none messageGroup Data type Use upper-case initial letter none SetupContents Message template Use lower-case initial letter m_ m_setupInit Message template with wildcard or matching expression Use lower-case initial letters mw_ mw_anyUserReply Signature template Use lower-case initial letter s_ s_callSignature Port instance Use lower-case initial letter none signallingPort Test component instance Use lower-case initial letter none userTerminal Constant Use lower-case initial letter c_ c_maxRetransmission Constant (defined within component type) Use lower-case initial letter cc_ cc_minDuration External constant Use lower-case initial letter cx_ cx_macId Function Use lower-case initial letter f_ f_authentication() External function Use lower-case initial letter fx_ fx_calculateLength() Altstep (incl. Default) Use lower-case initial letter a_ a_receiveSetup() Test case Use ETSI numbering TC_ TC_COR_0009_47_ND Variable (local) Use lower-case initial letter v_ v_macId Variable (defined within a component type) Use lower-case initial letters vc_ vc_systemName Timer (local) Use lower-case initial letter t_ t_wait Timer (defined within a component) Use lower-case initial letters tc_ tc_authMin Module parameters for PICS Use all upper case letters PICS_ PICS_DOOROPEN Module parameters for other parameters Use all upper case letters PX_ PX_TESTER_STATION_ID Formal Parameters Use lower-case initial letter p_ p_macId Enumerated Values Use lower-case initial letter e_ e_syncOk"},{"location":"7.2/#722-onem2m-specific-ttcn-3-naming-conventions","title":"7.2.2 oneM2M specific TTCN-3 naming conventions","text":"<p>Next to such general naming conventions, table 7.2.2-1 shows specific naming conventions that apply to the oneM2M TTCN-3 ATS.</p> <p>Table 7.2.2-1: oneM2M specific TTCN-3 naming conventions</p> Language element Naming convention Prefix Example identifier oneM2M Module Use upper-case initial letter OneM2M_ OneM2M_Testcases_ Module containing oneM2M types Use upper-case initial letter OneM2M_Types OneM2M_Types Module containing types and values Use upper-case initial letter OneM2M_TypesAndValues OneM2M_TypesAndValues Module containing Templates Use upper-case initial letter OneM2M_Templates OneM2M_Templates Module containing test cases Use upper-case initial letter OneM2M_Testcases OneM2M_Testcases Module containing functions Use upper-case initial letter OneM2M_Functions OneM2M_Functions Module containing external functions Use upper-case initial letter OneM2M_ExternalFunctions OneM2M_ExternalFunctions Module containing components, ports and message definitions Use upper-case initial letter OneM2M_TestSystem OneM2M_TestSystem Module containing module parameters Use upper-case initial letter OneM2M_Pixits OneM2M_Pixits"},{"location":"7.2/#723-usage-of-log-statements","title":"7.2.3 Usage of Log statements","text":"<p>All TTCN-3 log statements use the following format using the same order:</p> <ul> <li>The TTCN-3 test case or function identifier in which the log statement is defined.</li> <li>One of the categories of log: INFO, WARNING, ERROR, TIMEOUT, NONE.</li> <li>Free text.</li> </ul> <p><code>EXAMPLE 1:    **log** (\"f\\_utInitializeIut: INFO: IUT initialized\");</code> </p> <p>Furthermore, the following rules are applied too:</p> <ul> <li>All TTCN-3 setverdict statements are combined (as defined in TTCN-3 - ETSI ES 201 873-1 [6]) with a log statement following the same above rules (see example 2).</li> </ul> <p><code>EXAMPLE 2:    **setverdict** (**pass** , \"TC\\_ONEM2M\\_CSE\\_DMR\\_CRE\\_001: Received correct message\");</code> </p>"},{"location":"7.2/#724-test-case-tc-identifier","title":"7.2.4 Test Case (TC) identifier","text":"<p>Table 7.2.4-1: TC naming convention</p> Identifier: TC_&lt;root&gt;_&lt;gr&gt;_&lt;sgr&gt;_&lt;nn&gt;_&lt;per&gt; &lt;root&gt; = root ONEM2M oneM2M &lt;gr&gt; = group CSE CSE testing AE AE testing &lt;sgr&gt; = subgroup REG Registration DMR Data Management and Repository SUB Subscription and Notification GMG Group Management DIS Discovery LOC Location DMG Device Management CMDH Communication Management and Delivery Handling SEC Security &lt;nn&gt; = sequential number 001 to 999 &lt;per&gt; = permutation P1_P2_..PN Permutation parameters <p><code>EXAMPLE:    TP identifier:    TP/oneM2M/CSE/DMR/CRE/001</code> <code>TC identifier:    TC\\_ONEM2M\\_CSE\\_DMR\\_CRE\\_001.</code> </p>"},{"location":"7.3/","title":"7.3 IXIT","text":"<p>The following parameters are used by the oneM2M ATS for the correct execution of the test cases.</p> <p>Table 7.3-1: oneM2M ATS IXITs</p> GROUP IXIT NAME DESCRIPTION DEFAULT VALUE IutParameters PX_IN_CSE MN-CSE True IutParameters PX_MN_CSE IN-CSE False IutParameters PX_ASN_CSE ASN-CSE False IutParameters PX_SUT_ADDRESS SUT address \"127.0.0.1:8080\" IutParameters PX_UT_IMPLEMENTED Upper Tester implemented False IutParameters PX_CSE_NAME IUT CSE Name \"cseName\" IutParameters PX_CSE_ID IUT CSE-ID with SP-relative-CSE-ID format (relative) according to oneM2M TS-0001 [1], table 7.2-1 \"/cseId\" IutParameters PX_CSE_RESOURCE_ID IUT CSE resource ID with Unstructured-CSE-relative-Resource-ID (relative) format according to oneM2MTS-0001 [1], table 7.2-1 \"cseResourceId\" IutParameters PX_SP_ID IUT M2M-SP-ID with M2M-SP-ID format (absolute) according to oneM2M TS-0001 [1], table 7.2-1 Unstructured-CSE-relative -Resource-ID \"//om2m.org\" IutParameters PX_SUPER_AE_ID AE-ID with privileges to CREATE at the IUT CSEBase with AE-ID-Stem format (relative) according to oneM2M TS-0001 [1], table 7.2-1 \"admin:admin\" IutParameters PX_SUPER_CSE_ID CSE-ID with privileges to CREATE at the IUT CSEBase with SPrelative-CSE-ID format (relative) according to oneM2M TS-0001 [1], table 7.2-1 \"/admin:admin\" IutParameters PX_ALLOWED_C_AE_IDS {\"C-AllowedAeId\"} IutParameters PX_NOT_ALLOWED_C_AE_IDS {\"C-NotAllowedAeId\"} IutParameters PX_ALLOWED_S_AE_IDS {\"S-AllowedAeId\"} IutParameters PX_NOT_ALLOWED_S_AE_IDS {\"S-NotAllowedAeId\"} IutParameters PX_NOT_ALLOWED_APP_ID \"NotAllowedAppId\" IutParameters PX_ADDRESSING_METHOD Addressing method e_hierarchical IutParameters PX_PRIMITIVE_SCOPE Primitive scope e_cseRelative IutParameters PX_WS_PROTOCOL WebSocket protocol \"oneM2M.R2.0.xml\" IutParameters PX_REQUEST_URI WebSocket context \"/\" IutParameters PX_HOSTING_CSE_ID Hosting CSE-ID for MQTT \"CSE-ID\" IutParameters PX_CREDENTIAL_ID Credential-ID for MQTT \"admin:admin\" IutParameters PX_XML_NAMESPACE XML Namespace \"m2m=\"\"http://www.onem2m.org/xml/protocols\"\"\" IutParameters PX_ACOR AccessControlOriginators {\"all\"} IutParameters PX_TCONFIG_IUT Time to configure IUT after a requested action 10.0 TesterParameters PX_TS_AE1 AE1 component settings aeIdStem = \"\"appId = \"NMyApp1Id\"mcaPort and mcaPortIn settings which include per port the following info:Binding: - bindingProtocol - bindingDesc:        - tsAddress        - localPort        - sutAddress        - remotePortSerialization TesterParameters PX_TS_AE2 AE2 component settings aeIdStem = \"\"appId = \"NMyApp2Id\"mcaPort and mcaPortIn settings which include per port the following info:Binding: - bindingProtocol - bindingDesc:        - tsAddress        - localPort        - sutAddress        - remotePortSerialization TesterParameters PX_TS_CSE1 CSE1 component settings cseName = \"CSE1_NAME\"cseId = \"/CSE1_ID\"cseResourceId = \"CSE1_RESOURCE_ID\"spId = \"//onem2m.org\"supportedResourceType = {int1, int2, int3, int16}mcaPort, mcaPortIn, mccPort and mccPortIn settings which include per port the following info:Binding: - bindingProtocol - bindingDesc:        - tsAddress        - localPort        - sutAddress        - remotePortSerialization TesterParameters PX_TS_CSE2 CSE2 component settings cseName = \"CSE2_NAME\"cseId = \"/CSE2_ID\"cseResourceId = \"CSE2_RESOURCE_ID\"spId = \"//onem2m.org\"supportedResourceType = {int1, int2, int3, int16}mcaPort, mcaPortIn, mccPort and mccPortIn settings which include per port the following info:Binding: - bindingProtocol - bindingDesc:        - tsAddress        - localPort        - sutAddress        - remotePortSerialization PX_TS_DAS DAS1 component settings aeIdStem = \"\"appId = \"\"mcaPort and mcaPortIn settings which include per port the following info:Binding: - bindingProtocol - bindingDesc:        - tsAddress        - localPort        - sutAddress        - remotePortSerialization PX_TS_UT UpperTester settings url = \"http://127.0.0.1:43000/\" ExecutionParameters PX_RESOURCES_TO_BE_DELETED (For debugging purposes) {\"MyAe\", \"MyAccessControlPolicyResource\", \"SubscriptionVerificationAcp\", \"MyAcp\", \"MyRemoteCSEResource\"} ExecutionParameters PX_RUN_POSTAMBLE (For debugging purposes) true ExecutionParameters PX_CERTIFICATE_PATH charstring \"\" ExecutionParameters PX_CERTIFICATE_NAME charstring \"\" ExecutionParameters PX_PAIRWISEKEY_METHOD PairwiseKeyMethod e_establish ExecutionParameters PX_KEY_PROVISION Provisioned e_preProvisioning"},{"location":"8/","title":"8 TTCN-3 Verifications","text":"<p>The principles for Verifying the TTCN-3 test code are given in oneM2M TS-0015 [i.2].</p> <p>All test cases provided with the present document in annex A which correspond to at least one of the product profiles defined in oneM2M TS-0025 [i.3] have been verified at the time of publication of the present document which corresponds with the TTCN-3 code gitlab tag provided in annex A.</p>"},{"location":"A.1/","title":"A.1 Electronic annex, zip file with TTCN-3 code","text":"<p>This ATS has been produced using the Testing and Test Control Notation (TTCN) according to ETSI ES 201 873-1 [6].</p> <p>This test suite has been compiled error-free using two different commercial TTCN-3 compilers.</p> <p>The TTCN-3 library modules, which form parts of the present document, are contained in the following gitLab tag:</p> <p>https://git.onem2m.org/TST/ATS/-/tags/TS-0019-baseline-v4_1_1 </p> <p></p>"},{"location":"B/","title":"Annex B (informative): Bibliography","text":"<p>ISO/IEC 9646-6 (1994): \"Information technology - Open Systems Interconnection - Conformance testing methodology and framework - Part 6: Protocol profile test specification\".</p> <p>oneM2M TS-0017: \"Implementation Conformance Statement\".</p> <p>oneM2M TS-0031: \"Feature catalogue\".</p>"},{"location":"download/","title":"Download","text":"<p>Download baseline for TS-0019 version v4.3.0:</p> <p></p>"}]}
\ No newline at end of file
diff --git a/public/versions.json b/public/versions.json
index 804b8456..a4286660 100644
--- a/public/versions.json
+++ b/public/versions.json
@@ -2,7 +2,10 @@
   {
     "version": "v4.3.0",
     "title": "v4.3.0",
-    "aliases": []
+    "aliases": [
+      "latest",
+      "latestR4"
+    ]
   },
   {
     "version": "v4.2.0",
@@ -15,10 +18,7 @@
   {
     "version": "v4.1.1",
     "title": "v4.1.1",
-    "aliases": [
-      "latestR4",
-      "latest"
-    ],
+    "aliases": [],
     "properties": {
       "hidden": false
     }
-- 
GitLab