データのフェデレーションとフィードの管理

サイト マネージャーは、ArcGIS Hub サイトで利用可能なフィードを使用して、外部カタログでサイトのパブリック コンテンツをフェデレートし、検索エンジンまたはサード パーティ カタログで検索しやすくすることができます。 マネージャーと訪問者は、フィードを使用してサイト カタログの変更の最新情報を常に把握できます。

カタログ フィードの使用

ArcGIS Hub のフィードを使用すると、サイト カタログの変更 (新規コンテンツの追加など) を把握できます。 カタログにパブリック アイテムがあるすべてのパブリック Hub サイトで、サイト フッターと検索インターフェイスに [フィードの探索] ボタンが表示されます。 これを選択すると、フィードと個々のフィードの追加に必要なコードの表示が開きます。 Hub は、次のフィードをサポートしています。

  • DCAT US 1.1 (<siteURL>/api/feed/dcat-us/1.1.json)
  • DCAT AP 2.1.1 (<siteURL>/api/feed/dcat-ap/2.1.1.json)
  • OGC API - Records (<siteURL>/api/search/definition)
  • RSS (<siteURL>/api/feed/rss/2.0)

DCAT フィード

各サイトには、サイトを通じて共有したいコンテンツが格納されたカタログ (コンテンツ ライブラリ) があります。 サイトのカタログをフェデレートするため、すべてのパブリック Hub サイトに対して自動的に生成されるパブリック フィード出力 URL を共有できます。 Hub では、DCAT US 1.1 と DCAT AP 2.1.1 の 2 つの DCAT フィードがサポートされています。 このカタログ フィード (例: www.yourhubsite.gov/api/feed/dcat-us/1.1.json) は DCAT US 1.1 に準拠します。 Hub の DCAT 構成エディターを使用して、サイトのカタログのコンテンツを編集することもできます。

注意:

パブリックに共有されているデータ アイテムだけが <DCAT type>.json カタログに入力されます。 組織内のプライベート コンテンツは、現在、DCAT カタログの方法で共有したりフェデレートしたりすることはできません。

注意:

各サイトのデータ カタログは、<siteURL>/data.json の DCAT US 1.1 に準拠した、パブリック フィード出力 URL を生成します。 2022 年始めに、ArcGIS Hub は、<siteURL>/api/feed/dcat-us/1.1.json の新しいエンドポイントに正式に移行しました。 詳細については、「ArcGIS Hub サイトの DCAT の構成への変更について」ブログをご参照ください。

OGC API - Records

OGC Records API を使用すると、標準化されたコレクションとリソースのメタデータから地理空間リソースを検出できます。 このフィードを使用して、Hub サイトのカタログをプログラムでクエリ、フィルタリング、検索できます。 このエクスプローラーを使用すると、サイトのクライアント検索インターフェイスを使用せずに、API エンドポイントをテストしたり、カタログを検索したりすることができます。 一般的な使用例としては、ArcGIS Online Map Viewer、GIS デスクトップ アプリケーション、OWSLib など、他のツールでマップ上のフィーチャをレンダリングすることが挙げられます。

RSS フィード

RSS は Web コンテンツ シンジケーションの形式で、特に頻繁に更新または追加されるカタログに対してカタログ エントリに関するメタデータを配布する標準的な方法です。 RSS フィードには、サイトで共有されているすべての一般公開コンテンツのタイトル、説明、公開日など、ハイレベルのメタデータが含まれています。 Hub サイト エディターは、表示されるメタデータを選択できます。つまり、メタデータのデフォルト値をオーバーライドしたり、ユーザーの更新に最も重要な値を指定したりできます。 たとえば、サイト エディターは、コンテンツが更新されたときにハイライト表示するメタデータの値、簡単な説明、および関連する地理的位置を構成できます。 ユーザーは、検索カタログの変更に関する最新情報を入手したり、フィードを RSS リーダー (アグリゲーター) に取り込んで別のサイトでコンテンツを表示したりできます。

フィードの構成と管理

