Purpose
The NIEM Model Package Description (MPD) Specification promotes consistency, ensuring all users know the basics of NIEM and how to best use it to meet business needs. The NIEM Technical Architecture Committee created the MPD to formalize requirements around the packaging of information exchanges, domain and core updates to the data model, and enterprise information exchange models. The MPD provides community users with assurance that when they use an information exchange (or domain update, core update, etc.), all required and documentation are available.
The MPD defines terminology, identifies both required and optional artifacts, describes and syntax, and provides guidance to develop these artifacts. The rules and guidance described in the MPD are designed to encourage NIEM use by balancing consistency, simplicity, and flexibility, making MPDs easy to design correctly, build rapidly, and find easily. This flexibility allows developers to design MPDs for complex data requirements.
The NIEM MPD is available here.
Interested in gaining a better understanding of the MPD? Check out our MPD overview, available here.
MPD Classes
Each MPD class serves a different purpose, but all provide meaningful NIEM-conformant XML schemas. Described below are the five different MPD types:
A NIEM Model Release is a MPD containing a full set of harmonized reference schemas defining all content in a version of NIEM. NIEM releases include major, minor, and micro releases as defined in the High-Level Tool Architecture (HLVA).
A Domain Update is a MPD containing reference schemas that represent changes to NIEM domains. The HLVA defines a domain update as both a process and a NIEM product. Through use and analysis of NIEM releases and published content, domain users identify issues and new data requirements for domains and NIEM Core. NIEM domains use these issues as the basis for incremental improvements, extensions, and proposed changes to future NIEM releases.
A Core Update is a MPD that is essentially identical to a domain update, but with two exceptions. First, a core update records changes that apply to a specific NIEM Core version. Second, a core update is not published to replace a NIEM Core. It adds new schemas, new data components, and new code values to a core without waiting for the next major release.
An Information Exchange Package Documentation (IEPD) is a MPD that defines a reusable data exchange. A NIEM IEPD contains a set of valid XML schemas that may include portions of NIEM Core schemas, portions of domain schemas, enterprise-specific or IEPD-specific extension schemas, and at least one exchange schema that defines a document element. The schemas contained in an IEPD work together to define data for exchanges.
An Enterprise Information Exchange Model (EIEM) is a MPD based on Business Information Exchange Components (BIEC). A BIEC is a NIEM-conforming XML schema data component (type, element, attribute, or other XML construct) that is reused, subsetted, and/or extended, that meets a business requirement for an information-sharing enterprise. An EIEM is a collection of BIECs organized into a subset and one or more extension schemas. Constraint schemas and non-NIEM-conforming external standards schemas with type adapters are optional in an EIEM.