Scale Minimum

SCAMIN is an abbreviation of Scale Minimum. The SCAMIN tool references the Compilation Scale of data (also called COMP SCALE) attribute value to automatically populate the SCAMIN attribute field on the applicable feature records. The SCAMIN value of an object determines the display scale below which the object is no longer visible on an Electronic Chart Display and Information System (ECDIS). The purpose of the SCAMIN attribute is to reduce the amount of clutter displayed to the ECDIS user. Running the SCAMIN tool populates the SCAMIN attribute on features based on a configurable XML file. It is designed to modify only features that require change. If no change is required, the feature is unedited; this supports the S-57 update process. Multiple SCAMIN XML files will be created or used depending on the scale of each Electronic Navigational Chart (ENC) or Additional Military Layers (AML) product being produced or maintained.


If in an NIS enterprise environment, SCAMIN is only populated on the product instance, not the NIS.

The SCAMIN.xml file

The SCAMIN tool may require configuration prior to use. The SCAMIN XML file defines the set of rules used by the SCAMIN tool. These rules indicate what SCAMIN value should be encoded on each S-57 feature in the Electronic Navigational Chart (ENC) or Additional Military Layers (AML) databases. If no rule is defined for a specific S-57 object, then no action takes place.


SCAMIN is not set on Group 1 features. Group 1 features can be found in the ENC Product Specification S-57, Appendix B.1.


To help you get started, a SCAMIN.xml sample file is included at the following location:

  • For 32-bit machines—<installation location>\Program Files\ESRINautical\Desktop10.0\Common
  • For 64-bit machines—<installation location>\Program Files (x86)\ESRINautical\Desktop10.0\Common
This file should be copied as a backup template and pasted in a logical location.

Consider the following when configuring rules in the SCAMIN.xml file:


You will need an XML editor or Windows program such as Notepad or WordPad to be able to modify the XML file.

Calculation types

Type name

Abbreviation in .xml file

Calculation type description



Sets a fixed SCAMIN value for each feature in the specified feature class and subtype.



Sets the SCAMIN value to the product of multiplying the compilation scale of the ENC or AML cell and a number established in the XML for the specified feature class and subtype (Reference M_CSCL).



Evaluates each feature for a specified feature class and subtype to see if it is a slave participating in a master/slave relationship. If it qualifies, the SCAMIN value is set equal to the SCAMIN of the master feature. If the feature does not qualify as a slave, it receives the fixed value defined in the SCAMIN rule.

Calculation types

You can use attribute combinations with the Factor and Absolute calculation types to define SCAMIN rules at the attribute level. Attribute combinations set the SCAMIN value for a specified feature class and subtype based on one or more qualifying attributes. Features that have the appropriate attribute(s) receive the SCAMIN value defined in the rule.

Attribute combinations can't be used with the Structure calculation type.

When you enter multiple values, a feature must match all attributes to qualify for that rule.


<Attribute field="BUISHP" value="5"/> 
<Attribute field="NATCON" value="6,9"/> 

To qualify for this SCAMIN value, the feature must have BUISHP = 5 and NATCON =6 and NATCON =9. Certain attribute types, like list fields, can have additional values. For example, NATCON = "4,9,6,3", but 6 and 9 must be present to qualify for the rule. If NATCON = "4,9,3", the feature doesn't qualify because it doesn't have attribute value 6. All attribute values defined in the SCAMIN rule must be present on the feature for the SCAMIN value to be set.

Syntax for calculation types

The following is the rule syntax for the SCAMIN.XML:

<Object FeatureClass ="InputFeatureClassHere" SubType="InputSubtypeHere">
      <CalculationType type="InputCalculationTypeHere"/>
      <SCAMIN value="InputSCAMINValue or MultiplicationFactor"/>

Below are examples of syntax for different calculation types:

  • Absolute calculation

    <Object FeatureClass ="CulturalFeaturesA" SubType="BUISGL_BuildingSingle">
          <CalculationType type="A"/>
          <SCAMIN value="100000"/>

  • Absolute calculation with an attribute combination

    <Object FeatureClass ="CulturalFeaturesA" SubType="BUISGL_BuildingSingle">
         <Attribute field="BUISHP" value="5"/>
         <Attribute field="NATCON" value="6,9"/> 
         <CalculationType type="A"/>
         <SCAMIN value="55555"/>

  • Factor calculation

    <Object FeatureClass ="DangersP" SubType="OBSTRN_Obstruction">
          <CalculationType type="F"/>
          <SCAMIN value="2"/>

  • Structure calculation

     <Object FeatureClass ="AidsToNavigationP" SubType="DAYMAR_Daymark"> 
          <CalculationType type="S"/>
          <SCAMIN value="90000"/>

Order of precedence

