pyxb
(1.2.6)で Python バインディングを生成した XSD ファイルがいくつかあります。これらの XSD ファイルはそれぞれ、同じ名前空間を使用します。それらのいくつかは、同じ名前 ( ) を持つ要素を定義しますMyNamedElement
。その結果、そのようなバインディングを 2 つ同時にインポートすると、次のエラーが発生します。
pyxb.exceptions_.NamespaceUniquenessError: my:NAMESPACE: name MyNamedElement used for multiple values in elementBinding
同時に 2 つのバインディングを使用する必要はないので、pyxb
可能な場合は の内部名前空間キャッシュをクリアするだけで十分です。
それを行う方法、またはこの問題を回避するための他のpython-magicはありますか? 現時点で、私の最善の考えは、サブプロセスを使用してインポートを実行し、できれば終了後にそれらを再び失うことです.stpyxb
は文句を言いません.
SO に関する別の質問にも同じエラーがありますが、別の問題が原因であることが判明しました: PyXB: two versions of XSDs with same namespace