2012-03-13 11 views
-1

私は現在、多数のXMLファイルの構造を導き出しています。私はXSD.exeを使用して各自からXSDを生成していますが、予想通り、それぞれ異なる程度で違います。XSDを構造的にマージするツールですか?

これらのスキーマをこれらのXMLファイルすべてで動作する1つの "スーパーシャーマン"にマージできるツールを探しています。

推奨事項

ありがとうございました。

+0

xmlファイルをマージしてxsdを生成しようとするとどうなりますか? –

答えて

0

もう1つの方法として、すべてのXMLファイルを1にマージする方法があります.XMLマージをネイティブにサポートする差分/マージツールがあります。 n個のXMLファイルがある場合、最悪のn-1マージで実行する必要があります。これらのツールは通常、一度に2〜3個のファイルしかマージできないためです。これらのツールの

いくつかの例:あなたは "マスター" のスキーマを生成するために、Xsd.exeではを使用することができますあなたの "マスター" XMLを持っていた後

+0

(要素ではなく)異なるコンテンツに関係なくXMLファイルをマージする方法があれば、それが機能するかもしれません。私はマックスクルークを最小限に抑えることを特に意識しています。 –

+0

2番目の考えでは、私はプログラムでXMLマージを行うことができます。ありがとう。 –

0

私はそれに関連するいくつかの問題を指摘するのは簡単だろうから、どのように効果的なマージができるか分かりません。たとえば、2つ(またはそれ以上)の異なるXMLの(ノードへの)同じXPathを仮定します。マージの仕組み:両方を兄弟ノードとして保持する。 1つを他と置き換える。テキストノードからリストを作成する(該当する場合)?私の意見では、マージ自体に関連した多くの問題に取り組むことになります。

非常に単純なポストhere on SOがありますが、マージアプローチでは処理できないシナリオが1つあります。希望の結果にxsd:choiceがある場合です。 1つのXMLでコンテンツをマージすると、出力XSDにシーケンスが不可避的に作成されます。

私は、推論エンジンに複数のXMLインスタンスを処理させない限り、あなたが取るべき良い開始モデルを見つけ出すことはできず、最終的には手作業で素早く調整することができないと考えています。

XMLサンプルがモデルとして使用されていたXSDをすばやく取り上げるという問題に、あまりにも多くを実行した後に、あなたが持っているシナリオの解決策を見つけました。試してくださいthis tool; XMLコマンドのXSD、ツールタブ、XMLグループのXSDがあります。 (私はそれを書いて以来、私は部分的です)。私はちょうど私が上記を参照していたポストに対してそれを試しました、そして、驚くことではないが、それは同じ構造を思い付いた。生成されたXSDは、コアエンジンがXmlSchemaInferenceに基づいているため、ロシア人形のオーサリングスタイルを使用しています。つまり、それは私を責めません:)。

私は改良版で作業しています。それを試してみたら興味があります。私はサポートの連絡先情報を使って私に電話をかけてください。

関連する問題