幾つかの萌え系領域の定義

幾つかの萌え系領域の定義

(の原案)

はじめに

この文書は、 X-Moe: [XMOE] 系頭領域(謎)の新しい頭領域を定義します。

これらの頭領域は、 RFC 2822 電子メイル・メッセージ [RFC2822], usefor-article 電子ニュース記事 [USEFOR] で使うことが出来ます。 HTTP メッセージ [HTTP] での利用については、 この文書では規定しませんが、この文書の将来の版で規定するかもしれません。

定義

領域の書式の定義には、 ABNF [RFC2234] を使います。

TBD

各種プロトコル間での相互運用性のため、 [MIME] で定義された token, attribute-char ではなく、 [HTTP] で定義された token を使います。 しかし、 http-token で使える文字のみから成っていても、 ALPHA / DIGIT / "-" / "_" 以外の文字を含む文字列は、安全のため、 (可能なら) quoted-string とすることを推奨します。

quoted-string 内で文字 ESC (%x1B) を文字集合の指示に使う時は、 G0 以外に指示してはいけません。また、 ISO 2022 [ISO2022] と UTF-8 [UTF8] 以外の符号化機構を使ってはいけません。 GL には常に G0 が呼び出されており、これ以外を呼び出してはいけません。 quoted-string の最初と終わりでは必ず ISO 2022 で ASCII [ASCII] が指示された状態でなければなりません。 8ビットのオクテット (%x80-FF) は常に u8text と見なされ、 これ以外で使ってはいけません

パラメーター

パラメーターは、追加の属性を指定するのに使い、次の様に表します。

 parameter-name="parameter-value"

パラメーターの値が長い場合などには、 RFC 2231 [RFC2231] で説明されている 拡張を使えます。

  1. parameter = <[RFC2231] で拡張された [MIME] の parameter, 但し token の代わりに http-token を, attribute-char の代わりに http-attribute-char を使用。 comment や linear-white-space は使ってはいけない> ;; 実際の定義は moe-parameter 参照

パラメーター値に http-attribute-char 以外の文字を使う場合は、 quoted-string を使わなければなりません

パラメーター名では大文字・小文字を区別しませんが、小文字を推奨します。 パラメーター値では一般に、大文字・小文字を区別します。

実際のパラメーター名と値の組合せは、次の通りです。 "x-" で始まるパラメーター名は、利用者による拡張パラメーターの名前に 使っても構いません。この文書の将来の版で "x-" で始まる パラメーターを定義することはありません。 "x-" で始まらず、この文書で定義されていないパラメーターは 使ってはいけません

  • moe-parameter = moe-member-of-parameter / moe-age-parameter / moe-version-parameter / moe-x-parameter
  • moe-member-of-parameter = "of=" moe-member-of
  • moe-age-parameter = "age=" moe-age
  • moe-version-parameter = "version=" moe-version
  • moe-x-parameter = "x-" http-token "=" moe-value

人物

一般に人物は、実在の人物でも架空の人物でも構いません。 また、動物界脊椎動物門哺乳綱霊長目人科人に属する生物であることが 強く推奨されますが、これ以外の生物や無生物の指定を禁止するものではありません。

参考: 地球外生命体や人と地球外生命体との混血生物のように、 現時点で生物学的地位が不明確である生命体を記述することにも、 勿論問題はありません。

  • moe-person = moe-name *(";" FWS parameter)

人物の名前と素性

人物の同定には名前を使用します。名前はその人物の本名でも通称でも 構いません。人名への接頭辞・接尾辞など (例: さん, ちゃん, Mr.) を含んでも構いません

  • moe-name = moe-word / moe-slash-value

名前だけでは同定が困難であるか、混乱を招く虞がある場合 (同姓同名の人物が多く存在する場合など)、 あるいは特に明示したい場合は、 その人物の素性を表す追加情報を指定出来ます。

  • moe-member-of = moe-value ;; 所属
  • moe-age = 1*DIGIT / <"> 1*DIGIT <"> ;; 年齢
  • moe-version = moe-value ;; 版

