LRS データ モデル

Location Referencing ライセンスで利用可能です。

LRS (リニア リファレンス システム) は、キャリブレーションされたルートを格納および編集できるフィーチャクラスとテーブルのコレクションです。

LRS では、中心線と呼ばれる単一のポリライン フィーチャクラスを使用し、複数ルートのジオメトリを格納できます。 中心線ジオメトリは、ルートの定義とともに、ネットワーク フィーチャクラスに格納されます。

ネットワーク内のルートと、ジオメトリを提供する中心線の間には、多対多のリレーションシップが存在します。 このため、ルートは通常、複数の中心線フィーチャで構成され、中心線フィーチャは複数ネットワークの複数ルートに属すことができます。

LRS データ モデル

ルートには、ジオメトリに加えて、メジャーも含まれる必要があります。 LRS は、イベント レイヤーがマップの正しい位置に表示されるよう、ルート メジャーを使用します。 メジャーは、キャリブレーションと呼ばれるプロセスでルートに追加されます。 ルートのキャリブレーション方法を明示的に制御するため、LRS はキャリブレーション ポイント フィーチャクラスを使用します。

キャリブレーション ポイントは、メジャー値、ルート参照、およびネットワーク ID を格納するポイント フィーチャです。 これら 3 つのアイテムを組み合わせることで、リニア リファレンス方法 (LRM) が構成されます。 キャリブレーション ポイントをルートに適用し、LRS ネットワークを作成することで、LRM が作成されます。

LRS は、次のフィーチャクラスおよびテーブルで構成されます。

  • 中心線 - ルートのジオメトリを格納するポリライン フィーチャクラス。
  • 中心線シーケンス - 中心線およびルート間のリレーションシップを管理する相互参照テーブル。
  • キャリブレーション ポイント - ルート メジャー値を格納するポイント フィーチャクラス。
  • レッドライン - LRS の変更内容を伝えるためのマークアップ フィーチャを格納するポリライン フィーチャクラス。
注意:

[LRS の作成 (Create LRS)] ツールを実行すると、フィーチャクラス、テーブル、および必要なすべてのフィールドが作成されます。

フィーチャ データセットの要件

Pipeline Referencing のデータのサービスベースの編集をサポートするには、LRS データ モデルの特定のフィーチャクラスが、ジオデータベースのフィーチャ データセットに存在する必要があります。 フィーチャクラスとテーブルが事前にモデル化されている場合、次のフィーチャクラスがフィーチャ データセットに含まれている必要があります。

  • キャリブレーション ポイント
  • 中心線
  • イベント
  • 交点
  • ネットワーク
  • レッドライン

注意:
  • [LRS の作成 (Create LRS)] ツールを使用して LRS および最小スキーマ アイテムを作成した場合、これらの必須フィーチャクラスは自動的にフィーチャ データセットに配置されます。
  • LRS が ArcMap または ArcGIS Pro 2.2 以前を使用して作成された場合、これらのフィーチャクラスをフィーチャ データセットに移動し、[LRS の変更 (Modify LRS)] ツールを実行して、ArcGIS Pro 2.3 以降で LRS を編集する必要があります。

バージョン管理の要件

サービスとして公開する LRS データは、ブランチ バージョン対応している必要があり、サービスとして公開する際にバージョン管理機能が有効になっている必要があります。

公開する前に、すべての LRS フィーチャクラスおよびテーブルに、GlobalID などのバージョン管理に必要なフィールドを追加する必要があります。

ブランチ バージョニングの要件を使用したデータセットの登録の詳細

リニア リファレンスおよびバージョン管理を使用した公開の詳細

LRS データセット

LRS (リニア リファレンス システム) データセットは、LRS に関係するすべてのフィーチャクラスとともに、ジオデータベースのフィーチャ データセット内にあります。

注意:

[コンテンツ] ウィンドウまたは [カタログ] ウィンドウのいずれかから、LRS の階層を表示できます

