0

Sarissa を使用して、XML の文字列を DOM ドキュメント オブジェクトに変換しています。Sarissa が私の DTD を完全に無視していることを除いて、すべてが機能しています。DTD ルールからの逸脱は認識されず、DTD が見つからないというメッセージも表示されません。

私のXMLは次のように始まります:

<?xml version="1.0" standalone="no" ?>
<!DOCTYPE workspace SYSTEM "dtd/config.dtd">

私のJavaScriptは次のようになります。

function toXML(str) {
    var responseDoc = (new DOMParser()).parseFromString(str, "text/xml");
    ...
}

Sarissa に DTD を使用させるにはどうすればよいですか?

4

1 に答える 1

1

Sarissa のソース コードには、DOMParser() 用の特別な解析コードはありません。基本的に、IE、Safari、または Firefox/Opera のネイティブ実装をラップします。これは、使用しているブラウザーで DTD を解析できない可能性があります。悲しいことに、外部 DTD 解析は XML のオプションの側面であり (エンティティであっても)、検証はさらに確実ではありません。 . Web の種類は、サーバー側の置換 (または、検証に関してはまだ無視される可能性のある内部ドキュメント サブセット定義) を使用することを人に強制します。

于 2011-05-06T12:54:29.320 に答える