@@ [[charsetパラメータ]]の項と統合して書きなおす * ほわっといず charset? char は[[文字]] character の略として業界(どこ)では頻用される語句です。 set はその通りセットですが、数学の set と同じ(ような)意味で、 正統的(謎)には[[集合]]と訳します。 ですから、そのまま解釈すると文字集合ということになります。 しかし、この辺の用語の混乱は激しくて、大抵は単なる文字の集合 のことだけではなくて、その文字の集合に数字を割り振ったものとか、 その数字と計算機上の表現の対応の定義とか、そういう (文字を計算機で扱うのに必要な) 余計な色々までひっくるめて、 charset と呼びます。 * MIME charset [[MIME]] が定義する charset が、一番有名でしょう。 RFC 2045 〜 2049 には charset という語の定義は出てきませんが、 "charset" parameter は文字集合 character set を示すパラメーター らしいので、 character set = charset と考えて良いと思われます、 ** 文字集合 Character Set (RFC 2045 2.2) [PRE[ The term "character set" is used in MIME to refer to a method of converting a sequence of octets into a sequence of characters. Note that unconditional and unambiguous conversion in the other direction is not required, in that not all characters may be representable by a given character set and a character set may provide more than one sequence of octets to represent a particular sequence of characters. ]PRE] 用語「character set」 「文字集合」 は MIME ではオクテット列を 文字列に変換する方法を表します。なお、逆方向への無条件かつ曖昧でない 変換は必須ではありません。全ての文字が当該文字集合で表現可能でない かもしれませんし、その文字集合で特定の文字列を表現するのに 複数のオクテット列が使えても構いません。 [PRE[ This definition is intended to allow various kinds of character encodings, from simple single-table mappings such as US-ASCII to complex table switching methods such as those that use ISO 2022's techniques, to be used as character sets. However, the definition associated with a MIME character set name must fully specify the mapping to be performed. In particular, use of external profiling information to determine the exact mapping is not permitted. ]PRE] この定義は、 US-ASCII のように簡単な単一表対応付けから ISO 2022 技術を使うものまで、様々な種類の文字符号化を文字集合として 使うことを認めるものです。しかし、 MIME 文字集合名に関連付けられる定義は 使われる対応付けを完全に規定するものでなければなりません。 特に、正確な対応付けに外部プロファイル情報を使うのは認められません。 [PRE[ NOTE: The term "character set" was originally to describe such straightforward schemes as US-ASCII and ISO-8859-1 which have a simple one-to-one mapping from single octets to single characters. Multi-octet coded character sets and switching techniques make the situation more complex. For example, some communities use the term "character encoding" for what MIME calls a "character set", while using the phrase "coded character set" to denote an abstract mapping from integers (not octets) to characters. ]PRE] 参考: 用語「character set」「文字集合」は元々は US-ASCII や ISO-8859-1 のように単一オクテットと単一文字の一対一の単純な対応付けを持つ 分かりやすい方式を指していました。多オクテット符号化文字集合や 切り替え技術のおかげで状況が複雑になりました。例えば、 用語「文字符号化 character encoding」を MIME で言うところの 「文字集合 character set」に使い、語句「符号化文字集合 coded character set」 で整数 (オクテットで無しに) から文字への抽象的な対応付けを示す 世間もあります。 (訳注: [[CES]]/[[CCS]] 論のことらしい。 Ned じーさんは、 CCS/CES 論は charset の1種ではあるが charset はそれに限定されない とおっしゃってます。) [66] [CITE[Re: Media types for RDF languages N3 and Turtle]] ([[Sean B. Palmer]] 著, [CODE[2007-12-17 15:51:29 +09:00]] 版) ([[名無しさん]]) [[#comment]] * XML encoding →[[.//XML]] * 文字集合 charset は省略形のように見えます。元々はそうなのでしょうが、 今となっては charset は charset であって charset でしかない、 と考えるのが適当かもしれません。訳にあたっても、 訳して原文のニュアンスが失われるとアレなので (ニュアンスなんて そもそも残らないかもしれませんけど。) そのまま charset とするのが良いのではないでしょうか。 正規形のように見える character set は、[[文字集合]]と訳すのが 定着してます。こちらの語は、 (やはり charset と同様の混乱はあるものの) より本来の意味 (文字の集合) で使われていると思われます。 - [1] なんにせよ、[[文字コード]]のところに挙げられている charset の類義語は、その''文脈ごとに意味が異なる''くらいに思っていないと要らぬ勘違いをしてしまいます。 - [2] [[MIME]] charset の最小化規則と、 [[HTTP]] [[CGI]] のような動的生成って本質的に相容れないもののような気がしませんかね。あるいは streaming 的なものとも。 [[chunked符号化]]の尾っぽ header を使えば何とかならなくもない気もするけど, クライアント側で届いたところからレンダリングが不能になって結局意味がない (サーバー側でデータ生成完了後に charset を判定して一気に送りつけるのと変わらない) し、よって steraming には使いようがないし。 - [3] >>2 の解法は最小化規則をあきらめちゃうしかないのかな。 CGI 動的生成はまだ最大の範囲を知ってそうなものだけど、 streaming だと知らないこともあり得る (多言語会談とか?) から、考えうる最大の charset ([[UTF-8]] とか?) を予め仮定しておくしかなさそう。 - [4] >>3 の考え方はつまり charset 指定の最大化であって、 MIME の考えとは全く逆になってしまう。 - [5] >>4 そもそも MIME の最小化規則は相互通信性最大化を目的としている。 [[SMTP]]/[[822]] では基本的にやり直しが効かないから、一度で相手に伝える必要がある (概念上は)。一方 HTTP とかだと[[内容折衝]]もあるし、 (歴史的経緯のせいで) ブラウザの利用者の操作で文字コード選択が出来るから (メイラにもあるけど、 MIME の思想的には考慮外だと思う。) 一度で伝える必要性ってのはあんまりないのかもしれない。こういう考え方の違いがにじみ出てる気がする。 - [6] ところで MIME 厨うざい。 MIME (IANA) charset 名だけが[[文字コード]]の名前ではないわけで。色んな[[文字コード]]名がこれ以上乱立するのは鬱だから IANA 名を使おうとするのは別に構わないんだが。 - [7] >>6 構わないんだが、だからといって IANA 名と違うから間違ってる!直せ!ってのはもうアホかと。 - [8] >>6-7 既に乱立してる名前はもうなくせないから、せめて新しい名前を作らない努力はするべきですね。それと IANA 名の強制は話が別。大体、 IANA registry はぐちゃぐちゃだし登録されてない文字コードも多いし、互換性とかと関係ない場面で採用するのがいいとは思えない。 - [9] >>8 とはいうものの IANA 名以外にまともな registry はないよな。やっぱり現実には何でもあり, IANA 名推奨。に落ち着くのかなあ。 - [10] >>6-9 なんだが、 IANA 名が正式な名前であってその他の名前を標準名にするなとかうるさい厨がいるんだよな〜。 MIME に於いては IANA 名のうち MIME preferred name が推奨されるとか、常識的に考えて Alias 名より Name の欄にある名前が「正式」なんだろうとか、 IETF/IANA の世界では IANA 名が「正式」なんだろうとか思われるけど、一端そういう世界を出てしまったら、「正式」もなにもないと思うんだけどな〜 - [11] >>10 つまり、ここに挙がっていることやその他の, 名前選択の長短についての検討を含めて、こういう名前採用すべし、っていう意見ならどんどん勝手に言えばいいんだけど、これが IANA で決まってるから正式なんだ、と非 IETF 世界で, それ以上の根拠を述べずに主張しても、うざいだけ。 - [12] 最近妙に普及している [CODE(MIME)[charset]] 名に [CODE(charset)[[[none]]]] があります。 [[Apache]] の設定ファイルで [CODE[[[AddDefaultCharset]]]] [[指令]]を使って [CODE[AddDefaultCharset none]] と書くべきであるという不思議な知識が蔓延しているからです。 [WEAK[(たぶん [CODE[AddDefaultCharset off]] と書きたかったのでしょう。もっとも、 Apache 付属の説明文すら読めない人が [CODE[AddDefaultCharset off]] を正しく使えるとは思えませんが。 [CODE[AddDefaultCharset]] 指令は初心者が使う機能ではありませんよ。)]] - [13] 一応補足しますが、 >>12 は [[HTTP]] の [CODE(MIME)[[[Content-Type]]]] 欄での[[媒体型]]指定において使います。 * [CODE(MIME)@en[charset]] 引数 (インターネット媒体型) [14] - [[MIME]] の [CODE(MIME)@en[charset]] 引数と互換な定義 -- [CODE(MIME)@en[[[text/plain]]]] ([[平文]]) --- [DEL[[[RFC 1341]]]], [DEL[[[RFC 1521]]]], [[RFC 2046]] -- [CODE(MIME)@en[[[text/html]]]] ([[HTML]]) -- [CODE(MIME)@en[[[text/csv]]]] ([[CSV]]) --- [[RFC 4180]] --- [Q[[CODE(MIME)@en[[[text/[VAR[*]]]]]] で使えるものは使える]]という定義。 --- 省略可能。 -- [CODE(MIME)@en[[[application/sgml-open-catalog]]]] ([[SGML型録]]) -- [CODE(MIME)@en[[[text/troff]]]] --- [[RFC 4263]] --- [[RFC 2046]] を参照。 --- 省略可能。 - [[MIME]] の [CODE(MIME)@en[charset]] 引数の部分集合な定義 -- [CODE(MIME)@en[[[application/shf+xml]]]] ([[SHF]]) --- [[RFC 4194]] --- 値は [CODE(MIME)@en[[[UTF-8]]]] のみ。 --- 必須。 -- [72] [CODE(MIME)@en[[[text/n3]]]], [CODE(MIME)@en[[[text/rdf+n3]]]], [CODE(MIME)@en[[[application/n3]]]] --- [CITE@en[Notation3 (N3): A readable RDF syntax]] ([TIME[2008-01-16 03:12:43 +09:00]] 版) --- 値は [CODE(MIME)@en[[[utf-8]]]] のみ。 --- [[ASCII]] の場合のみ、省略可能。 --[73] [CODE(MIME)@en[[[text/turtle]]]], [CODE(MIME)@en[[[application/x-turtle]]]] --- [CITE@en[Turtle - Terse RDF Triple Language]] ([TIME[2008-01-16 02:03:24 +09:00]] 版) --- [CITE@en[Turtle - Terse RDF Triple Language]] ([TIME[2008-01-16 02:03:24 +09:00]] 版) --- 値は [CODE(MIME)@en[[[UTF-8]]]] のみ。 --- [CODE(MIME)@en[[[text/[VAR[*]]]]]] で [CODE(MIME)@en[[[charset]]]] [[引数]]なしで [[UTF-8]] が使えるようになるまでは、 [CODE(MIME)@en[[[charset]]]] [[引数]]を明示することを推奨。 --- [[ASCII]] の場合のみ、省略可能。 - [[RFC 3023]] [CODE(MIME)@en[[[application/xml]]]] と同じ定義 -- [15] [CODE(MIME)@en[[[application/cdl+xml]]]] --- [CITE@en[Web Services Choreography Description Language Version 1.0]] --- 省略可能。 -- [16] [CODE(MIME)[[[application/ccxml+xml]]]] --- [[RFC 4267]] --- 省略可能。 -- [17] [CODE(MIME)@en[[[application/voicexml+xml]]]] --- [[RFC 4267]] --- 省略可能。 -- [18] [CODE(MIME)@en[[[application/srgs+xml]]]] --- [[RFC 4267]] --- 省略可能。 -- [19] [CODE(MIME)@en[[[application/ssml+xml]]]] --- [[RFC 4267]] --- [[RFC 4267]] --- 省略可能。 -- [20] [CODE(MIME)@en[[[application/pls+xml]]]] --- [[RFC 4267]] --- 省略可能。 -- [20] [CODE(MIME)@en[[[application/atom+xml]]]] --- [[RFC 4287]] --- 省略可能。 -- [823] [CODE(MIME)@en[[[application/atomcat+xml]]]] --- [[RFC 5023]] --- 省略可能。 -- [824] [CODE(MIME)@en[[[application/atomsvc+xml]]]] --- [[RFC 5023]] --- 省略可能。 -- [21] [CODE(MIME)@en[[[application/sparql-result+xml]]]] --- [CITE@en[SPARQL Query Results XML Format]] --- 省略可能。 -- [22] [CODE(MIME)@en[[[application/xv+xml]]]] --- [[RFC 4374]] --- 省略可能。 -- [23] [CODE(MIME)@en[[[application/smil+xml]]]], [CODE(MIME)@en[[[application/smil]]]] --- [[RFC 4536]] --- 省略可能。 -- [26] [CODE(MIME)@en[[[application/simple-filter+xml]]]] --- [[RFC 4661]] --- 省略可能。 -- [29] [CODE(MIME)@en[[[application/vnd.sun.wadl+xml]]]] --- 省略可能。 -- [31] [CODE(MIME)@en[[[application/mediaservercontrol+xml]]]] --- [[RFC 4722]] --- 省略可能 -- [33] [CODE(MIME)@en[[[application/docbook+xml]]]] --- [[DocBook]] 仕様書 --- 省略可能 -- [35] [CODE(MIME)@en[[[application/xslt+xml]]]] --- [CITE@EN[XSL Transformations (XSLT) Version 2.0]] --- 省略可能 -- [36] [CODE(MIME)@en[[[application/xquery+xml]]]] --- [CITE@en[XML Syntax for XQuery 1.0 (XQueryX)]] --- 省略可能 -- [37] [CODE(MIME)@en[[[application/cpl+xml]]]] --- [[RFC 3880]] --- 省略可能 -- [44] [CODE(MIME)@en[[[application/resource-lists+xml]]]] --- [[RFC 4826]] --- 省略可能 -- [45] [CODE(MIME)@en[[[appliaction/rls-services+xml]]]] --- [[RFC 4826]] --- 省略可能 -- [46] [CODE(MIME)@en[[[application/wsdl+xml]]]] --- [CITE@en[Web Services Description Language (WSDL) Version 2.0 Part 1: Core Language]] --- 省略可能 -- [50] [CODE(MIME)@en[[[application/wspolicy+xml]]]] --- [CITE@en-US[Web Services Policy 1.5 - Framework]] --- 省略可能 -- [67] [CODE(MIME)@en[[[application/sparql-result+xml]]]] --- [CITE@en[SPARQL Query Results XML Format]] --- 省略可能 -- [70] [CODE(MIME)@en[[[application/patch-ops-error+xml]]]] -- [[RFC 5261]] ([[IETF]] [[提案標準]]) -- 省略可能 - [27] [[RFC 3023]] [CODE(MIME)@en[[[application/xml]]]] の [CODE(MIME)@en[[[charset]]]] [[引数]]の[[部分集合]]な定義 -- [28] [CODE(MIME)@en[[[application/cellml+xml]]]] ([[CellML]]) --- [[RFC 4642]] ([[IETF]] [[情報提供]] [[RFC]]) --- 省略可能。 --- [CODE(charset)@en[[[UTF-8]]]] だけが[[妥当]]な値 --- [[利用者エージェント]]は他の値に対応[['''して構いません''']] - [40] [[RFC 3023]] の [CODE(MIME)@en[[[text/xml]]]] の [CODE(MIME)@en[[[charset]]]] と同じ定義 -- [41] [CODE(MIME)@en[[[text/cmml]]]] --- [CITE@en[The Continuous Media Markup Language (CMML), Version 2.1]] ([CODE[2006-05-06 10:39:46 +09:00]] 版) ([[満期]] ([DEL@en[[[IETF]] [[I-D]]]])) - [24] [CODE(MIME)@en[[[text/javascript]]]], [CODE(MIME)@en[[[text/ecmascript]]]], [CODE(MIME)@en[[[application/javascript]]]], [CODE(MIME)@en[[[application/ecmascript]]]] -- [[RFC 4329]] -- 省略可能。 - [32] [CODE(MIME)@en[[[application/beep]]]] ([[BEEP]]) -- [[RFC 3080]] ([[IETF]] [[提案標準]]) -- [[既定値]]が [CODE(charset)@en[[[UTF-8]]]] であることと、 [[UTF-8]] 以外を用いる時は [CODE(MIME)@en[[[charset]]]] [[引数]]が必要なことだけ規定されています。 [25] [CITE[Charset parameter of +xml media types from Bjoern Hoehrmann on 2006-09-05 (www-archive@w3.org from September 2006)]] ([[名無しさん]] [WEAK[2006-09-07 23:19:07 +00:00]]) [30] [CITE[I'm not a Klingon : Expected names of Microsoft Windows "ANSI" Code Pages (Encodings)]] ([[名無しさん]] [sage]) [34] [CITE@en[Re: Unicode distribution? from Erik van der Poel on 2007-01-05 (www-international@w3.org from January to March 2007)]] ([[Erik van der Poel (erikv@google.com)]] 著, [CODE[2007-01-07 23:27:03 +09:00]] 版) ([[名無しさん]] [WEAK[2007-01-12 21:09:39 +00:00]]) [43] [CITE[ハーブティー、アロマオイル、アロマランプを種類豊富に販売ユーン 卸販売]] ([CODE[2007-06-11 01:15:22 +09:00]] 版) この[[鯖]]は全部設定がおかしいみたい。 [CODE(MIME)@en[[[charset]]=0]] になってる。 ([[名無しさん]] [WEAK[2007-06-10 16:18:27 +00:00]]) [48] [CITE[openssl-engine-0.9.6a/test/CAss.cnf - Google Code Search]] ([CODE[2007-09-19 10:28:09 +09:00]] 版) [PRE(HTTP bad example code)[ Content-Type: text/html; charset=UTF-8; charset=UTF-8 ]PRE] ([[名無しさん]]) [49] >>48 [CODE(HTTP)@en[[[User-Agent]]:]] か何かによっては後者が [CODE(charset)@en[[[ISO-8859-1]]]] になることもある模様。 ([[名無しさん]] [WEAK[2007-09-19 01:33:01 +00:00]]) [[#comment]] * メモ [38] [CITE@en-us[TMX Specification]] ([CODE[2007-02-24 17:51:20 +09:00]] 版) ([[名無しさん]] [sage]) [39] [CITE@en-us[TMX Specification]] ([CODE[2007-02-24 17:51:20 +09:00]] 版) ([[名無しさん]] [sage]) [42] [CITE[Kazuho@Cybozu Labs: Re: PoCo::Client::HTTP が勝手に文字コードを変えてしまう件]] ([CODE[2007-04-24 06:52:47 +09:00]] 版) charset=iso-8859-1 default Breaks the Web. ([[名無しさん]] [WEAK[2007-04-23 21:54:55 +00:00]]) [47] [CITE[hoshikuzu | star_dust の書斎]] ([CODE[2007-08-10 22:40:44 +09:00]] 版) ([[名無しさん]]) [51] [CITE[feel部屋:皆様に幸と笑いあれ♪ - 轟轟戦隊]] ([CODE[2007-09-24 14:10:56 +09:00]] 版) > [PRE(HTML example code)[ ]PRE] [[リンク先]]の [[CSS]] [[スタイル・シート]]は、 [CODE(CSS)@en[@[[charset]]]] の指定はあるものの [[HTTP]] [CODE(HTTP)@en[[[Content-Type]]:]] [CODE(MIME)@en[[[charset]]]] は指定なし。 ([[名無しさん]]) [52] [CITE[メモ - 葉っぱ日記]] ([CODE[2007-11-28 12:10:50 +09:00]] 版) ([[名無しさん]]) [53] [CODE(CSS)@en[@[[charset]]]] [[規則]]を書ける場所にはいくつかの制約があります。 また、[[利用者エージェント]]は[[スタイル・シート]]の先頭以外にある [CODE(CSS)@en[@[[charset]]]] [[規則]]を[[無視]]しなければならないことになっています。 ですが、 [[Firefox]] 2 も [[Opera]] 9 も、 少なくても [[CSSOM]] に [CODE(CSS)@en[@[[charset]]]] に対応する [CODE(DOMi)@en[[[CSSRule]]]] を追加するかに関しては、 ほとんどの制約をチェックしていないようです。 ;; ほとんどの制約は [[charset]] の自動検出を容易にするためのもので、 [[CSSOM]] の構築にはそもそも関係ないからでしょう。 ;; [[WinIE 6]] はまったく [CODE(CSS)@en[@[[charset]]]] を [[CSSOM]] に反映させません。 [CODE(DOMa)@en[[[cssText]]]] にも出てきません。 [54] - 適切な例 - Preferred MIME name でない例 - IANA 名でない例 - 構文的にも IANA 名でない例 - [CODE(char)[[[U+0020]]]] が2つ - [CODE(char)[[[U+0020]]]] の代わりに[[改行]] - [CODE(CSS)[[[;]]]] の前に [CODE(char)[[[U+0020]]]] - [CODE(CSS)[[[;]]]] の前に[[注釈]] - [CODE(CSS)[[["]]]] の代わりに [CODE(CSS)[[[']]]] - [[charset]] 名に [[escape]] - [CODE(CSS)@en[@[[charset]]]] の部分に [[escape]] - [CODE(CSS)@en[@[[charset]]]] が[[大文字]] - [CODE(CSS)@en[@[[charset]]]] の前に[[空白]] - [CODE(CSS)@en[@[[charset]]]] の前に[[改行]] - [CODE(CSS)@en[@[[charset]]]] の前に[[注釈]] [55] - [CODE(CSS)@en[@[[charset]]]] の前に [CODE(CSS)[[[CDO]]]] - [CODE(CSS)@en[@[[charset]]]] の後に [CODE(CSS)[[[CDC]]]] ([[名無しさん]]) [56] [CODE(CSS)@en[[[;]]]] がない: は [[Firefox]] 2 でも [[Opera]] でも無視して空の[[スタイル・シート]]と同じに扱うようです。 ([[名無しさん]]) [57] [CODE(char)[[[U+0020]]]] なし: でも [[Firefox]] 2、[[Opera]] 9 とも [[CSSOM]] に現れます。 ([[名無しさん]]) [58] [CODE(CSS)@en[@[[charset]]]] の前に未知の [[@規則]] - - [[Firefox]] 2、[[Opera]] 9 とも [[CSSOM]] 上に [CODE(CSS)@en[@[[charset]]]] が ([[Opera]] 9 では [CODE(CSS)@en[@a]] も) 現れます。 ([[名無しさん]]) [59] 以下のように [CODE(CSS)@en[@[[charset]]]] を[[無視]]するべき場合に、 [[Firefox]] 2 は [[CSSOM]] 上に [CODE(DOMi)@en[[[CSSCharsetRule]]]] を追加しませんが、 [[Opera]] 9 はします: - [CODE(CSS)@en[@[[media]]]] がある - [CODE(CSS)@en[@[[charset]]]] がある - [CODE(CSS)@en[@[[namespace]]]] がある - [CODE(CSS)@en[@[[import]]]] がある - [[規則集合]]がある ([[名無しさん]]) [60] - ([[CSSOM]] 的に) [[Firefox]] は全部無視、 [[Opera]] 9 は1つ目だけ無視。 ([[名無しさん]]) [61] ([[CSSOM]] 的に) [[Firefox]] 2 も [[Opera]] 9 も全部無視。 ([[名無しさん]]) [62] ([[CSSOM]] 的に) [[Firefox]] 2 も [[Opera]] 9 も、1つ目''だけ''無視。 ([[名無しさん]]) [63] [[charset]] 名の閉じ[[引用符]]がない: - - [[Firefox]] 2、[[Opera]] 9 のどちらも、全部無視。 ([[名無しさん]]) [64] >>54 [CODE(CSS)@en[@[[charset]]]] の部分に [[escape]] は、 [[Opera]] 9 では [CODE(DOM©)@en[[[UNKNOWN_RULE]]]] 扱いでした。 ;; そもそも [[Opera]] 9 は [CODE(CSS)@en[[[ATKEYWORD]]]] 中の [[escape]] に ([CODE(CSS)[[[\0]]]] も含めて) 対応していませんでした。 ([[名無しさん]]) [65] >>59 壊れた [CODE(CSS)@en[@[[namespace]]]] が前にある ([[名無しさん]]) [68] [CITE@en[Re: Unsupported transport-layer encodings]] ([[Alexey Proskuryakov]] 著, [CODE[2008-07-22 20:55:40 +09:00]] 版) ([[名無しさん]]) [69] [CITE@en[Charset usage data]] ([[Philip Taylor]] 著, [CODE[2008-03-06 02:52:53 +09:00]] 版) ([[名無しさん]]) [71] [CITE[HTML5のFPWDとmeta要素のcharset属性 - vantguarde - web:g]] ([TIME[2008-10-07 14:36:29 +09:00]] 版) [74] [CITE[TAG Finding: Internet Media Type registration, consistency of use]] ([TIME[2002-12-17 22:06:12 +09:00]] 版) [825] [CITE@en[MAMA: Document Encodings - Opera Developer Community]] ([TIME[2008-11-25 20:20:22 +09:00]] 版)