次のシナリオがあります。XMLデータバインディングを使用して、スキーマAから作成されたオブジェクトと、スキーマBを使用して作成された別のオブジェクトがあります。ただし、スキーマBは、Aタイプの子ノードを定義するためにスキーマAをインポートします。
だから、今私は持っています:
- unit1、
objectA
(スキーマAから) - unit2、
objectB
(スキーマBから)、objectA
(スキーマAをインポートするスキーマBから)
もちろん、このunit2.objectA
クラスはと互換性がありませんunit1.objectA
。unit2の定義も異なります。これは、いくつかの名前空間属性が含まれていないためです(これは重要です。親ノードにも属性があるため、これらは暗黙的だと思います)。
そして、これが私の問題です。これらは単なるオブジェクトであるため、多くのことができますが、からIXMLDocument
作成できるようにしたいと考えています。unit1.objectA
unit2.objectA
私の最初の考えは、ドキュメントからノードをエクスポートできる必要があり、正しいスキーマに従ってこのエクスポートされたノードを「コーシャ」にするオプションがあるはずだということでした(したがって、ドキュメントB内のタイプAのノードはエクスポートする必要があります)スキーマAに対して検証します。)これはあまりにも多くのことを望んでいる可能性があることを理解しているので、私の質問は言い換えることができます。
エクスポートされたノード/ドキュメントで名前空間属性(、、)を追加/オーバーライドしながら、ノードをオブジェクトから新しいオブジェクトにIXMLDocument
エクスポートするにはどうすればよいですか?IXMLDocument
xmlns
xmlns:xsi
xsi:schemaLocation