0

私のプロジェクトには、XSD、WSDL、パラメータ マップなど、さまざまな種類の XML ファイルがたくさんあります。それらはすべて、IDE によって生成された名前空間を受け取りますが、名前空間は一意ではありません (プロジェクト間で、同じ名前の要素が同じ名前空間) も記述的でもありません (または紛らわしい - それらはすべて "http://www.ibm.com/..." で始まりますが、IBM のものではなく、私自身のエンティティーを定義します)。その場合、名前空間のリファクタリングが必要です。

私の疑問は次のとおりです。

1) すべての要素に独自の名前空間が必要ですか、それとも関連する要素が名前空間を共有する必要がありますか? 例えば、

  • SOAP 要求メッセージと応答メッセージは同じ名前空間に属するべきですか、それとも独自の名前空間を持つべきですか?
  • WSDL と関連する XSD は、同じターゲット名前空間を使用する必要がありますか?

例えば:

http://www.xarx.com/xmlns/TheProject/Administration/wsdl/StartProcess
http://www.xarx.com/xmlns/TheProject/Administration/xsd/StartProcessRequest
http://www.xarx.com/xmlns/TheProject/Administration/xsd/StartProcessResponse

またはすべてに

http://www.xarx.com/xmlns/TheProject/Administration

2) 一般に公開される生成された名前空間はすべて修正する必要があります。しかし、プロジェクトの内部にあるものについてはどうでしょうか? それらのリファクタリングは時間の無駄ですか? それらは管理コンソールまたはログに表示される可能性があり、間違った名前空間が誤解を招く可能性があります。

4

1 に答える 1

0

関連するすべての要素に対して、WebSphere ESB で同じ XML 名前空間を使用しようとしましたが、私の経験は次のとおりです。

関連するすべての要素は同じ名前空間を使用でき、IDE とコンパイラは気にしません。通常、異なる目的を持つ要素には異なる名前が付けられているため、名前の競合は発生しません。しかし、IDE は多数の XML ファイルを生成し、生成された要素が、使用したいものと同じ名前になることがあります。(通常、XXX_Request と XXX_Response は、Websphere Integration Developer によって派生 WSDL ファイルに生成される名前であるため、代わりに XXX_Req と XXX_Res を使用する必要がありました。)

于 2012-10-26T17:37:30.087 に答える