ファイルのキャプションは構造化データの機能のひとつです。多言語による、ファイルについての短い説明文を格納します。詳細はMediaWikiのヘルプページをご覧ください。2019年1月にウィキメディア・コモンズに導入されました。
良いキャプションの条件とは
ファイルキャプションについてのガイドラインは作成中です。
技術上の制約により、キャプションは短くする必要があります (半角で255文字以内、ウィキ構文は無効)。
よくある質問
解説欄との違いは?
- キャプションは簡潔で短いものです。解説文は長い文章が可能ですが、キャプションの長さは255文字に制限されており、マークアップ(ウィキ構文やHTMLなど)と外部リンクは使用できません。
- キャプションは構造化データとして利用できますが、解説文は利用できません。技術的には、解説文は言語テンプレートにラップされたプレーンなウィキテキストで、さらに情報テンプレートにラップされています。一方、キャプションはウィキベースの「ラベル」です。これはAPIを介して検索可能であり、メタデータとしてファイルから簡単に検索/抽出/取得できます。
多くの場合、キャプションの文章は解説文(またはファイル名)と類似するか同一の文章になるでしょう。たとえば、File:Fire station Hallstatt - October 2017 - 02.jpgの英語のキャプションは「Hallstatt fire station in October 2017」となります。
Pluto-01 Stern 03 Pluto Color TXT.jpgには長い解説文(858文字とリンク)が記述されています。一方、キャプションはずっと短いものになっています(その画像を使用しているウィキペディアでのキャプションとほぼ同じ)。
人 (あるいはボット) が解説欄からコピペすれば済む話では?
まず第一に、キャプションは解説よりも大抵短い文章になります。そして、リンクやウィキ構文によるマークアップができません。
解説欄から短くまとめて転記することはできますが、人間の解釈が必要です。
キャプションはCC0(パブリックドメイン)の下で公開されるため、著作権で保護されないほど短い文章のみを転記する必要があります。
キャプションの利点は?
主な利点として、多言語対応の検索機能の向上があげられます。従来の解説の文章はウィキテキストであり、全文検索でのみ検索可能です。全文検索ではカテゴリとライセンステンプレートを含むページ全体を検索する必要があります。そして言語ごとに検索することはできません。キャプションはAPIを介して検索可能であるため、サードパーティの利用者にとって、メディアを探すのが容易になります。
他の考えられる使用法は次のとおり。
- 情報ボックスへの入力
- ある言語で欠落しているキャプションを抽出
- プロジェクトまたはキャンペーン用に、キャプションを必要とする重要なファイルの翻訳用リストの作成
保存先は?
キャプションは、ウィキベースの一部として(つまりウィキテキストとしてではなく)、ウィキメディア・コモンズ内に保存されます。ウィキデータには保存されません。ウィキベースはウィキデータで使われていますが、コモンズでも展開されています。
キャプションから検索する方法は?
通常の検索と同じ感覚で、キャプションの文字列を使ってファイルを検索できます。例えばエッフェル塔の画像をアップロードするとき多言語キャプションに「エッフェル塔」のほか「Tour Eiffel」 (フランス語) 「Eiffel Tower」 (英語) と記入すると、検索する人は「Eiffel Tower」「Tour Eiffel」「エッフェル塔」 のどれを入力しても、その画像がヒットします。
なぜか複数の言語 X、Y、Zで表示されますが?
登録利用者には各人の利用者ページに表示したバベルのリストにある言語で表示されます。
キャプションの見た目を変えたいのですが?
個人設定で以下のガジェットを有効にします。(→ガジェット→「インターフェース: ファイルとカテゴリ」欄)
- キャプション欄を通常は閉じ、リンクボタンで開くようにする→「キャプションを折りたたむ」(メインのスクリプトコード、その他のスタイルコード)
- インターフェースを小さめに表示→「キャプションを縮小」(コード)
- キャプションそのものを非表示→「キャプションを非表示」(コード)
「キャプションを折りたたむ」と「キャプションを縮小」は組み合わせて使うこともできます。
下記の#スタイル節もご覧ください。
技術面
API を使ってキャプションを探せますか?
API のサポートはまだ限定的ですが、近々改善の見込みです。
wbgetentitiesモジュールを使用して、エンティティIDを指定し、キャプションを取得できます。各ファイルにはウィキベースエンティティID Mxxxxがあります。xxxxはpage_idです。たとえば、File:Pluto-01 Stern 03 Pluto Color TXT.jpgのページIDは41837276で、エンティティIDはM41837276です。wbgetentities&ids=M41837276で取得できます。Midを取得する簡単な方法は、API action=query&prop=info&titles=File:Pluto-01_Stern_03_Pluto_Color_TXT.jpgを使用することです(ページIDはpageid欄から提供されます)。
Lua かテンプレートを使ってキャプションを探すには?
Lua 経由でアクセスするには、Module:Informationにある「_SDC_Description」関数を利用できます。この関数には{{File caption}}テンプレートを介したテンプレートインターフェースがあります。
アップロードと同時にキャプションを設定するには?
アップロードウィザードを使用すると、アップロード時にキャプションも入力できます。アップロードキャンペーンなどで、リンク経由でアップロードウィザードを呼び出すときには、URLパラメータ「caption」と「captionlang」を使い、キャプションを事前に入力できます。
他のアップロード方法については、将来的に追加される予定です。-Pywikibot、Commons Androidアプリ、Pattypanなどの様々なバグトラッカーの作業が追跡可能です。
API を使ってキャプションを編集するには?
API wbsetlabelモジュールを使用して、ウィキベースエンティティID Mxxxxを指定して実行できます(詳細については、クエリに関するセクションをご覧ください)。
スタイル
キャプション欄はCSSで見た目を変更できます。あなたの、またはStylus Userstyles ManagerやxStyleで設定可能です。後者の場合、コモンズのドメインcommons.wikimedia.orgに提供されている制限を受けます。
既定で折りたたむ
ガジェットの「キャプションを折りたたむ」を使うとキャプション欄が空欄になり、「展開する」という文字だけが見える状態になります。以下のCSSはこの状態でキャプションを見えるようにします(あなたの言語でのCaptionsを表示します)。
.mw-collapsible-content{display:initial!important;} .mw-slot-header, .wbmi-entityview-captionsPanel.mw-collapsed.mw-collapsible-content*:not(.wbmi-entityview-captions-header) {display:none;} .wbmi-entityview-captionsPanel.mw-collapsed.wbmi-entityview-captions-header{ display:block; border-bottom:none; margin-bottom:0; padding-top:0; font-style:italic; font-weight:normal; } .ltr.mw-collapsible-content.wbmi-entityview-captions-header{text-align:right;} .rtl.mw-collapsible-content.wbmi-entityview-captions-header{text-align:left;} .rtl.mw-collapsible-toggle{float:left;}
注:
- この方法により行番号追加の見本として用意したルールのコピーのように、1行ごとに空行が表示される。空行は除去してもかまわない。 見本では可視化していないが、実際にはタブ記号付きの字下げも表示され、除去しても変わらない。
行番号に関する下記のルールにおいても有効である。 - 1行目: テストではこの部分に
!importantタグが実用。コモンズではcommon.cssのコードエディタに警告を表示する。Maybe it could be even left out when this file is used (テストはブラウザのアドオンでのみ実施)。 - 2行目: これはヘッダを除去(
Structured data利用者の言語で表示)。もし表示したい場合は、カンマ記号「,」を含めて2行目を除去する。 - 10–12行目 は可視化したキャプションの書式指定です。既定の正位置+太字指定を使う場合は、これらの行を削除。
- 13–14行目: ルールが2件あり、ほとんどの事例では片方で充分で、両方ともコピペしても問題ありません。定型としてどちらを選ぶか決めるには、指定文の冒頭に注目します。
.ltr:書字方向が右書き(left-to-right)、たとえばラテン文字(例:英語。).rtl:同左書き(right-to-left)、たとえばアラビア語。
- 当初から既定の文字列を指定するにはこれらの行を削除(右書きは left、左書きは right。)
- 15行目は左書きに指定する場合に残す。折りたたみと展開をページ左に設定。有効にするとコモンズが採用する全ての折りたたみ箇所に適用される。
見た目のみのその他の設定は、ルール記述の最下部に以下を追加します。
.wbmi-entityview-captionsPanel.mw-collapsed.wbmi-entityview-captions-header::after{content:" …";} .wbmi-entityview-captionsPanel:not(.mw-collapsed).wbmi-entityview-captions-header{ border-bottom:none; text-decoration:underline; }
注記:
- 1行目: もし
content: " …";記述内のellipsis がご使用の言語の通常の書式に合わない場合は、好みを合わせて置換できますが、引用符は除去せず必ず使ってください! もし追加した内容が書字方向で間違った側に表示されたら、afterをbeforeに置き換えます。 - 2–5行目は 展開したままのキャプションに適用。下線を付けたくない場合は、4行目を削除。
もっと小さく折りたたんだモード
…ただし、ガジェットの「キャプションを縮小」ほど小さくなりません
| 👁 Caution | 低解像度の場合、この設定は MediaViewer が起動しないファイル全てで、事前のプレビューとサイズ情報に干渉します(すなわちファイル種別がimage以外のもの。)対応の前に以下の注記をご参照ください。 |
.mw-slot-header{display:none;} .wbmi-entityview-captionsPanel:not(.mw-collapsed).wbmi-entityview-captions-header {border-bottom:none;} .wbmi-entityview-captionsPanel{ border:none; margin-top:-1.5em; } .wbmi-entityview-captionsPanel.wbmi-entityview-captions-header{ margin-bottom:0; padding-top:0; } .wbmi-entityview-captionsPanel.wbmi-entityview-entitycontent{ padding:0.3em0; }
注記:
- このブロックが直前の文字列のブロックと干渉する場合は、 6行目 を除去、もしくはせめて数値を小さくします。おそらく
margin-top: -0.5em;は使えません。 - 1–3行目 は、上記のルールを既定のまま使う場合は無視しても構いませんが、たとえ2回記述してもその場では無害であり、ただし必ずその点を覚えておき、将来の編集に活かしてください。
見た目の調節用の書式指定:
.wbmi-entityview-captions-header.wbmi-entityview-editButton{font-size:smaller;} .ltr.wbmi-entityview-editButton{margin-left:0.25em!important;} .rtl.wbmi-entityview-editButton{margin-right:0.25em!important;} .wbmi-entityview-editButton::before{content:"(";} .wbmi-entityview-editButton::after{content:")";}
注記:
- 2–3行目:
.ltrと.rtlは上記の注を参照。 - 4–5行目: 編集文字列からカッコを除去するには (使用言語の
Editの部分) ルールを両方とも削除するか、ルール部分にcontent: "…";を代入します。ただし引用符は必ず残し、削除してはいけません。
