[要約] RFC 8790は、SenMLを使用したセンサー測定リストの取得と更新を行うためのFETCHとPATCHメソッドを定義しています。このRFCの目的は、SenMLを使用してセンサーデータを効率的に取得および更新するための標準化を提供することです。

Internet Engineering Task Force (IETF)                        A. Keränen
Request for Comments: 8790                                      Ericsson
Category: Standards Track                                     M. Mohajer
ISSN: 2070-1721                                                June 2020
        

FETCH and PATCH with Sensor Measurement Lists (SenML)

センサー測定リスト付きのFETCHおよびPATCH(SenML)

Abstract

概要

The Sensor Measurement Lists (SenML) media type and data model can be used to send collections of resources, such as batches of sensor data or configuration parameters. The Constrained Application Protocol (CoAP) FETCH, PATCH, and iPATCH methods enable accessing and updating parts of a resource or multiple resources with one request. This document defines new media types for the CoAP FETCH, PATCH, and iPATCH methods for resources represented using the SenML data model.

センサー測定リスト(SenML)メディアタイプとデータモデルを使用して、センサーデータのバッチや構成パラメーターなどのリソースのコレクションを送信できます。制約付きアプリケーションプロトコル(CoAP)のFETCH、PATCH、およびiPATCHメソッドを使用すると、1つの要求でリソースの一部または複数のリソースにアクセスして更新できます。このドキュメントでは、SenMLデータモデルを使用して表されるリソースのCoAP FETCH、PATCH、およびiPATCHメソッドの新しいメディアタイプを定義します。

Status of This Memo

本文書の状態

This is an Internet Standards Track document.

これはInternet Standards Trackドキュメントです。

This document is a product of the Internet Engineering Task Force (IETF). It represents the consensus of the IETF community. It has received public review and has been approved for publication by the Internet Engineering Steering Group (IESG). Further information on Internet Standards is available in Section 2 of RFC 7841.

このドキュメントは、IETF(Internet Engineering Task Force)の製品です。これは、IETFコミュニティのコンセンサスを表しています。公開レビューを受け、インターネットエンジニアリングステアリンググループ(IESG)による公開が承認されました。インターネット標準の詳細については、RFC 7841のセクション2をご覧ください。

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/rfc8790.

このドキュメントの現在のステータス、正誤表、およびフィードバックの提供方法に関する情報は、https://www.rfc-editor.org/info/rfc8790で入手できます。

Copyright Notice

著作権表示

Copyright (c) 2020 IETF Trust and the persons identified as the document authors. All rights reserved.

著作権(c)2020 IETFトラストおよびドキュメントの作成者として識別された人物。全著作権所有。

This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License.

