Its not only the modeling tools that impose limitations; the code generated by the ASN.1 compiler also adheres to specific rules: for example, the mapping used for ASN.1 INTEGERs dictates how large a number can be held inside the runtime data structures2.4.
Appendix A [8] describes how individual ASN.1 grammar elements must be decorated to
represent these limitations - allowing the code generators to use this information and verify that
all components fit together well.