公共站点的编辑者可以使用 ArcGIS Hub 站点可用的源将站点的公共内容目录与外部目录联合。 目录源促进了数据目录之间的互操作性,并可以增加通过搜索引擎和第三方目录发现内容的可能性。 管理员和访问者可以订阅源以了解内容目录的更改。
使用目录源
可使用 Hub 源了解站点目录的变化,例如添加了新内容。 对于目录中包含公共项目的所有公共 Hub 站点,会在站点页脚和搜索界面中显示浏览源按钮。 虽然默认情况下所有公共站点都打开了源,但站点编辑者可以关闭公共站点的源。 选择浏览源按钮以显示站点的源 URL 和 API 浏览页面。 Hub 支持以下源:
- RSS (<siteURL>/api/feed/rss/2.0)
- 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 源
RSS(简易资讯聚合)是一种 Web 源格式,用于以标准化的方式发布经常更新的内容,允许用户自动订阅和接收更新。 RSS 源包含已共享到站点的所有公开提供的内容的高级元数据,例如标题、描述和发布日期。 用户可以及时了解搜索目录的变化或将源送入 RSS 阅读器(聚合器)以在其他站点上显示该内容。 Hub 符合 GeoRSS 规范。
DCAT 源
每个站点都有一个内容目录,其中包含您要通过该站点共享的项目。 使用 DCAT 描述目录内容可以提高可发现性,并允许应用程序访问多个目录中的元数据。 它还支持跨目录的联合数据集搜索。
通过共享为每个公共 Hub 站点自动生成的公共源输出 URL 可联合站点的目录。 Hub 支持两个 DCAT 源:DCAT US 1.1. 和 DCAT AP 2.1.1。 此目录源(例如 www.yourhubsite.gov/api/feed/dcat-us/1.1.json)符合 DCAT US 1.1。 您还可以使用 Hub 中的 DCAT 配置编辑器来编辑站点目录的内容。
提示:
仅公开共享的数据项目及其图层可填充 <DCAT type>.json 目录。 当前无法通过 DCAT 目录方法共享或联合组织中的私人内容。
OGC API - Records
使用 OGC API - Records 可通过标准化集合和资源元数据探索地理空间资源。 您可以通过编程方式查询、过滤和搜索 Hub 站点的目录,包括公共和私有项目(如果您具有私有项目的有效令牌)。 使用 OGC API - Records 浏览器可测试 API 端点并搜索目录,无需使用站点客户端搜索界面。 常见用途包括在其他工具中渲染地图上的要素,包括 ArcGIS Online Map Viewer、GIS 桌面应用程序、OWSLib 等。
配置和管理源
源可用于在其目录中包含公共内容的公共站点。 站点管理员可以选择要应用于 DCAT US 1.1、DCAT AP 2.1.1 和 RSS 的站点输出源的属性和值。 可保留 Hub 的默认配置,也可以自己配置某些字段/属性。 在源编辑器中,您必须提供与数据集元数据对应的有效键。 默认情况下,源是可用的,但可以在站点工作空间中关闭。
要配置和管理源,请完成以下步骤:
- 以编辑模式打开站点。
- 选择管理站点
按钮以打开站点工作空间。
- 选择设置,然后选择源窗格。
- 要启用源,请选择启用源。 对于源,选择源类型。
- 在配置编辑器中,将您的代码复制粘贴到逗号后及最后一个括号前的任意位置处。
注:
无法对某些属性进行编辑。
提示:
RSS 源模板具有不同的结构,不允许添加顶级键。
- 选择保存。
RSS 源配置
Hub 站点编辑者可以选择要显示的元数据,即覆盖默认元数据值并提供在用户更新时最重要的值。 例如,站点编辑者可以将元数据值配置为高亮显示内容更新时间、简短描述和相关地理位置。
DCAT 默认方案示例
Hub 将使用以 JSON 编写的方案来确定为相应源中的每条记录显示的元数据属性。 下面是一个默认 DCAT US 1.1 方案。 其中包含 "title”: “{{name}}” 和 “description”: {{description}} 等键值对。 对于源中的每条记录,您将看到键 (“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": "{{extent || 'SPATIAL_FALLBACK'}}" 来覆盖 "spatial" 值,并更新默认模板。
DCAT 自定义方案示例
可以通过添加、更新或移除键/值对来自定义方案。 一些键无法编辑,具体取决于源类型。 下面是一个自定义 DCAT US 1.1 方案示例,其中包含的多项修改如下所示:
- 添加键/值对
- 更新键/值对
- 为键/值对添加回退
提示:
维护有效的源对于公共 Hub 内容的互操作性和可发现性至关重要。 在添加或修改字段之前,请查询相应的资源,因为这可能会导致源无效(Hub 不会验证源)。 无效的源可能会导致在使用源的站点(如 data.gov 和 data.europa.eu)及其他位置联合目录内容时出现问题。 在对源进行自定义后,使用 DCAT US 1.1 验证程序和 DCAT AP 验证程序对源进行验证。
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 方案包括添加 5 个新键:“culture”, “summary”, “platform”, “bureauCode” 和 “programCode”。 键 “culture” 和 “summary” 具有从 OGC API - Records(最新版本 Hub API)中提取的模板值。 键 “platform”, “bureauCode” 和 “programCode” 具有文本字符串值。
自定义值示例
为了符合组织的元数据标准,许多站点管理员希望调整出现在源中的元数据。 键可以是任何文本字符串,例如 “title” 或 “”,但通常它们应符合目标元数据标准。 相应的值可以是文本字符串或者用于从 OGC API - Records 中提取键的模板。 对于模板,可以提供从 OGC API - Records 返回的任何顶级或嵌套键。
例如,在 Hub 源示例站点 (dc.esri.com) 中,有一个标题为 “USA Weather Watches and Warnings” 的公共图层。可通过使用 OGC API - Records (https://hub.arcgis.com/api/search/v1/collections/all/items/c7a223914778420db8bf000b4eb6ec6f) 或 https://hub.arcgis.com/api/search/v1/collections/all/items?id=c7a223914778420db8bf000b4eb6ec6f 访问图层 ID c7a223914778420db8bf000b4eb6ec6f,以查看该数据集的 JSON 元数据。
当访问以上示例 API 响应时,您应看到一个 JSON 响应,如下所示: 自定义值示例 DCAT US 1.1"data":
{
"id": "c7a223914778420db8bf000b4eb6ec6f",
"type": "dataset",
"attributes": {
"errors": [],
"access": "public",
"additionalResources": [],
…
}
如果向下滚动,您将看到更多可供选择并在编辑器中用作模板值的键,例如“created”,它表示创建内容的日期。 要使用来自 OGC API - Records 的值,需要在源编辑器中,为 “attributes” 下的所有 OGC API - Records 键添加模板值。 例如,如果您希望在源记录中包含“created”,例如以下所示:
自定义值示例 DCAT US 1.1{
…
"bureauCode": ["010:86","010:04"],
"programCode": ["015:001","015:002"],
"created": 1610151009000,
…
}
{
…
"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 和其他用户使用的扩展模块来采集数据集:CKAN Harvesting 扩展模块和 CKAN DCAT 扩展模块。
确认已安装这些扩展模块后,确保 Harvester Gather_Consumer 和 Fetch_Consumer 服务作为后台服务运行。 有关详细信息,请查阅 CKAN 文档。
采集 ArcGIS Hub 目录
要采集 目录,请完成以下步骤:
- 转至 CKAN 采集管理页面并登录 http://yourCKANinstance/harvest。
- 选择添加采集源并提供关于 Hub 站点的信息:
- 使用 <siteURL>/api/feed/dcat-us/1.1.json 填写 URL。
- 提供的采集源标题应与站点名称类似。 可以选择性地填写描述框。
- 选择 DCAT JSON Harvester 作为源类型。
- 对于更新频率,选择手动。
- 选择保存。
- 选择管理并选择重新采集。
- 在您的 CKAN 实例中运行采集作业。
CKAN 将处理您的 .json 文件,并包含您所有的数据集。 采集源显示采集的内容。 Hub 中的项目和图层元数据(包括描述、标签和下载格式分发)可通过 CKAN 实例访问。
注:
目录源自动使用下载 API v1(以前使用的下载 API 已弃用)。