この文書は、BCP 78およびIETF文書に関するIETFトラストの法的規定(https://trustee.ietf.org/license-info)の対象であり、この文書の発行日に有効です。これらのドキュメントは、このドキュメントに関するあなたの権利と制限を説明しているため、注意深く確認してください。このドキュメントから抽出されたコードコンポーネントには、Trust Legal Provisionsのセクション4.eに記載されているSimplified BSD Licenseのテキストが含まれている必要があり、Simplified BSD Licenseに記載されているように保証なしで提供されます。

Table of Contents

目次

   1.  Introduction
   2.  Terminology
   3.  Using FETCH and (i)PATCH with SenML
     3.1.  SenML FETCH
     3.2.  SenML (i)PATCH
   4.  Fragment Identification
   5.  Extensibility
   6.  Security Considerations
   7.  IANA Considerations
     7.1.  CoAP Content-Format Registration
     7.2.  senml-etch+json Media Type
     7.3.  senml-etch+cbor Media Type
   8.  References
     8.1.  Normative References
     8.2.  Informative References
   Acknowledgements
   Authors' Addresses
        
1. Introduction
1. はじめに

The Sensor Measurement Lists (SenML) media type [RFC8428] and data model can be used to transmit collections of resources, such as batches of sensor data or configuration parameters.

センサー測定リスト(SenML)メディアタイプ[RFC8428]およびデータモデルを使用して、センサーデータのバッチや構成パラメーターなどのリソースのコレクションを送信できます。

An example of a SenML collection is shown below:

SenMLコレクションの例を以下に示します。

   [
    {"bn":"2001:db8::2/3311/0/", "n":"5850", "vb":true},
    {"n":"5851", "v":42},
    {"n":"5750", "vs":"Ceiling light"}
   ]
        

Here, three resources, "3311/0/5850", "3311/0/5851", and "3311/0/5750", of a dimmable light smart object [IPSO] are represented using a single SenML Pack with three SenML Records. All resources share the same base name "2001:db8::2/3311/0/"; hence, full names for the resources are "2001:db8::2/3311/0/5850", etc.

ここでは、調光可能なライトスマートオブジェクト[IPSO]の3つのリソース「3311/0/5850」、「3311/0/5851」、「3311/0/5750」が、3つのSenMLレコードを持つ単一のSenMLパックを使用して表されています。 。すべてのリソースは同じベース名「2001:db8 :: 2/3311/0 /」を共有します。したがって、リソースのフルネームは「2001:db8 :: 2/3311/0/5800」などになります。

The CoAP [RFC7252] FETCH, PATCH, and iPATCH methods [RFC8132] enable accessing and updating parts of a resource or multiple resources with one request.

CoAP [RFC7252] FETCH、PATCH、およびiPATCHメソッド[RFC8132]を使用すると、1つの要求でリソースの一部または複数のリソースにアクセスして更新できます。

This document defines two new media types, one using the JavaScript Object Notation (JSON) [RFC8259] and one using the Concise Binary Object Representation (CBOR) [RFC7049], which can be used with the CoAP FETCH, PATCH, and iPATCH methods for resources represented using the SenML data model (i.e., for both SenML and Sensor Streaming Measurement Lists (SenSML) data). The rest of the document uses the term "(i)PATCH" when referring to both methods as the semantics of the new media types are the same for the CoAP PATCH and iPATCH methods.

このドキュメントでは、2つの新しいメディアタイプを定義しています。1つはJavaScript Object Notation(JSON)[RFC8259]を使用し、もう1つはコンサイスバイナリオブジェクト表現(CBOR)[RFC7049]を使用します。 SenMLデータモデルを使用して表されるリソース(つまり、SenMLデータとセンサーストリーミング測定リスト(SenSML)データの両方)。新しいメディアタイプのセマンティクスはCoAP PATCHメソッドとiPATCHメソッドで同じであるため、このドキュメントの残りの部分では、両方のメソッドを指すときに「(i)PATCH」という用語を使用します。

2. Terminology
2. 用語

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here.

キーワード「MUST」、「MUST NOT」、「REQUIRED」、「SHALL」、「SHALL NOT」、「SHOULD」、「SHOULD NOT」、「RECOMMENDED」、「NOT RECOMMENDED」、「MAY」、「OPTIONALこのドキュメントの「」は、BCP 14 [RFC2119] [RFC8174]で説明されているように解釈されます。

Readers should also be familiar with the terms and concepts discussed in [RFC8132] and [RFC8428]. The following additional terms are used in this document:

読者は、[RFC8132]と[RFC8428]で説明されている用語と概念にも精通している必要があります。このドキュメントでは、次の追加用語が使用されています。

Fetch Record: One set of parameters that is used to match SenML Record(s).

レコードの取得:SenMLレコードを照合するために使用されるパラメータの1セット。

Fetch Pack: One or more Fetch Records in an array structure.

フェッチパック:配列構造内の1つ以上のフェッチレコード。

Patch Record: One set of parameters similar to Fetch Record but also containing instructions on how to change existing SenML Pack(s).

パッチレコード:Fetch Recordと同様のパラメータセットの1つですが、既存のSenMLパックを変更する方法についての説明も含まれています。

Patch Pack: One or more Patch Records in an array structure.

パッチパック:配列構造の1つ以上のパッチレコード。

Target Record: A Record in a SenML Pack that matches the selection criteria of a Fetch or Patch Record and hence is a target for a Fetch or Patch operation.

ターゲットレコード:フェッチまたはパッチレコードの選択基準に一致し、したがってフェッチまたはパッチ操作のターゲットとなる、SenMLパック内のレコード。

Target Pack: A SenML Pack that is a target for a Fetch or Patch operation.

ターゲットパック:フェッチまたはパッチ操作のターゲットであるSenMLパック。

(i)PATCH: A term that refers to both CoAP "PATCH" and "iPATCH" methods when there is no difference in this specification as to which one is used.

(i)PATCH:どちらを使用するかについてこの仕様に違いがない場合に、CoAPの「PATCH」と「iPATCH」の両方の方法を指す用語。

3. Using FETCH and (i)PATCH with SenML
3. SenMLでのFETCHおよび(i)PATCHの使用

The FETCH/(i)PATCH media types for SenML are modeled as extensions to the SenML media type to enable reuse of existing SenML parsers and generators, in particular on constrained devices. Unless mentioned otherwise, FETCH and PATCH Packs are constructed with the same rules and constraints as SenML Packs.

SenMLのFETCH /(i)PATCHメディアタイプは、SenMLメディアタイプの拡張としてモデル化されており、特に制約のあるデバイスで、既存のSenMLパーサーおよびジェネレーターの再利用を可能にします。特に明記しない限り、FETCHおよびPATCHパックは、SenMLパックと同じルールと制約で構築されます。

The key differences from the SenML media type are allowing the use of a "null" value for removing Records with the (i)PATCH method and the lack of value fields in Fetch Records. Also, the Fetch and Patch Records do not have a default time or base version when the fields are omitted.

SenMLメディアタイプとの主な違いは、(n)値を使用して(i)PATCHメソッドでレコードを削除できることと、Fetch Recordsに値フィールドがないことです。また、フィールドが省略されている場合、フェッチレコードとパッチレコードにはデフォルトの時間または基本バージョンがありません。

3.1. SenML FETCH
3.1. SenML FETCH

The FETCH method can be used to select and return a subset of Records, in sequence, of one or more SenML Packs. The SenML Records are selected by giving a set of names that, when resolved, match resolved names in a Target SenML Pack. The names for a Fetch Pack are given using the SenML "name" and/or "base name" fields. The names are resolved by concatenating the base name with the name field as defined in [RFC8428].

FETCHメソッドを使用して、1つ以上のSenMLパックのレコードのサブセットを順番に選択して返すことができます。 SenMLレコードは、解決されたときにターゲットSenMLパックの解決された名前と一致する名前のセットを与えることによって選択されます。フェッチパックの名前は、SenMLの「名前」または「ベース名」フィールドを使用して指定されます。名前は、[RFC8428]で定義されているように、ベース名と名前フィールドを連結することによって解決されます。

A Fetch Pack MUST contain at least one Fetch Record. A Fetch Record MUST contain a name and/or base name field.

フェッチパックには、少なくとも1つのフェッチレコードが含まれている必要があります。 Fetch Recordには、名前またはベース名フィールド、あるいはその両方が含まれている必要があります。

For example, to select the resources "5850" and "5851" from the example in Section 1, the following Fetch Pack can be used:

たとえば、セクション1の例からリソース「5850」と「5851」を選択するには、次のフェッチパックを使用できます。

   [
    {"bn":"2001:db8::2/3311/0/", "n":"5850"},
    {"n":"5851"}
   ]
        

The result of a FETCH request with the example above would be:

上記の例でのFETCH要求の結果は次のようになります。

   [
    {"bn":"2001:db8::2/3311/0/", "n":"5850", "vb":true},
    {"n":"5851", "v":42},
   ]
        

The SenML time and unit fields can be used in a Fetch Record to further narrow the selection of matched SenML Records. When no time or unit is given in a Fetch Record, all SenML Records with the given name are matched (i.e., unlike with SenML Records, the lack of time field in a Fetch Record does not imply a time value of zero). When time is given in the Fetch Record, a Target Record is matched only when its resolved time value and name are equal to those of the Fetch Record. Similarly, when unit is given, a Target Record is matched only when its resolved unit and name are equal to those of the Fetch Record. If both the time and unit are given in the Fetch Record, a Target Record is matched only when both are equal to those of the Fetch Record. Each Target Record MUST be included in the response at most once, even if multiple Fetch Records match with the same Target Record.

SenMLの時間フィールドと単位フィールドをフェッチレコードで使用して、一致するSenMLレコードの選択をさらに絞り込むことができます。フェッチレコードで時間または単位が指定されていない場合、指定された名前のすべてのSenMLレコードが一致します(つまり、SenMLレコードとは異なり、フェッチレコードに時間フィールドがないことは、時間値がゼロであることを意味しません)。フェッチレコードで時間が指定されている場合、ターゲットレコードは、解決された時間の値と名前がフェッチレコードのものと等しい場合にのみ一致します。同様に、ユニットが指定されている場合、ターゲットレコードは、その解決されたユニットと名前がフェッチレコードのものと等しい場合にのみ一致します。時間と単位の両方がフェッチレコードで指定されている場合、ターゲットレコードは、両方がフェッチレコードの値と等しい場合にのみ一致します。複数のフェッチレコードが同じターゲットレコードと一致する場合でも、各ターゲットレコードは最大で1回応答に含める必要があります。

For example, if the resource "5850" had multiple sensor readings (SenML Records) with different time values, the following Fetch Pack can be used to retrieve the Record with time "1.276020091e+09":

たとえば、リソース「5580」に異なる時間値を持つ複数のセンサー測定値(SenMLレコード)があった場合、次のフェッチパックを使用して、時間「1.276020091e + 09」のレコードを取得できます。

   [
    {"bn":"2001:db8::2/3311/0/", "n":"5850", "t":1.276020091e+09}
   ]
        

The resolved form of Records (Section 4.6 of [RFC8428]) is used when comparing the names, times, and units of the Target and Fetch Records to accommodate differences in the use of the base values. In the resolved form, the SenML name in the example above becomes "2001:db8::2/3311/0/5850". Since there is no base time in the Pack, the time in resolved form is equal to the time in the example.

解決された形式のレコード([RFC8428]のセクション4.6)は、ターゲット値とフェッチレコードの名前、時間、および単位を比較して、ベース値の使用の違いに対応するときに使用されます。解決された形式では、上の例のSenML名は "2001:db8 :: 2/3311/0/5850"になります。パックには基本時間がないため、解決された形式の時間は例の時間と同じです。

If no SenML Records match, an empty SenML Pack (i.e., array with no elements) is returned as a response.

一致するSenMLレコードがない場合、空のSenMLパック(つまり、要素のない配列)が応答として返されます。

Fetch Records MUST NOT contain other fields than name, base name, time, base time, unit, and base unit. Implementations MUST reject and generate an error for a Fetch Pack with other fields. [RFC8132], Section 2.2 provides guidance for FETCH request error handling, e.g., using the 4.22 (Unprocessable Entity) CoAP error response code.

フェッチレコードには、名前、ベース名、時間、ベース時間、単位、および基本単位以外のフィールドを含めることはできません。実装は、他のフィールドを持つフェッチパックのエラーを拒否して生成する必要があります。 [RFC8132]のセクション2.2は、4.22(処理できないエンティティ)CoAPエラー応答コードなどを使用したFETCHリクエストのエラー処理に関するガイダンスを提供します。

3.2. SenML (i)PATCH
3.2. SenML(i)PATCH

The (i)PATCH method can be used to change the fields of SenML Records, to add new Records, and to remove existing Records. The names, times, and units of the Patch Records are given and matched in the same way as for the Fetch Records, except each Patch Record MUST match at most one Target Record. A Patch Record matching more than one Target Record is considered invalid (patching multiple Target Records with one Patch Record would result in multiple copies of the same Record). Patch Packs can also include new values and other SenML fields for the Records. Application of Patch Packs is idempotent; hence, the PATCH and iPATCH methods for SenML Packs are equivalent.

(i)PATCHメソッドは、SenMLレコードのフィールドの変更、新しいレコードの追加、および既存のレコードの削除に使用できます。パッチレコードの名前、時間、および単位は、各パッチレコードが最大で1つのターゲットレコードに一致する必要があることを除いて、フェッチレコードの場合と同じ方法で与えられ、一致します。複数のターゲットレコードに一致するパッチレコードは無効と見なされます(1つのパッチレコードで複数のターゲットレコードにパッチを適用すると、同じレコードの複数のコピーが作成されます)。パッチパックには、レコードの新しい値やその他のSenMLフィールドを含めることもできます。パッチパックの適用はべき等です。したがって、SenMLパックのPATCHメソッドとiPATCHメソッドは同等です。

When the name in a Patch Record matches with the name in an existing Record, the resolved time values and units (if any) are compared. If the time values and units either do not exist in both Records or are equal, the Target Record is replaced with the contents of the Patch Record. All Patch Records MUST contain at least a SenML Value or Sum field.

パッチレコードの名前が既存のレコードの名前と一致すると、解決された時間値と単位(存在する場合)が比較されます。時間値と単位が両方のレコードに存在しないか等しい場合、ターゲットレコードはパッチレコードの内容に置き換えられます。すべてのパッチレコードには、少なくともSenML値または合計フィールドが含まれている必要があります。

If a Patch Record contains a name, or the combination of a time value, unit, and name, that does not exist in any existing Record in the Pack, the given Record, with all the fields it contains, is added to the Pack.

パッチレコードに名前、または時間の値、単位、名前の組み合わせが含まれ、これらがパック内の既存のレコードに存在しない場合、指定されたレコードとそれに含まれるすべてのフィールドがパックに追加されます。

If a Patch Record has a value ("v") field with a null value, it MUST NOT be added, but the matched Record (if any) is removed from the Target Pack.

パッチレコードにnull値の値( "v")フィールドがある場合、追加することはできませんが、一致するレコード(ある場合)はターゲットパックから削除されます。

The Patch Records MUST be applied in the same sequence as they are in the Patch Pack. If multiple Patch Packs are being processed at the same time, the result MUST be equivalent to applying them in one sequence.

パッチレコードは、パッチパックと同じ順序で適用する必要があります。複数のパッチパックが同時に処理される場合、結果はそれらを1つのシーケンスで適用することと同等でなければなりません。

Implementations MUST reject and generate an error for Patch Packs with invalid Records. If a Patch Pack is rejected, the state of the Target Pack is not changed, i.e., either all or none of the Patch Records are applied. [RFC8132], Section 3.4 provides guidance for error handling with PATCH and iPATCH requests, e.g., using the 4.22 (Unprocessable Entity) and 4.09 (Conflict) CoAP error response codes.

実装は、無効なレコードを含むパッチパックを拒否してエラーを生成する必要があります。パッチパックが拒否された場合、ターゲットパックの状態は変更されません。つまり、パッチレコードのすべてが適用されるか、まったく適用されません。 [RFC8132]、セクション3.4は、4.22(処理できないエンティティ)および4.09(競合)CoAPエラー応答コードを使用するなど、PATCHおよびiPATCHリクエストでのエラー処理のガイダンスを提供します。

For example, the following document could be given as an (i)PATCH payload to change/set the values of two SenML Records for the example in Section 1:

たとえば、次のドキュメントは、セクション1の例の2つのSenMLレコードの値を変更/設定するための(i)PATCHペイロードとして指定できます。

   [
    {"bn":"2001:db8::2/3311/0/", "n":"5850", "vb":false},
    {"n":"5851", "v":10}
   ]
        

If the request is successful, the resulting representation of the example SenML Pack would be as follows:

リクエストが成功した場合、SenMLパックの例の結果の表現は次のようになります。

   [
    {"bn":"2001:db8::2/3311/0/", "n":"5850", "vb":false},
    {"n":"5851", "v":10},
    {"n":"5750", "vs":"Ceiling light"}
   ]
        

As another example, the following document could be given as an (i)PATCH payload to remove the two SenML Records:

別の例として、次のドキュメントを(i)PATCHペイロードとして指定して、2つのSenMLレコードを削除できます。

   [
    {"bn":"2001:db8::2/3311/0/", "n":"5850", "v":null},
    {"n":"5851", "v":null}
   ]
        
4. Fragment Identification
4. フラグメントの識別

Fragment identification for Records of Fetch and Patch Packs uses the same mechanism as SenML JSON/CBOR fragment identification (see Section 9 of [RFC8428]), i.e., the "rec" scheme followed by a comma-separated list of Record positions or range(s) of Records. For example, to select the 3rd and 5th Record of a Fetch or Patch Pack, a fragment identifier "rec=3,5" can be used in the URI of the Fetch or Patch Pack resource.

Records of FetchおよびPatch Packのフラグメント識別は、SenML JSON / CBORフラグメント識別([RFC8428]のセクション9を参照)と同じメカニズムを使用します。 s)レコード。たとえば、FetchまたはPatch Packの3番目と5番目のレコードを選択するには、FetchまたはPatch PackリソースのURIでフラグメント識別子「rec = 3,5」を使用できます。

