― MozillaZine.jp フォーラムは Mozilla 製品に関する情報交換の場です ―



All times are UTC + 9 hours

新しいトピックを投稿する トピックへ返信する  [ 7 件の記事 ] 
作成者 メッセージ
投稿記事Posted: 2012年5月09日(水) 10:36 
 ThunderBirdでフィードリーダーを愛用してます。
 とあるサイトのRSS配信で <link> 先が相対URLで記述されているのがあり、このフィードの内容をThunderBirdで参照することができませんでした。
 大抵のサイトのRSSでは<link>先がhttp://~で記述されており、問題なく参照できるのですが、この場合、問題なのは相対URLで記述してるサイトの方でしょうか? それとも、相対URLを展開しないThunderBirdのほうでしょうか? ざっと、RSSの仕様を調べても<link>先はURLでとなっており、相対じゃだめだとの記載は見当たりませんでした。


通報する
ページトップ
  
引用付きで返信する  
投稿記事Posted: 2012年5月09日(水) 14:43 
オフライン

登録日時: 2006年9月05日(火) 18:47
記事: 4207
 
*質問・投稿する前に フォーラムの利用について を読んでその内容を理解した上で
 それに沿って投稿しましょう。
*ご自分の利用環境として正確な OS の種類と Thunderbird のバージョンぐらいは
 書き添えましょう。
*質問・投稿する前に、製品のヘルプやサポートサイトで検索・閲覧・確認してみま
 しょう。
*質問した後やアドバイスをもらった後には結果や経緯を必ず書くようにしましょう。

 
 
その相対 URL で記述されていて、フィードの内容が表示できない RSS を提示してください。
あるいは、そのソースを全部ここにコピーして貼り付けてください。
そうしないと具体的に確認できません。
 
 
【大きなお世話】
製品名(名称)は、ThunderBird ではなく Thunderbird です。
 


通報する
ページトップ
 プロフィール  
引用付きで返信する  
投稿記事Posted: 2012年5月09日(水) 15:05 
オフライン
Administrator

登録日時: 2005年6月23日(木) 23:29
記事: 2743
お住まい: 東京
tomita さんが書きました:
 ThunderBirdでフィードリーダーを愛用してます。
 とあるサイトのRSS配信で <link> 先が相対URLで記述されているのがあり、このフィードの内容をThunderBirdで参照することができませんでした。
 大抵のサイトのRSSでは<link>先がhttp://~で記述されており、問題なく参照できるのですが、この場合、問題なのは相対URLで記述してるサイトの方でしょうか? それとも、相対URLを展開しないThunderBirdのほうでしょうか? ざっと、RSSの仕様を調べても<link>先はURLでとなっており、相対じゃだめだとの記載は見当たりませんでした。

RSS 内の相対 URL をどうするのかは、ちょっと検索しただけでもあちこちで問題になっているようです。
起点を RSS の URL にするのか、そのリンクが含まれる記事の URL にするのか、どちらとも解釈できます。
Thunderbird のようにローカルに RSS のコピーを保持している場合には、ローカルファイルを探すなんてことにもなりかねません(動作確認はしていませんが)。

Feed Validator にも "element should not contain relative URL references" という警告があるほどです。
http://feedvalidator.org/docs/warning/C ... elRef.html

HTML の base 要素のような起点を指定するものが RSS にもあればいいのですが。

_________________
[Desktop] Windows 10 Pro 22H2 (64bit) / Intel Core i7-2600 / Nvidia GeForce GTX 1650 GDDR6 / 32 GB Memory
[Laptop] Windows 10 Pro 22H2 (64bit) / Intel Core i5-520M vPro / Intel HD Graphics / 8 GB Memory
[Android] Android 13.0 (arm64) / Xperia 5 III (XQ-BQ42)
常用環境: Firefox ベータ版、リリース版 (Win64 x86-64, Android), Thunderbird ベータ版、リリース版 (Win64 x86-64)
テスト環境: Firefox (ESR, Nightly, Win64 x86-64, Android)

Cai/1.0 (Homo sapiens; N; Homo sapiens chemist; male; rv:0.0.4.2+)
-- いつまでたっても nightly


通報する
ページトップ
 プロフィール  
引用付きで返信する  
投稿記事Posted: 2012年5月10日(木) 21:51 
※質問するときは、フォーラムの利用について [投稿する前にお読みください] に目を通し、OS の種類や Thunderbird のバージョンといった使用環境についての最低限の情報を書き添えるか、投稿用テンプレート の利用をお勧めします。

横から失礼します。
あまり理論的なことは知らないため、体験したことのある範囲での話になりますが......。

ご存知のようにフィードの代表的なフォーマットには RSS と Atom があり、RSS は 1.0 と 2.0 で仕様が異なります。
「RSS配信」という言葉を、文字通り RSS フォーマットの意味でおっしゃっているのか、一般的なフィード(Feed)の代名詞としておっしゃっているのかで違いが出てきますから、もし当方の理解が間違っていたらすみません。

Cai さんが書きました:
HTML の base 要素のような起点を指定するものが RSS にもあればいいのですが。

Atom では xml:base が指定でき、これを基準に各エントリのリンクを明示的に "相対 URL" で記述できます。
Thunderbird 12.0.1 で Atom 形式のフィードを購読した場合、xml:base の指定と "相対 URL" の構造を解釈して各エントリを正しく表示してくれます。
おおまかにいうと次のような感じです。