When establishing the rules within the SCAMIN.xml file, you must keep in mind that there is an order of precedence. Currently, the tool reads the parameters from the XML in a top-to-bottom manner. If care is not taken to stage the rules correctly, a more detailed rule could be overwritten by a more general rule. Please follow these guidelines to ensure the SCAMIN values are assigned accurately. The calculations should be defined in the following order:

  • List absolute calculations prior to all other calculation types.
  • List factor calculations next. (You can list them first if no single feature class/subtype is listed twice. If so, the last rule will be used to determine SCAMIN.)
  • List attribute combination type calculations next from simple to more complex if more than one type of combination is used for a single feature class/subtype.

    For example, a rule that evaluates aids to navigation, such as beacons with lights, should precede a rule that evaluates beacons without lights. The tool processes the XML from top to bottom, with the last action overriding all the others, so revising the order would mean that all beacons would be set to the same SCAMIN value, even those that have lights.

  • List structure calculations last, as they are dependent on the fact that all potential master features must be processed first. In addition, according to S-57 Appendix B.1 - Annex A, "When the nature of the base structure is unknown or there is no structure object, one of the equipment objects must be chosen as the master object, giving priority to a LIGHTS object, if one exists." LIGHTS features should be processed prior to all other structure calculations.

Chart scale and syntax

One of the limitations of configuring a single SCAMIN XML file is that many features may have their SCAMIN set to a value that does not meet the following requirement:

  • "Where SCAMIN is used, it must always be set to a scale less (i.e., to a smaller scale) [See note] than or equal to the compilation scale of the data as described in clause 2.2.6 [. . .]. Failure to follow this rule will mean that objects will not be displayed on screen until the over-scale warning is activated."

To overcome this limitation, the SCAMIN tool evaluates each feature to see if the SCAMIN value is set to a scale less than the compilation scale of the data (including those that fall within an M_CSCL feature). If a feature is found to be at a larger scale or equal to the ENC or, when applicable, the M_CSCL feature, then the value is set to the next smaller scale listed in the ChartScale portion of the SCAMIN.xml file. If the compilation scale of the ENC (M_CSCL) is not equal to one defined in the .xml file, the next smaller scale is used to determine the SCAMIN value.

Example: The ENC compilation scale is 12000. A feature has a SCAMIN of 9000. This feature fails to meet the requirement that it must be less than the scale of the ENC. Since the ENC compilation scale 12000 is not listed in the example syntax below, 25000 is the next smaller scale available for the SCAMIN value.

Example of the syntax

    <CompilationScale value ="250000"/>
    <CompilationScale value ="100000"/>
    <CompilationScale value ="75000"/>
    <CompilationScale value ="50000"/>
    <CompilationScale value ="25000"/>
    <CompilationScale value ="10000"/>

This may be counterintuitive. Scale is a ratio, so the smaller the number, the closer the feature is to actual size; hence, larger scale.

M_CSCL features

M_CSCL features are used to indicate that a subset of the ENC has a different compilation scale than the main portion of the dataset. Features spatially within these areas are evaluated based on the M_CSCL compilation scale.

The existence of an M_CSCL meta object impacts the behavior of the Nautical Solution SCAMIN tool. Features that are configured to use the factor calculation replace the main ENC compilation scale with the one provided by the M_CSCL feature. In addition, the chart scale used to determine whether features of a smaller scale take the compilation scale from the Meta object. To support this, all features should be split along M_CSCL boundaries; those that are not are flagged in the SCAMIN log file.

Nautical properties

The nautical properties store a number of parameters used by the Nautical Solution. The SCAMIN XML file location parameter stores the location of your SCAMIN XML file.

The SCAMIN lock

The SCAMIN_LOCK attribute is a Boolean field at the feature level used to override the SCAMIN process.




By setting the SCAMIN_LOCK equal to TRUE, the SCAMIN process will preserve the current SCAMIN attribute value on the feature and ignore settings in the SCAMIN.xml file.

False or Null

By setting the SCAMIN_LOCK equal to FALSE, the feature will be processed, and the SCAMIN will be set according to the SCAMIN.xml configuration.


Reviewing the SCAMIN log file

After the SCAMIN tool is run, you can review the SCAMIN log file. This file contains records of which features were modified and reports any issues the SCAMIN tool encountered.

Example: When a feature is not split as it crosses the main ENC cell into a MetaDataA (M_CSCL) feature or if a feature falls exactly on the MetaDataA boundary, then the feature is written to the log file.

Example log entry

Cell Name: US5XXXXM
Feature Class Name: AidsToNavigationP
NOID: {E6C117B8-5B6A-436A-B19B-E162E7137C8C}
Original SCAMIN value: 90000
Updated SCAMIN value: 100000
System Time duration: 00:00:-02
SCAMIN updated successfully.