5. Extensibility
5. 拡張性

The SenML mandatory-to-understand field extensibility mechanism (see Section 4.4 of [RFC8428]) does not apply to Patch Packs, i.e., unknown fields MUST NOT generate an error, but such fields are treated like any other field (e.g., added to Patch target Records where applicable).

SenMLの必須のフィールド拡張メカニズム([RFC8428]のセクション4.4を参照)はパッチパックには適用されません。つまり、不明なフィールドはエラーを生成してはいけません(MUST NOT)。該当する場合、対象レコードにパッチを適用します)。

This specification allows only a small subset of SenML fields in Fetch Records, but future specifications may enable new fields for Fetch Records and possibly also new fields for selecting targets for Patch Records.

この仕様では、フェッチレコードのSenMLフィールドの小さなサブセットしか許可されていませんが、将来の仕様では、フェッチレコードの新しいフィールドが有効になり、パッチレコードのターゲットを選択するための新しいフィールドも有効になる可能性があります。

6. Security Considerations
6. セキュリティに関する考慮事項

The security and privacy considerations of SenML also apply to the FETCH and (i)PATCH methods. CoAP's security mechanisms are used to provide security for the FETCH and (i)PATCH methods.

SenMLのセキュリティとプライバシーに関する考慮事項は、FETCHおよび(i)PATCHメソッドにも適用されます。 CoAPのセキュリティメカニズムは、FETCHおよび(i)PATCHメソッドにセキュリティを提供するために使用されます。