サイト マネージャーは、DCAT US 1.1、DCAT AP 2.1.1、および RSS のサイトの出力フィードに適用される属性と値を選択できます。 ArcGIS Hub のデフォルトの構成を維持するか、特定のフィールド/属性を自分で構成することができます。 フィード エディターに、データセットのメタデータと一致する有効なキーを入力する必要があります。

  1. 編集ボタン 編集 を選択して、サイトを編集モードで開きます。
  2. 上部のナビゲーション バーでサイト メニューを選択して開き、[コンテンツ ライブラリ] を選択します。
  3. [その他のアクション] ボタン その他のアクション を選択して、[フィードの構成] を選択します。
  4. 構成するフィードを選択します。 [構成] エディターで、コードをコピーして、カンマから最後の括弧までの間の任意の場所に貼り付けます。
  5. [保存] を選択します。

デフォルト スキーマの例

ArcGIS Hub は、JSON に記述されたスキーマを使用して、対応するフィードの各レコードに表示されるメタデータのプロパティを決定します。 デフォルトの DCAT US 1.1 スキーマを以下に示します。 "title”: “{{name}}”“description”: {{description}} などのキー/値ペアを含みます。 フィードの各レコードには、キー (“title”) とテンプレート化された値 (“<item’s metadata title>”) があります。 スキーマの設計は、ArcGIS アイテム メタデータと DCAT US 1.1 規格の最も簡単なマッピングに基づいています。

デフォルトの DCAT US 1.1 スキーマ

{
	"title": "{{name}}",
	"description": "{{description}}",
	"keyword": "{{tags}}",
	"issued": "{{created:toISO}}",
	"modified": "{{modified:toISO}}",
	"publisher": {
		"name": "{{source}}"
	},
	"contactPoint": {
		"fn": "{{owner}}",
		"hasEmail": "{{orgContactEmail}}"
	},
	"spatial": "{{extent}}"
}

DCAT US フィードと DCAT AP フィードの "spatial" 属性を編集できます。 Hub は新しいテンプレートでアイテムの範囲 (デフォルト) を使用します。 範囲値を持たないアイテムの場合、空間属性が削除されます。 "spatial" 値を代替の "spatial": "{{extent || 'SPATIAL_FALLBACK'}}" で上書きでき、デフォルトのテンプレートを更新できます。

カスタム スキーマの例

スキーマは、キー/値ペアを追加、更新、または削除することで、カスタマイズできます。 フィードのタイプによっては、一部のキーは編集できません。 次のような変更が加えられたカスタム DCAT US 1.1 スキーマの例を以下に示します。

  • キー/値ペアの追加
  • キー/値ペアの更新
  • キー/値ペアのフォールバックの追加

カスタム DCAT US 1.1 スキーマ

{
 "title": "{{name}}",
"description": "{{description}}",
	"keyword": "{{tags}}",
	"issued": "{{created:toISO}}",
	"modified": "{{modified:toISO}}",
	"publisher": {
		"name": "{{source}}"
	},
	"contactPoint": {
		"fn": "{{owner}}",
		"hasEmail": "{{orgContactEmail}}"
	},
	"culture": "{{culture}}",
	"summary": "{{snippet}}",
	"platform": "ArcGIS Hub",
	"bureauCode": [
		"010:86",
		"010:04"
	],
	"programCode": [
		"015:001",
		"015:002"
	]
}
注意:

カスタム DCAT US 1.1 スキーマには、“culture”, “summary”, “platform”, “bureauCode”“programCode” などの 5 つの新しいキーが追加されています。 “culture” および “summary” キーは、Hub API の最新バージョンである Hub V3 API から取得されるテンプレート値をとります。 “platform”, “bureauCode” および “programCode” キーの値は文字列リテラルです。

カスタム値の例

組織のメタデータ規格に一致するよう、多くのサイト マネージャーは、フィードに表示されるメタデータを調整する必要があります。 キーは、“title”“” などの任意のリテラル文字列をとることができますが、一般にターゲットのメタデータ規格に準拠している必要があります。 対応する値は、文字列リテラル、または Hub V3 API からキーを取得するテンプレートを使用できます。 テンプレートの場合は、最上位またはネストされた V3 API から返されたキーを入力できます。

