Available with Maritime Charting license.
Summary
Validates an ENC or IENC file and generates an .S58 file as a result.
Usage
Multiple revision (ER) files, also known as updates, must be validated at the same time as the base file. Individual ER files cannot be validated at a later time.
A new edition (EN) base file can be validated.
A catalog file (.031) can be validated. When a catalog file is chosen for validation, only the S-58 checks pertaining to the Exchange Set or data structure will be run.
The tool will output a shapefile and an XML file of the S-58 errors discovered during the validation process.
An ignore list text file can be used to disable specific S-58 checks.
A sample ignore list text file is available at <install location>\Resources\Maritime\S-58IgnoreList.txt.
Note:
Remove the pound sign (#) from the beginning of the line for each check you want to ignore.
Syntax
arcpy.maritime.ValidateS57File(in_s57_file, out_directory, {in_update_cells}, {regional_rules}, {in_ignore_list})
Parameter | Explanation | Data Type |
in_s57_file | The base cell file (*.000). | File |
out_directory | The location where the validated S-57 log will be created. | Folder |
in_update_cells [in_update_cells,...] (Optional) | The update cell files (*.001 - *.999). | File |
regional_rules (Optional) | For IENC cells, some validation rules don't apply in certain regions, or they check for different objects and attribution. The selected region will honor the rules set forth in the Recommended Inland ENC Validation Checks for that region.
| String |
in_ignore_list (Optional) | A text file containing a list of checks to ignore in the output log file. | File |
Derived Output
Name | Explanation | Data Type |
out_log_file | The .S58 file in XML format that contains the errors and warnings from the validation. | File |
Code sample
The following Python window script demonstrates how to use the ValidateS57File tool:
# Import arcpy module
import arcpy
# Tool variables
base_cell = r"C:\ValidateS57file\US3CA52M.000"
output_path = r"C:\ValidateS57file"
update_cells = [r"C:\ValidateS57file\US3CA52M.001", r"C:\ValidateS57file\US3CA52M.002"]
regional_rule = ""
ignore_list = r"C:\Program Files\ArcGIS\Pro\Resources\Maritime\S-58IgnoreList.txt"
# Execute the tool
arcpy.maritime.ValidateS57File(base_cell, output_path, update_cells, regional_rule, ignore_list)
Environments
Licensing information
- Basic: No
- Standard: Requires ArcGIS Maritime
- Advanced: Requires ArcGIS Maritime