Summary
An exchange set is a package of files that contains one catalog file and at least one S-57 dataset file (New Edition [EN] and Revised Edition [ER]). Once you have exported and published your S-57 data, you need to package the S-57 dataset files into a valid S-57 exchange set. This allows a mariner to view the Electronic Navigational Chart (ENC) datasets in an Electronic Chart Display and Information System (ECDIS) for shipboard navigation.
Usage
The S-57 base dataset should be validated and cleared for publishing before creating the exchange set.
This tool packages any referenced external files into a default ENC_ROOT directory as follows:
- ENC: (*.txt, *.jpg, and *.tif)
- IENC: (*.txt, *.jpg, *.tif, and *.xml)
- AML: (*.txt, *.tif, *.pdf, *.html, *.htm, *.jpg, *.avi, and *.mpg)
This tool will automatically read all external files that are present in the same folder as the S-57 product.
The S-57 base dataset is required when creating an exchange set for updates.
When using Updates Only option, update datasets must be consecutive and can start with any number, for example, updates *.002 and *.004 must include *.003.
Syntax
CreateS57ExchangeSet(input_directory, output_directory, layout_format, {updates_only})
Parameter | Explanation | Data Type |
input_directory | A folder that contains at least one S-57 base dataset (*.000) and, optionally, any of the following:
| Folder |
output_directory | The location of an empty folder where the ENC_ROOT folder will be written. The folder must be empty for the tool to execute successfully. | Folder |
layout_format | Specifies the directory and folder structure of the exchange set.
| String |
updates_only (Optional) | Specifies how S-57 update datasets present in the input folder will be processed.
| Boolean |
Derived Output
Name | Explanation | Data Type |
out_directory | The location of an empty folder where the ENC_ROOT folder will be written. | Folder |
Code sample
CreateS57ExchangeSet example (stand-alone script)
The following code example demonstrates how to use the CreateS57ExchangeSet tool.
# Import arcpy module
import arcpy
# Check for Nautical extension
if arcpy.CheckExtension("Nautical") == "Available":
arcpy.CheckOutExtension("Nautical")
else:
raise Exception("Maritime: Charting license is unavailable.")
input_directory="C:/input"
output_directory="C:/output"
layout_format="PRODUCT_LAYOUT"
updates_only="INCLUDE_ONLY_UPDATES"
# Process: Create S-57 Exchange Set
print "Creating exchange set"
arcpy.CreateS57ExchangeSet_nautical(input_directory, output_directory, layout_format, updates_only)
print "complete"
Environments
Licensing information
- ArcGIS Desktop Basic: Requires Maritime Charting
- ArcGIS Desktop Standard: Requires Maritime Charting
- ArcGIS Desktop Advanced: Requires Maritime Charting