所属は、その人物の所属する組織, 登場する作品名, その他これらに類するもの を書きます。年齢は、その人物が生を受けた日を0歳の誕生日とした時の 経過年数です。版は、その人物が変身したりする時に、特定の版を指定したり、 その人物が登場する作品に複数の版がある場合に、特定の版を指定するのに使います。

参考: 人物によっては、ある年齢で成長が止まり、その後何年経っても 年齢が増加しないことがあります。 (サザエさん方式などと呼ばれます。) そうでなくても、人物が架空のものである場合に、その登場作品などの 時間経過は現実世界のものと異なることは普通にあります。 また、年齢指定はただ単に年齢を参考として述べるだけではなく、 その年齢に限定するという積極的な意味を持つこともあります。 ですから、メッセージの時刻と読者の環境の時刻を元に、 UA が勝手に年齢を調整してはいけません

所属/名前 表記

所属をパラメーターとして指定する代わりに、名前と "/" で区切って 併記しても構いません

  • moe-slash-value = moe-slash-member-of "/" moe-name / obs-moe-slash-value
  • moe-slash-member-of = moe-word

moe-slash-value を使う時は、 "of" パラメーターを使っては いけません

領域定義

表の見方は、 [RFC2822] の 3.6節と同じです。

 Field           Min number      Max number      Notes
 X-Boss          0               1               
 X-DearFriend    0               1
 X-Friend        0               1

X-Boss: 領域

X-Boss: 領域には、愛すべき上司、または上司であって欲しい人の名前を列挙します。 ダメダメな上司を書いたり嫌いな上司を呪ったり セクハラを受けた上司を告発したりするのに 使用するべきではありません

複数の上司を、読点で区切って指定出来ます。この時の順序の意味はこの文書では 定義しませんが、偉い上司程最初にする (つまり、自分の直属の (またはそれに近い) 上司が一番最後に来る) ようにすることを推奨します。

  • X-Boss = "X-Boss:" FWS moe-person *("," FWS moe-person)

X-Friend: 領域, X-DearFriend: 領域

これらの領域には、友達、または友達でありたい人の名前を列挙します。 友達でも特に親しい間柄 (でありたい人) の場合は、 X-DearFriend: 領域を使います。

  • X-Friend = "X-Friend:" FWS moe-person *("," FWS moe-person)
  • X-DearFriend = "X-DearFriend:" FWS moe-person *("," FWS moe-person)

警告: X-Friend: 領域と X-DearFriend: 領域のどちらに分類するかにより、 挙げられた人 (やその他の人々) によるメッセージ著者の評価が変化する可能性 があります。使い分けには十分注意して下さい。

複数の友人を指定する時は読点で区切ります。この時の順序に意味はありません。 しかしメッセージ著者は、気まずい関係にある友人同士を離して間に 別の友人を挟んだりしたいかもしれません:-)から、 UA は勝手に 順序を入れ替えるべきではありません

非推奨構文

encoded-word [MIME] の使用は、8ビット透過でない伝送路 [SMTP] に UTF-8 [UTF8] を通す時に限るべきです [USEFOR]。 UA は、 encoded-word を解読できなくても 構いませんが、 encoded-word があっても正しく構文解析出来なければ なりません

参考: この文書が定義する頭領域に対応していない実装がこれらの頭領域を 解読しようとした時、 [MIME] によれば encoded-word は周りの文字、 この場合 "/" や ";" と FWS で区切る必要があります。しかしこの文書の定義する 頭領域に対応した UA は、 FWS があっても無くても、構文に合致する限り 正しく理解出来なければなりません。 (勿論、 encoded-word 同士の間の FWS は常になければなりません。 FWS がなければそれは encoded-word ではありません。)

なお、パラメーター値では encoded-word を使ってはいけません

  1. X-DearFriend: "痕"/"柏木梓"; age=17
  2. X-Friend: To Heart/"神岸あかり"; x-comment="浩之ちゃんの以下略"
  3. X-Boss: "す☆む"; version="人工無能"
  4. X-Friend: "倉田紗南", "加村直澄", KURATA Sam, "羽山秋人", "まろちゃん"
  5. X-Friend: Linux Penguin

参考文献

See also