Follow-on Proposal(s)
The TC Smart Maps layers break down into 2 broad categories:
Layers that are provided by data owners as services (e.g., the National Railway Network , a WMS service provided by NRCAN).
For these cases, we have a Python script and configuration file that can automatically create and update corresponding items in EGIS.
Layers that are provided as datasets by data owners (e.g., the Canadian Geographical Names Database , a shapefile downloadable from FGP).
For these cases, a range of preprocessing steps may be required. At a minimum, the cartographic properties of the resulting service must be defined (symbology, labeling, scale levels, etc.). Some datasets require additional transformation. Lawrence has scripted a large number of these transformations using FME. Still other transformations (or parts thereof) are done by hand by Lawrence.
FME seems to be a suitable candidate for pre-processing of TC Smart Maps layers for the following reasons:
Lawrence is already using it extensively, and he already has a license.
It is capable of updating existing ArcGIS Enterprise feature services.
If necessary, additional functionality can be added to FME using Python scripting.
Case Study
The Populated Places TC Smart Maps layer was used as a case study to demonstrate how ArcGIS Pro and FME can be used to create and maintain a TC Smart Maps layer.
The Populated Places layer uses the Canadian Geographical Names Database (CGNDB) as its source data. The CGNDB data are downloadable as a zipped shapefile from FGP.
The shapefile was downloaded from FGP and unzipped into a working folder.
A new project for Populated Places was created in ArcGIS Pro.
The Populated Places layers were created using the CGNDB data and configured.
The Populated Places layers were published to a feature service using ArcGIS Pro.
An FME workspace was created to update the Populated Places layers. The FME workspace downloads the zipped shapefile from FGP, performs the necessary pre-processing on the data, and updates each of the existing Populated Places layers in EGIS.
Notes
A few notes on this approach:
It requires that data stewards have a license for ArcGIS Pro. Lawrence has a license for ArcGIS Pro, as do many of the GIS power users within TC. Probably most or all of the users who would publish data would be licensed for ArcGIS Pro. As ArcGIS Desktop licenses are consolidated within EGIS, licenses should be available to any users who needs them.
Using ArcGIS Pro to author the map services is the Esri-recommended workflow. This gives the data steward / data publisher precise control over how the services are configured.
FME appears to be able to do all of the data transformations that are ossible in ArcGIS Pro / ArcPy, as well as additional manipulations that are not possible in ArcGIS Pro / ArcPy.
Once the service is created, site backup and restore will preserve the service configuration in the event of failure (e.g., catastrophic failure, accidental deletion).
The ArcGIS Pro project that's used to define the map service should be placed under source control.
The FME workspace should be integrated into Lawrence's FME existing workspace for updating TC Smart Maps.
The FME workspace should be placed under source control.
This approach is not necessarily appropriate for all EGIS clients.
Datasets should not be placed under source control. If it's necessary to store datasets, they should be stored on Azure blob storage or similar.
FME cannot yet update portal item metadata. This would still need to be completed via an external process.