<Atom の場合>
(例:共通の前提)
エントリの URL = http://hogeblog.ne.jp/entry8.html
Atom の URL = http://feed.hogeblog.ne.jp/atom.xml

atom.xml 内の記述
(例:1)
<feed xml:base="http://hogeblog.ne.jp" />
<link href="/entry8.html" />
 ↓ Thunderbird で読み込んだとき次のように解釈される。
http://hogeblog.ne.jp/entry8.html → 参照可

一方、xml:base を指定しないで各エントリを相対 URL で記述した場合、その Atom ファイルがある URL を基準に相対 URL を解釈します。
(例:2)
 ―― xml:base なし ――
<link href="/entry8.html" />
 ↓ Thunderbird で読み込んだとき次のように解釈される。
http://feed.hogeblog.ne.jp/entry8.html → 参照不可

<RSS の場合>
現状では、RSS で xml:base に相当する属性はなかったと思います(たぶん...)。
RSS 内の "相対 URL" の解釈は、一般的には RSS ファイルの置かれた URL が基準になるはずですが、実際の動作は各フィードリーダーに依存すると思われます。
とくに、RSS を自動生成するようなサービスで、ベースを定義しないままリンクを機械的に "相対 URL" にしてしまうような場合、不適切な結果をもたらすケースがあるかもしれません。

(補足)
一般に "URL" といった場合、<scheme>:<scheme-specific-part> の構文を意味しています。つまり "絶対 URL" のことです。
"相対 URL" は、基準となる URL を明確に定義できる階層構造の下でのみ意味を持ちます。基準をどこに置けばいいのか階層性にあいまいさがある状態では、"相対 URL" は正しく機能しないケースが出てきます。


tomita さんが書きました:
 とあるサイトのRSS配信で <link> 先が相対URLで記述されているのがあり、このフィードの内容をThunderBirdで参照することができませんでした。

すべてのリンクが RSS ファイルの URL をベースに持つなら、フィードリーダーによっては "相対 URL" を(結果的に)正しく解釈するものがあるのかもしれませんが、あくまでリーダーのふるまいに依拠したフィード配信ということになるのではないでしょうか。

フィードのフォーマットの違いで変わってくる部分もありますし、その記述が正確かどうか、正確だとしてそれを解釈する Thunderbird の動作は適切なのか …… 、いずれにせよ kiki さんがおっしゃるように当該フィードの内容がわからないことには先へ進めませんね。

雑駁ですが以上です。不正確な点や間違いがあったらツッコミお願いします。


通報する
ページトップ
  
引用付きで返信する  
投稿記事Posted: 2012年5月22日(火) 10:02 
ご回答ありがとうございました。
調べてみると、配信されているrssがrss1.0のようでしたので、この問題は配信元のほうにあるようです。


通報する
ページトップ
  
引用付きで返信する  
投稿記事Posted: 2012年5月22日(火) 23:28 
オフライン

登録日時: 2006年9月05日(火) 18:47
記事: 4207
 
*質問・投稿する前に フォーラムの利用について を読んでその内容を理解した上で
 それに沿って投稿しましょう。
*ご自分の利用環境として正確な OS の種類と Thunderbird のバージョンぐらいは
 書き添えましょう。
*質問・投稿する前に、サポートサイトやヘルプ、このフォーラム内を検索・閲覧し
 て確認してみましょう。
*質問した後やアドバイスをもらった後には結果や経緯を必ず書くようにしましょう。
 
   
 
RSS 1.0 だから、相対 URL だとは限りません。
配信元の問題かどうかもわかりません。

その相対 URL で記述されていて、フィードの内容が表示できない RSS を提示してください。
あるいは、そのソースを全部ここにコピーして貼り付けてください。
そうしないと具体的に確認できません。
 


通報する
ページトップ
 プロフィール  
引用付きで返信する  
投稿記事Posted: 2012年5月23日(水) 01:53 
オフライン

登録日時: 2008年5月26日(月) 01:41
記事: 1345
お住まい: 冥府
肝心の該当するファイルが不明ですが、Thunderbirdでのみの問題なら話は別ですが、ファイル自体の問題ならサイトの管理者に絶対記述を要請しては?
問題のファイルをブラウザで確認すれば記述内容が判明しますから。

_________________

*Windows 10 21H1 64bit/*GoogleJapaneseInput:ATOK2017:MS-IME
Firefox 95.0:Beta 96:Developer Edition 96:Nightly 97.0a1:
Thunderbird 91.4.0:Earlybird 96:Daily 97.0a1:SeaMonkey 2.53.10/2.58a1:
Opera 82.0.4227.23:Google Chrome 96.0.4664.93/98.0.4756.0(Official Build)canary:
SRWare Iron 96.0.4900.0:Lunascape 6.15.2:Avant Ultimate 2020 build 3, 3.17.2020


通報する
ページトップ
 プロフィール  
引用付きで返信する  
期間内表示:  ソート  
新しいトピックを投稿する トピックへ返信する  [ 7 件の記事 ] 

All times are UTC + 9 hours


オンラインデータ

このフォーラムを閲覧中のユーザー: Google [Bot] & ゲスト[108人]


トピック投稿:  可
返信投稿:  可
記事編集: 不可
記事削除: 不可
ファイル添付: 不可

検索:
ページ移動:  
Powered by MozillaZine.jp® Forum Software © phpBB Group , Almsamim WYSIWYG
Japanese translation principally by ocean