rfc9876v1.txt   rfc9876.txt 
skipping to change at line 82 skipping to change at line 82
Section 12.3 of [RFC7252] describes the registration procedures for Section 12.3 of [RFC7252] describes the registration procedures for
the "CoAP Content-Formats" IANA registry within the "Constrained the "CoAP Content-Formats" IANA registry within the "Constrained
RESTful Environments (CoRE) Parameters" registry group RESTful Environments (CoRE) Parameters" registry group
[IANA.core-params]. (Note that the columns of this registry have [IANA.core-params]. (Note that the columns of this registry have
been revised according to [Err4954].) In particular, it defines the been revised according to [Err4954].) In particular, it defines the
rules for obtaining Constrained Application Protocol (CoAP) Content- rules for obtaining Constrained Application Protocol (CoAP) Content-
Format identifiers from the "IETF Review with Expert Review or IESG Format identifiers from the "IETF Review with Expert Review or IESG
Approval with Expert Review" range of the registry (256-9999) as well Approval with Expert Review" range of the registry (256-9999) as well
as from the "First Come First Served" (FCFS) range of the registry as from the "First Come First Served" (FCFS) range of the registry
(10000-64999). For the FCFS range, these rules do not involve the (10000-64999). For the FCFS range, these rules do not involve the
designated expert (DE) and are managed solely by IANA personnel to designated expert and are managed solely by IANA personnel to
finalize the registration. finalize the registration.
Unfortunately, the rules do not explicitly require checking that the Unfortunately, the rules do not explicitly require checking that the
combination of Content-Type (i.e., Media Type with optional combination of Content-Type (i.e., Media Type with optional
parameters) and Content Coding associated with the requested CoAP parameters) and Content Coding associated with the requested CoAP
Content-Format is semantically valid. This task is generally non- Content-Format is semantically valid. This task is generally non-
trivial, requires knowledge from multiple documents and technologies, trivial, requires knowledge from multiple documents and technologies,
and should not be solely demanded from the registrar. This lack of and should not be solely demanded from the registrar. This lack of
guidance may engender confusion in both the registering party and the guidance may engender confusion in both the registering party and the
registrar, and it has already led to erroneous registrations. registrar, and it has already led to erroneous registrations.
skipping to change at line 118 skipping to change at line 118
"OPTIONAL" in this document are to be interpreted as described in "OPTIONAL" in this document are to be interpreted as described in
BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all
capitals, as shown here. capitals, as shown here.
This document uses the terms "Media Type", "Content Coding", This document uses the terms "Media Type", "Content Coding",
"Content-Type", and "Content Format" as defined in Section 2 of "Content-Type", and "Content Format" as defined in Section 2 of
[RFC9193]. In this document, those terms are fully capitalized. [RFC9193]. In this document, those terms are fully capitalized.
3. Security Considerations 3. Security Considerations
This document hardens the registration procedures of CoAP Content- This document updates the registration procedures of CoAP Content-
Formats in ways that reduce the chances of malicious manipulation of Formats to reduce the chances of malicious manipulation of the
the associated registry. associated registry.
Otherwise, it does not change the Security Considerations of Otherwise, it does not change the Security Considerations of
[RFC7252]. [RFC7252].
4. IANA Considerations 4. IANA Considerations
This document updates the IANA procedures defined in [RFC7252] for This document updates the IANA procedures defined in [RFC7252] for
registering CoAP Content-Formats as described in Section 4.1. It registering CoAP Content-Formats as described in Section 4.1. It
also adds a new note concerning temporary registrations (Section 4.2) also adds a new note concerning temporary registrations (Section 4.2)
and reserves Content-Format IDs 64998 and 64999 for documentation and reserves Content-Format IDs 64998 and 64999 for documentation
skipping to change at line 146 skipping to change at line 146
Internet Media Types are identified by a string, such as Internet Media Types are identified by a string, such as
"application/xml" [RFC2046]. In order to minimize the overhead of "application/xml" [RFC2046]. In order to minimize the overhead of
using Media Types to indicate the format of payloads, [RFC7252] has using Media Types to indicate the format of payloads, [RFC7252] has
defined a registry for a subset of Internet Media Types to be used in defined a registry for a subset of Internet Media Types to be used in
CoAP and assigned each, in combination with a Content Coding, a CoAP and assigned each, in combination with a Content Coding, a
numeric identifier. The name of the registry is "CoAP Content- numeric identifier. The name of the registry is "CoAP Content-
Formats", within the "Constrained RESTful Environments (CoRE) Formats", within the "Constrained RESTful Environments (CoRE)
Parameters" registry group. Parameters" registry group.
Each entry in the registry must include the Media Type registered Each entry in the registry must include the Content Type, the Content
with IANA, the numeric identifier in the range 0-65535 to be used for Coding (if any), the Media Type registered with IANA, the numeric
that Media Type in CoAP, the Content Coding associated with this identifier in the range 0-65535 to be used for that Media Type in
identifier, and a reference to a document describing what a payload CoAP, and a reference to a document describing what a payload with
with that Media Type means semantically. that Media Type means semantically.
CoAP does not include a separate way to convey Content Coding CoAP does not include a separate way to convey Content Coding
information with a request or response; for that reason, the Content information with a request or response; for that reason, the Content
Coding (if any) is also specified for each identifier. If multiple Coding (if any) is also specified for each identifier. If multiple
Content Codings will be used with a Media Type, then a separate Content Codings will be used with a Media Type, then a separate
Content-Format identifier for each is to be registered. Similarly, Content-Format identifier for each is to be registered. Similarly,
other parameters related to an Internet Media Type can be defined for other parameters related to an Internet Media Type can be defined for
a CoAP Content-Format entry. a CoAP Content-Format entry.
The registration procedures for CoAP Content-Formats are described in The registration procedures for CoAP Content-Formats are described in
skipping to change at line 257 skipping to change at line 257
term. It is recommended that M2M applications making use of CoAP term. It is recommended that M2M applications making use of CoAP
request new Internet Media Types from IANA indicating semantic request new Internet Media Types from IANA indicating semantic
information about how to create or parse a payload. For example, a information about how to create or parse a payload. For example, a
Smart Energy application payload carried as Concise Binary Object Smart Energy application payload carried as Concise Binary Object
Representation (CBOR) might request a more specific type like Representation (CBOR) might request a more specific type like
application/se+cbor. application/se+cbor.
4.1.1. Temporary Content-Format Registrations 4.1.1. Temporary Content-Format Registrations
This section clarifies that the "CoAP Content-Formats" registry This section clarifies that the "CoAP Content-Formats" registry
allows temporary registrations within the 0-64998 range. allows temporary registrations within the 0-64997 range.
A temporary registration may be created, for example, by an IANA A temporary registration may be created, for example, by an IANA
early allocation action [RFC7120]. If the referenced Media Type is early allocation action [RFC7120]. If the referenced Media Type is
provisional (that is, included in the "Provisional Standard Media provisional (that is, included in the "Provisional Standard Media
Type Registry" [IANA.prov-media-types]), then a created registration Type Registry" [IANA.prov-media-types]), then a created registration
is always temporary. is always temporary.
A temporary registration is marked as such by IANA in the A temporary registration is marked as such by IANA in the
corresponding registry entry. Once the required registration corresponding registry entry. Once the required registration
procedure (defined in Table 1) for the temporary ID has successfully procedure (defined in Table 1) for the temporary ID has successfully
skipping to change at line 281 skipping to change at line 281
becomes permanent. becomes permanent.
If a temporary registration does not successfully complete the If a temporary registration does not successfully complete the
registration procedure, IANA must remove the entry and set the registration procedure, IANA must remove the entry and set the
Content-Format ID value back to "Unassigned". This may happen, for Content-Format ID value back to "Unassigned". This may happen, for
example, when an Internet-Draft requesting a Content-Format ID is example, when an Internet-Draft requesting a Content-Format ID is
abandoned. If a temporary registration (in any range) refers to a abandoned. If a temporary registration (in any range) refers to a
provisional Media Type that is abandoned, IANA must remove the entry provisional Media Type that is abandoned, IANA must remove the entry
and set the Content-Format ID value back to "Unassigned". and set the Content-Format ID value back to "Unassigned".
Note that in the 10000-64998 range, the abandonment of a document Note that in the 10000-64997 range, the abandonment of a document
requesting a Content-Format ID does not cause an entry to be removed. requesting a Content-Format ID does not cause an entry to be removed.
That is because the required registration procedure for this range That is because the required registration procedure for this range
does not require completion of any standards process, nor does it does not require completion of any standards process, nor does it
require a registering document. require a registering document.
Temporary registrations within the 0-255 range are exempt from the Temporary registrations within the 0-255 range are exempt from the
formal renewal process outlined in [RFC7120]. Specifically, IANA formal renewal process outlined in [RFC7120]. Specifically, IANA
will not monitor the removal of registrations in this range. will not monitor the removal of registrations in this range.
Instead, the designated experts direct IANA to carry out this task. Instead, the designated experts direct IANA to carry out this task.
4.1.2. Addition of the Media Type Column to the Registry 4.1.2. Addition of the Media Type Column to the Registry
To assist users of the "CoAP Content-Formats" registry in finding To assist users of the "CoAP Content-Formats" registry in finding
detailed information about the Media Type associated with each CoAP detailed information about the Media Type associated with each CoAP
Content-Format, and to ensure that a Media Type exists before a new Content-Format, and to ensure that a Media Type exists before a new
entry can be registered, IANA has added the new column "Media Type" entry can be registered, IANA has added the new column "Media Type"
to the registry. This new column is placed directly to the right of to the registry. This new column is placed to the right of the
the existing "Content Type" column. existing "Content Type" column.
The "Media Type" field for each entry lists the (base) Media Type The "Media Type" field for each entry lists the (base) Media Type
name and provides a hyperlink to registration information for that name and provides a hyperlink to registration information for that
Media Type as recorded by IANA. If the Media Type is provisional, Media Type as recorded by IANA. If the Media Type is provisional,
the hyperlink points to the "Provisional Standard Media Type the hyperlink points to the "Provisional Standard Media Type
Registry" [IANA.prov-media-types]. If a provisional Media Type Registry" [IANA.prov-media-types]. If a provisional Media Type
becomes a permanent Media Type, IANA must update the "Media Type" becomes a permanent Media Type, IANA must update the "Media Type"
field in the associated registry entries to ensure the hyperlink field in the associated registry entries to ensure the hyperlink
directs to the registration information for that Media Type. directs to the registration information for that Media Type.
In a registration request, the requester does not need to fill out In a registration request, the requester does not need to fill out
the "Media Type" field separately, as the necessary information is the "Media Type" field separately, as the necessary information is
already provided in the "Content Type" field of the request. already provided in the "Content Type" field of the request.
4.1.3. Expert Review Procedure 4.1.3. Expert Review Procedure
The DE is instructed to perform the "Expert Review", as described by The designated expert is instructed to perform the "Expert Review",
the following checklist: as described by the following checklist:
1. The combination of Content-Type and Content Coding for which the 1. The combination of Content-Type and Content Coding for which the
registration is requested must not be already present in the registration is requested must not be already present in the
"CoAP Content-Formats" registry. "CoAP Content-Formats" registry.
2. The Media Type associated with the requested Content-Format must 2. The Media Type associated with the requested Content-Format must
be either registered in the "Media Types" registry be either registered in the "Media Types" registry
[IANA.media-types] or approved for registration. Alternatively, [IANA.media-types] or approved for registration. Alternatively,
it may be listed in the "Provisional Standard Media Type it may be listed in the "Provisional Standard Media Type
Registry" [IANA.prov-media-types]. The use of provisional Registry" [IANA.prov-media-types]. The use of provisional
skipping to change at line 344 skipping to change at line 344
4. The Content Type must be in the preferred format defined in 4. The Content Type must be in the preferred format defined in
Section 4.1.4. Section 4.1.4.
5. If a Content Coding is specified, it must exist (or must have 5. If a Content Coding is specified, it must exist (or must have
been approved for registration) in the "HTTP Content Coding been approved for registration) in the "HTTP Content Coding
Registry" within the "Hypertext Transfer Protocol (HTTP) Registry" within the "Hypertext Transfer Protocol (HTTP)
Parameters" registry group [IANA.http-params]. Parameters" registry group [IANA.http-params].
For the 0-255 range, in addition to the checks described above, the For the 0-255 range, in addition to the checks described above, the
DE is instructed to also evaluate the requested code point concerning designated expert is instructed to also evaluate the requested code
the limited availability of the 1-byte code point space. For the point concerning the limited availability of the 1-byte code point
ranges 256-9999, 10000-19999, and 33000-64997, a similar criterion space. For the ranges 256-9999, 10000-19999, and 33000-64997, a
may also apply where combinations of Media Type parameters and similar criterion may also apply where combinations of Media Type
Content Coding choices consume considerable code point space. parameters and Content Coding choices consume considerable code point
space.
4.1.4. Preferred Format for the Content Type Field 4.1.4. Preferred Format for the Content Type Field
This section defines the preferred string format for including a This section defines the preferred string format for including a
requested Content Type in the "CoAP Content-Formats" registry. requested Content Type in the "CoAP Content-Formats" registry.
During the review process, the designated expert(s) or IANA may During the review process, the designated expert(s) or IANA may
rewrite a requested Content Type into this preferred string format rewrite a requested Content Type into this preferred string format
before approval. before approval.
The preferred string format is as defined in Section 8.3.1 of The preferred string format is as defined in Section 8.3.1 of
skipping to change at line 378 skipping to change at line 379
characters is used as the separator between the Media Type and characters is used as the separator between the Media Type and
parameters. parameters.
4.1.5. Examples of Invalid Registration Requests 4.1.5. Examples of Invalid Registration Requests
This section provides examples of registration requests for the "CoAP This section provides examples of registration requests for the "CoAP
Content-Formats" registry that are invalid but would be approved Content-Formats" registry that are invalid but would be approved
under the procedure defined in Section 12.3 of [RFC7252]. The under the procedure defined in Section 12.3 of [RFC7252]. The
checklist defined in Section 4.1.3 should prevent any of these checklist defined in Section 4.1.3 should prevent any of these
attempts from succeeding. These examples serve as a representative, attempts from succeeding. These examples serve as a representative,
but not exhaustive, sample to train the DE's eye on invalid but not exhaustive, sample to train the designated expert's eye on
registration attempts. invalid registration attempts.
All the example registration requests use two CoAP Content-Format All the example registration requests use two CoAP Content-Format
identifiers: 64998 and 64999. identifiers: 64998 and 64999.
For each of the following example registration requests, one can
create a similar instance where the requested registration is for a
CoAP Content-Format identifier within the "IETF Review with Expert
Review or IESG Approval with Expert Review" range. Likewise, such
registrations must not be allowed to succeed.
4.1.5.1. The Media Type is Unknown 4.1.5.1. The Media Type is Unknown
The registrant requests an FCFS Content-Format ID for an unknown The registrant requests an FCFS Content-Format ID for an unknown
Media Type: Media Type:
+==========================+================+=======+ +==========================+================+=======+
| Content Type | Content Coding | ID | | Content Type | Content Coding | ID |
+==========================+================+=======+ +==========================+================+=======+
| application/unknown+cbor | - | 64999 | | application/unknown+cbor | - | 64999 |
+--------------------------+----------------+-------+ +--------------------------+----------------+-------+
 End of changes. 10 change blocks. 
28 lines changed or deleted 23 lines changed or added

This html diff was produced by rfcdiff 1.48.