記事の地域要素

Cuerda-Feed-total が出力する RSS では、<item> の内部に「どの地域に関するニュースなのか」を示す要素を付与できます。 一般的な RSS では <area> 要素として、Yahoo!ニュース向けの専用 XML では仕様書で定められた地域コードの項目として、 dmenu ニュースや LINE NEWS でもそれぞれの仕様に沿った形で出力されます。 ここでは、これらの「記事の地域要素」をどのような設計で判定し、どのような条件で出力しているのかを説明します。

記事の地域要素が担う役割

ニュースの中には「全国どこでも同じ重みを持つ情報」と「特定の都道府県や市区町村に強く結びついた情報」があります。 配信先の多くは、こうした「地域性」をもとに、紙面やアプリの中に地域別のコーナーを設けたり、 特定地域の読者に優先して届けたりしています。

記事の地域要素は、その判断を機械的に行うための「地図の座標」のような役割を果たします。 Cuerda-Feed-total は、Yahoo!ニュース、dmenu ニュース、LINE NEWS 向けに、 それぞれの配信仕様で定められた地域コードを自動で割り当てる機能を備えています。

地域情報を決めるための前提データ

地域要素を自動で付与するためには、まず「地域名」と「地域コード」の対応が必要です。 Cuerda-Feed-total では、都道府県・市区町村などの名称と、 配信仕様で定められた地域コードとを対応づけた一覧(対応表)を内部的に参照します。

この対応表は、次のような情報を含みます。

  • 都道府県名、市区町村名などの正式名称
  • 配信仕様で定められた地域コード(Yahoo!ニュース用、dmenu ニュース用、LINE NEWS 用など)
  • 同名の市区町村が複数の都道府県に存在する場合など、曖昧さを避けるための補助情報

この前提データを土台にして、記事の内容から「どの地域に関するニュースか」を推定していきます。

記事から地域候補を取り出す手順

Cuerda-Feed-total が記事の地域を決める際には、まず「地域名らしき情報」を記事のどこから取り出すかを決めます。 おもな手がかりは次のとおりです。

  • 記事タイトルに含まれる地名
  • 本文中に登場する都道府県名・市区町村名
  • カテゴリやタグとして付与された地名(「東京都」「大阪府」など)
  • 編集部が任意に指定できる、地域用のカスタムフィールド

配信設定によっては、「カスタムフィールドを最優先する」「タイトルからの抽出を許可する」といった優先順位を決めることもできます。 いずれにせよ、まずはこれらの情報から「このニュースは、おそらくどの地域の話なのか」という候補をいくつか抽出します。

地域名から地域コードへの変換と曖昧さの処理

抽出された地域名の候補は、先ほどの地域対応表と照合されます。 一致する地域名がひとつに絞れる場合には、その地域に対応するコードを採用し、 Yahoo!ニュース・dmenu ニュース・LINE NEWS の各仕様に沿った形式で出力します。

一方で、「府中市」「中央区」のように、複数の都道府県にまたがって同名の自治体が存在することもあります。 このような場合、Cuerda-Feed-total は、記事テキストだけから自動的に都道府県まで特定しにくいケースについて、

  • あえて地域コードを付与しない(誤った地域を付けないことを優先する)
  • 都道府県名が明示されている場合のみ、その都道府県に属する候補を採用する

といった保守的な挙動をとるよう設計されています。 必要に応じて、特定の曖昧地名を「自動推定の対象から除外する」ためのルールを用意することで、 誤った地域コードを付与するリスクを下げています。

地域要素を出力する条件

最終的に、記事に地域コードを付与するかどうかは、次の条件を満たしているときに限られます。

  • その配信先向けの地域コードが、対応表上で一意に決められること
  • 配信設定で「地域コードの出力」が有効にされていること
  • 記事の内容が、明らかに全国向けであり地域性がないと判断されていないこと

上記の条件を満たさない場合には、地域要素そのものを出力しません。 「無理にどこかの地域を指定する」のではなく、「地域を指定しないこと」もまたひとつの判断として選べるようにしています。

Yahoo!ニュース向けの地域要素

Yahoo!ニュース向けの配信では、専用の XML 仕様に沿って地域コードを出力します。 先ほどの対応表から Yahoo!ニュース用の地域コードを取得し、 仕様書で定められた要素・属性に組み込むことで、「このニュースはどの地域のものか」を Yahoo!ニュース側へ伝えます。

たとえば、都道府県単位のニュースであれば都道府県コードを、市区町村まで特定できるニュースであれば、 市区町村レベルのコードを付与することができます。 具体的な要素名やコードの形式は仕様書に従い、Cuerda-Feed-total 内部で適切に変換されます。

dmenu ニュース・LINE NEWS 向けの地域要素

dmenu ニュースや LINE NEWS 向けの配信では、RSS の <item> の下に、 配信先ごとの仕様に従った地域要素が出力されます。 一般的には <area> のような要素が使われ、そこに配信仕様で定められた地域コードが入ります。

ここでも、Yahoo!ニュースと同様に、地域名から直接コードを書き出しているわけではなく、 内部の地域対応表を介して「dmenu ニュース用」「LINE NEWS 用」のコードへと変換しています。 同じ記事から得られる地域情報を、配信先ごとに最適な形式へ変換することで、 媒体側の運用負担を増やすことなく、各配信先の仕様にきめ細かく対応できるようにしています。

記事の地域要素がもたらすもの

記事の地域要素は、読者の目に直接ふれるものではありませんが、 配信先の画面構成やレコメンドロジックにとっては、きわめて重要な材料です。 適切な地域コードが付与されていることで、

  • 地域別のニュース一覧や、エリアトップページに正しく記事が並ぶこと
  • 特定の自治体に関するニュースを、該当エリアの読者に優先して届けられること
  • 地域に関する統計やレポーティングを行う際の精度が高まること

など、多くの利点が生まれます。

Cuerda-Feed-total は、記事のテキストやメタ情報から地域を丁寧に読み取り、 誤った付与を避けながら、必要な場面でのみ地域要素を出力するよう設計されています。 媒体側は、配信設定と記事の基本的な入力を整えることで、 その背後にある地域コードの判定と出力をプラグインに委ねることができます。

技術者向けの情報に戻る

©cuerda™