将多个定位器组合为复合定位器

关于复合定位器

复合定位器是由一个或多个单一的定位器或地理编码服务组成的虚拟定位器。复合定位器可用于将来自多个源的地理编码组合成单一定位器,无论复合是在本地使用还是作为服务使用。您可以使用复合定位器进行地理编码,以便可以同时根据不同的数据集将地址与多个定位器进行匹配,从而提高匹配结果的地理编码精度。

复合定位器

如果您根据亚特兰大市的权威数据创建了自己的定位器,并且需要对亚特兰大和邻近城市内的位置进行地理编码,则可以使用包含基于亚特兰大街道参考数据和ArcGIS World Geocoding Service 的定位器的复合定位器来返回最佳匹配项。您可以通过复合定位器为参与的定位器创建过滤器,以确保使用您自己的亚特兰大街道定位器来匹配亚特兰大范围内的地址,以及使用 ArcGIS World Geocoding Service来匹配邻近城市中的地址。

使用亚特兰大街道定位器和 ArcGIS World Geocoding Service 来匹配邻近城市的复合定位器的结果

使用复合定位器的另一个理由是,它能够回退到另一个定位器以增加找到最佳匹配项的可能性。例如,县政府可以针对基于交通运输部门街道数据集和评估人员办公室宗地数据集的单个定位器创建一个复合定位器,并用它来定位将过多的水排放到街道的居民。我们要将宗地定位器列在首位,原因是它可准确引用参考数据中的要素,从而使其精度要高于基于门牌号范围的街道中心线定位器。如果地址与宗地不匹配,则定位器可以回退到街道中心线定位器,并在那里查找下一个最佳匹配项。

显示从宗地回退到街道匹配位置的复合定位器的结果

复合定位器可存储对参与定位器和地理编码服务的引用,但不会包含各个定位器的实际地址信息、索引和参考数据。可将复合定位器添加到新工程和现有工程中,添加方式与单个定位器大体相同。

构建复合定位器

构建复合定位器的工作流如下:

  • 创建单个定位器或者识别现有的定位器或地理编码服务。
  • 请使用创建复合地址定位器地理处理工具来指定参与定位器。
  • 映射输入地址字段。
  • 或者,定义选择条件。
  • 指定输出复合定位器的名称并保存目标。

要构建复合定位器,请从现有定位器开始。在构建复合定位器的初始阶段,应计划搜索过程。例如,您可以先搜索包含地方道路数据的定位器。如果没有出现满意的结果,可以再使用包含省际道路或国道的定位器搜索地址。最后,应使用按特定区域(如邮政编码或城市)进行搜索的定位器。

在复合定位器中创建单个定位器

构建复合定位器时,您可能希望基于输入字段的值来指定所使用的定位器。例如,如果复合定位器使用包含某特定城市道路数据的标准定位器,则您可能希望过滤掉没有此特定城市名称的所有地址。使用选择条件将会排除不满足特定地址条件的参与定位器,从而提高地理编码过程的效率。如果未指定选择条件,系统将根据所有参与定位器对地址进行地理编码。

选择条件

对地址表进行地理编码时,需要使用选择条件。在定位窗格中以单行输入格式查找地址时,不适合使用选择条件。

