DelphiXE2を使用してプログラムをサードパーティのサービスと統合しようとしています。私が遭遇している問題は、サービスが私に送信するXMLドキュメント内の値をエスケープしていないことです。
これは彼らの「サンプル」xmlドキュメントの1つです
<plans type="array">
<plan>
<id type="integer">1</id>
<series-title>A New Plan</series-title>
<dates>January 16 & 17, 2010</dates>
<plan-title>A New Plan For Your Family</plan-title>
</plan>
...
</plans>
私の当初の計画は、すべてのデータをタグでラップすることCDATA
でしたが、それは理想的な解決策ではないようです。
&
また、文字を検索して置き換えることも考えましたが、無効なxml文字ごとに検索と置換を行うことを含め、ユーザー入力をエスケープすることはできません。これも悪い考えのようです&
。<
>
無効なxmlドキュメントを処理する方法についての提案はありますか?