2016-06-29 6 views
0

いくつかのXMLファイルに対していくつかのXPathクエリを書いています。しかし、XMLファイルの構造に関する基本的な考え方はありますが、それらのファイルのDTDは利用できません。XPathクエリを書くにはDTDを知っている必要がありますか?

私は、XPathクエリを書くときに常にDTDが利用可能であると仮定していると思いますか?

(私はXPathを初めて使用していますが、適切な質問をしていない場合はplsを修正してください)。

+0

あなたはちょうど完全な暗闇の中を歩いて、推測を書き、それがうまくいくと思っていますか? – Andrejs

+0

いいえ、XPathを記述するためにDTDを持つ必要はありません。 –

+1

私はいつもそれらを書いています。私が受け取ったファイルには一度も見たことがありません。 (多くはXSDを持っていますが、DTDはありません)何が必要だと思いますか? –

答えて

2

DTDにアクセスすると、データの予想された構造または意図された構造を理解する能力に違いがあります(ただし、データがすべてDTD有効であることが分かる場合を除きます)。実際には異なる構造)。

DTDを持つか持っていないと、XQuery、XSLT、または他のXPathプロセッサがクエリを処理する能力に違いはありません。 (一部のXQueryプロセッサーはXSDスキーマを予期したり要求したりすることがありますが、XQueryプロセッサーやXSLT 2.0や3.0プロセッサーでは利用可能なものがありますが、DTDを予期し、必要とするXPathプロセッサーは認識していません。 )

+0

非常に便利な答え!どうもありがとう。私が引用できる参考文献(論文/ドキュメント/ウェブページ/ ...)を知っているのであれば、私は疑問に思いますか? – JackWM

+0

何を引用しますか?あなたの言葉を聞きたくない同僚と議論に勝つことを試みていますか?または学術論文や技術レポートに脚注を入れようとしていますか?そして、あなたは何をサポートしようとしていますか?文書の文法がデータの予想される構造を伝えるのに役立つという主張は?私は何も知らない。この点は、文法文法の関数から直接得られます。 XQueryプロセッサがDTDへのアクセスを必要としないという主張?関連する仕様に従います(http://www.w3.org/TR/で検索してください)。 –

関連する問題