「ヒント: パーサにどこでスキーマを探せばよいかを教える」
IBM DeveloperWorks 2003年11月11日記事。
この記事には注目すべき点がある。XML文書の妥当性検証に使用するスキーマをプログラムが決定できるということである。
XML文書を処理するプログラムに機能追加を行う場合を考えてみる。おそらくスキーマの変更があるはずだ。そのプログラムは複数の相手からXML文書を受け取ることができるように設計されており、受け取るXML文書のスキーマは相手に依存する。そしてスキーマ毎に機能を変更しなければならないとしたらどうだろうか。
記事の方法を使用するなら、プログラム内にスキーマの版管理機能を持たせることによって、自動的にXML文書がどの版のスキーマで記述されたものなのかを判断できる。このことは古い版のスキーマをサポートしなければ状況において有効だ。
文書内にあるスキーマの所在を見て、スキーマを取得する方法があるが、受け取ったスキーマ自体にプログラムが対応していない事が考えられるので、版管理を完全にコントロール出来ない。