The following provides rules and guidance for naming properties.
A single NIEM component name may consist of multiple terms. A term is a meaningful word, an abbreviation for a word, or an acronym.
Besides the additional accepted terms listed below, terms should be real words as defined by the Oxford English Dictionary.
For consistency, words should use the preferred U.S. spelling as defined in the Oxford English Dictionary.
Additional terms that may be used are:
ID
, the authorized abbreviation for Identifier
URI
, the authorized abbreviation for Uniform Resource Identifier
In accordance with IEC/ISO 11179 Part 5, terms that make up a NIEM property name are classified into four basic parts according to their placement and function:
An object term is the real world object or concept to which this name applies. This may be omitted if the property is very generic and no specific class applies.
AircraftFuselageColorCode
- a color of the main body of an aircraft.Aircraft
is the object term. In this example, that is the object being modeled.
A qualifier term indicates more specific information applicable to the object, property, or representation term.
AircraftFuselageColorCode
- a color of the main body of an aircraft.Fuselage
is a qualifier term. In this example, it describes what kind of color is expected.- A related element in NIEM is
AircraftWingColorCode
.Wing
would be the qualifier term in that example.
A property term is the characteristic, or portion of the object, to which this name applies.
AircraftFuselageColorCode
- a color of the main body of an aircraft.Color
is the property term. This is the primary characteristic of the property name. The value of this property will be a color.
A representation term indicates the kind of value a property carries.
See the Reference Table for the list of representation terms.
AircraftFuselageColorCode
- a color of the main body of an aircraft.Code
is the representation term. It indicates the general kind of value to expect.
Avoid use of the term Type
. Type
is reserved as the representation term for NIEM types; it indicates a structure. Properties should use the term Category
instead to represent type / category / kind.
NIEM does allow for exceptions when the use of the term Category
causes confusion over very well-known concepts that use the term type
. One such exception is for the element j:PersonBloodTypeCode
.
Avoid use of the term Number
in data names. Its use is usually too generic to be meaningful or helpful. A number should usually be an ID (Identifier), Quantity, Numeric (or Value), Amount, Measure, or Duration (of time).
Do not use double terms (i.e., consecutive identical or similar terms such as IDID or NumberNumeric). Double terms should be replaced with a single instance of the term if it makes sense to do so.
This can sometimes cause different parts of a name, like the property term and the representation term, to be combined into one.
In NIEM, ID
is used as the abbreviation for Identifier
. This term is used for simple properties; it represents a unique string or number.
NIEM uses Identification
as the representation term for a complex representation of an ID. This term carries a unique string or number, and additional information, like expiration date and the issuer. It is typically used by properties with the type nc:IdentificationType
.
Rule | Applicability | Title |
---|---|---|
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-56 | REF, EXT | Element or attribute name follows pattern |
NDR 10-57 | REF, EXT | Object-class term identifies concrete category |
NDR 10-58 | REF, EXT | Property term describes characteristic or subpart |
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 |