以下步骤介绍的是如何通过创建复合地址定位器地理处理工具创建复合定位器。

  1. 打开地理处理窗格。
    1. 单击工作空间顶部分析选项卡上的工具按钮 工具

      工具按钮

  2. 选择创建复合地址定位器工具。
    1. 地理处理窗格中选择工具箱选项。
    2. 从地理处理工具箱列表中选择地理编码工具选项。
    3. 从地理编码工具列表中选择创建复合地址定位器工具。

      创建复合地址定位器工具

  3. 单击地址定位器文本框旁的浏览按钮 浏览

    将出现地址定位器对话框。

  4. 浏览到要在复合定位器中使用的首个定位器,然后单击打开
  5. 重复将定位器添加到地址定位器文本框(会根据需要显示更多)中的过程,直到添加完所有您想添加到复合定位器中的定位器。

    将参与定位器添加到地址定位器文本框后,会自动给定显示在名称文本框中的名称。在对地址表进行地理编码的过程中,对地址进行地理编码所依据的单个定位器的名称将作为一个属性存储在输出要素类中。也可以单击名称并对其进行更改。名称中不能包含空格或特殊符号。其最大长度为 14 个字符。

    定位器的显示顺序确定了它们在地理编码过程中的使用顺序。列表顶部的定位器最先使用,依此类推。

  6. 查看工具的字段映射部分中的值。

    每个参与定位器都可以指定一组不同的地理编码输入字段。将参与定位器添加到工具后,将自动创建并映射输入字段。字段和字段内容将由参与定位器生成。字段映射部分列出了所有的唯一输入字段,您可看到每个参与定位器的所有输入字段出现次数(子字段)的列表。这些字段是复合定位器的输入字段。

    您可以查看字段映射以决定是否需要修改任何内容。复合定位器创建的输入字段可具有一些默认的字段名和属性。例如,字段名称 Street、City、State 和 ZIP 是由两个参与定位器于步骤 11 在下图中填充。偶尔,您可能发现两个参与定位器本应具有映射相同的字段但却未能这样,这是因为该字段在每个参与定位器中的命名不同。例如,两个定位器可能均具有邮政编码信息,但其中一个将该数据引用为 ZIP 而另一个将数据引用为 ZIPCode。这两个值应映射到同一输入字段,但这两个不同的名称可能会导致映射失败。下一步骤将讨论如何将参与定位器子字段移动到其他输入字段中(这也是字段映射过程的一部分)。

  7. 映射参与定位器的输入地址字段。

    查看每个参与定位器的输入字段,从而确定复合定位器的总输入字段数。创建复合地址定位器工具上显示的这些字段将显示为复合定位器的输入字段。

    字段映射可能涉及到将某参与定位器输入字段移动或重新分组到复合定位器的相应输入字段中。为此,选择您希望修改的输入字段值。子字段值显示在右侧。单击您希望移动的参与定位器子字段值的左侧箭头,从下拉菜单中选择您希望将其移动到的位置,然后单击移动至所选位置按钮。您还可以使用上箭头按钮 上移项目 或下箭头按钮 下移项目 向上或向下移动输入字段,或者可单击删除所选项目按钮 删除所选项目 删除输入字段。单击单个输入字段时会显示这些选项。

    复合定位器创建的输入字段可具有一些默认的字段名和属性。要查看此信息,请单击您希望查看的输入字段,然后单击右侧的属性选项卡。每个字段均包含一个名称和一个别名,即使用新复合定位器进行地理编码时显示在地理编码地址工具上的名称。您可以通过修改文本框中显示的值来修改字段属性。

    如果需要为复合定位器创建新的输入字段,可按照以下各个分步骤操作:

    1. 单击添加新字段按钮 添加新字段

      新字段文本框将显示在现有输入字段下方。

    2. 输入新输入字段的名称。
    3. 选择新输入字段后,单击右侧的属性选项卡。
    4. 名称文本框中键入输入地址字段的名称。

      名称中不应包含空格或特殊符号。其最大长度为 32 个字符。

    5. 如果想要更改显示在地理编码地址工具上的名称,可在别名文本框中输入别名。

      别名中可以包含空格或特殊符号。

    6. 指定输入字段的大小(以字符为单位)。
    7. 通过所提供的复选框,指定在对地址表进行地理编码时输入字段是否为必填字段。
    8. 或者,可以通过单击属性选项卡旁的子字段选项卡,然后单击添加子字段下拉列表并从列表中选择一个值来将子字段添加到输入字段。

      创建后可移动和编辑子字段,方法与其他输入字段大体相同。

    完成字段映射后,将启用设置选择条件功能。每个参与定位器仅支持一个选择条件。

  8. 或者,指定选择条件。
    1. 在工具的选择条件部分中,可以在选择条件列下的每个参与定位器的右侧文本框中输入可选表达式。

      每个参与定位器仅可添加一个选择条件。一个有用的选择条件示例是 "City" = 'Atlanta',您可以将其直接输入到文本框中。

  9. 会自动选择输出定位器名称和目标。要更改这些值,请单击输出复合地址定位器文本框旁的浏览按钮 浏览

    将出现输出复合地址定位器对话框。

  10. 指定定位器的存储位置并为定位器命名,然后单击保存
  11. 如果您需要关于此工具的输入类别的帮助性提示和提醒,请单击输入类别旁的信息按钮 信息 以获取附加信息。
  12. 单击运行运行

    创建复合地址定位器工具

完成该过程后,会将定位器添加到目录窗格的定位器文件夹中。您还可以在之前指定的保存位置查找定位器。您可以将新创建的复合定位器添加到新工程或现有工程,从而在新工程或现有工程中使用该复合定位器对地址表进行地理编码

警告:

选择参与定位器时,可以选择引用另一个复合定位器。但是,请确保未循环使用定位器。例如,如果复合定位器 A 将复合定位器 B 用作参与定位器,复合定位器 B 将复合定位器 A 用作参与定位器,则将形成重复循环,从而导致地理编码失败。

注:
  • 复合定位器中最多可包含 30 个参与定位器,但是建议使用的参与定位器不要超过 10 个,否则地理编码可能会非常缓慢。
  • 第一个参与定位器的空间参考将用作复合定位器的空间参考。使用定位器时,默认情况下,将使用与定位器相同的空间参考来保存地理编码结果。
  • 如果使用创建定位器或者创建要素定位器工具在本地复合定位器中创建参与定位器,则复合定位器将从定位窗格中的这些定位器返回建议。使用创建地址定位器工具创建的参与定位器不会通过存储在文件夹中的复合定位器返回建议。
  • 当将使用创建要素定位器工具创建的定位器添加到复合定位器时,应谨慎对待,原因在于名称要素定位器角色字段的字段映射可能会导致意外行为。最佳做法是使用创建定位器工具基于 POI 角色创建的定位器。
  • 如果在启用建议的情况下创建了任何参与定位器,则将定位器发布或共享为在 ArcGIS Enterprise 门户中托管的地理编码服务或定位器时,这些定位器也会在复合定位器中启用建议。创建的定位器若未启用建议,则将不具有此功能。因此,您的复合定位器可能完全启用建议或部分启用建议。

相关主题