In FETCH and (i)PATCH requests, the client can pass arbitrary names to the target resource for manipulation. The resource implementer must take care to only allow access to names that are actually part of (or accessible through) the target resource. In particular, the receiver needs to ensure that any input does not lead to uncontrolled special interpretation by the system.

FETCHおよび(i)PATCH要求では、クライアントは操作のためにターゲットリソースに任意の名前を渡すことができます。リソース実装者は、実際にターゲットリソースの一部である(またはターゲットリソースを通じてアクセスできる)名前へのアクセスのみを許可するように注意する必要があります。特に、受信者は、入力がシステムによる制御されない特別な解釈につながらないようにする必要があります。

If the client is not allowed to do a GET or PUT on the full target resource (and thus all the names accessible through it), access control rules must be evaluated for each Record in the Pack.

クライアントが完全なターゲットリソース(つまり、リソースを通じてアクセスできるすべての名前)に対してGETまたはPUTを実行することが許可されていない場合は、パック内の各レコードに対してアクセス制御規則を評価する必要があります。

7. IANA Considerations
7. IANAに関する考慮事項

This document registers two new media types and CoAP Content-Format IDs for both media types.

このドキュメントでは、2つの新しいメディアタイプと両方のメディアタイプのCoAP Content-Format IDを登録しています。

