Understanding electronic nautical charts before using them in a GIS
Introduction
ENC – Electronic Navigational Charts are now the global standard for professional maritime navigation.
Produced by national hydrographic services, they comply with strict standards defined by the International Hydrographic Organization (IHO).
However, when attempting to use them in a GIS such as QGIS, one thing quickly becomes clear:
an ENC is not a conventional vector layer.
It is neither an enhanced shapefile, nor a simple GeoPackage, nor even an ordinary spatial database.
ENCs are complex information objects, designed primarily for navigation, not for GIS analysis.
This article aims to explain why ENCs are complex, and how this complexity explains the difficulties—but also the richness—of using them in QGIS.
1. A very strict international standard
ENC are defined by the S-57 standard (and more recently S-101), published by the IHO.
This standard requires:
- a precise data structure
- standardized vocabulary
- strict interpretation rules
- a clear separation between:
- geometry
- semantics
- presentation
👉 Result:
the data is consistent worldwide, but difficult to divert from its original use.
2. ENCs are not “layers,” but objects.
2.1 Object-oriented logic
In an ENC:
- each entity is a nautical object
- each object has:
- a standardized type (e.g., DEPARE, COALNE, LNDARE)
- a geometry
- a list of coded attributes
Examples of objects:
- depth zones
- navigation aids
- isolated hazards
- coastlines
- restricted areas
👉 Unlike traditional GIS,
we do not start with a geometry but with a semantic object.
2.2 Coded and non-explicit attributes
S-57 attributes:
- are often digitally coded
- require correspondence tables
- only make sense within the context of the standard
Example:
- CATOBS = 3
- WATLEV = 2
Without IHO documentation, these values are unreadable.
3. A strict separation between geometry and information
3.1 Shared geometries
In an ENC:
- multiple objects can share the same geometry
- lines and nodes are stored separately
- topology is implicit
👉 This allows for:
- high accuracy
- efficient updating
👉 But it complicates:
- direct import into a GIS
- understanding spatial relationships
3.2 No embedded symbolization
ENC charts do not contain their own graphic style.
Visual representation:
- depends on the navigation system (ECDIS)
- follows complex rules (S-52)
In QGIS:
- styles must be recreated
- understand which rules apply depending on the context
4. The concept of “Purpose” and scale
An ENC is not universal:
it is produced for a specific use, called Purpose.
Examples:
- general view
- coastal navigation
- port approach
- detailed port
Each ENC:
- has a target scale
- is not intended to be used out of context
👉 In a GIS, displaying all ENCs without filtering produces:
- duplicates
- inconsistencies
- visual conflicts
5. A logic designed for safety, not for analysis
ENC charts are designed to:
- avoid human error
- ensure unambiguous reading
- comply with priority rules
- ensure navigational safety
They are not designed for:
- free spatial queries
- classic GIS joins
- multi-thematic analyses
👉 Any GIS exploitation therefore requires:
- restructuring
- interpretation
- sometimes simplification
6. Why a dedicated plugin is necessary in QGIS
Importing an ENC “brutally” into QGIS often leads to:
- dozens of unreadable layers
- incomprehensible fields
- fragmented geometries
- a loss of nautical meaning
A tool such as S57Manager allows you to:
- comply with S-57 logic
- structure data
- make attributes usable
- prepare for display and analysis
Conclusion
ENC are complex by design.
This complexity is not a flaw:
- it guarantees reliability
- international consistency
- navigation safety
But for the GIS world, it requires
appropriate tools, a basic understanding of the standard, and an approach that respects nautical logic.
👉 Understanding this complexity is the first step before:
- importing into QGIS
- choosing PostGIS or GeoPackage
- using a specialized plugin such as S57Manager
🔗 Articles to follow
- S57Manager: managing S-57 ENC data in QGIS with PostGIS
- S57Manager: using S-57 ENC data in QGIS with GeoPackage
- Importing NOAA ENC nautical charts directly into QGIS with S57Manager