Mercurial の生成する RSS に link 要素が含まれない


Mercurial にはウェブベースのリポジトリブラウザを提供する機能が標準あります。フィードも生成してくれるので, RSS をサイトマップとして Google に送り付けていたのですが,ずっとエラーが出ていたことに気づきませんでした。

見てみると, link 要素が item 要素に含まれないとあります。確かに RSS 2.0 の仕様では link 要素は必須ではないので[A], RSS としては問題ありません。しかしサイトマップとして使用するためには Google 的に NG です。

実は Mercurial の生成するフィードは RSS 2.0 以外に Atom 1.0 があります。 Atom 1.0 の仕様でも link 要素は必須ではないのですが[B],ちゃんとフィードに含まれており,サイトマップとして使用できます。

脚注

  1. All elements of an item are optional, however at least one of title or description must be present. []
  2. atom:entry elements that contain no child atom:content element MUST contain at least one atom:link element with a rel attribute value of "alternate". []