7.1. CoAP Content-Format Registration
7.1. CoAPコンテンツ形式の登録

IANA has assigned CoAP Content-Format IDs for the SenML PATCH and FETCH media types in the "CoAP Content-Formats" subregistry, within the "Constrained RESTful Environments (CoRE) Parameters" registry [RFC7252]. The assigned IDs are shown in Table 1.

IANAは、「制約付きRESTful環境(CoRE)パラメータ」レジストリ[RFC7252]内の「CoAPコンテンツフォーマット」サブレジストリで、SenML PATCHおよびFETCHメディアタイプにCoAPコンテンツフォーマットIDを割り当てました。割り当てられたIDを表1に示します。

             +=============================+==========+=====+
             | Media Type                  | Encoding | ID  |
             +=============================+==========+=====+
             | application/senml-etch+json | -        | 320 |
             +-----------------------------+----------+-----+
             | application/senml-etch+cbor | -        | 322 |
             +-----------------------------+----------+-----+
        

Table 1: CoAP Content-Format IDs

表1:CoAPコンテンツ形式ID

7.2. senml-etch+json Media Type
7.2. senml-etch + jsonメディアタイプ

Type name: application

タイプ名:アプリケーション

Subtype name: senml-etch+json

サブタイプ名:senml-etch + json

