Atom フィード パーサーは、フィード内の次の XML 行をどのように処理する必要がありますか。
<title type="html"><![CDATA[Johnson & Johnson]]></title>
議論のために、本来意図されたテキストが実際にはJohnson & Johnson
. この問題に関するこのオンライン ディスカッションに出くわしましたが、2 つの異なる意見があるようです。
1.
意見 #1 - このコンテンツは二重にエンコードされていると主張しています。テキスト「Johnson & Johnson」テキストは、エンティティ エスケープされており、CDATA セクションでラップされることによって再度エンコードされています。彼は、適切に動作する xml パーサーは を返すと述べていますJohnson & Johnson
。これは、XML 仕様で CDATA エンコード データを処理する方法が規定されているためです。
- 意見 2 - Atom 仕様が優先されると主張する。彼は、CDATA がパススルーとして機能すると述べています。
Johnson & Johnson
として出てきJohnson & Johnson
ます。これが単なる XML ドキュメントである場合は、そこで終わります。ただし、これは Atom であるため、適切な動作を判断するにはAtom 仕様を確認する必要があります。アトムの仕様では、type="html"
contains エンティティ エスケープされた html を含むすべての要素が指定されています。したがって、それを自由に解読する必要があります。
事実として正しいのはどれ? 適切な Atom XML パーサーは以下を生成する必要があります
か?Johnson & Johnson
またはJohnson & Johnson
、この特定の状況を考えると?