2つのファイルジオデータベースのスキーマを比較する方法は?


13

テンプレートジオデータベースがあり、それを地域のデータクリエーターに送信します。これらのジオデータベースを更新し、事前定義されたフィーチャクラスの地域のすべてのデータをデジタル化します。

ファイルジオデータベースを取得したので、多くのフィーチャクラスが変更されていることがよくあります。フィールドが追加または削除される場合があります。場合によっては、フィーチャクラス自体が削除されるか、新しいフィーチャクラスが作成されます。

どのフィーチャクラスとテーブルが変更されたか、および共通のテーブルとフィーチャクラスの異なるフィールドを示すレポートを取得したいと思います。

私はすでに次のようないくつかの質問を見てきました。

しかし、これらの質問で与えられた答えは役に立たなかった。


私はここでネクロッキングトピックに関するプロトコルについて確信がありませんが、あなたに関連する質問がありました、Devdatta:X線アドインからソリューションを取得し、GeoDB / XML?
カイルシェパード

@KyleShepard通常の手順は、新しい問題について新しい質問をすることです。関連情報が含まれている場合は、古い質問にリンクできます。そしてあなたの質問に答えるために、私はそのようなものを見つけていません。たぶん、あなたは新しい質問をすることができ、何かを見つけた誰かがそれに答えるでしょう。
Devdatta Tengshe

回答:


9

ArcCatalogのX線と呼ばれる素晴らしいアドインがあります。多くの機能がありますが、最終的に使用したのは、[ツール]メニューの[差異分析]ツールでした。

ジオデータベースとXMLワークスペースドキュメントの違いを見つけます。テンプレートジオデータベースのスキーマをXMLにエクスポートし、さまざまなジオデータベースをXMLと比較しました。

2つのジオデータベースで欠落している、または異なるすべてのフィーチャクラスとフィールドを含む優れたレポートを表示するのに数秒かかりません。


これは素晴らしいですね。10.1で動作しますか?
フェスター

@Fezter:これは10.1向けのようです:arcgis.com/home/item.html
id=

7

pythonスクリプトを書くことは、あなたが理解しようとしているものに最適だと思います。以下は、一般的なスクリプトのワークフローです。

まず、ジオデータベース1(geo1)とジオデータベース2(geo2)を比較します

  1. geo1を検索/ループし、フィーチャクラス(fc)1名取得し、他のgeo2で同じfc名を探します(fc1名がgeo2で見つからない場合は、最初のfc名をテキストファイルに書き込みます)
  2. ステップ1 fc1 == fc2 nameの場合、fc1のフィールドリストし、fc2のフィールドを検索します。fc1フィールド名がfc2で見つからない場合、fc1フィールド名をテキストファイルに書き込みます。
  3. 次に、geo1内のドメインを検索またはリストし、geo1 domain == geo2 domainの場合はgeo2で同じドメイン名を探し、ドメイン1の最初のコード値を取得し、ドメイン2に存在するかどうかを確認し、そうでない場合はgeo1ドメイン名を書き出しますまたはドメインコード化された値をテキストファイルに。

次に、geo2とgeo1を逆に比較します

上記の手順1〜3に従いますが、geo2からgeo1の逆順

スクリプトが実行された後、結果のテキストファイルで不一致の可能性を調べます。


3

あなたはすでに良い答えを持っているようです。しかし、ジオデータベーススキーマを理解しようとしている他の人には、Esriチームの1人が作成したスタンドアロンプ​​ログラムであるArcGIS Diagrammerもお勧めします。

ArcGIS Diagrammerは、GISプロフェッショナルがジオデータベーススキーマを作成、編集、または分析するための生産性ツールです。スキーマは、Microsoft Visual Studioのユーザーに馴染みのある環境で編集可能なグラフィックとして表示されます。基本的に、ArcGIS Diagrammerは、ArcMapまたはArcCatalogで作成できるESRIのxmlワークスペースドキュメント用のビジュアルエディターです。


それはしない、明確にする必要が Visioを-しかし、それは彼が同様のレイアウトを使用するということで「のVisioのユーザーにはお馴染みの」ビットに見える
スティーブン鉛

はい、あなたは正しいです。間違っていたようです。
Devdatta Tengshe
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.