Independent Submission M. Basaglia Request for Comments: 9402 Category: Informational J. Bernards ISSN: 2070-1721 J. Maas 1 April 2023 Concat記法 概要 このドキュメントは、Concat記法を定義します。猫、コンテナ、それらの相互作用を主題とする写真やビデオを記述するために使われるテキストベースの言語です。 このメモの位置付け この文書では、インターネット標準化過程の仕様ではありません、それは情報目的のために公開されています。 これは、他のいかなるRFCストリームに関係なく、RFCシリーズに貢献をしています。 RFC Editor は自らの裁量でこのドキュメントを公開することを選択しました。そして、実装や展開においてのその価値に関して何らかの声明を出すことはありません。 RFC Editorによって公表の承認をされたドキュメントはインターネット標準のいかなるレベルの候補でもありません。RFC7841のセクション2を見てください。 このドキュメントの現在の状態、正誤表、フィードバックの提供方法については、https://www.rfc-editor.org/info/rfc9402 で入手できます。 Copyright Notice Copyright (c) 2023 IETF Trust and the persons identified as the document authors. 無断転載禁ず このドキュメントはBCP78とこのドキュメントの公表日に実施されているIETFドキュメントに関するIETF信託の法律条項 (https://trustee.ietf.org/license-info) の適用を受けます。 それらにこの文章に関する権利と制限が記述されていますので、慎重にこれらの文章を確認してください。 目次 1. はじめに 1.1. この文章で使われる約束事。 2. 定義 2.1. 用語 2.2. 文法 3. 要素 3.1. 被写体 3.1.1. Cats 3.1.2. 部分的な猫 3.1.3. 他の動物 3.1.4. 毛糸玉 3.2. コンテナ 3.3. 位置 3.3.1. 水平位置 3.3.2. 垂直位置 3.3.3. 複数繰り返される被写体 3.4. 時間経過 3.4.1. 曖昧さ回避 4. 国際化問題 5. セキュリティ問題 6. IANA 問題 7. 参照する参考文献 Appendix A. Examples 著者のアドレス 1. はじめに 猫の写真やビデオは、インターネットで共有されることがよくあります。 これらのファイルの多くは、猫が箱やその他の容器と相互作用している様子を示しています。 現在、そのようなメディアを説明するためのコンパクトな記法がないため、このドキュメントではこれらの画像に描かれている被写体の位置と相互作用を記述するための標準的な記法について詳しく述べます。 このドキュメントで説明されている表記法はテキストベースであり、US-ASCII文字エンコーディングUS-ASCIIに制限されているため、機能が制限された環境で猫関連の使用を転送できます。 1.1. この文章で使われる約束事。 この文章中の「しなければならない(MUST)」、「してはならない(MUST NOT)」、「必須である(REQUIRED)」、「SHALL(するものとする)」、「しないものとする(SHALL NOT)」、「すべきである(SHOULD)」、「すべきではない(SHOULD NOT)」、「推奨される(RECOMMENDED)」、「推奨されない(NOT RECOMMENDED)」、「してもよい(MAY)」および「任意である(OPTIONAL)」のキーワードは、ここで示されるように全て大文字で現れる時のみ BCP 14 [RFC2119] [RFC8174]に記述されているとおりに解釈されます。 2. 定義 2.1. 用語 このドキュメントでは、ここに記載されている記法で示される項目を参照するために、特定の用語を使います。 あいまいさを避けるために、そのような用語は次のように定義されます: 被写体: この文章での"subject"という用語は、注釈が付けられるメディアの焦点であるオブジェクトを示すために使われます。 これは通常、アニメーションオブジェクト、具体的には猫です。 注釈には、様々な方法で相互作用する複数の被写体を含めることができます。 Cat: 猫は、猫由来特別な種類の被写体です。 このドキュメントは、ソースメディアに飼い猫が存在することを前提としています。ただし、他の猫も受け入れられます。 コンテナ: "container"という用語は、内部に1匹以上の被写体を配置できる無生物を示すために使われます。 最も一般的なのは段ボール箱です。ただし、様々なコンテナを使えます。 2.2. 文法 文法はABNF記法をつかって定義されます [RFC5234]。 SEQUENCE = POSITION / POSITION "=>" SEQUENCE POSITION = ADJACENT ADJACENT = OVER / ADJACENT "+" OVER OVER = MULTIPLE / MULTIPLE "/" POSITION MULTIPLE = CONCAT / NUMBER [ "*" ] MULTIPLE / NUMBER "/" MULTIPLE CONCAT = SUBJECT [ NUMBER ] / [ PARTIAL ] CONTAINER [ PARTIAL ] CONTAINER = "[" OPT-POS "]" / "(" OPT-POS ")" CONTAINER =/ "{" OPT-POS "}" / "<" OPT-POS ">" OPT-POS = [ POSITION ] SUBJECT = CAT / 1*ALPHA / "@" CAT = "cat" / PARTIAL PARTIAL = "c" / "a" / "t" / "ca" / "at" ALPHA = %x41-5A / %x61-7A NUMBER = 1*DIGIT DIGIT = "0" / "1" / "2" / "3" / "4" DIGIT =/ "5" / "6" / "7" / "8" / "9" 3. 要素 3.1. 被写体 3.1.1. Cats 猫の標準的な記法は、catという単語です。 3.1.2. 部分的な猫 コンテナ内の猫を部分的に参照する場合、注釈にはコンテナの内側と外側に適切に分割された完全な猫記号が含まれる必要があります。 猫が写真またはビデオのフレームに部分的にしか見えない場合、注釈は猫の見える部分のみを参照しても構いません。 部分的な猫の記法は、次の通りです: c: 猫の頭の印。 a: 猫の体の印。 t: 猫のしっぽの印。 ca: 猫の頭と胴体の印。 at: 猫の胴体としっぽの印。 部分的な猫の注釈は、参照される猫の部分を最もよく説明する上記の用語を使う必要があります。 3.1.3. 他の動物 他の動物または生物は、そのような動物の種を説明する適切な単語で表現する必要があります。 このドキュメントで説明されている猫固有の単語は、ネコ科以外に使ってはなりません。 3.1.4. 毛糸玉 毛糸玉は@で表す必要があります。 3.2. コンテナ 猫またはその他の被写体がコンテナ内にいる場合、コンテナの記法が使われなければなりません。 そのような記法は、その被写体がカッコ内にあることによって示されます。 括弧の種類は、コンテナの形によって次のように異なります: * 角括弧は、四角の開口部を持つ箱またはその他の容器を表します。 * 丸括弧は口元や形状が丸い陽気です。 * 中括弧は、固定された形状がない柔らかい容器を表すために使われなければなりません。 さらに、山括弧はコンテナの外側で被写体をグループ化するために使われる場合があります。 そのような注釈には、部分的な猫を含めてはなりません。 3.3. 位置 Concat表記は、被写体とコンテナの一般的な配置に関する情報のみを提供しますが、水平位置と垂直位置を区別します。 位置オペランドの順序は、ソースメディアで左から右に表示される順序に従う必要があります。 3.3.1. 水平位置 + 演算子は、隣り合った被写体またはコンテナを表すために使われます。 3.3.2. 垂直位置 被写体が別の被写体の上にある場合、演算子 / が使われるべきです。 3.3.3. 複数繰り返される被写体 複数の被写体または構成が繰り返される場合、簡略表記を使えます。 水平方向の配置では、数字の後にオプションの * と繰り返される注釈。 同様に、垂直方向の配置では、繰り返される被写体は、数字の後に / と繰り返される注釈で示されます。 そのような簡略表記を使う場合、繰り返し回数は正の整数でなければなりません。 3.4. 時間経過 ビデオやその他のアニメーションの場合、適切なConcat表記では、状態変更演算子(=>)を使って猫の位置と主要な相互作用の大幅な変更に印をつける必要があります。 3.4.1. 曖昧さ回避 被写体のトークンの後に、特定の猫、毛糸玉、またはその他の被写体を区別するための整数識別子が続く場合があります。 このような数値の曖昧さ回避を含む注釈には、全ての猫と毛糸玉に対するそのような曖昧さの解消が含まれなければなりません。 特定の被写体は静止画像に1回しか表示されないため、曖昧さ回避識別子は状態の変化を表す注釈でのみ使う必要があります。 4. 国際化問題 catという単語は英語であり、US-ASCII文字エンコーディング [RFC0020] のみを使ってConcat表記を転送できるようにするために提供されています。 他の言語のユーザは、アルファベットを拡張し、ローカライズされた単語を猫や他の動物に使えます。 Concat表記の生成と消費に関与するすべての関係者が、注釈の送信前に文字エンコーディングと言語について合意していない限り、猫の非標準語は使うべきではありません。 5. セキュリティ問題 猫は、猫の知覚される体積よりも小さい容器にいることに気付くかもしれません。 これは危険な状況のように見えるかもしれませんが、実際には猫が液体の状態にある時には自然に発生します。 猫は、入っている箱の段ボールをかむ可能性があります。 この攻撃を軽減するために、猫を入れる箱を複数用意することをお勧めします。 6. IANA 問題 このドキュメントはIANAのアクションを要求しません。 7. 参照する参考文献 [RFC0020] Cerf, V., "ASCII format for network interchange", STD 80, RFC 20, DOI 10.17487/RFC0020, October 1969, . [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997, . [RFC5234] Crocker, D., Ed. and P. Overell, "Augmented BNF for Syntax Specifications: ABNF", STD 68, RFC 5234, DOI 10.17487/RFC5234, January 2008, . [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, May 2017, . Appendix A. Examples This appendix provides some examples of the Concat notation. [cat] Figure 1: A Cat in a Box [cat] + cat Figure 2: A Cat in a Box Next to a Cat Not in a Box cat / [cat] Figure 3: A Cat over a Box Containing Another Cat [c]at Figure 4: A Cat with Its Head inside a Box 3 * cat Figure 5: 3 Cats Side by Side 3 / cat Figure 6: 3 Cats on Top of Each Other cat + cat / [cat] Figure 7: A Cat Standing Next to a Box That Has a Cat on Top and inside of It / [cat] Figure 8: Two Cats Standing on a Box with Another Cat inside of It cat1 + [cat2] => cat2 + [cat1] Figure 9: A Cat inside a Box and a Cat outside Swap Places 著者のアドレス Mattia Basaglia Email: glax@dragon.best URI: https://dragon.best/ Joep Bernards Email: joep@duali.xyz Joost Maas Email: J.f.w.maas@tue.nl