たとえば、dc.esri.com の ArcGIS Hub フィード例には、“USA Weather Watches and Warnings” というタイトルのパブリック レイヤーがあります。Hub V3 API (https://hub.arcgis.com/api/v3/datasets/c7a223914778420db8bf000b4eb6ec6f) を使用してレイヤーの ID: c7a223914778420db8bf000b4eb6ec6f にアクセスすることで、そのデータセットの JSON メタデータを参照できます。 アイテムに複数のレイヤーがある場合は、アイテム ID の末尾にレイヤー番号を追加します (`<item ID>_<layer number>`)。

上記の API レスポンス例にアクセスする場合は、以下のような記述で始まる JSON レスポンスをご参照ください。

カスタム値の例 DCAT US 1.1

"data": 
{
    "id": "c7a223914778420db8bf000b4eb6ec6f",
    "type": "dataset",
    "attributes": {
        "errors": [],
        "access": "public",
        "additionalResources": [],
  …
}

下方にスクロールすると、“created” (コンテンツの作成日付を示す) など、エディターで選択してテンプレート値として使用するキーがさらに表示されます。 Hub V3 API の値を使用するには、エディターで、“attributes” の下に Hub V3 API キーのテンプレート値を追加します。 たとえば、次のようにフィード レコードに “created” を含める必要があるとします。

カスタム値の例 DCAT US 1.1

{
…
 	"bureauCode": ["010:86","010:04"],
 	"programCode": ["015:001","015:002"],
 	"created": 1610151009000,
…
}
この同じ例では、カスタム DCAT US 1.1 スキーマに次の行を追加します。
{
…
  "bureauCode": [
   "010:86",
   "010:04"
],
  "programCode": [
   "015:001",
   "015:002"
],
  "created": "{{item.created}}"
…
}

コンテンツ マネージャーは、追加のカスタム配布を含めるようにフィードを構成できます。 これらは、コンテンツ アイテムのダウンロード可能なリソースに対して Hub が自動的に生成する既存の配布に追加されます。

Hub のフィードによるカタログのフェデレーション

Hub フィード エディターを使用することで、サイト マネージャーはデータを記述する方法を標準化できます。 サイト マネージャーは、データを取り込む前に、フィードの各データセットに対して、表示するメタデータの値を選択できます。

Data.gov とのフェデレーション

米国では、出力を変更して、国の Data.gov カタログなど、特に大規模なデータ クリアリングハウスを処理できます。 このような相互運用性により、サード パーティのアグリゲーターに、データセットに利用できる複数の形式 (配布) を指定することができます。 配布は、Web サービス、ダウンロード、API として使用するために用意されている形式です。

サイト マネージャーは、サイトの DCAT US 1.1 出力フィードに適用される属性と値を選択できます。 フィード エディターに、データセットのメタデータと一致する有効なキーを入力する必要があります。

CKAN とのフェデレーション

組織が CKAN などのカタログ化ソフトウェアを使用している場合、またはカタログ化ソフトウェアを使用している他の組織と共同作業している場合、Hub サイトのデータ カタログをフェデレートできます。 データの取得をサポートするように、CKAN インスタンスを適切に構成する必要があります。 最初に、CKAN チームが開発および保守し、Data.gov やその他のユーザーがデータセットの取り込みに使用する 2 つのエクステンション (CKAN Harvesting エクステンションCKAN DCAT エクステンション) をインストールおよび構成します。

これらのエクステンションがインストールされていることを確認した後、Harvester の Gather_Consumer サービスと Fetch_Consumer サービスがバックグラウンド サービスとして動作していることを確認します。 詳細については、CKAN のドキュメントをご参照ください。

ArcGIS Hub カタログの取り込み

カタログを取り込むには、次の手順に従います。

  1. http://yourCKANinstance/harvest で、CKAN 取り込み管理ページに移動し、サイン インします。
  2. [取り込みソースの追加] を選択し、Hub サイトに関する情報を入力します。
    • http://yourOpenDataSite/data.json を使用して URL を入力します。
    • 取り込みソースのタイトルに、サイトと似たタイトルを付けます。
    • (オプション) 説明ボックスを入力します。
    • ソース タイプに [DCAT JSON harvester] を選択します。
    • 更新頻度に [手動] を選択します。
    • 終了したら、[保存] を選択します。
  3. [Admin] を選択し、[Reharvest] を選択します。
  4. CKAN インスタンスで取り込みジョブを実行します。

    CKAN で data.json ファイルが処理され、すべてのデータセットが取り込まれます。 取り込まれる内容を調べるには、取り込みソースを表示します。 Hub から取得したすべての説明、タグ、データセットが CKAN のインスタンスからアクセス可能になります。

注意:

.csv または .json ファイルを最初にプレビューするときに遅延が生じる場合があります。これは、Hub がデータのキャッシュを生成するものの、データの処理時に CKAN がこの事態に対応できないためです。 これは、ファイルを次回プレビューするときは発生しません。