Explainer
The S1000D Standard Numbering System (SNS), Explained

The Segments
Four Codes in the Middle of the DMC
The SNS is the stretch of the data module code that says which part of the product a module is about. Take a real code from the specification's own Bike sample:
DMC-S1000DBIKE-AAA-DA0-20-00-00AA-520A-A
After the model identification code (S1000DBIKE) and the system difference code (AAA) comes the SNS: system DA0, subsystem 2, sub-subsystem 0, assembly 00. In the Bike sample, DA0 is the wheel and DA0-20 the rear wheel. The rest of the code is the disassembly code and variant (00AA), the information code and variant (520A, a remove procedure), and the item location code (A). So the module is the procedure for removing the rear wheel.
| Segment | Length | In the example | What it is |
|---|---|---|---|
| System code | 2 or 3 characters | DA0 | The top of the breakdown. In a 3-character system code, the first character is a material item category code. |
| Subsystem code | 1 character | 2 | A division of the system. Printed together with the sub-subsystem code as one 2-character group. |
| Sub-subsystem code | 1 character | 0 | A further division; 0 where the breakdown stops at the subsystem. |
| Assembly code | 2 or 4 characters, never 3 | 00 | The unit or assembly within the sub-subsystem. |
All four use uppercase letters and digits. Paste any code into our free DMC decoder to see it split the same way.
Maintained SNS
Breakdowns the Specification Publishes
A program does not have to invent its breakdown. The specification publishes maintained SNS for common product types in Chapter 8.2. Issue 4.2 lists eight:
- Generic
- Support and training equipment
- Ordnance
- General communications
- Air vehicle, engines and equipment
- Tactical missiles
- General surface vehicles
- General sea vehicles
The one most readers of this site meet is the air vehicle, engines and equipment SNS. Its own chapter describes it as divided into 80 main systems, maintained by the S1000D Steering Committee and supplemented by the generic SNS for the systems every product shares. The bike in the sample, by contrast, uses project-defined codes, which is the other route.
SNS and ATA
Familiar Numbers, Not Identical Ones
Anyone who knows the ATA chapter list will recognize the air vehicle SNS: 22 is auto flight, 27 flight controls, 32 landing gear, 49 airborne auxiliary power, 52 doors, 72 engine. The shared numbering is deliberate, and it is why aviation libraries can move between the two worlds.
It is not a copy, though. Some titles differ (S1000D's 21 is Environmental control), and the SNS adds systems ATA never needed, such as attack system management, tactical communications, and a run of military systems in the 90s. Assume the numbers carry over and check the titles; our iSpec 2200 vs S1000D comparison covers the rest of the difference.
The Decisions
Where Programs Get the SNS Wrong
Nobody owns it. The SNS is a program decision with a long tail: who controls the breakdown, how changes are approved, and how suppliers align to it. Settle ownership before the first module is coded, and record the result in the business rules and BREX, which have dedicated SNS rules for it.
No room to grow. Assembly codes are two or four characters. Programs that expect a system to expand often choose four from the start, because changing the length later means re-coding modules.
Codes that are not the program's to use. In the maintained air vehicle SNS, some system codes (58, 59, 69, 88, and 89 in Issue 6) are marked not available for projects, while some subsystems are explicitly left for projects to assign. Read the markings before borrowing a number.
Confusing the neighbors. The system difference code before the SNS identifies alternative versions of a system; it is not part of the breakdown. Treating it as one is a frequent source of miscoded modules, and the kind of decision the program start checklist asks you to settle early.
FAQ
Questions We Hear
What does SNS stand for in S1000D?
SNS stands for standard numbering system: the hierarchical breakdown of a product into systems, subsystems, sub-subsystems, and assemblies that forms part of every data module code. It is how two modules about the same part of the product end up with codes that sort together.
Is the S1000D SNS the same as ATA chapters?
Closely related, not identical. The air vehicle, engines and equipment SNS broadly follows the ATA chapter numbering (32 is landing gear, 52 doors, 72 engine), but some titles differ (21 is Environmental control in S1000D) and it adds systems ATA does not have, such as tactical communications and weapons systems for military aircraft.
Can a project create its own SNS?
Yes. A project can adopt one of the maintained SNS the specification publishes or define its own, and records its choice in its business rules and BREX, which has dedicated SNS rules for that purpose. Within the maintained air vehicle SNS, some system codes are reserved as not available for projects and some subsystems are left for projects to assign.
Is the system difference code part of the SNS?
No. The system difference code sits just before the SNS in the data module code and identifies alternative versions of a system without changing the product's model identity. Treating it as part of the breakdown is a common modeling mistake.
How long is an S1000D assembly code?
Two or four characters, never three. Programs expecting growth in a system often choose four-character assembly codes from the start, because changing the length later means re-coding modules.
Get In Touch
Choosing Your SNS?
The breakdown you choose at the start shapes every data module code for the life of the program. We help programs choose it, write it into their business rules, and enforce it.