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>\ArcGIS\MaritimeCharting\Desktop10.7\Common\S-58IgnoreList.txt.
Syntax
arcpy.nautical.ValidateS57File(in_s57_file, in_output_directory, {in_update_cells}, {in_regional_rules}, {ignore_list})
Parameter | Explanation | Data Type |
in_s57_file | Base file in the S-57 format. | File |
in_output_directory | The location where the validated S-57 log will be created. | Folder |
in_update_cells (Optional) | Update to a base file in the S-57 format. | File |
in_regional_rules (Optional) | For IENC cells, some validation rules don't apply in certain regions, or 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 |
ignore_list (Optional) | A text file that will be used to disable specific S-58 checks. | File |
Derived Output
Name | Explanation | Data Type |
out_log_file | File |
Code sample
ValidateS57File (Python window)
The following Python window script demonstrates how to use the ValidateS57File tool.
# Import arcpy module
import arcpy
# Check for Nautical extension
print "Checking out Maritime extension"
arcpy.AddMessage("Checking out Maritime extension")
if arcpy.CheckExtension("Nautical") == "Available":
arcpy.CheckOutExtension("Nautical")
else:
arcpy.AddError("Maritime: Charting license is unavailable.")
# Tool variables
US3CA52M_000 = "C:\\VALIDATES57FILE\\US3CA52M.000"
ValidateS57file = "c:\\ValidateS57file"
US3CA52M_001 = "C:\\ValidateS57file\\US3CA52M.001"
regional_rule = “United States”
ignore_list = r'C:\Program Files (x86)\ArcGIS\MaritimeCharting\Desktop10.7\Common\S-58IgnoreList.txt'
# Execute the tool
arcpy.ValidateS57File_nautical(US3CA52M_000, ValidateS57file, US3CA52M_001, regional_rule, ignore_list)
Environments
Licensing information
- Basic: Requires ArcGIS Maritime
- Standard: Requires ArcGIS Maritime
- Advanced: Requires ArcGIS Maritime