rfc9423.original   rfc9423.txt 
CoRE Working group C. Bormann Internet Engineering Task Force (IETF) C. Bormann
Internet-Draft Universität Bremen TZI Request for Comments: 9423 Universität Bremen TZI
Intended status: Informational 11 October 2023 Category: Informational April 2024
Expires: 13 April 2024 ISSN: 2070-1721
CoRE Target Attributes Registry Constrained RESTful Environments (CoRE) Target Attributes Registry
draft-ietf-core-target-attr-06
Abstract Abstract
The Constrained RESTful Environments (CoRE) specifications apply Web The Constrained RESTful Environments (CoRE) specifications apply web
technologies to constrained environments. One important such technologies to constrained environments. One such important
technology is Web Linking (RFC 8288), which CoRE specifications use technology is Web Linking (RFC 8288), which CoRE specifications use
as the basis for a number of discovery protocols, such as the Link as the basis for a number of discovery protocols, such as the Link
Format (RFC 6690) in CoAP's Resource Discovery Protocol (Section 7.2 Format (RFC 6690) in the Constrained Application Protocol's (CoAP's)
of RFC7252) and the Resource Directory (RD, RFC 9176). resource discovery process (Section 7.2 of RFC 7252) and the Resource
Directory (RD) (RFC 9176).
Web Links can have target attributes, the names of which are not Web Links can have target attributes, the names of which are not
generally coordinated by the Web Linking specification (Section 2.2 generally coordinated by the Web Linking specification (Section 2.2
of RFC 8288). This document introduces an IANA registry for of RFC 8288). This document introduces an IANA registry for
coordinating names of target attributes when used in CoRE. It coordinating names of target attributes when used in CoRE. It
updates the RD Parameters IANA Registry created by RFC 9176 to updates the "RD Parameters" IANA registry created by RFC 9176 to
coordinate with this registry. coordinate with this registry.
About This Document
This note is to be removed before publishing as an RFC.
Status information for this document may be found at
https://datatracker.ietf.org/doc/draft-ietf-core-target-attr/.
Discussion of this document takes place on the core Working Group
mailing list (mailto:core@ietf.org), which is archived at
https://mailarchive.ietf.org/arch/browse/core/. Subscribe at
https://www.ietf.org/mailman/listinfo/core/.
Source for this draft and an issue tracker can be found at
https://github.com/core-wg/core-target-attr.
Status of This Memo Status of This Memo
This Internet-Draft is submitted in full conformance with the This document is not an Internet Standards Track specification; it is
provisions of BCP 78 and BCP 79. published for informational purposes.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months This document is a product of the Internet Engineering Task Force
and may be updated, replaced, or obsoleted by other documents at any (IETF). It represents the consensus of the IETF community. It has
time. It is inappropriate to use Internet-Drafts as reference received public review and has been approved for publication by the
material or to cite them other than as "work in progress." Internet Engineering Steering Group (IESG). Not all documents
approved by the IESG are candidates for any level of Internet
Standard; see Section 2 of RFC 7841.
This Internet-Draft will expire on 13 April 2024. Information about the current status of this document, any errata,
and how to provide feedback on it may be obtained at
https://www.rfc-editor.org/info/rfc9423.
Copyright Notice Copyright Notice
Copyright (c) 2023 IETF Trust and the persons identified as the Copyright (c) 2024 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents (https://trustee.ietf.org/ Provisions Relating to IETF Documents
license-info) in effect on the date of publication of this document. (https://trustee.ietf.org/license-info) in effect on the date of
Please review these documents carefully, as they describe your rights publication of this document. Please review these documents
and restrictions with respect to this document. Code Components carefully, as they describe your rights and restrictions with respect
extracted from this document must include Revised BSD License text as to this document. Code Components extracted from this document must
described in Section 4.e of the Trust Legal Provisions and are include Revised BSD License text as described in Section 4.e of the
provided without warranty as described in the Revised BSD License. Trust Legal Provisions and are provided without warranty as described
in the Revised BSD License.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 1. Introduction
1.1. Terminology . . . . . . . . . . . . . . . . . . . . . . . 3 1.1. Terminology
2. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 3 2. IANA Considerations
2.1. Instructions for the Designated Expert . . . . . . . . . 4 2.1. Instructions for the Designated Expert
2.2. Structure of Entries . . . . . . . . . . . . . . . . . . 4 2.2. Structure of Entries
2.3. Initial Entries . . . . . . . . . . . . . . . . . . . . . 5 2.3. Initial Entries
3. Security considerations . . . . . . . . . . . . . . . . . . . 6 3. Security Considerations
4. References . . . . . . . . . . . . . . . . . . . . . . . . . 6 4. References
4.1. Normative References . . . . . . . . . . . . . . . . . . 6 4.1. Normative References
4.2. Informative References . . . . . . . . . . . . . . . . . 7 4.2. Informative References
Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . 8 Acknowledgements
Contributors . . . . . . . . . . . . . . . . . . . . . . . . . . 8 Contributors
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 8 Author's Address
1. Introduction 1. Introduction
The Constrained RESTful Environments (CoRE) specifications apply Web The Constrained RESTful Environments (CoRE) specifications apply web
technologies to constrained environments. One important such technologies to constrained environments. One such important
technology is Web Linking [RFC8288], which CoRE specifications use as technology is Web Linking [RFC8288], which CoRE specifications use as
the basis for a number of discovery protocols, such as the Link the basis for a number of discovery protocols, such as the Link
Format [RFC6690] in CoAP's Resource Discovery Protocol (Section 7.2 Format [RFC6690] in the Constrained Application Protocol's (CoAP's)
of [RFC7252]) and the Resource Directory [RFC9176]. resource discovery process (Section 7.2 of [RFC7252]) and the
Resource Directory (RD) [RFC9176].
Web Links can have target attributes. The original Web Linking Web Links can have target attributes. The original Web Linking
specification (Section 3 of [RFC5988]) did not attempt to coordinate specification (Section 3 of [RFC5988]) did not attempt to coordinate
names of target attributes except for providing common target names of target attributes except for providing common target
attributes for use in the Link HTTP header. The current revision of attributes for use in the Link HTTP header. The current revision of
that specification clarifies (Section 2.2 of [RFC8288]): that specification (Section 2.2 of [RFC8288]) clarifies as follows:
| This specification does not attempt to coordinate the name of | This specification does not attempt to coordinate the name of
| target attributes, their cardinality, or use. Those creating and | target attributes, their cardinality, or use. Those creating and
| maintaining serialisations SHOULD coordinate their target | maintaining serialisations SHOULD coordinate their target
| attributes to avoid conflicts in semantics or syntax and MAY | attributes to avoid conflicts in semantics or syntax and MAY
| define their own registries of target attributes. | define their own registries of target attributes.
This document introduces an IANA registry for coordinating names of This document introduces an IANA registry for coordinating names of
target attributes when used in CoRE, with specific instructions for target attributes when used in CoRE, with specific instructions for
the Designated Expert for this registry (Section 2.1). It updates the designated expert for this registry (Section 2.1). It updates
the RD Parameters IANA Registry created by [RFC9176] to coordinate the "RD Parameters" IANA registry created by [RFC9176] to coordinate
with this registry. with this registry.
With a registry now available, registration of target attributes is With this registry now available, registration of target attributes
strongly encouraged. The incentive is that an unregistered attribute is strongly encouraged. The incentive is that an unregistered
name might be registered with a different meaning at any time. attribute name might be registered with a different meaning at any
time.
1.1. Terminology 1.1. Terminology
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"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.
2. IANA Considerations 2. IANA Considerations
This specification creates a new Target Attributes registry in the Per this specification, IANA has created a new "Target Attributes"
"Constrained RESTful Environments (CoRE) Parameters" registry group registry in the "Constrained RESTful Environments (CoRE) Parameters"
[IANA.core-parameters], with the policy "Expert Review" (Section 4.5 registry group [IANA.core-parameters], with the policy "Expert
of [BCP26]). Review" (Section 4.5 of RFC 8126 [BCP26]).
2.1. Instructions for the Designated Expert 2.1. Instructions for the Designated Expert
The expert is requested to guide the registrant towards reasonably The expert is requested to guide the registrant towards reasonably
short target attribute names where the shortness will help conserve short target attribute names where the shortness will help conserve
resources in constrained systems, but also to be frugal in the resources in constrained systems, but to also be frugal in the
allocation of very short names, keeping them in reserve for allocation of very short names, keeping them in reserve for
applications that are likely to enjoy wide use and can make good use applications that are likely to enjoy wide use and can make good use
of their shortness. of their shortness.
The expert is also instructed to direct the registrant to provide a The expert is also instructed to direct the registrant to provide a
specification (Section 4.6 of [BCP26]), but can make exceptions, for specification (Section 4.6 of RFC 8126 [BCP26]) but can make
instance when a specification is not available at the time of exceptions -- for instance, when a specification is not available at
registration but is likely forthcoming. the time of registration but is likely forthcoming.
Any questions or issues that might interest a wider audience might be Any questions or issues that might interest a wider audience might be
raised by the expert on the core-parameters@ietf.org mailing list for raised by the expert on the core-parameters@ietf.org mailing list for
a time-limited discussion. This might include security a time-limited discussion. This might include security
considerations, or opportunities for orchestration, e.g., when considerations, or opportunities for orchestration, e.g., when
different names with similar intent are being or could be registered. different names with similar intent are being or could be registered.
If the expert becomes aware of target attributes that are deployed If the expert becomes aware of target attributes that are deployed
and in use, they may also initiate a registration on their own if and in use, they may also initiate a registration on their own if
they deem such a registration can avert potential future collisions. they deem that such a registration can avert potential future
collisions.
2.2. Structure of Entries 2.2. Structure of Entries
Each entry in the registry must include: Each entry in the registry must include the following:
Attribute Name: Attribute Name:
a lower case ASCII [STD80] string that starts with a letter and A lowercase ASCII string [STD80] that starts with a letter and can
can contain digits and hyphen-minus characters afterward contain digits and hyphen-minus characters afterward
([a-z][-a-z0-9]*). (Note that [RFC8288] requires target attribute ([a-z][-a-z0-9]*). (Note that [RFC8288] requires target attribute
names to be interpreted in a case-insensitive way; the restriction names to be interpreted in a case-insensitive way; the restriction
to lower case here ensures that they are registered in a to lowercase here ensures that they are registered in a
predictable form). predictable form.)
Brief description: Brief Description:
a brief description A brief description.
Change Controller: Change Controller:
see Section 2.3 of [BCP26] See Section 2.3 of RFC 8126 [BCP26].
Reference: Reference:
a reference document that provides a description of the target A reference document that provides a description of the target
attribute, including the semantics for when the target attribute attribute, including the semantics for when the target attribute
appears more than once in a link. appears more than once in a link.
2.3. Initial Entries 2.3. Initial Entries
Initial entries in this registry are listed in Table 1. Initial entries in this registry are listed in Table 1.
+===========+=========================+============+===============+ +===========+=========================+============+===============+
| Attribute | Brief description | Change | Reference | | Attribute | Brief Description | Change | Reference |
| Name | | Controller | | | Name | | Controller | |
+===========+=========================+============+===============+ +===========+=========================+============+===============+
| href | reserved (not useful as | IETF | [RFC6690] | | href | reserved (not useful as | IETF | [RFC6690] |
| | target attribute name) | | | | | target attribute name) | | |
+-----------+-------------------------+------------+---------------+ +-----------+-------------------------+------------+---------------+
| anchor | reserved (not useful as | IETF | [RFC6690] | | anchor | reserved (not useful as | IETF | [RFC6690] |
| | target attribute name) | | | | | target attribute name) | | |
+-----------+-------------------------+------------+---------------+ +-----------+-------------------------+------------+---------------+
| rel | reserved (not useful as | IETF | [RFC6690] | | rel | reserved (not useful as | IETF | [RFC6690] |
| | target attribute name) | | | | | target attribute name) | | |
skipping to change at page 6, line 20 skipping to change at line 233
+-----------+-------------------------+------------+---------------+ +-----------+-------------------------+------------+---------------+
| base | Registration Base URI | IETF | Section 9.3 | | base | Registration Base URI | IETF | Section 9.3 |
| | (with rt="core.rd-ep") | | of [RFC9176] | | | (with rt="core.rd-ep") | | of [RFC9176] |
+-----------+-------------------------+------------+---------------+ +-----------+-------------------------+------------+---------------+
| et | Endpoint Type (with | IETF | Section 9.3 | | et | Endpoint Type (with | IETF | Section 9.3 |
| | rt="core.rd-ep") | | of [RFC9176] | | | rt="core.rd-ep") | | of [RFC9176] |
+-----------+-------------------------+------------+---------------+ +-----------+-------------------------+------------+---------------+
Table 1: Initial Entries in the Target Attributes Registry Table 1: Initial Entries in the Target Attributes Registry
A number of names are reserved as they are used for parameters in A number of names are reserved, as they are used for parameters in
links other than target attributes. A further set of target links other than target attributes. A further set of target
attributes is predefined in [RFC8288] and is imported into this attributes is predefined in [RFC8288] and is imported into this
registry. registry.
Section 9.3 of [RFC9176] created the "RD Parameters" IANA registry. Section 9.3 of [RFC9176] created the "RD Parameters" IANA registry.
This document requests IANA to add the following note to that Per this document, IANA has added the following note to that
registry: registry:
Note: In accordance with [this document], all entries with the "A" | Note: In accordance with RFC 9423, all entries with the "A" flag
flag set, including new ones, MUST also be registered in the | set, including new ones, MUST also be registered in the "Target
"Target Attributes" registry [IANA.core-parameters]. | Attributes" registry [IANA.core-parameters].
3. Security considerations 3. Security Considerations
The security considerations of [RFC8288] apply, as do those of the The security considerations of [RFC8288] apply, as do those of the
discovery specifications [RFC6690], [RFC7252], and [RFC9176]. discovery specifications [RFC6690], [RFC7252], and [RFC9176].
4. References 4. References
4.1. Normative References 4.1. Normative References
[BCP26] Cotton, M., Leiba, B., and T. Narten, "Guidelines for [BCP26] Best Current Practice 26,
<https://www.rfc-editor.org/info/bcp26>.
At the time of writing, this BCP comprises the following:
Cotton, M., Leiba, B., and T. Narten, "Guidelines for
Writing an IANA Considerations Section in RFCs", BCP 26, Writing an IANA Considerations Section in RFCs", BCP 26,
RFC 8126, DOI 10.17487/RFC8126, June 2017, RFC 8126, DOI 10.17487/RFC8126, June 2017,
<https://www.rfc-editor.org/rfc/rfc8126>. <https://www.rfc-editor.org/info/rfc8126>.
[IANA.core-parameters] [IANA.core-parameters]
IANA, "Constrained RESTful Environments (CoRE) IANA, "Constrained RESTful Environments (CoRE)
Parameters", Parameters",
<https://www.iana.org/assignments/core-parameters>. <https://www.iana.org/assignments/core-parameters>.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997, DOI 10.17487/RFC2119, March 1997,
<https://www.rfc-editor.org/rfc/rfc2119>. <https://www.rfc-editor.org/info/rfc2119>.
[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
May 2017, <https://www.rfc-editor.org/rfc/rfc8174>. May 2017, <https://www.rfc-editor.org/info/rfc8174>.
[RFC8288] Nottingham, M., "Web Linking", RFC 8288, [RFC8288] Nottingham, M., "Web Linking", RFC 8288,
DOI 10.17487/RFC8288, October 2017, DOI 10.17487/RFC8288, October 2017,
<https://www.rfc-editor.org/rfc/rfc8288>. <https://www.rfc-editor.org/info/rfc8288>.
[STD80] Cerf, V., "ASCII format for network interchange", STD 80, [STD80] Internet Standard 80,
<https://www.rfc-editor.org/info/std80>.
At the time of writing, this STD comprises the following:
Cerf, V., "ASCII format for network interchange", STD 80,
RFC 20, DOI 10.17487/RFC0020, October 1969, RFC 20, DOI 10.17487/RFC0020, October 1969,
<https://www.rfc-editor.org/rfc/rfc20>. <https://www.rfc-editor.org/info/rfc20>.
4.2. Informative References 4.2. Informative References
[RFC5988] Nottingham, M., "Web Linking", RFC 5988, [RFC5988] Nottingham, M., "Web Linking", RFC 5988,
DOI 10.17487/RFC5988, October 2010, DOI 10.17487/RFC5988, October 2010,
<https://www.rfc-editor.org/rfc/rfc5988>. <https://www.rfc-editor.org/info/rfc5988>.
[RFC6690] Shelby, Z., "Constrained RESTful Environments (CoRE) Link [RFC6690] Shelby, Z., "Constrained RESTful Environments (CoRE) Link
Format", RFC 6690, DOI 10.17487/RFC6690, August 2012, Format", RFC 6690, DOI 10.17487/RFC6690, August 2012,
<https://www.rfc-editor.org/rfc/rfc6690>. <https://www.rfc-editor.org/info/rfc6690>.
[RFC7252] Shelby, Z., Hartke, K., and C. Bormann, "The Constrained [RFC7252] Shelby, Z., Hartke, K., and C. Bormann, "The Constrained
Application Protocol (CoAP)", RFC 7252, Application Protocol (CoAP)", RFC 7252,
DOI 10.17487/RFC7252, June 2014, DOI 10.17487/RFC7252, June 2014,
<https://www.rfc-editor.org/rfc/rfc7252>. <https://www.rfc-editor.org/info/rfc7252>.
[RFC7641] Hartke, K., "Observing Resources in the Constrained [RFC7641] Hartke, K., "Observing Resources in the Constrained
Application Protocol (CoAP)", RFC 7641, Application Protocol (CoAP)", RFC 7641,
DOI 10.17487/RFC7641, September 2015, DOI 10.17487/RFC7641, September 2015,
<https://www.rfc-editor.org/rfc/rfc7641>. <https://www.rfc-editor.org/info/rfc7641>.
[RFC8075] Castellani, A., Loreto, S., Rahman, A., Fossati, T., and [RFC8075] Castellani, A., Loreto, S., Rahman, A., Fossati, T., and
E. Dijk, "Guidelines for Mapping Implementations: HTTP to E. Dijk, "Guidelines for Mapping Implementations: HTTP to
the Constrained Application Protocol (CoAP)", RFC 8075, the Constrained Application Protocol (CoAP)", RFC 8075,
DOI 10.17487/RFC8075, February 2017, DOI 10.17487/RFC8075, February 2017,
<https://www.rfc-editor.org/rfc/rfc8075>. <https://www.rfc-editor.org/info/rfc8075>.
[RFC8613] Selander, G., Mattsson, J., Palombini, F., and L. Seitz, [RFC8613] Selander, G., Mattsson, J., Palombini, F., and L. Seitz,
"Object Security for Constrained RESTful Environments "Object Security for Constrained RESTful Environments
(OSCORE)", RFC 8613, DOI 10.17487/RFC8613, July 2019, (OSCORE)", RFC 8613, DOI 10.17487/RFC8613, July 2019,
<https://www.rfc-editor.org/rfc/rfc8613>. <https://www.rfc-editor.org/info/rfc8613>.
[RFC9176] Amsüss, C., Ed., Shelby, Z., Koster, M., Bormann, C., and [RFC9176] Amsüss, C., Ed., Shelby, Z., Koster, M., Bormann, C., and
P. van der Stok, "Constrained RESTful Environments (CoRE) P. van der Stok, "Constrained RESTful Environments (CoRE)
Resource Directory", RFC 9176, DOI 10.17487/RFC9176, April Resource Directory", RFC 9176, DOI 10.17487/RFC9176, April
2022, <https://www.rfc-editor.org/rfc/rfc9176>. 2022, <https://www.rfc-editor.org/info/rfc9176>.
Acknowledgements Acknowledgements
The CoRE WG had been discussing setting up a registry for target The CoRE Working Group had been discussing setting up a registry for
attributes since the final touches were made on [RFC6690]. The target attributes since the final touches were made on [RFC6690].
update of the Web Linking specification to [RFC8288] provided the The update of the Web Linking specification to [RFC8288] provided the
formal setting, but it took until Jaime Jiménez provided the set of formal setting, but it took until Jaime Jiménez provided the set of
initial registrations to generate a first version of this initial registrations to generate a first draft version of this
specification. The current version addresses additional input and specification. The current document addresses additional input and
working group last call comments by Esko Dijk, Marco Tiloca, Thomas Working Group Last Call comments by Esko Dijk, Marco Tiloca, Thomas
Fossati, and Mohamed Boucadair, as well as area director review Fossati, and Mohamed Boucadair, as well as Area Director review
comments from Rob Wilton. comments from Rob Wilton.
Contributors Contributors
Jaime Jiménez Jaime Jiménez
Ericsson Ericsson
Email: jaime@iki.fi Email: jaime@iki.fi
Jaime provided the list of initial registrations. Jaime provided the list of initial registrations.
 End of changes. 48 change blocks. 
115 lines changed or deleted 111 lines changed or added

This html diff was produced by rfcdiff 1.48.