Modeling CSC Types


A CSC type must extend either a simple type or another CSC type.

Structures attributes

A CSC type that extends a simple type must also include a reference to structures:SimpleObjectAttributeGroup. This is an attribute group that contains all of the attributes needed to support the NIEM infrastructure.

Code types

A CSC type that is based on a simple type with enumerations (codes) must have a name that ends with CodeType.


See additional guidance for names and definitions.

Rule Applicability Title
NDR 9-25 REF, EXT Complex type definition is top-level
NDR 9-26 REF, EXT Complex type has data definition
NDR 9-27 REF, EXT No mixed content on complex type
NDR 9-29 REF, EXT Complex type content is explicitly simple or complex
NDR 9-30 REF Complex content uses extension
NDR 9-33 REF Simple content uses extension
NDR 9-35 REF No complex type disallowed derivation
NDR 9-71 REF No use of xs:anyAttribute
NDR 10-20 REF, EXT Proxy type has designated structure
NDR 11-10 REF, EXT Complex type with simple content has structures:SimpleObjectAttributeGroup
NDR 11-19 REF, EXT Element or attribute declaration introduced only once into a type
NDR 11-21 REF, EXT Referenced attribute defined by conformant schemas
NDR 11-22 REF, EXT Schema uses only known attribute groups
NDR 11-44 REF, EXT Standard opening phrase for complex type data definition