Blog

Things We're Thinking About

S1000D: Why NOT to Use Pseudo Data Module Codes

Even the most ardent defender of S1000D has to agree that it has limits. It is a great specification for capturing complex technical data in a complex fashion. And, while long, the Data Module Code (DMC) is good at uniquely identifying S1000D data module content. I admit I still have to, on occasion, look up all of the components that comprise a DMC. For a more detailed explanation, visit our S1000D Glossary.  For your reference, here is a quick explanation:

data module code

However, just as S1000D is not an ideal fit for someone creating a poem, a DMC is not a good means of identifying non-S1000D content. For example, using pseudo-DMCs while creating supporting content for the specification, including creating unique IDs for business rules is a bad idea.  Pseudo-DMCs create additional complexity and do not provide additional value in return.  Using a simpler ID syntax provides all the capabilities you will need.  The methodology we use is simple: take the chapter from which the rule came and append a -1, -2, -3, etc. (e.g. 3.9.1-1 correponds to the first rule within chapter 3.9.1).

Based on our experiences, DMCs should be used solely in identifying S1000D data module content.

-Rick