ArcGIS Pro 2.3 で、LRS データセットを作成するツールを以下に示します。

  • [LRS の作成 (Create LRS)] - 新たに作成された中心線、キャリブレーション ポイント、およびレッドライン フィーチャクラスは、指定した LRS 名と同じ名前のフィーチャ データセット内部に作成されます。
  • [既存のデータセットから LRS を作成 (Create LRS From Existing Dataset)] - まだ LRS に登録されていない既存の中心線、キャリブレーション ポイント、およびレッドライン フィーチャクラスは、共通のフィーチャ データセット内部に存在する必要があります。 フィーチャ データセット名は LRS 名と異なっていてもかまいません。
  • [LRS の変更 (Modify LRS)] - LRS に登録されている既存の中心線、キャリブレーション ポイント、およびレッドライン フィーチャクラスは、共通のフィーチャ データセット内部に存在する必要があります。 フィーチャ データセット名は LRS 名と異なっていてもかまいません。

次のツールを実行するには、LRS データセットが必要です。

LRS コントローラー データセットに含まれる情報の一部は、arcpy.Describe 関数を使用して確認できます。 LRS コントローラー データセットを含むジオデータベースの LRS メタデータとイベントの振舞いルールを確認するには、次の関数を使用します。

FileGDB:

desc = arcpy.Describe("C:\\Data\\LRData\\LrsSchema.gdb\\Lrs\\Lrs")

          lrsXML = desc.lrsMetadata

          eventBehaviors = desc.eventBehaviorRules

EnterpriseGDB:

desc = arcpy.Describe("C:\\Data\\LRData\\LrsSchema.sde\\GPRefresh.DBO.LRS\\GPRefresh.DBO.LRS")

          lrsXML = desc.lrsMetadata

          eventBehaviors = desc.eventBehaviorRules

ファイルへの書き込み:

txtFile = open("C:\\Data\\LRData\\lrsXML.xml", "w")

          txtFile.write(lrsXML)

          txtFile.close()

中心線フィーチャクラス

中心線フィーチャクラスは、LRS で構築するすべての LRS ネットワークの単一のジオメトリ ソースを提供します。

中心線フィーチャクラスの各フィーチャは、1 つのパイプ ユニットを表します。 これらを使用してルートとの 1 対 1 のリレーションシップを表したり、これらを結合してより大きなルートを形成したりできます。

注意:

中心線フィーチャクラスの許容値および座標精度の設定は、Pipeline Referencing に登録されたネットワーク、交点、およびイベント フィーチャクラスに反映されます。 中心線フィーチャクラスの空間参照、XY 許容値と座標精度、Z 許容値と座標精度は、LRS にデータを読み込む際に使用したソース ルートと一致している必要があります。

注意:

中心線フィーチャクラスは Z 対応である必要があります。

LRS では、中心線フィーチャクラスに中心線 ID フィールドが含まれている必要があります。 [LRS の作成 (Create LRS)] および [既存のデータセットから LRS を作成 (Create LRS From Existing Dataset)] ツールを使用すると、中心線 ID フィールドをマッピングすることができます。

フィールドデータ タイプ距離NULL 許容説明

中心線 ID

GUID

はい

中心線ジオメトリの一意の ID

注意:

CenterlineID フィールドは、システムが保守するフィールドです。 このフィールドは手動で編集しないでください。

中心線シーケンス テーブル

ルートおよび中心線間の多対多のリレーションシップは、中心線シーケンス テーブルと呼ばれる相互参照テーブルで管理されます。 ルート ID は LRS 内で一意ではないため、中心線シーケンス テーブルには LRS ネットワークのネットワーク ID フィールドへの参照も含まれています。 ネットワーク ID とルート ID の組み合わせにより、LRS 内の各ルートを一意に識別することができます。 ルート ID はネットワーク間で一意ではない場合があるため、ネットワーク ID を使用すると、LRM を区別するのに役立ちます。

1 つの中心線フィーチャは多くのルートに属すことができ、1 つのルートを複数の中心線で構成することができます。 中心線シーケンス テーブルには、中心線とネットワークの組み合わせごとに 1 つ以上のレコードが必要です。

中心線シーケンス テーブルで最小限必要となるフィールドは次のとおりです。

フィールドデータ タイプ距離NULL 許容説明

中心線 ID

GUID

はい

中心線ジオメトリの一意の ID。

