XMLに関するthink49のブックマーク (1)

  • CDATAセクションを正しくエスケープする方法 - ヒルズで働く@robarioの技ログ

    <![CDATA[(ここ)]]> (ここ)は確かにHTMLエスケープしなくてもいいんだけど、(ここ)に予期せぬ"]]>"が現れるとそこでCDATAセクションが終わってしまう。 だから(ここ)に"]]>"という字面が現れないようにしないといけないので、 全ての ]]> を ]]]]><![CDATA[> に置き換える。 分断の仕方によって他にも書き方があって、パターンは以下の通りになる。 ]]]]><![CDATA[> ]] ]]> <![CDATA[ > ↑"]]" ↑CDATA終了 ↑CDATA開始 ↑">" ]]]>]<![CDATA[> ] ]]> ] <![CDATA[ > ↑"]" ↑CDATA終了 ↑"]" ↑CDATA開始 ↑">" ]]]><![CDATA[]> ] ]]> <![CDATA[ ]> ↑"]" ↑CDATA終了 ↑CDATA開始 ↑"]>" ]]>]]<![

    CDATAセクションを正しくエスケープする方法 - ヒルズで働く@robarioの技ログ
    think49
    think49 2010/12/13
    これは「エスケープ」ではないですね。セクションを閉じて新しくセクションを開始することで不正にセクションを閉じることを回避している、と。正式なエスケープ手段があればいいんですけどね…。
  • 1