Information codes
The information code (IC) is one field of a Data Module Code (DMC). It answers a single question: what kind of information does this data module hold?
The Standard Numbering System (SNS) says where the information sits in the product. The information code says what the information is. Together they give a data module its meaning.
A description of a hydraulic tank and a removal procedure for the same tank sit at the same place in the product. They share an SNS. The information code is what keeps them apart.
A three-digit code
An information code is three alphanumeric characters. The characters are read in order: a primary code, a secondary code, and a tertiary code.
- The primary character (the first one) selects one of ten broad families.
- The secondary and tertiary characters narrow the family to a specific subject.
So the code 520 reads as: family 500 (disconnect, remove, disassemble), narrowed to a remove procedure. The code 720 reads as: family 700 (assemble, install, connect), narrowed to an install procedure.
You can always tell the family of a code from its first digit alone. 040, 042, and 0A1 are all in the 000 family. 520 and 550 are both in the 500 family. The first digit is the fastest way to know what a module is for.
The ten primary families
S1000D defines a base set of information codes. The first digit groups them into ten primary families. These are the verified top-level families:
| Family | Meaning |
|---|---|
000 | Function, plans, and description |
100 | Operation |
200 | Servicing |
300 | Examinations, tests, and checks |
400 | Fault reports and fault isolation |
500 | Disconnect, remove, and disassemble |
600 | Repairs |
700 | Assemble, install, and connect |
800 | Package, handling, storage, and transportation |
900 | Miscellaneous |
The families follow the natural order of work on a product. You describe it (000), operate it (100), service it (200), check it (300), find faults (400), take it apart (500), repair it (600), put it back together (700), and store it (800). The 900 family holds information that does not fit the others.
Information codes are alphanumeric, not just numbers. Newer issues of S1000D also use letter-led codes for some subjects, such as a C00 family for computer systems, software, and data. Most maintenance content still uses the numeric 000-900 families above.
The information code variant
A single alphanumeric character follows the information code. This is the information code variant (ICV).
The variant marks an alternative way to do the same activity. The default value is the letter A. A second method for the same task can use B, a third can use C, and so on. The activity is the same; the variant says which version of it the module describes.
For example, two install procedures for the same item, one for each of two suppliers, can both use information code 720 and be told apart by their variant or by other DMC fields.
Common examples
The full information code set has hundreds of specific codes. You do not need to memorise them. Knowing the ten families and reading the specific code is enough for most work.
The table below lists the ten primary families and a few common specific codes. The specific codes are marked as examples.
000 | Function / description | Primary family |
040 | Description (general) | Common example |
100 | Operation | Primary family |
200 | Servicing | Primary family |
200 | Servicing procedure | Common example |
258 | Clean (other procedure to clean) | Common example |
300 | Examinations, tests and checks | Primary family |
400 | Fault reports and isolation | Primary family |
500 | Disconnect, remove and disassemble | Primary family |
520 | Remove procedure | Common example |
600 | Repairs | Primary family |
700 | Assemble, install and connect | Primary family |
720 | Install procedure | Common example |
800 | Storage | Primary family |
900 | Miscellaneous | Primary family |
The ten primary families (000–900) are the verified top-level S1000D categories. Rows marked Common example are illustrative three-digit codes — not the full set; S1000D defines many more, and projects may add their own variants.
Examples (illustrative only):
040— a description. First digit0, so the000family. A general descriptive module.520— a remove procedure. First digit5, so the500family. Take the item off.720— an install procedure. First digit7, so the700family. Put the item back.
The s1kd-tools tutorial uses the example DMC BIKE-A-DA1-10-00-00C-720A-D. The 720A part is an install procedure (720) with the default variant (A).
Where it sits in the DMC
The information code is the field after the disassembly code in a DMC. Here is the same illustrative DMC used elsewhere in this guide:
DMC-1B-29-10-05-00A-720A-A
Reading the relevant fields (this is an example, not a real product code):
| Field | Value | Meaning |
|---|---|---|
| SNS | 29-10-05 | Hydraulics → Main system → Tank (where) |
| Information code | 720 | Assemble, install, connect (what) |
| Information code variant | A | Default variant |
Change 720 to 520 and the same module location now describes how to remove the tank instead of installing it. The location did not move. Only the kind of information changed.
See The Data Module Code for the full field-by-field breakdown.
Sources
- s1kd-tools tutorial — kibook.github.io — information code as three alphanumeric (primary/secondary/tertiary) characters; the primary families (
000–900plusC00); the information code variant character (defaultA); the information code's position in the DMC (after the disassembly code); and the example DMCBIKE-A-DA1-10-00-00C-720A-D - Information Control Numbers for S1000D Issue 4.0 or higher — RWS Contenta docs — the primary information-code families (
000–900, plusC00) - S1000D — Wikipedia — data modules (DM) and "data module coding" as the hierarchical XML organising mechanism