FromDate

Date

8

はい

中心線の一部がアクティブになる日付。

ToDate

Date

8

はい

中心線の一部が廃止される日付。

RouteId

文字列または GUID

38 以上

はい

ルートの一意な ID。

NetworkId

Short Integer

5

はい

各ルートが属している LRS ネットワークの一意の ID。

注意:

中心線シーケンス テーブルのレコードは手動で編集しないでください。

注意:

NetworkID フィールドは、LRS の作成時に dLRSNetworks コード値ドメインに登録されます。

キャリブレーション ポイント フィーチャクラス

キャリブレーション ポイント フィーチャクラスを使用して、ネットワーク内のルートにルート メジャーを割り当てます。 ルートは、ルートに沿った任意の 2 つのキャリブレーション ポイント間の内挿された距離を計算することでキャリブレーションされます。 キャリブレーション ポイントは LRS ネットワークに固有で、LRM のメジャー コンポーネントを構成します。 キャリブレーション ポイントのルールは次のとおりです。

  • LRS に登録されているすべての LRS ネットワークに対して、キャリブレーション ポイント フィーチャクラスは 1 つだけです。
  • 各ルートに、最低 2 つのキャリブレーション ポイントが必要です。
  • キャリブレーション ポイントは単調である必要があります。このため、ルートに沿って厳密にメジャーが増加または減少します。 非単調なルートでもキャリブレーションは行われますが、イベントの位置や振舞いが未定義になることがあります。
  • 特定のメジャー値を維持するには、特定の位置にキャリブレーション ポイントを追加します。

注意:

キャリブレーション ポイント フィーチャクラスは、中心線フィーチャクラスと同じ空間参照、XY 許容値および Z 許容値、および座標精度を備えている必要があります。

キャリブレーション ポイント フィーチャクラスは Z 対応である必要があり、M 対応にすることはできません。

キャリブレーション ポイント フィーチャクラスで最小限必要となるフィールドは次のとおりです。

フィールドデータ タイプ距離NULL 許容説明

メジャー

Double

8

はい

LRS ネットワーク内のルートに格納されているメジャー値。

開始日

Date

8

はい

キャリブレーション ポイントがアクティブになった日付。

終了日

Date

8

はい

キャリブレーション ポイントが廃止された日付。

ルート ID

文字列または GUID

中心線シーケンス テーブルの RouteID フィールドと同じタイプおよび長さ

いいえ

ルートの一意な ID。

ネットワーク ID

Short Integer

5

はい

LRS ネットワークの一意の ID。

注意:

NetworkID フィールドは、LRS の作成時に dLRSNetworks コード値ドメインに登録されます。

キャリブレーション ポイントを生成するには、[キャリブレーション ポイントの生成 (Generate Calibration Points)] ツールを使用します。

レッドライン フィーチャクラス

レッドライン フィーチャクラスには、Pipeline Referencing で使用できる多くのルート編集機能の実行に必要な基本情報が含まれています。 このマークアップ フィーチャは、LRS Editor に必要な変更内容を警告するために使用される、今後のルート編集操作で使用するプレースホルダーです。

注意:

レッドライン フィーチャクラスは、中心線フィーチャクラスと同じ空間参照、XY 許容値、および座標精度を備えている必要があります。

レッドライン フィーチャクラスは Z 対応である必要があり、M 対応にすることはできません。

レッドライン フィーチャクラスで最小限必要となるフィールドは次のとおりです。

フィールドデータ タイプ距離NULL 許容説明

始点メジャー

Double

8

はい

割り当て変更の始点メジャー。

終点メジャー

Double

8

はい

割り当て変更の終点メジャー。

ルート ID

文字列または GUID

中心線シーケンス テーブルの RouteID フィールドと同じタイプおよび長さ

いいえ

ターゲット ルートの一意な ID。

ルート名

String

38

はい

ルートの名前。

発効日

Date

8

はい

ルートの変更が有効になる日付。 発効日が適用される場合は、変更の影響を受けるイベントにこの日付が適用されます。

アクティビティ タイプ

Short Integer

5

はい

実行する必要がある編集アクティビティ (例: ルートの延長)。

