スキーマ エディタ

スキーマ エディタで、スキーマ階層全体、つまりスキーマ、フィーチャ クラス、プロパティの設定を表示または変更できます。

スキーマのすべての点について、[スキーマ エディタ]から制御できるわけではありません。たとえばオブジェクトや関連付けプロパティを作成することや、システムでプロパティの値を自動生成するように指定したりすることはできません。 ただし、スキーマのこれらの属性を設定済みであれば、[スキーマ エディタ]に現在の設定が表示されます。

表示される設定は、プロバイダでサポートされる内容によって異なります。たとえば、プロバイダでバージョン情報がサポートされないと、[ロング トランザクション]オプションは表示されません。

スキーマの読み込み

書き出した XML スキーマを読み込み、別のデータ ストアの新しいスキーマの定義に使用します。この方法は、同じスキーマに基づいて複数のデータ ストアを作成する場合に便利です。

スキーマの書き出し

選択したスキーマを XML ファイルとして書き出すと、[スキーマ エディタ]で作成したスキーマを他の AutoCAD Map 3D toolset または GIS ソフトウェア ユーザと共有したり、[スキーマ エディタ]で作成したスキーマを XML ファイルとしてバックアップしたり、または元のデータ ソースやディレクトリが使用不能になった場合に進行中の作業を保存することができます。

新しいスキーマ

データベース FDO プロバイダ(Microsoft SQL Server、MySQL、Oracle)または SDF データ ストアの新規または既存のフィーチャ ソースで、新しいスキーマを定義します。既存の SHP フィーチャ ソースのスキーマを作成することはできませんが、新しいファイルベースのデータ ストアを作成し、その作成過程でデータ ストアに新しいスキーマを作成することはできます。ArcSDE スキーマの作成には ESRI ツールを使用する必要があります。AutoCAD Map 3D toolset を使用して ArcSDE のスキーマを作成することはできません。

新しいフィーチャ クラス

右側のスキーマ エントリを選択して、[新規フィーチャ クラス]をクリックし、ウィンドウの左側にある新しいフィーチャ クラスの情報を指定します。

新しいプロパティ

右側のプロパティのフィーチャ クラス エントリを選択して、[新しいプロパティ]をクリックします。ウィンドウの左側で新しいプロパティの情報を指定します。

スキーマの設定

スキーマ名を入力します。

[スキーマ]ツリーに表示される名前を入力します。プロバイダの命名ルールに従う必要があります。

注:

SQLite データ ストアのスキーマ名は変更できません。 スキーマ名は既定にする必要があります。また、SQLite スキーマの場合、スキーマまたはフィーチャ クラスの[説明]フィールドにはコメントを追加できません。

説明

スキーマのオプションの説明を入力します。

フィーチャ クラスの設定

名前

[スキーマ]ツリーに表示されるフィーチャ クラスの名前を入力します。プロバイダの命名ルールに従う必要があります。

説明

フィーチャ クラスのオプションの説明を入力します。

タイプ

関連するジオメトリを持つクラスの[フィーチャ クラス]を選択します。スタンドアロンまたは含まれるクラスとして使用可能な非空間データの[非フィーチャ クラス]を選択します。

ほとんどのプロバイダで、フィーチャ クラスを他のフィーチャと区別するために、一意の識別子を必要とします(フィーチャ クラスに、識別子を継承するベース クラスがある場合を除く)。

非フィーチャ クラスに別のクラスは関連付けられず、一意の識別子が必要です。含まれるクラスとして使用される場合、別の非フィーチャまたはフィーチャ クラスのプロパティを定義します。たとえば、Sidewalk は Road フィーチャ クラスのプロパティで、Sidewalk クラスは Road.Sidewalk プロパティを定義します。この場合、Sidewalk クラスは識別プロパティを持つことはできますが、必要ではありません。

ベース フィーチャ クラス

このフィーチャ クラスが別のフィーチャ クラスを継承する場合、スーパークラスを選択します。そうでない場合は、[なし]を選択します。この設定はフィーチャ クラスのみに適用されます(非フィーチャ クラスには適用されません)。また、プロバイダが継承をサポートする場合にのみ使用できます。

アブストラクト

このフィーチャ クラスがアブストラクト クラスである場合は、[はい]をクリックします。抽象クラスにはフィーチャを作成できませんが、ベース クラスとして使用することはできます。この設定はフィーチャ クラスのみに適用されます(非フィーチャ クラスには適用されません)。また、プロバイダが継承をサポートする場合にのみ使用できます。

識別子プロパティと順番の指定

このフィーチャ クラスの(非 null 主キー値の)一意の識別子を構成するプロパティを選択します。単一識別子の 1 つのプロパティ、または複合識別子の複数のプロパティを選択します。(単一識別子だけをサポートしているプロバイダもあります)。 他のプロパティよりも先にこれらのプロパティを作成してください。矢印ボタンを使用してプロパティを並べ替えます。

フィーチャをデータ ストアにチェックインする前に、フィーチャの非 null プロパティに値を指定しておく必要があります。値を指定しないと、フィーチャをチェック インできません。