Required parameters: N/A

必須パラメーター:なし

Optional parameters: N/A

オプションのパラメーター:N / A

Encoding considerations: binary

エンコーディングに関する考慮事項:バイナリ

Security considerations: See Section 6 of RFC 8790.

セキュリティに関する考慮事項:RFC 8790のセクション6をご覧ください。

Interoperability considerations: N/A

相互運用性に関する考慮事項:N / A

Published specification: RFC 8790

公開された仕様:RFC 8790

Applications that use this media type: Applications that use the SenML media type for resource representation.

このメディアタイプを使用するアプリケーション:リソースの表現にSenMLメディアタイプを使用するアプリケーション。

Fragment identifier considerations: Fragment identification for application/senml-etch+json is supported by using fragment identifiers as specified by Section 4 of RFC 8790.

フラグメント識別子の考慮事項:RFC 8790のセクション4で指定されているフラグメント識別子を使用することにより、application / senml-etch + jsonのフラグメント識別がサポートされます。

Additional information:

追加情報:

Deprecated alias names for this type: N/A

このタイプの非推奨のエイリアス名:N / A

      Magic number(s):  N/A
        

File extension(s): senml-etchj

ファイル拡張子:senml-etchj

Windows Clipboard Name: "SenML FETCH/PATCH format"

