gSOAP を使用して、自分で用意した XSD スキーマから XML 解析コードを生成しています。Web サービスとは何の関係もありません。XML データは、ローカル ファイルまたはメモリ バッファから読み込まれます (適切なistream
to を指定することによりsoap
)。
最初は十分に単純に思えます。しかし、使い続けるうちに、いくつかの問題が見えてきました。
たとえば、名前はグローバル名前空間に導入されます。名前空間の使用を強制することは可能ですが、(エラー処理のために余分なコードを生成する必要があるため) ビルドがはるかに難しくなります。使用できる名前空間は 1 つだけであり、マクロの使用により、他の問題も発生する可能性があります。
.exe
そして、バイナリ ビルディング ユニット ( 、.dll
、 ...)ごとに複数のスキーマがある場合は、これらの名前空間が必要になります。
だから私はおそらくいくつかの代替案について考え始めました。特に、その Web サービス スタッフは必要ありません。XSD に基づいて XML を解析するための自動コード生成のみ。
そのような代替手段はありますか (ネイティブ C++ 用)? 彼らは何ですか?