The name of a type must end with the representation term Type
.
CCC types may only extend other CCC types.
For a type that is not metadata, an association, or an augmentation, the default parent type, if none other is provided, should be structures:ObjectType
.
In reference schemas, a CCC type’s elements must be represented as a sequence, rather than a choice.
The default usage of properties in a type from a NIEM release should be optional and over-inclusive. In XML, this would be represented as minOccurs="0"
and maxOccurs="0"
.
Individual information exchanges can and often should have very precise cardinality requirements. Because these vary across different use cases, and because cardinality restrictions can be tightened but not loosened in a subset, cardinality should be set as flexibly as possible in the release schemas.
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-28 | REF, EXT | No mixed content on complex content |
NDR 9-29 | REF, EXT | Complex type content is explicitly simple or complex |
NDR 9-30 | REF | Complex content uses extension |
NDR 9-31 | REF, EXT | Base type of complex type with complex content must have complex content |
NDR 9-32 | SET | Base type of complex type with complex content must have complex content |
NDR 9-34 | REF | No complex type disallowed substitutions |
NDR 9-35 | REF | No complex type disallowed derivation |
NDR 9-60 | EXT | Model group does not affect meaning |
NDR 9-61 | REF, EXT | No xs:all |
NDR 9-62 | REF | xs:sequence must be child of xs:extension |
NDR 9-63 | EXT | xs:sequence must be child of xs:extension or xs:restriction |
NDR 9-64 | REF | No xs:choice |
NDR 9-65 | EXT | xs:choice must be child of xs:sequence |
NDR 9-66 | REF, EXT | Sequence has minimum cardinality 1 |
NDR 9-67 | REF, EXT | Sequence has maximum cardinality 1 |
NDR 9-68 | EXT | Choice has minimum cardinality 1 |
NDR 9-69 | EXT | Choice has maximum cardinality 1 |
NDR 9-70 | REF | No use of xs:any |
NDR 9-71 | REF | No use of xs:anyAttribute |
NDR 10-1 | REF, EXT | Complex type has a category |
NDR 10-2 | REF, EXT | Object type with complex content is derived from structures:ObjectType |
NDR 10-23 | REF | Augmentable type has augmentation point element |
NDR 10-24 | REF, EXT | Augmentable type has at most one augmentation point element |
NDR 11-19 | REF, EXT | Element or attribute declaration introduced only once into a type |
NDR 11-20 | REF, EXT | Element reference defined by conformant schema |
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 |