Windowsクリップボード名:「SenML FETCH / PATCH形式」

      Macintosh file type code(s):  N/A
        

Macintosh Universal Type Identifier code: org.ietf.senml-etch-json conforms to public.text

Macintoshユニバーサルタイプ識別子コード:org.ietf.senml-etch-jsonはpublic.textに準拠しています

   Person & email address to contact for further information:
      Ari Keränen <ari.keranen@ericsson.com>
        

Intended usage: COMMON

使用目的:COMMON

Restrictions on usage: N/A

使用上の制限:N / A

   Author:  Ari Keränen <ari.keranen@ericsson.com>
        

Change controller: IESG

コントローラーの変更:IESG

7.3. senml-etch+cbor Media Type
7.3. senml-etch + cborメディアタイプ

Type name: application

タイプ名:アプリケーション

Subtype name: senml-etch+cbor

サブタイプ名:senml-etch + cbor

Required parameters: N/A

必須パラメーター:なし

Optional parameters: N/A

オプションのパラメーター:N / A

Encoding considerations: binary

エンコーディングに関する考慮事項:バイナリ

Security considerations: See Section 6 of RFC 8790.

セキュリティに関する考慮事項:RFC 8790のセクション6をご覧ください。

Interoperability considerations: N/A

相互運用性に関する考慮事項:N / A

Published specification: RFC 8790

公開された仕様:RFC 8790

Applications that use this media type: Applications that use the SenML media type for resource representation.

このメディアタイプを使用するアプリケーション:リソースの表現にSenMLメディアタイプを使用するアプリケーション。

Fragment identifier considerations: Fragment identification for application/senml-etch+cbor is supported by using fragment identifiers as specified by Section 4 of RFC 8790.

フラグメント識別子の考慮事項:RFC 8790のセクション4で指定されているフラグメント識別子を使用することで、application / senml-etch + cborのフラグメント識別がサポートされます。

Additional information:

追加情報:

Deprecated alias names for this type: N/A

このタイプの非推奨のエイリアス名:N / A

      Magic number(s):  N/A
        

File extension(s): senml-etchc

ファイル拡張子:senml-etchc

      Macintosh file type code(s):  N/A
        

Macintosh Universal Type Identifier code: org.ietf.senml-etch-cbor conforms to public.data

Macintoshユニバーサルタイプ識別子コード:org.ietf.senml-etch-cborはpublic.dataに準拠

   Person & email address to contact for further information:
      Ari Keränen <ari.keranen@ericsson.com>
        

Intended usage: COMMON

使用目的:COMMON

Restrictions on usage: N/A

使用上の制限:N / A

   Author:  Ari Keränen <ari.keranen@ericsson.com>
        

Change controller: IESG

コントローラーの変更:IESG

8. References
8. 参考文献
8.1. Normative References
8.1. 引用文献

