Skip to content

Commit 5e5b638

Browse files
committed
update WIS2 Guide build
1 parent 95c2b0a commit 5e5b638

File tree

3 files changed

+319
-2
lines changed

3 files changed

+319
-2
lines changed

cookbook/wis2-cookbook-DRAFT.docx

67.3 KB
Binary file not shown.

cookbook/wis2-cookbook-DRAFT.html

Lines changed: 319 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -455,7 +455,7 @@ <h1>WIS2 Cookbook</h1>
455455
<td class="tableblock halign-left valign-top" style="background-color: #FFFFFF;"><p class="tableblock"><strong class="big">World Meteorological Organization</strong></p></td>
456456
</tr>
457457
<tr>
458-
<td class="tableblock halign-left valign-top" style="background-color: #FFFFFF;"><p class="tableblock">Date: 2025-05-26</p></td>
458+
<td class="tableblock halign-left valign-top" style="background-color: #FFFFFF;"><p class="tableblock">Date: 2025-07-30</p></td>
459459
</tr>
460460
<tr>
461461
<td class="tableblock halign-left valign-top" style="background-color: #FFFFFF;"><p class="tableblock">Version: 2024-04-16</p></td>
@@ -515,6 +515,11 @@ <h1>WIS2 Cookbook</h1>
515515
<li><a href="#_example_numerical_weather_prediction_based_forecast">3.6.2. Example: Numerical weather prediction based forecast</a></li>
516516
</ul>
517517
</li>
518+
<li><a href="#_providing_a_requirements_specification_for_a_wis_2_0_node">3.7. Providing a requirements specification for a WIS 2.0 Node</a>
519+
<ul class="sectlevel3">
520+
<li><a href="#_wis_2_0_node_user_requirements_specifications">3.7.1. WIS 2.0 Node - User requirements specifications</a></li>
521+
</ul>
522+
</li>
518523
</ul>
519524
</li>
520525
<li><a href="#_recipes_for_earth_system_discipline_domain_experts">4. Recipes for Earth system discipline domain experts</a>
@@ -1321,6 +1326,318 @@ <h4 id="_example_numerical_weather_prediction_based_forecast"><a class="anchor"
13211326
</div>
13221327
</div>
13231328
</div>
1329+
<div class="sect2">
1330+
<h3 id="_providing_a_requirements_specification_for_a_wis_2_0_node"><a class="anchor" href="#_providing_a_requirements_specification_for_a_wis_2_0_node"></a>3.7. Providing a requirements specification for a WIS 2.0 Node</h3>
1331+
<div class="paragraph">
1332+
<p>The below recipe provides user requirements specifications for the implementation of a WIS 2.0 Node.</p>
1333+
</div>
1334+
<div class="sect3">
1335+
<h4 id="_wis_2_0_node_user_requirements_specifications"><a class="anchor" href="#_wis_2_0_node_user_requirements_specifications"></a>3.7.1. WIS 2.0 Node - User requirements specifications</h4>
1336+
<div class="sect4">
1337+
<h5 id="_introduction_2"><a class="anchor" href="#_introduction_2"></a>3.7.1.1. Introduction</h5>
1338+
<div class="sect5">
1339+
<h6 id="_applicable_documents"><a class="anchor" href="#_applicable_documents"></a>Applicable Documents</h6>
1340+
<table class="tableblock frame-all grid-all stretch">
1341+
<colgroup>
1342+
<col style="width: 20%;">
1343+
<col style="width: 20%;">
1344+
<col style="width: 60%;">
1345+
</colgroup>
1346+
<thead>
1347+
<tr>
1348+
<th class="tableblock halign-left valign-top" style="background-color: #FFFFFF;"></th>
1349+
<th class="tableblock halign-left valign-top" style="background-color: #FFFFFF;"><strong>Document Title</strong></th>
1350+
<th class="tableblock halign-left valign-top" style="background-color: #FFFFFF;"><strong>Reference</strong></th>
1351+
</tr>
1352+
</thead>
1353+
<tbody>
1354+
<tr>
1355+
<td class="tableblock halign-left valign-top" style="background-color: #FFFFFF;"><p class="tableblock">AD-0</p></td>
1356+
<td class="tableblock halign-left valign-top" style="background-color: #FFFFFF;"><div class="content"><div class="paragraph">
1357+
<p>Manual on the WMO Information System, Volume II - WMO Information System 2.0</p>
1358+
</div></div></td>
1359+
<td class="tableblock halign-left valign-top" style="background-color: #FFFFFF;"><p class="tableblock"><a href="https://library.wmo.int/idurl/4/68731" class="bare">https://library.wmo.int/idurl/4/68731</a></p></td>
1360+
</tr>
1361+
</tbody>
1362+
</table>
1363+
</div>
1364+
<div class="sect5">
1365+
<h6 id="_reference_documents"><a class="anchor" href="#_reference_documents"></a>Reference Documents</h6>
1366+
<table class="tableblock frame-all grid-all stretch">
1367+
<colgroup>
1368+
<col style="width: 20%;">
1369+
<col style="width: 20%;">
1370+
<col style="width: 60%;">
1371+
</colgroup>
1372+
<thead>
1373+
<tr>
1374+
<th class="tableblock halign-left valign-top" style="background-color: #FFFFFF;"></th>
1375+
<th class="tableblock halign-left valign-top" style="background-color: #FFFFFF;"><strong>Document Title</strong></th>
1376+
<th class="tableblock halign-left valign-top" style="background-color: #FFFFFF;"><strong>Reference</strong></th>
1377+
</tr>
1378+
</thead>
1379+
<tbody>
1380+
<tr>
1381+
<td class="tableblock halign-left valign-top" style="background-color: #FFFFFF;"><p class="tableblock">RD-0</p></td>
1382+
<td class="tableblock halign-left valign-top" style="background-color: #FFFFFF;"><p class="tableblock">Guide to the WMO Information System Volume II - WMO Information System 2.0</p></td>
1383+
<td class="tableblock halign-left valign-top" style="background-color: #FFFFFF;"><p class="tableblock"><a href="https://library.wmo.int/idurl/4/69130" class="bare">https://library.wmo.int/idurl/4/69130</a></p></td>
1384+
</tr>
1385+
<tr>
1386+
<td class="tableblock halign-left valign-top" style="background-color: #FFFFFF;"><p class="tableblock">RD-1</p></td>
1387+
<td class="tableblock halign-left valign-top" style="background-color: #FFFFFF;"><p class="tableblock">Provisions for the Transition from the WMO Information System (WIS) 1.0 and Global Telecommunication System to WIS 2.0</p></td>
1388+
<td class="tableblock halign-left valign-top" style="background-color: #FFFFFF;"><p class="tableblock"><a href="https://library.wmo.int/idurl/4/69050" class="bare">https://library.wmo.int/idurl/4/69050</a></p></td>
1389+
</tr>
1390+
<tr>
1391+
<td class="tableblock halign-left valign-top" style="background-color: #FFFFFF;"><p class="tableblock">RD-2</p></td>
1392+
<td class="tableblock halign-left valign-top" style="background-color: #FFFFFF;"><p class="tableblock">WMO Information System 2.0 Strategy</p></td>
1393+
<td class="tableblock halign-left valign-top" style="background-color: #FFFFFF;"><p class="tableblock"><a href="https://library.wmo.int/doc_num.php?explnum_id=4620" class="bare">https://library.wmo.int/doc_num.php?explnum_id=4620</a></p></td>
1394+
</tr>
1395+
<tr>
1396+
<td class="tableblock halign-left valign-top" style="background-color: #FFFFFF;"><p class="tableblock">RD-3</p></td>
1397+
<td class="tableblock halign-left valign-top" style="background-color: #FFFFFF;"><p class="tableblock">WIS 2.0: How to define successful transition?</p></td>
1398+
<td class="tableblock halign-left valign-top" style="background-color: #FFFFFF;"><p class="tableblock"><a href="https://wmo-teams.atlassian.net/wiki/spaces/WIS2/pages/301957121/WIS2.0+how+to+define+successful+Transition" class="bare">https://wmo-teams.atlassian.net/wiki/spaces/WIS2/pages/301957121/WIS2.0+how+to+define+successful+Transition</a></p></td>
1399+
</tr>
1400+
</tbody>
1401+
</table>
1402+
</div>
1403+
</div>
1404+
<div class="sect4">
1405+
<h5 id="_system_overview"><a class="anchor" href="#_system_overview"></a>3.7.1.2. System overview</h5>
1406+
<div class="sect5">
1407+
<h6 id="_system_context"><a class="anchor" href="#_system_context"></a>System Context</h6>
1408+
<div class="paragraph">
1409+
<p>The WIS 2.0 Node will be available to receive data from the upstream data production system, and to serve these data via the Internet to the WIS 2.0 environment.</p>
1410+
</div>
1411+
<div class="paragraph">
1412+
<p>The WIS 2.0 Node will be available to receive metadata and to serve these metadata via the Internet to the WIS 2.0 environment.</p>
1413+
</div>
1414+
<div class="paragraph">
1415+
<p>WIS 2.0 Global Brokers will subscribe to the WIS 2.0 Node, and will receive publication messages when data and metadata become available.</p>
1416+
</div>
1417+
<div class="paragraph">
1418+
<p><strong>WIS 2.0 Node</strong></p>
1419+
</div>
1420+
<div class="olist arabic">
1421+
<ol class="arabic">
1422+
<li>
1423+
<p>Selected core and recommended data from upstream systems</p>
1424+
</li>
1425+
<li>
1426+
<p>Notification messages to WIS 2.0 Global Brokers</p>
1427+
</li>
1428+
<li>
1429+
<p>Selected core data to WIS 2.0 Global Caches</p>
1430+
</li>
1431+
<li>
1432+
<p>Subscription messages from WIS 2.0 Global Brokers</p>
1433+
</li>
1434+
<li>
1435+
<p>Remaining core data and recommended data to WIS 2.0 end users</p>
1436+
</li>
1437+
</ol>
1438+
</div>
1439+
<div class="imageblock">
1440+
<div class="content">
1441+
<img src="images/wis2node-context-diagram.jpg" alt="WIS 2.0 Node context diagram" width="800">
1442+
</div>
1443+
<div class="title">Figure 3. WIS 2.0 Node context diagram</div>
1444+
</div>
1445+
</div>
1446+
<div class="sect5">
1447+
<h6 id="_external_interfaces"><a class="anchor" href="#_external_interfaces"></a>External Interfaces</h6>
1448+
<div class="paragraph">
1449+
<p>As identified in the context diagram above, the WIS 2.0 Node will have external interfaces with WIS 2.0 Global Brokers, and WIS 2.0 Global Caches. In each case, the communications will be via the Internet.</p>
1450+
</div>
1451+
<div class="paragraph">
1452+
<p>The Global Brokers will subscribe to the MQTT broker on the Node. This will be done using the standard MQTT secure port, 8883.</p>
1453+
</div>
1454+
<div class="paragraph">
1455+
<p>The Global Caches will retrieve core data from the Node by accessing the HTTP server on the Node.</p>
1456+
</div>
1457+
<div class="paragraph">
1458+
<p>End users will retrieve core data not retained by the Global Caches from the Node by accessing the HTTP server on the Node. End users will also retrieve recommended data from the Node by accessing the HTTP server on the Node, subject to appropriate access control.</p>
1459+
</div>
1460+
</div>
1461+
<div class="sect5">
1462+
<h6 id="_concepts_and_constraints"><a class="anchor" href="#_concepts_and_constraints"></a>Concepts and Constraints</h6>
1463+
<div class="paragraph">
1464+
<p>The WIS 2.0 Node will be compliant with the Manual on WMO Information System Volume II. WMO Information System 2.0 [AD-0].</p>
1465+
</div>
1466+
</div>
1467+
</div>
1468+
<div class="sect4">
1469+
<h5 id="_user_requirements"><a class="anchor" href="#_user_requirements"></a>3.7.1.3. User requirements</h5>
1470+
<div class="paragraph">
1471+
<p>The purpose of the WIS 2.0 Node (hereafter, referred to as the Node) is to be available to receive data from the production system, and to serve these data via the Internet to the WIS 2.0 environment.</p>
1472+
</div>
1473+
<div class="paragraph">
1474+
<p>In order to reach this target, the following high-level user requirements need to be fulfilled:</p>
1475+
</div>
1476+
<div class="paragraph">
1477+
<p><strong><em>USR-0001</em></strong></p>
1478+
</div>
1479+
<div class="paragraph">
1480+
<p>The Node shall comply with the specification given in the Manual on WMO Information System Volume II. WMO Information System 2.0, [AD-0].</p>
1481+
</div>
1482+
<div class="paragraph">
1483+
<p><strong><em>USR-0101</em></strong></p>
1484+
</div>
1485+
<div class="paragraph">
1486+
<p>The WIS 2.0 Node shall include an MQTT broker, using MQTT 5.0 (hereafter, referred to as the Broker).</p>
1487+
</div>
1488+
<div class="paragraph">
1489+
<p><strong><em>USR-0150</em></strong></p>
1490+
</div>
1491+
<div class="paragraph">
1492+
<p>The Broker included in the Node shall be accessible via MQTT protocol over the Internet.</p>
1493+
</div>
1494+
<div class="paragraph">
1495+
<p><strong><em>USR-0201</em></strong></p>
1496+
</div>
1497+
<div class="paragraph">
1498+
<p>The Node will allow subscriptions from the WIS 2.0 Global Brokers.</p>
1499+
</div>
1500+
<div class="paragraph">
1501+
<p><strong><em>USR-0210</em></strong></p>
1502+
</div>
1503+
<div class="paragraph">
1504+
<p>The Node will restrict subscriptions to the Broker by only WIS 2.0 Global Brokers by filtering their incoming IP addresses as made available by WMO Secretariat.</p>
1505+
</div>
1506+
<div class="paragraph">
1507+
<p><strong><em>USR-0220</em></strong></p>
1508+
</div>
1509+
<div class="paragraph">
1510+
<p>Access to the Broker shall be password controlled.</p>
1511+
</div>
1512+
<div class="paragraph">
1513+
<p><strong><em>USR-230</em></strong></p>
1514+
</div>
1515+
<div class="paragraph">
1516+
<p>The secure version of MQTT (MQTTS) shall be used. The use of SSL certificates to support this shall be maintained over the lifetime of the system.</p>
1517+
</div>
1518+
<div class="paragraph">
1519+
<p><strong><em>USR-240</em></strong></p>
1520+
</div>
1521+
<div class="paragraph">
1522+
<p>The Broker shall publish messages using MQTT’s Quality of Service (QoS) level 1. This is defined as follows: “<em>The broker/client will deliver the message at least once, with confirmation required.</em>”.</p>
1523+
</div>
1524+
<div class="paragraph">
1525+
<p><strong><em>USR-0301</em></strong></p>
1526+
</div>
1527+
<div class="paragraph">
1528+
<p>Upon the arrival of data for distribution via WIS 2.0, the Broker shall publish an MQTT message announcing the availability of the data.</p>
1529+
</div>
1530+
<div class="paragraph">
1531+
<p><strong><em>USR-0320</em></strong></p>
1532+
</div>
1533+
<div class="paragraph">
1534+
<p>Notification messages published by the Node shall be formatted in geoJSON, in accordance with the Manual on WMO Information System Volume II. WMO Information System 2.0, [AD-0].</p>
1535+
</div>
1536+
<div class="paragraph">
1537+
<p><strong><em>USR-0340</em></strong></p>
1538+
</div>
1539+
<div class="paragraph">
1540+
<p>Notification messages published by the Node shall be published using an MQTT topic defined in accordance with the WIS 2.0 topic hierarchy.</p>
1541+
</div>
1542+
<div class="paragraph">
1543+
<p><strong><em>USR-0360</em></strong></p>
1544+
</div>
1545+
<div class="paragraph">
1546+
<p>The MQTT topic used in notification messages shall not be configured to retain messages.</p>
1547+
</div>
1548+
<div class="paragraph">
1549+
<p><strong><em>USR-0401</em></strong></p>
1550+
</div>
1551+
<div class="paragraph">
1552+
<p>The Node shall provide access to core data via HTTP over the Internet.</p>
1553+
</div>
1554+
<div class="paragraph">
1555+
<p><strong><em>USR-0450</em></strong></p>
1556+
</div>
1557+
<div class="paragraph">
1558+
<p>The Node shall provide access to recommended data via HTTP over the Internet, subject to appropriate access control.</p>
1559+
</div>
1560+
<div class="paragraph">
1561+
<p><strong><em>USR-0500</em></strong></p>
1562+
</div>
1563+
<div class="paragraph">
1564+
<p>The Node shall provide access to core data via HTTPS over the Internet.</p>
1565+
</div>
1566+
<div class="paragraph">
1567+
<p><strong><em>USR-0550</em></strong></p>
1568+
</div>
1569+
<div class="paragraph">
1570+
<p>The Node shall provide access to recommended data via HTTPS over the Internet, subject to appropriate access control.</p>
1571+
</div>
1572+
<div class="paragraph">
1573+
<p><strong><em>USR-0601</em></strong></p>
1574+
</div>
1575+
<div class="paragraph">
1576+
<p>The Node shall support the retrieval core data by the WIS 2.0 Global Caches.</p>
1577+
</div>
1578+
<div class="sect5">
1579+
<h6 id="_extract_from_the_manual_on_wmo_information_system_volume_ii_wmo_information_system_2_0_ad_0"><a class="anchor" href="#_extract_from_the_manual_on_wmo_information_system_volume_ii_wmo_information_system_2_0_ad_0"></a>Extract from the Manual on WMO Information System Volume II. WMO Information System 2.0 [AD-0]:</h6>
1580+
<div class="paragraph">
1581+
<p>FUNCTIONAL REQUIREMENTS OF A WIS NODE</p>
1582+
</div>
1583+
<div class="paragraph">
1584+
<p>3.6.1 General</p>
1585+
</div>
1586+
<div class="paragraph">
1587+
<p>3.6.1.1 A WIS Node is the component that enables an NC or DCPC to publish their data and discovery metadata via WIS.</p>
1588+
</div>
1589+
<div class="paragraph">
1590+
<p>3.6.1.2 See also 3.3 (Functional requirements of an NC) and 3.4 (Functional requirements of a DCPC).</p>
1591+
</div>
1592+
<div class="paragraph">
1593+
<p>3.6.2 Provide access to data and discovery metadata</p>
1594+
</div>
1595+
<div class="paragraph">
1596+
<p>3.6.2.1 A WIS Node shall provide access to data in accordance with the WMO Unified Data Policy (Resolution 1 (Cg-Ext-2021)).</p>
1597+
</div>
1598+
<div class="paragraph">
1599+
<p>3.6.2.2 A WIS Node shall allow one or more Global Caches to access and download core data it publishes for real-time and near real-time exchange. Global Caches provide highly available access to copies of these resources.</p>
1600+
</div>
1601+
<div class="paragraph">
1602+
<p>3.6.2.3 A WIS Node may restrict access to its core data, relying on Global Caches providing access to data consumers.</p>
1603+
</div>
1604+
<div class="paragraph">
1605+
<p>3.6.2.4 A WIS Node may provide access to data using a Web-based Application Programming Interface (API).</p>
1606+
</div>
1607+
<div class="paragraph">
1608+
<p>3.6.2.5 A WIS Node shall provide access to discovery metadata describing the data it makes available and how that data can be accessed. Discovery metadata from a WIS Node is added to the Global Discovery Catalogue to create a consolidated view of data available from all WIS Nodes.</p>
1609+
</div>
1610+
<div class="paragraph">
1611+
<p>3.6.2.6 A WIS Node shall have the capability to publish notifications via a Message Broker.</p>
1612+
</div>
1613+
<div class="paragraph">
1614+
<p>3.6.2.7 A WIS Node shall publish notifications via its Message Broker about updates to the data and discovery metadata it provides – including the availability of new data, changes to discovery metadata, and removal of a data set from WIS.</p>
1615+
</div>
1616+
<div class="paragraph">
1617+
<p>3.6.2.8 A WIS Node shall use a standardized topic structure when publishing notifications. Note: More information on the standardized topic structure is provided in the Guidance on technical specifications of WIS 2.0.</p>
1618+
</div>
1619+
<div class="paragraph">
1620+
<p>3.6.2.9 A WIS Node shall allow one or more Global Brokers to subscribe to notifications published via its Message Broker. Global Brokers provide highly available distribution of notifications published by a WIS Node.</p>
1621+
</div>
1622+
<div class="paragraph">
1623+
<p>3.6.2.10 See also 4.3 (WIS-TechSpec-2: Publishing data and discovery metadata).</p>
1624+
</div>
1625+
<div class="paragraph">
1626+
<p>Note: More information on the function and implementation of a WIS Node is provided in the Guidance on technical specifications of WIS 2.0.</p>
1627+
</div>
1628+
<div class="paragraph">
1629+
<p>3.6.3 Monitor performance of a WIS Node</p>
1630+
</div>
1631+
<div class="paragraph">
1632+
<p>3.6.3.1 Each WIS Node shall contribute to monitoring the performance of WIS.</p>
1633+
</div>
1634+
<div class="paragraph">
1635+
<p>3.6.3.2 See also 4.7 (WIS-TechSpec-6: Managing operations of the WIS).</p>
1636+
</div>
1637+
</div>
1638+
</div>
1639+
</div>
1640+
</div>
13241641
</div>
13251642
</div>
13261643
<div class="sect1">
@@ -1586,7 +1903,7 @@ <h2 id="_recipes_for_global_service_operators"><a class="anchor" href="#_recipes
15861903
</div>
15871904
<div id="footer">
15881905
<div id="footer-text">
1589-
Last updated 2025-05-26 14:28:07 UTC
1906+
Last updated 2025-07-30 04:24:01 UTC
15901907
</div>
15911908
</div>
15921909
</body>

cookbook/wis2-cookbook-DRAFT.pdf

129 KB
Binary file not shown.

0 commit comments

Comments
 (0)