2016-10-08 4 views
1

XSLTコンテキストのXML宣言からエンコード情報を取得する機会はありますか?XSLT:xml-input-fileのエンコード情報を読み取る

さらに私は、入力ファイルは、符号化情報を持っていないか(または入力がプレーンテキストであれば、XML宣言かどうかを持っている)かどうかを見つけることに興味がある:

<?xml version="1.0"?> 
... 

<?xml version="1.0" encoding="UTF-8"?> 
... 

答えて

1

いいえ、この情報ISNデータモデルの一部。 XPathやXSLTで見ると、既にデコードされている(またはエンコード宣言が間違っていると失敗した)ため、元のドキュメントがどのようにエンコードされているかを知ることは本当に便利ではありません。実際、XPathやXSLTで見られるドキュメントは、レキシカルXMLとしての生活をまったく開始していないかもしれません。パイプラインでは、別の変換またはデータベースクエリの出力である可能性があります。

+0

ありがとうございます。 xsltやxprocの文脈で(おそらく)_external file_から文字列としてxml宣言を得る他の解決法はありますか?ソースファイルをプレーンテキストとして扱い、最初の文字列がdocument()関数を使用してで始まるかどうかを確認できますか? –

+0

この情報で何をしたいですか?エンコーディングが異なる複数の外部エンティティがドキュメントにある場合は気になりますか? DOMはgetInputEncoding()とgetXmlEncoding()を提供することに注意してください。 –

関連する問題