[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997, <https://www.rfc-editor.org/info/rfc2119>.

[RFC2119] Bradner、S。、「要件レベルを示すためにRFCで使用するキーワード」、BCP 14、RFC 2119、DOI 10.17487 / RFC2119、1997年3月、<https://www.rfc-editor.org/info/ rfc2119>。

[RFC7049] Bormann, C. and P. Hoffman, "Concise Binary Object Representation (CBOR)", RFC 7049, DOI 10.17487/RFC7049, October 2013, <https://www.rfc-editor.org/info/rfc7049>.

[RFC7049] Bormann、C。およびP. Hoffman、「簡潔なバイナリオブジェクト表現(CBOR)」、RFC 7049、DOI 10.17487 / RFC7049、2013年10月、<https://www.rfc-editor.org/info/rfc7049> 。

[RFC7252] Shelby, Z., Hartke, K., and C. Bormann, "The Constrained Application Protocol (CoAP)", RFC 7252, DOI 10.17487/RFC7252, June 2014, <https://www.rfc-editor.org/info/rfc7252>.

[RFC7252] Shelby、Z.、Hartke、K。、およびC. Bormann、「The Constrained Application Protocol(CoAP)」、RFC 7252、DOI 10.17487 / RFC7252、2014年6月、<https://www.rfc-editor。 org / info / rfc7252>。

[RFC8132] van der Stok, P., Bormann, C., and A. Sehgal, "PATCH and FETCH Methods for the Constrained Application Protocol (CoAP)", RFC 8132, DOI 10.17487/RFC8132, April 2017, <https://www.rfc-editor.org/info/rfc8132>.

[RFC8132] van der Stok、P.、Bormann、C。、およびA. Sehgal、「PATCH and FETCH Methods for the Constrained Application Protocol(CoAP)」、RFC 8132、DOI 10.17487 / RFC8132、2017年4月、<https:/ /www.rfc-editor.org/info/rfc8132>。

[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, May 2017, <https://www.rfc-editor.org/info/rfc8174>.

[RFC8174] Leiba、B。、「RFC 2119キーワードの大文字と小文字のあいまいさ」、BCP 14、RFC 8174、DOI 10.17487 / RFC8174、2017年5月、<https://www.rfc-editor.org/info/ rfc8174>。

[RFC8259] Bray, T., Ed., "The JavaScript Object Notation (JSON) Data Interchange Format", STD 90, RFC 8259, DOI 10.17487/RFC8259, December 2017, <https://www.rfc-editor.org/info/rfc8259>.

[RFC8259]ブレイ、T。、編、「JavaScript Object Notation(JSON)データ交換フォーマット」、STD 90、RFC 8259、DOI 10.17487 / RFC8259、2017年12月、<https://www.rfc-editor.org / info / rfc8259>。

[RFC8428] Jennings, C., Shelby, Z., Arkko, J., Keranen, A., and C. Bormann, "Sensor Measurement Lists (SenML)", RFC 8428, DOI 10.17487/RFC8428, August 2018, <https://www.rfc-editor.org/info/rfc8428>.

[RFC8428]ジェニングス、C。、シェルビー、Z。、アルコ、J。、ケラネン、A。、およびC.ボーマン、「センサー測定リスト(SenML)」、RFC 8428、DOI 10.17487 / RFC8428、2018年8月、<https ://www.rfc-editor.org/info/rfc8428>。

8.2. Informative References
8.2. 参考引用

[IPSO] IPSO, "IPSO Light Control Smart Object", 2019, <http://www.openmobilealliance.org/tech/profiles/ lwm2m/3311.xml>.

[Them] HIM、「ipso Light Control Smart Object」、2019、<http://www.openmobilealliance.org/tech/profiles/ lwm2m / 3311.xml>。

Acknowledgements

謝辞

The use of the FETCH and (i)PATCH methods with SenML was first introduced by the OMA SpecWorks Lightweight Machine to Machine (LwM2M) v1.1 specification. This document generalizes the use to any SenML representation. The authors would like to thank Carsten Bormann, Christian Amsüss, Jaime Jiménez, Klaus Hartke, Michael Richardson, and other participants from the IETF CoRE and OMA SpecWorks DMSE working groups who have contributed ideas and reviews.

SenMLでのFETCHおよび(i)PATCHメソッドの使用は、OMA SpecWorks軽量Machine to Machine(LwM2M)v1.1仕様で最初に導入されました。このドキュメントでは、SenML表現の使用を一般化します。著者は、Carsten Bormann、ChristianAmsüss、JaimeJiménez、Klaus Hartke、Michael Richardson、およびアイデアとレビューに貢献してくれたIETF CoREおよびOMA SpecWorks DMSEワーキンググループの他の参加者に感謝します。

Authors' Addresses

著者のアドレス

Ari Keränen Ericsson FI-02420 Jorvas Finland

アリケラネンエリクソンFI-02420ヨルバスフィンランド

   Email: ari.keranen@ericsson.com
        

Mojan Mohajer

モジャンモハイエル

   Email: mojanm@hotmail.com