通常、識別子プロパティには自動生成される整数値が使用されます。つまり、新しいフィーチャをこのフィーチャクラスに追加すると、自動的に自動生成された一意の識別子を受け取ります。このプロパティに自動生成される整数値を指定しない場合は、そのプロパティを使用する新しいフィーチャごとに手動で一意の識別子を入力する必要があります。

一意の拘束と順番の指定

フィーチャをこのフィーチャ クラスに追加するために満たす必要のある条件を指定します。[拘束]ボックスにこのフィーチャ クラスの拘束を入力し、[新規作成]をクリックして適用します。 必要に応じて追加の拘束を作成矢印ボタンを使用して拘束を並べ替えます拘束を削除するには、拘束を選択して[削除]をクリックします。この設定が有効なのは、プロバイダで拘束がサポートされる場合に限られます。拘束の構文はプロバイダ固有です。

ロック

フィーチャをチェックアウトするユーザが、チェックインするまで他のユーザを除外するように制御するかどうかを指定します。この設定は、ロックをサポートするプロバイダにのみ適用されます。

ロング トランザクション

ロング トランザクションを有効にするかどうかを指定します。ロング トランザクションでは、1 つ以上のフィーチャに対する条件の変化をグループ化します。ロング トランザクションは、複数のバージョンのフィーチャまたは一連のフィーチャを作成します。この設定は、バージョン情報をサポートするプロバイダにのみ適用されます。

プロパティの設定

名前

[スキーマ]ツリーに表示されるプロパティの名前を入力してください。プロバイダの命名ルールに従う必要があります。

プロパティ 1 つは、フィーチャ クラスの属性 1 つです。たとえば Road フィーチャ クラスには、Name、DateConstructed、または Location というプロパティがあります。

タイプ

非空間データの[データ]を選択します。 オブジェクトの形状を定義するプロパティの[ジオメトリ]を選択します。

データプロパティのデータ型は、Boolean、Byte、Date/Time、Decimal、Single、Double、Int16、Int32、Int64、または String のいずれかです。 たとえば Road フィーチャには DateConstructed というデータ プロパティがありますが、データ型は DateTime です。

既定のジオメトリ プロパティは、点(0 次元)、曲線や直線(1 次元)、サーフェスやポリゴン(2 次元)、ソリッド(3 次元)という4 つのシェイプのいずれかを指定します。フィーチャ クラスには、メインのジオメトリ プロパティが 1 つありますが、ジオメトリ プロパティを追加することもできます。ジオメトリ プロパティは空間コンテキストと関連付けられています。ジオメトリ プロパティのすべてのインスタンスは、同じ座標寸法である必要があります。すべてのプロバイダがすべてのジオメトリの種類やすべての次元をサポートしているわけではありません。たとえば、SHP は XY 点 のみをサポートし、Oracle は XY、XYZ、XYZM、および XYM 点のみをサポートします。既定は XY です。また、高度とメジャーを表す属性 HasElevation (Z)と HasMeasure (M)を設定できます。

フィーチャ クラスには、メインのジオメトリ プロパティが 1 つありますが、ジオメトリ プロパティを追加することもできます。ジオメトリ プロパティは空間コンテキストと関連付けられています。ジオメトリ プロパティのすべてのインスタンスは、同じ座標寸法である必要があります。すべてのプロバイダがすべてのジオメトリの種類やすべての次元をサポートしているわけではありません。たとえば、SHP は XY 点 のみをサポートし、Oracle は XY、XYZ、XYZM、および XYM 点のみをサポートします。既定は XY です。また、高度とメジャーを表す属性 HasElevation (Z)と HasMeasure (M)を設定できます。

関連付けプロパティが一覧に表示されることがありますが、AutoCAD Map 3D toolset ではサポートされていません。既存のデータでこのプロパティ タイプを使用していて、別のデータ ストアに移動したあとにもそのデータを保持したい場合だけ、このプロパティ タイプを選択してください。

説明

プロパティのオプションの説明を入力します。

システムによる生成

既存のスキーマにあるこのプロパティの現在の設定を表すこのオプションは設定できません。[はい]は、このプロパティの値が自動生成されることを示します。通常、識別子プロパティは自動生成されます。識別子プロパティの値は、フィーチャを一意に識別します。

データ属性

スキーマ ツリーの属性名をクリックして、その説明を表示します。プロパティの値を変更または指定できる場合は、そのフィールドに下矢印または点滅カーソルが表示され、値を選択または入力できます。

リストは、選択したプロパティ タイプに使用できる複数の属性を示すように、動的に変更されます。

注:
特定のプロバイダに対しては、次の注意事項が適用されます。
  • SQLite スキーマにおける文字列プロパティの既定の長さを拘束できます。しかし、その拘束に反したとしても AutoCAD Map 3D toolset ではエラーになりません。そのような違反によって、データ ストアのパフォーマンスが低下します。たとえば、文字列フィールドを 2 文字に拘束しても 3 文字入力することができ、エラー メッセージが表示されることもありません。AutoCAD Map 3D toolset は、たとえば、別のデータ プロバイダにバルク コピーを行った場合にその目的の拘束が生じるように、拘束設定の情報を保持します。
  • SQLite プロパティを読み取り専用にすることはできません。
  • Decimal データ タイプは実際には Double データ タイプを使用します。 そのため、多くのプロバイダはデータのチェック イン時に、小数点の数をチェックしません。