ネットワーク ID

Short Integer

5

はい

LRS ネットワークの一意の ID。

注意:

LRS の作成時に、NetworkId フィールドは dLRSNetworks コード値ドメインに登録され、ActivityType フィールドは dActivityType コード値ドメインに登録されます。

レッドライン フィーチャには、具体的な情報または一般的な情報を入力することができます。 GIS アナリストがレッドライン フィーチャを検証し、正確なジオメトリがデータベースに入力されることを前提としています。 大まかにスケッチされたレッドラインは、LRS への変更が必要であることを示し、その一般的な位置を表しています。

ネットワーク フィーチャクラス

ネットワーク フィーチャクラスには、LRS で使用されるルート フィーチャが含まれています。 これらのルートには、属性、中心線フィーチャクラスのジオメトリ、およびキャリブレーション ポイント フィーチャクラスのキャリブレーションが含まれています。

これらのエレメントを組み合わせることで、LRM のルートが構成され、そのルート上のイベントの特定に使用できます。 各ルートには、ルート ID と呼ばれる一意のルート識別子が含まれている必要があります。

ルート ID フィールド データは、ネットワーク、イベント、キャリブレーション ポイント フィーチャクラス、および中心線シーケンス フィーチャ テーブル全体で矛盾がないようにする必要があります。

RouteId フィールド データ タイプは、ネットワーク、イベント、レッドライン、キャリブレーション ポイント フィーチャクラス、および中心線シーケンス フィーチャ テーブル全体で矛盾がないようにする必要があります。

注意:

ネットワーク フィーチャクラスが LRS の作成前にモデリングされている場合、XY 許容値、Z 許容値、および座標精度が中心線フィーチャクラスと一致していることを確認します。 ネットワークの M 許容値と座標精度は、ネットワーク フィーチャクラスの空間参照の計測単位と、使用する LRM の計測単位に基づきます。 計測単位が同じである場合、M 許容値および座標精度は XY 許容値および座標精度に一致します。 計測単位が異なる場合、XY 許容値および座標精度を対応する M 許容値および座標精度に変換する必要があります。

たとえば、ネットワーク フィーチャクラスの空間参照がメートル単位で、XY 許容値が 0.001 メートル、XY 座標精度が 0.0001 メートルであるとします。 LRM の計測単位がメートルの場合、M 許容値は 0.001、M 座標精度は 0.0001 になります。 ただし、LRM の計測単位がキロメートルである場合、XY 許容値および座標精度値は、M 許容値および座標精度に合わせてメートルからキロメートルに変換する必要があります。 この例では、M 許容値は 0.000001、座標精度は 0.0000001 になります。

LRS の許容値と座標精度の設定の詳細

ネットワーク フィーチャクラスで最小限必要となるフィールドは次のとおりです。

フィールドデータ タイプ距離NULL 許容説明

開始日

Date

8

はい

中心線の一部がルートのアクティブな部分になる日付。

終了日

Date

8

はい

中心線の一部がルートの廃止された部分になる日付。

ルート ID

文字列または GUID

中心線シーケンス テーブルの RouteId フィールドと同じタイプおよび長さ

いいえ

ルートの一意な ID。

ルート名

String

255

いいえ

ルートの一意な名前。

注意:

ネットワーク フィーチャクラス フィールドは直接編集しないでください。 これらは Location Referencing によって管理されます。

エンジニアリング ネットワークなどのラインをサポートする LRS ネットワークを作成する場合は、次のフィールドを構成する必要があります。

注意:

ライン順序は、100 刻みで構成することをお勧めします。 この構成では、最初のルートのライン順序が 100 で、同じラインに沿った各ルートのライン順序は 100 刻みで増加します (100、200、300 など)。

フィールドデータ タイプ距離NULL 許容説明

ライン ID

文字列または GUID

中心線シーケンス テーブルのルート ID フィールドと同じタイプおよび長さ

はい

ラインの一意な ID

ライン名

String

ルート名フィールドと同じ長さ

はい

ラインの名前

ライン順序

Long

はい

ライン上のルートの順序

Events

イベント データ モデルの詳細

LRS 交点クラスの作成の詳細