Modeling Types

The following are rules and guidelines that apply to all types.

Global

All types must be defined globally, as a top-level component of a schema. This provides for maximum reuse.

No anonymous types

All types must be assigned names. Similar to the rule about types being global, this ensures maximum reuse.

Representation Term

The name of a type must end with the term “Type”.

Definition required

Definitions are required for all types.

Standard opening phrase

A type definition should begin with “A data type for “.

Since it is often the case that a type and an element of that type can be defined with identical or similar words (for example, Person and PersonType), it is a NIEM best practice to begin a type definition with the phrase “A data type for …” This ensures that the definition for the element and its associated type are easily distinguishable.

References

See additional guidance for names and definitions.

Rule Applicability Title
NDR 7-5 REF, EXT Component name follows ISO 11179 Part 5 Annex A
NDR 9-1 REF, EXT No base type in the XML namespace
NDR 9-2 REF, EXT No base type of xs:ID
NDR 9-3 REF, EXT No base type of xs:IDREF
NDR 9-4 REF, EXT No base type of xs:IDREFS
NDR 9-5 REF, EXT No base type of xs:anyType
NDR 9-6 REF, EXT No base type of xs:anySimpleType
NDR 9-7 REF, EXT No base type of xs:NOTATION
NDR 9-8 REF, EXT No base type of xs:ENTITY
NDR 9-9 REF, EXT No base type of xs:ENTITIES
NDR 10-44 REF, EXT Schema component name composed of English words
NDR 10-45 REF, EXT Schema component names have only specific characters
NDR 10-46 REF, EXT Punctuation in component name is a separator
NDR 10-47 REF, EXT Names use camel case
NDR 10-49 REF, EXT Name of schema component other than attribute and proxy type begins with upper case letter
NDR 10-50 REF, EXT Names use common abbreviations
NDR 10-53 REF, EXT Singular form is preferred in name
NDR 10-54 REF, EXT Present tense is preferred in name
NDR 10-55 REF, EXT Name does not have nonessential words
NDR 10-59 REF, EXT Name may have multiple qualifier terms
NDR 10-60 REF, EXT Name has minimum necessary number of qualifier terms
NDR 10-61 REF, EXT Order of qualifiers is not significant
NDR 10-62 REF, EXT Redundant term in name is omitted
NDR 11-1 REF, EXT Name of type ends in Type
NDR 11-2 REF, EXT Base type definition defined by conformant schema
NDR 11-23 REF, EXT Data definition does not introduce ambiguity
NDR 11-24 REF, EXT Object class has only one meaning
NDR 11-25 REF, EXT Data definition of a part does not redefine the whole
NDR 11-26 REF, EXT Do not leak representation into data definition
NDR 11-27 REF, EXT Data definition follows 11179-4 requirements
NDR 11-28 REF, EXT Data definition follows 11179-4 recommendations