私はコンテンツ ネゴシエーションを使用して、ユーザー エージェントがリソースの複数の表現から 1 つを選択できるようにします。
例: リソースhttp://example.com/essay
には次の表現があります。
text/html
→http://example.com/essay.html
application/xhtml+xml
→http://example.com/essay.xhtml
application/pdf
→http://example.com/essay.pdf
ユーザーエージェントが HTML バリアントを選択するとしましょう。これで、リンク リレーション タイプalternate
を使用して他の表現をリンクできます。
<link rel="alternate" type="application/xhtml+xml" href="/essay.xhtml">
<link rel="alternate" type="application/pdf" href="/essay.pdf">
しかし、誰かが URI しか持っていない場合http://example.com/essay.html
、コンテンツ タイプ ニュートラル URI が であることをどうやって知ることができるでしょうhttp://example.com/essay
か。
「抽象的な」リソース ( ) に戻るリンクの種類はありhttp://example.com/essay
ますか?
リソースにはコンテンツタイプがないため、そのリンクにもalternate
リンク関係タイプを使用できません。
alternate
キーワードが属性とともに使用されている場合type
、参照されているドキュメントが指定された形式で現在のドキュメントを再構成したものであることを示します。
canonical
ここではリンク関係タイプは適切ではないと思います。場合によってはうまくいくかもしれませんが、HTMLバリアントを正規のものにしたいかもしれません(検索エンジンなどによるインデックス作成用)。私がhttp://example.com/essay
標準的なものを作成すると、検索エンジンは (原則として) 索引付けに PDF バリアントを使用できます。