問題タブ [dtd-parsing]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
103 参照

xml-validation - DTD を使用して XML 内の xml:lang ATTLIST を検証する方法は?

インターネット上の多くの記事 (このxml:lang記事など) では、または何らかのカスタム属性を使用して、XML タグ内の言語に関するメタ情報をエンコードすることを提案しています。彼らは、これらのコードがBCP47 標準に準拠している必要があると述べています。

記事が示唆するように言語属性をエンコードするとどうなるか見てみましょう:

  1. 内部DTD:<!ATTLIST text xml:lang NMTOKEN #IMPLIED>
  2. XML の内部:<text xml:lang="YODU991Yklew-e-ijsw02ijwk">...</text>

期待される結果は何ですか?

DTD バリデーターは、YODU991Yklew-e-ijsw02ijwkコードが実際の BCP47 言語コードであるかどうか、国とスクリプトが存在するかどうかを確認し、それらのコードが正しくない場合は赤でマークします。http://schneegans.de/とまったく同じ方法で、これらのコードを検証できます (間違ったコード正しいコード)。

代わりに何が起こりますか?

Validator は、この属性を何らかのテキストとしてのみ認識し、それが実際の言語コードまたは意味不明なものである場合、検証しません。

0 投票する
0 に答える
145 参照

delphi - MSXML6 で DTD ノード構造を解析する方法

MSXML6 を使用して Delphi アプリケーションで解析したいスタンドアロンの DTD ファイルがいくつかあります。DTD ファイルの内容は次のようになります。

このデータを MSXML で読み込もうとすると、「DTD の外側に DTD 宣言を含めることはできません」というエラー メッセージが表示されて失敗します。

DTD を次のような DOCTYPE 要素にラップする場合:

パーサーは成功しますが、DTD 構造を反復処理できません。ドキュメントをロードして表示する(Delphi)コードは次のようになります。

MSXML6 を使用して DTD ノード構造を反復処理する方法はありますか?

0 投票する
0 に答える
91 参照

python - ローカルの MathML DTD を介して MathML xml 文字列を検証する

この方法で lxml を使用して MathML XML 文字列を検証しようとしています。

このようにして、mathml 文字列で指定された DTD に対してチェックし、ネットワークを介して文字列を検証します。

質問

利用可能な nwtwork がない場合、ローカル DTD に対して mathml 文字列を検証するにはどうすればよいですか?

私が試したこと

https://www.w3.org/Math/DTD/mathml3/mathml3.dtdから MathML DTD 3 をダウンロードし、https : //www.w3.org/Math/DTD/mathml1/ から MathML DTD 1をダウンロードしました。 mathml.dtdを作成して現在の作業ディレクトリに保存した後、ローカル DTD を指すように DOCTYPE 宣言を変更しまし<!DOCTYPE math SYSTEM "path/to/mathml_dtd.dtd">no_network=True

私はこのエラーを持っています:

MathML DTD 1 のローカル コピーを使用すると、代わりに次のようになります。