ICN Coding in S1000D


S1000D includes many authoring requirements, which can be tailored for a project or organization. One of these authoring requirements requires a project or organization to determine the identification method for icons, diagrams, pictorial illustrations, and multimedia.

What are ICNs?

Information Control Numbers (ICNs) are used to uniquely identify graphics (element ), symbols (element ), and multimedia objects (element ) included within data modules (e.g., ʹgifʹ, ʹtifʹ, ʹjpgʹ, ʹcgmʹ, ʹpngʹ, ʹmp4ʹ, ʹaviʹ, ʹqtʹ).


Beginning with the release of Issue 4.0, ICNs can be based on either a Commercial and Government Entity (CAGE) code or a model identifier. Before Issue 4.0, ICNs used only model identifiers.

What is the difference between the two ICN coding methods?

Using the CAGE-based identification method allows for fast population of the ICN; while using the model ID-based method is more time consuming and does not always make sense, if the graphic or multimedia object is reused in another context.

The CAGE-based method has four segments. Three of these segments contain fixed position lengths and one is a variable length:

  1. Segment 1 – the CAGE code (5 characters)
  2. Segment 2 – the unique identifier (variable length of 5-10 characters)
  3. Segment 3 – the issue number (three digits)
  4. Segment 4 – the security classification (two digits)

CAGE-based ICN example: ICN-07GB6-BIKECI0001-001-01.CGM

Example breakdown:

ICN- 07GB6- BIKECI0001- 001- 01. CGM
Prefix CAGE Unique ID Issue # Security

The model ID-based method has nine segments. Six of these segments contain fixed position lengths and three are variable lengths:

  1. Segment 1 – the model identifier (variable length of 2-14 characters)
  2. Segment 2 – the system difference code (variable length of 1-4 characters)
  3. Segment 3 – the Standard Numbering System (SNS) (variable length of 6-9 characters)
  4. Segment 4 – the responsible partner code (1 character)
  5. Segment 5 – the CAGE code (5 characters)
  6. Segment 6 – the unique identifier (5 characters)
  7. Segment 7 – the variant code (1 character)
  8. Segment 8 – the issue number (three digits)
  9. Segment 9 – the security classification (two digits)

Model ID-based ICN example: ICN-S1000DBIKE-AAA-D000000-0-U8025-00001-A-001-01.PNG

Example breakdown:

ICN- S1000DBIKE- AAA- D000000- 0- U8025- 00001- A- 001- 01. PNG
Prefix Model ID SDC SNS RPC CAGE Unique ID Variant Issue # Security

Using the model ID-based method, with the SNS, could create some confusion when authoring and reusing ICNs among data modules.

For example, if the model ID-based ICN example above were used in several data modules, it is immediately evident one of those data modules is DMC-S1000DBIKE-AAA-D00-00-00-00AA-001A-A_001-00_EN-US.XML, matching the model ID (S1000DBIKE),SDC (AAA), and SNS (D000000) between the data module and the ICN. Since this ICN happens to be a publisher’s logo, it could be used in any data module. However, looking at the SNS, it would not be obvious what other data modules included this ICN, since the S1000D bike data set includes additional model IDs of S1000DLIGHTING and BRAKE. Additionally, as with any project, the bike data set includes various SNSs which detail the breakdown of the bike.

Which ICN coding method is better?

The ICN coding method should be based on the complexity of the project and the authoring environment. That is, if a project is able to look-up ICNs using an integrated authoring selection, either method is fine. If ICNs must be manually located (searching through ICN filenames), the model ID-based ICN method will provide a greater ability to sort and locate a needed graphic based on the SNS contained in the ICN. If an ICN, such as a publisher’s logo, is used in all data modules, then the CAGE-based method is better suited (no model ID, SDC, or SNS limitations).

For projects converting data from another standard (e.g., MIL STD 40051/MIL STD 2361, MIL STD 3001), the unique ID can include the legacy graphic entity key name (depending on the character length). Using the legacy entity name provides a tracking method for the graphics before and after conversion. For example, a legacy graphic entity key name such as ‘A60548’ identifies the target graphic. That same graphic key name can be used as the unique ID in an S1000D CAGE-based example, such as ICN-07GB6-A60548-001-01.CGM.

What happens when both ICN coding methods are used?

As long as the presentation for both ICN coding methods is supported, no issues occur with mixing the two methods in a publication. Projects should ensure that business rules exist for both ICN methods.


While both ICN coding methods have benefits, projects should consider all aspects when determining the method which will work best at the beginning and for the duration of the product’s lifecycle.

For more information

For additional information on ICNs and ICN coding methods or to see how Pentecom can help your company with converting your legacy data to S1000D; call 888.773.9067 or e-mail us at info@pentecom.com.

Download this article in PDF: ICN Coding in S1000D

No Comment

Post A Comment