NIEM and Enterprise Architect

Webinar March 2016
In this webinar you will learn how to:
  • Generate NIEM conformant schemas from your information models.
  • Understand how the NIEM standard facilitates information exchange.
  • Use the Schema Composer to create a subset of the NIEM-core reference schema.

How can various government departments and organizations communicate in a cost effective and reliable manner?

How can different organizations exchange information when they use different terminology and employ a different database structure?

The National Information Exchange Model (NIEM) is a robust XML-based framework for the exchange of information between people, organizations and communities. This webinar will examine the benefits of using Enterprise Architect to model and define how information can be shared using the NIEM standard.

Scott Hebbard
Scott Hebbard

Explore the Example NIEM Model

We have provided the example Enterprise Architect model used in the webinar.
Example Model: NIEM-Example.eap Download the Enterprise Architect NIEM Example Model

Questions from the Audience

Click on a question to see the answer.


 What version of Enterprise Architect is required to implement NIEM?

Enterprise Architect 12.1 is required to model and implement NIEM.

Enterprise Architect's MDG Technology for NIEM helps you to:

  • Create and develop UML-based Information Exchange Package Documentation (IEPD) models, by providing starter models, model patterns and a number of toolboxes for creating IEPD models and schema models
  • Generate complete IEPDs from your IEPD model
  • Generate NIEM conformant schemas from your information models
  • Import NIEM Reference Schema into your model
  • Create NIEM subset namespaces, composed from elements of the NIEM Reference Schemas
  • Create PIM, PSM and Model Package Description (MPD) diagrams, using the NIEM Toolbox pages.

 Where can I find out more about NIEM?

The National Information Exchange Model (NIEM) provides a common framework that is used to define how information can be shared between systems, government agencies and organizations.

To learn more about NIEM, visit the NIEM.Gov website.

The Enterprise Architect User Guide also contains a detailed description and a number of examples that can help you to learn more.

 Are there any NIEM tutorials available on the Sparx Systems website?

A step by step tutorial on NIEM has been published that implements techniques similar to what was demonstrated throughout the webinar.

To learn more about NIEM, complete the following tutorial.

 What are major advantages and benefits of using NIEM?

NIEM helps connect communities in order to share and exchange information. The Enterprise Architect platform comprehensively supports the National Information Exchange Model (NIEM), which provides a common framework used to define how information can be shared between systems, government agencies and organizations. NIEM originated in 2005 and has been used successfully in a large number of information exchange projects. The Best of NIEM page showcases some winning examples.

  • NIEM is a community driven standards based approach.
  • NIEM UML and XML are well understood standards.
  • The Information Exchange Package Documentation defines a particular data exchange.
  • The IEPD is portable, self contained and well documented.
  • A common vocabulary with terms, definitions and formats.
  • Provides a structured approach to developing reference documentation.
  • Well established and receives strong support from many government agencies.
  • NIEM enables interoperability.
  • NIEM Core contains well understood and tested concepts.
  • Communities of interest are also well represented.
  • Reduces the burden of shared communications and information exchange.
  • Eliminates the need to establish a new communication protocol when ever a new player wants to collaborate or share information.
  • NIEM reduces the total cost of ownership of exchanging information.
  • Parties do not need to change their existing data structures in order to exchange information.
To learn more about NIEM in Enterprise Architect, please visit our NIEM Landing Page.

 What build of Enterprise Architect was used throughout the demonstration?

The demonstration was conducted using Enterprise Architect 12.1, build 1230. Build 1230 introduced a number of improvements to our NIEM implemetation, based on feedback from customers and partners.

 I'm running EA 10. What do I need to do to model a NIEM subset in Enterprise Architect?

To use NIEM and Enterprise Architect, you need to install Enterprise Architect 12.1. The model wizard will automatically build the NIEM reference model and starter model.

 Can you Import a NIEM 3.0 Schema?

Yes. Launch the importer with "Extensions | NIEM 3.0 | Import NIEM 3.0 Schema".

Round Tripping

 What about round tripping?

The importer does a very good job of importing. However, if you just specify a set of schema files, then you won't have the model framework that is provided by the NIEM 3.0 Starter Model - the things like the MPD object instance, the conformance targets and the "Model Description" part of the model that is represented on the MPD diagram.So you won't be able to generate the schema files back out again, unless you do the work to create the MPD diagram.

You can model all of these elements within Enterprise Architect and all of the NIEM UML tools

NIEM Technical

 Is it possible to modify the way the IEPD is generated via the API?


The specification contains a rather rigid outline about what an IEPD should look like.

 Can Enterprise Architect generate the change log?


It is up to the user to create the change log file and to save it to the appropriate location for their IEPD.

Using Enterprise Architect, you can model the relationship between the MPD instance and the ChangeLog artifact.This allows you to specify the URI for the change log, as a tag value on the <<ChangeLog>> usage connector.

That information is subsequently generated into the file "mpd-catalog.xml".

The following link provides additional details.

 What is an IEPD?

IEPD stands for Information Exchange Package Documentation. An IEPD is a collection of artifacts that define and describe the structure and content of an information exchange.‚Äč In the webinar I opened an IEPD and navigated through the directory structure, trying to highlight what an IEPD might look like.

 Can you go over the changelog + conformance target integration in a little more detail please?

Enterprise Architect does NOT generate or create Conformance Targets or ChangeLogs for you.

Conformance Targets (and also ChangeLogs) are defined and described in the document:

There are a number of MPD artifacts that can be modelled on the NIEM MDP diagram. Amongst these are IEPConformanceTargets and the artifacts that they reference. An example of this is provided in the NIEM 3 Starter Model.

Stereotyped Usage connectors are used to specify relationships between ConformanceTargets and artifacts that they use. The usage stereotypes include such things as IEPSampleXMLDocument, XMLCatalog, SchematronSchema and XMLSchemaDocument, as well as ReadMe, MPDChangeLog, ConformanceAssertion and ConformanceReport.

URI's for the artifacts are specified as Tag Values on the Usage connectors to link to them.

The MPD diagram is basically a visual representation of the contents of the IEPD you are modelling.

When you generate the IEPD, the information depicted by the MPD diagram is generated into the file "mpd-catalog.xml", which is essentially a "table of contents" for the IEPD.

 How can you search the NIEM Model?

In the webinar I used the search feature in the Project Browser to rapidly find classes that I wanted to use. Once you become familiar with NIEM, it becomes much easier to find the Classes and Attribute you need in a timely manner.

Please refer to the to learn more about searching NIEM User Guide on Model Search to find what you need quicker.