Seamarks/Seamark Tagging Schema
S-100
International Hydrographic Organization (IHO) defined an universal data model S-100 (document) with standardized objects, sub-groups of objects (called categories of objects), attributes with value lists and value formats. The S-100 standard is the basis for further product specifications including S-101 for Electronic Navigational Charts (ENCs). IHO grants free access to related documents in a Geospatial Information Registry. This database allows to search and browse in a Data Dictionary and so called Portrayal Register, which contains map symbols including their SVG and XML origin.
Seamark schema
There is a tag schema based on elements defined in the S-57 & S-101 catalogues. The six-letter mnemonics used in that standard have been replaced by words or underscore separated English phrases for human readability:
- List of S-57/S-101 Objects
- List of S-57/S-101 sub-groups of objects
- List of S-57/S-101 attributes (not complete)
The format of tags is as follows:
Scheme form | Description |
---|---|
seamark:type=<object> | Parent object. Any given node or way can be tagged with more than one S-57/S-101 object - e.g. a buoy with a light and topmark would be tagged with three objects and their attributes (see example below). These objects are structured as a parent-child relationship ( Hierarchical database model) with one parent object and zero or more child objects. The parent object is indicated with a tag in this scheme form with a value corresponding to a valid object key. This tag must be used (once and only once) on a node or way to be rendered in nautical charts. If it is absent, the renderer will ignore all other seamark tags on that node or way .
Note that in the case of lights, there are two possible symbols (light_major & light_minor). Attributes with more than one value should specify those values by a semi-colon separated list. |
seamark:<object>:<attribute>=<value> | <object> is the object key, <attribute> is the attribute key and <value> is the attribute value. |
seamark:<attribute>=<value> | Attributes that are common to all objects on a node or way should be specified in this scheme form. |
seamark:name=<text string> | E.g. there is usually only one name associated with all objects on a node or way . This name should be specified by this tag. |
Example
An example of this tagging scheme is illustrated here. This is of a buoy with topmark and light:
seamark:type=buoy_lateral seamark:buoy_lateral:category=port seamark:buoy_lateral:shape=pillar seamark:buoy_lateral:colour=red seamark:topmark:shape=cylinder seamark:topmark:colour=red seamark:light:colour=red seamark:light:character=Fl seamark:light:period=5 seamark:name=5N