.NET (または少なくとも私が使用している .NET のバージョン) に関しては、既定以外の名前空間を持つ XML ドキュメントからデータをクエリする場合、少なくとも 2 つの選択肢があることを認識しています。 :
1. use the local-name() function before referencing a
node in the xpath expression.
2. work with the XmlNamespaceManager class and assign prefixes
that then need to be referenced in the xpath expression.
最近、私は XSLCompiledTransform クラスを扱っていて、デフォルト以外の名前空間を持つ XML ファイルからデータを読み取る際に同様の問題を経験しました。
実際の XSL ファイルを作成する人は、local-name() 関数を使用する必要があることを知らない可能性があり、作業する XML ファイルを制御できない可能性があるため、コードごとに、順番に何ができるでしょうか。フォーム (/node0/node1/node2/etc) の xpath 式が XSLCompiledTransform クラスによって適切に解釈されることに耐えるには?