These are the major sections of this website. Expand each sub-section to see the pages within.
NIEM training information, tailored to specific user roles.
/training/
A domain modeler creates and manages the content in a NIEM domain.
/training/domain-modeler/
An Information Exchange Package Documentation (IEPD) Developer designs, builds, and validates the components (artifacts) of an Information Exchange Package (IEP).
/training/iepd-developer/
The scenario planning phase is the first step you take in IEPD development.
/training/iepd-developer/scenario-planning/
The analyze requirements phase is the next step you take in IEPD development.
/training/iepd-developer/analyze-requirements/
During the map and model phase, you compare your information exchange requirements to what's in NIEM, and then define a mapping between your requirements and NIEM content. You use a mapping document, which may be a spreadsheet or similar tabular form.
/training/iepd-developer/map-and-model/
During the build and validate phase, you create XML schemas and artifacts and verify they meet NIEM standards.
/training/iepd-developer/build-and-validate/
Assemble and Document is the next phase in IEPD development after the Build and Validate phase.
/training/iepd-developer/assemble-and-document/
The publish and implement phase is the last phase of IEPD development.
/training/iepd-developer/publish-and-implement/
This tutorial shows you how to create a very simple [IEPD](../../../reference/iepd/ "IEPD"). Once you are comfortable with the process and output, you can move on to more complex IEPDs.
/training/iepd-developer/simple-iepd-tutorial/
An IEPD implementer exchanges information based on the format, rules, and guidance provided by an existing IEPD specification.
/training/iepd-implementer/
A catalog of techniques and methods that help to implement NIEM.
/training/iepd-implementer/implementation-cookbook/
This is a Java project on GitHub that uses Maven and JAXB to generate a jar of java class files based on an IEPD that can be used to read and generate instances.
/training/iepd-implementer/java-bindings/
Learn more about NIEM, including the model, IEPDs, tools, and specifications.
/reference/
Learn about the kinds of files that make up NIEM releases and IEPDs.
/reference/artifacts/
NIEM Code Lists are special files that support the use of enhanced code lists in NIEM, beyond the basic capabilities provided by XML and JSON schema enumerations.
/reference/artifacts/code-lists/
A JSON-LD context file is a file that can be used to associate namespace prefixes with the full URIs that they represent.
/reference/artifacts/json-ld-context/
An XML catalog is a XML document that assigns locations to files. This can be used to override the file locations assigned by NIEM XML schema import statements without having to modify the original schema itself.
/reference/artifacts/xml-catalog/
Learn about properties, types, augmentations, and other building blocks used to construct the model.
/reference/concepts/
A namespace is a collection of properties and types, managed by a common authoritative source.
/reference/concepts/namespace/
A property represents a concept, idea, or thing.
/reference/concepts/property/
An element represents a concept. In an instance, it acts as a container that may carry either a simple value or an object, and optionally attributes.
/reference/concepts/property/element/
An abstract element is an element defined as a placeholder in a schema that must be replaced with an appropriate substitution in an instance.
/reference/concepts/property/abstract/
A substitutable element is one that can replace another element in an instance.
/reference/concepts/property/substitutable/
An attribute is a property that may carry a simple value only.
/reference/concepts/property/attribute/
A type represents a data structure that defines a set of allowable values.
/reference/concepts/type/
A complex type with complex content (CCC) is a structure that represents an object and may contain elements and attributes.
/reference/concepts/type/ccc/
A complex type with simple content (CSC) is a structure that represents a simple value and that may optionally contain attributes.
/reference/concepts/type/csc/
A simple type is a structure that represents a simple value only.
/reference/concepts/type/simple/
A list type is a simple type that allows for values to be repeated, separated by a space.
/reference/concepts/type/simple/list/
A union type is a simple type that represents the combined set of allowable values from other simple types.
/reference/concepts/type/simple/union/
A facet is a constraint on a simple type that limits the set of allowable values.
/reference/concepts/facet/
An adapter is a mechanism to use components from a non-conformant external standard within a NIEM-conformant namespace.
/reference/concepts/adapter/
An association is a complex relationship between objects, with optional additional characteristics.
/reference/concepts/association/
An augmentation is a mechanism to add additional local content to NIEM types defined in other namespaces.
/reference/concepts/augmentation/
An augmentation point is a special substitution group to allow for later replacement by additional content from other namespaces.
/reference/concepts/augmentation/point/
An augmentation element is additional content that replaces an augmentation point defined in another namespace.
/reference/concepts/augmentation/element/
Local terminology is a word, phrase, abbreviation, acronym, jargon, or other string of characters specially documented in a namespace because no definition or literal exists in a standard dictionary.
/reference/concepts/local-term/
Metadata is a set of data that describes characteristics of other data.
/reference/concepts/metadata/
A reference is used to link to content defined elsewhere.
/reference/concepts/reference/
The representation pattern is a mechanism to support multiple representations of a concept, along with additional properties.
/reference/concepts/representation/
A role is a function or responsibility of someone or something.
/reference/concepts/role/
A high-level perspective on the kinds of content that appear in Core and the domains.
/reference/content/
An Information Exchange Package Documentation (IEPD) is a collection of NIEM artifacts. They define and describe the context, content, semantics, and structure of one or more implementable information exchanges.
/reference/iepd/
An Information Exchange Package Documentation (IEPD) developer designs, builds, and validates the components (artifacts) of an Information Exchange Package(IEP). The process consists of a six-phase lifecycle.
/reference/iepd/lifecycle/
Review background information related to your information exchange, assess resource impact, understand business context, and identify information exchange business scenarios.
/reference/iepd/lifecycle/scenario-planning/
Further elaborate on the information exchange scenario to understand and document the data requirements and business rules.
/reference/iepd/lifecycle/analyze-requirements/
Review the data requirements captured during the previous phase and discover if there are similar components in NIEM. Document results in a mapping spreadsheet. Begin modeling the data requirements without a match in NIEM; these will be later added to the IEPD as extensions.
/reference/iepd/lifecycle/map-and-model/
Create subset schemas, and extension schemas, and sample instances based on the previous mapping and modeling work. Verify that schemas and instances are valid and that they meet NIEM conformance requirements described by the NIEM Naming and Design Rules (NDR) specification.
/reference/iepd/lifecycle/build-and-validate/
Create any additional documentation needed for the IEPD, fill out the IEPD catalog, assemble all of the artifacts, and bundle the files into the final IEPD zip file package.
/reference/iepd/lifecycle/assemble-and-document/
Publish the IEPD for search, discovery, and reuse, and implement the IEPD for production.
/reference/iepd/lifecycle/publish-and-implement/
Each IEPD is a package that contains schemas and other supporting files.
/reference/iepd/artifacts/
A subset schema is a customized version of a NIEM schema that contains only the properties, types, and codes that are needed for a particular information exchange, plus any of their required dependencies.
/reference/iepd/artifacts/subset-schema/
In an extension schema, an IEPD developer can create new NIEM-conformant properties and types to represent message data requirements that are not available in a NIEM release. Extensions schemas are used in combination with NIEM subset schemas to define the structure and meaning of a message.
/reference/iepd/artifacts/extension-schema/
An IEPD Catalog is an XML document that contains basic information about the package (name, description, purpose, etc.) and a listing of the package's key artifacts. It is a required artifact in an IEPD.
/reference/iepd/artifacts/iepd-catalog/
A conformance report specifies how and to what degree the IEPD is NIEM-conformant.
/reference/iepd/artifacts/conformance-report/
A mapping spreadsheet can be used to explicitly document mappings from data requirements to properties and types in NIEM. It can also be used to model extensions for requirements that do not exist in NIEM.
/reference/iepd/artifacts/mapping-spreadsheet/
Learn about NIEM IEPD conformance, view sample IEPDs, and more.
/reference/iepd/iepd-starter-kit/
Examples designed to demonstrate various unique aspects of the NIEM technical framework.
/reference/iepd/iepd-starter-kit/iepd-series/
A list of terms with links to their source definitions across the following technical specifications.
/reference/iepd/iepd-starter-kit/terms/
Reusable XML snippets of the various NIEM XML components. These snippets could also be called patterns or templates.
/reference/iepd/iepd-starter-kit/reusable-xml-snippets/
Best practices for NIEM IEPD change control and version management.
/reference/iepd/versioning/
A NIEM release is a coherent set of schemas and supporting artifacts representing a specific version of the NIEM data model, published by the NIEM Management Office. Release schemas contain reusable properties and types meant for use in information exchanges. These schemas include NIEM Core, domains, and code tables.
/reference/release/
A Core Supplement is an incremental NIEM release that contains new or updated components for the NIEM Core namespace. These changes are published in separate schemas that can be used in addition to the original Core namespace. Core Supplements are used as a way of 'adjusting' Core content while it is locked between major releases.
/reference/release/core-supplement/
A domain update is one or more schemas that constitute changes to a NIEM domain outside of the standard NIEM release cycle.
/reference/release/domain-update/
Each NIEM release comes bundled as a zip file containing schemas and other supporting files.
/reference/release/artifacts/
Information about NIEM release change control and version management.
/reference/release/versioning/
NIEM specifications provide rules and guidance in order to design consistent and well-defined information exchanges. Specifications are managed by the NIEM Technical Architecture Committee (NTAC).
/reference/specifications/
The NIEM Naming and Design Rules (NDR) describe the architecture of the NIEM data model and its representation in XML. It specifies principles and enforceable rules for NIEM data components and schemas.
/reference/specifications/ndr/
The NIEM Naming and Design Rules Specification is updated with major NIEM releases, occurring every three years. The following highlights the changes that have been made.
/reference/specifications/ndr/changes/
The NIEM Naming and Design Rules defines two classes of conformant XML Schema documents: reference schema documents (REF) and extension schema documents (EXT). View the key rule differences between the two conformance targets.
/reference/specifications/ndr/ref-vs-ext/
The NIEM Information Exchange Package Documentation (IEPD) Specification specifies normative rules and non-normative guidance for building NIEM information exchange messages. It defines IEPD artifacts like subset schemas, extension schemas, and IEPD catalogs; and recommends how the package should be structured.
/reference/specifications/iepd/
The NIEM Information Exchange Package Documentation (IEPD) Specification can be updated with major NIEM releases, occurring every three years. The following highlights the changes that have been made.
/reference/specifications/iepd/changes/
The NIEM JSON Specification establishes the technical basis for using JavaScript Object Notation (JSON) as a data format for exchange of information consistent with NIEM-conformant schemas and message specifications.
/reference/specifications/json/
The Conformance Specification specifies general conformance guidance, principles, and rules for NIEM.
/reference/specifications/conformance/
The Conformance Targets Attribute Specification (CTAS) defines how NIEM XML documents classify what kind of artifact they are through the use of a conformance targets attribute.
/reference/specifications/conformance-targets/
The Code Lists Specification adds support for new capabilities of NIEM code lists beyond the basic enumeration representations provided by XML and JSON schema. Key features include the definition of codes in CSV or Genericode files, dynamic code lists via run-time binding, and multi-column code table support.
/reference/specifications/code-lists/
This example shows different ways to define and represent country codes in NIEM - via free text, XML schema enumerations, and CSV codes via the Code Lists Specification.
/reference/specifications/code-lists/country-codes/
A list of known tools and resources available for Genericode.
/reference/specifications/code-lists/genericode/
The NIEM High-Level Version Architecture (HLVA) Specification identifies the processes, artifacts, and responsibilities required to produce new releases of the NIEM model. It also establishes a regular release cycle for predictable and manageable NIEM updates.
/reference/specifications/hlva/
NIEM tools provide support for searching and exploring NIEM content and developing NIEM domains and exchanges.
/reference/tools/
The Schema Subset Generation Tool (SSGT) enables users to search and view the content of the NIEM model, and build XML Schema subsets for use in exchanges.
/reference/tools/ssgt/
The Conformance Testing Assistant (ConTesA) enables users to test NIEM XML schemas against the automated rules from the NIEM Naming and Design Rules (NDR).
/reference/tools/contesa/
Movement provides a user-friendly interface and smarter search results for the latest NIEM release. Movement is also open source so the community who inspired its creation can contribute to it.
/reference/tools/movement/
User guide explaining how to use Movement to search the current NIEM release and build partial NIEM JSON subsets.
/reference/tools/movement/quick-user-guide/
The current status of Movement's support of NIEM JSON subsets.
/reference/tools/movement/json-schema-output/
The Migration Tool enables you to upgrade a NIEM XML Schema subset generated by the SSGT to the next release.
/reference/tools/migration/
The Oxygen XML Editor is a commercial multi-platform XML editor. NIEM provides some additional information and resources for this tool that may assist with domain and IEPD schema development and conformance testing.
/reference/tools/oxygen/
Use Oxygen to test a XML schema for NDR conformance.
/reference/tools/oxygen/ndr/
NIEM XML follows a regular, well-defined syntax. Snippets can be used to quickly and consistently fill in standard syntax, leaving users to fill in the blank or partially-filled in values for fields like name and definition.
/reference/tools/oxygen/snippets/
Use XML catalog files in Oxygen to specify or override schema file locations.
/reference/tools/oxygen/xml-catalog/
XMLSpy is a proprietary XML editor and integrated development environment developed by Altova. NIEM provides some additional information for this tool that may assist with domain and IEPD schema development and testing.
/reference/tools/xmlspy/
Use XML catalog files in XMLSpy to specify or override schema file locations.
/reference/tools/xmlspy/xml-catalog/
How to design a Community of Interest
/reference/domain-modeling-guide/
An easy introduction to the purpose of NIEM, the reasons to use NIEM with JSON data, and the developer knowledge needed to put NIEM JSON into practice.
/json/
This tutorial walks the reader through a small example of implementing an information exchange using NIEM-JSON. It begins with a small set of data requirements, constructs a NIEM information exchange model, expresses data for that model as JSON, then constructs a JSON schema for that data.
/json/tutorial/
Explains what NIEM and JSON each are and do and why they are useful together.
/json/faq/
Provides normative and non-normative guidance on how NIEM and JSON are used, including lots of examples.
/json/reference/
NIEM community activities
/community/
A dedicated group that supports information sharing and promotes interoperability between mission-based organizations engaged in activities such as homeland security, national defense, border management, immigration benefits, and global law enforcement through the joint development and alignment of Extensible Markup Language (XML) Biometric Standards.
/community/biometrics/
/community/biometrics/announcements/
11-02-2021
/community/biometrics/announcements/1-new-biometrics-chair/
Sample Biometrics XML schema and instances
/community/biometrics/sample-xml/
There are approximately 24 federal agencies that manage grants ranging from health to disasters to education and many other issue areas. A team within the NIEM community is working to identify the common terms, standardize them, and harmonize/unify the grants management systems.
/community/grants/
The NIEM Health Community's primary objective is to identify ways to use existing health IT standards to meet the needs of the NIEM community, all while providing education and awareness about the specific requirements for protecting sensitive health data.
/community/health/
/community/health/meeting-minutes/
Future of NIEM Health COI
/community/health/meeting-minutes/2019-08-06/
Need for Health IT in Disaster Response; Patient Unified Lookup System for Emergencies (PULSE)
/community/health/meeting-minutes/2019-04-09/
NIEM in Canada; Information Exchange Framework Applied to Structured Data
/community/health/meeting-minutes/2019-03-22/
General Update; Protecting Health Information
/community/health/meeting-minutes/2019-01-29/
Health IT, NIEM Health Recap, and Status Update
/community/health/meeting-minutes/2018-02-13/
FHA, FHIM, and NIEM alignment
/community/health/meeting-minutes/2017-10-10/
NIEM Health 101 provides a brief overview of the current health information technology (IT) landscape, related reference exchange and terminology standards, the NIEM Health challenges, and the Federal Health Information Model (FHIM).
/community/health/tutorials/101/
NIEM Health 102 provides a brief overview of the security and privacy of protected healthcare information (PHI).
/community/health/tutorials/102/
NIEM Health 201 demonstrates how to use health IT standard information models to map NIEM Health use case requirements to NIEM elements and health information exchange standards elements.
/community/health/tutorials/201/
The NIEM Health Elements Inventory is a tentative inventory of healthcare elements and types defined across the NIEM domains. The goal of this exercise is to determine what healthcare-related elements have already been defined across the NIEM Domains, compare those elements for completeness and standards compliance with ONC USCDI and health industry standards, and identify gaps that may need to be filled by NIEM Health definitions.
/community/health/tutorials/inventory/
The MilOps Domain provides a catalogue of data components necessary to support improved data interoperability between DOD and mission partners for operations.
/community/milops/
/community/milops/meeting-notes/
A dedicated group to advance information sharing at the state, local, tribal, and territorial level to help protect, support, and respond to community needs.
/community/sltt/
/community/sltt/announcements/
02-01-2022
/community/sltt/announcements/6-NIEM-to-become-an-open-international-standard/
01-25-2022
/community/sltt/announcements/5-NIEM-expands-domains-goes-international/
01-19-2022
/community/sltt/announcements/4-more-and-better-NIEM-tools/
10-19-2021
/community/sltt/announcements/3-sltt-DAMA-35th-Anniversay-Meeting/
03-30-2021
/community/sltt/announcements/2-major-release-2021-03-30/
03-04-2021
/community/sltt/announcements/1-new-sltt-2021-03-04/
Opportunities
/community/sltt/opportunities/
There is a growing need for information exchanges to include geospatial elements and capabilities—NIEM provides this functionality.
/geospatial/
Geo4NIEM Part 1 (2013) was a collaborative, hands-on rapid prototype development and testing initiative in accordance with the Open Geospatial Consortium (OGC)'s Interoperability Program. The partnership included NGA, Department of Defense (DoD), Defense Information Systems Agency (DISA), U.S. Geological Survey (USGS), the Army Geospatial Center and numerous participants and supporters from the public and private sector.
/geospatial/part-1/
Geo4NIEM Part 2 (2015) was one of four threads in OGC’s Testbed 11—a scenario-based test and demonstration of Geo4NIEM work. It focused on enhancing NIEM’s geospatial exchange capabilities to include Intelligence Community (IC) data encoding specifications, along with OASIS standards to enable granular data object level access authorization and/or denial aligned to OCG web services.
/geospatial/part-2/
Information and resources for each NIEM release.
/niem-releases/
An overview of the draft NIEM 6.0 version, currently under development.
/niem-releases/6.0/
An overview of the draft NIEM 5.2 release.
/niem-releases/5.2/
An overview of the NIEM 5.1 release.
/niem-releases/5.1/
An overview of the NIEM 5.0 release.
/niem-releases/5.0/
An overview of the NIEM 4.2 release.
/niem-releases/4.2/
An overview of the NIEM 4.1 release.
/niem-releases/4.1/
An overview of the NIEM 4.0 release.
/niem-releases/4.0/
An overview of the NIEM 3.2 release.
/niem-releases/3.2/
An overview of the NIEM 3.1 release.
/niem-releases/3.1/
An overview of the NIEM 3.0 release.
/niem-releases/3.0/
An overview of the NIEM 2.1 release.
/niem-releases/2.1/
An overview of the NIEM 2.0 release.
/niem-releases/2.0/
An overview of the NIEM 1.0 release.
/niem-releases/1.0/
The following is a timeline that shows when new domains were added to NIEM or underwent significant changes.
/niem-releases/domain-timeline/
Summary and detailed counts of properties, types, and codes across NIEM releases.
/niem-releases/stats/