Impacted sections
All sections that include requirement statements
These are consolidate here (but the sources are in each category presented on this page):
https://uncefact.github.io/spec-untp/docs/about/Requirements
Issue Description
Way back in April 2024 there was a meeting discussing the need to add a framework that explains the meaning of the requirement terms used. The de-facto standards are RFC 2119 (which is adopted in ISO/IEC 19464:2014) - something that is recognised in the UNCEFACT GitHub governance page (https://github.com/uncefact/governance?tab=readme-ov-file#implementation-conformance)
The key phrase from RFC 2119 is:
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119.
For the UNTP spec, I think we should introduce a brief paragraph that the terms used in the requirements follow the definitions of RFC 2119 (or the ISO spec), and then we need to make sure that this is true. This means that we
- Check each requirement and ensure that it ONLY uses the RFC terms to express the type of the requirement
- That each such term is capitalized to make it clear (this makes the text less pretty, but clearer)
- I think that most of the requirements in the spec have been written to meet RFC 2119, but it needs checking/confirming