The NIEM Data Model covers several domains and typically not all of the data model is usable in an exchange. It is useful to make
a schema subset of NIEM components to use in an exchange. It helps to limit the scope of developing an IEPD and can be built to
the specific requirements of an exchange. There are several actions available to search the NIEM data model and build a NIEM subset.
The NIEM data model search returns search results based on the search terms entered. The search results
are in the form of tree. All properties and types returned are links to more detailed pages about those components.
Types in the tree can be expanded to view the properties that can be contained in that type.
- Search the NIEM data model from the Search Page.
- Enter Search terms separated by spaces in the text entry box.
- Click the Search button to perform the search.
- The search will return all results that match all of the search terms in the names,
definitions, keywords, usage information, or examples. There are different search options
that can be changed to refine search results.
- The default search options on the Search Page
will search the NIEM data model for properties. Properties will
appear as XML elements in instances.
- To search for something else in the NIEM data model click on the pull down menu
and select the item to search on.
- The choices are to search for a property, type, namespace, facet, external property, or association.
- To open the advanced search options click the "Show Advanced" options link on the Search Page.
- There are multiple text entry boxes for searching. There is a search box for items that
match all words, match exact phrases, match at least one word, and without the words entered.
- To clear all the text entry boxes click the Clear search terms link.
- Another advanced search option is choosing the fields searched. Available options are
to search in names, definitions, keywords, usage information, and example content. Check or uncheck
the checkboxes to decide which fields to search.
- To reset all of the advanced search options click the Reset All Checkboxes to Defaults link
at the bottom of the advanced search options.
To limit searches to only certain domains on the
Search Page
click the "Show Advanced" options link and click the checkboxes
to select the domains to use in searches. Subsets containing
each domain are available for
download.
The domains available for searching are:
- Universal
- Common
- Emergency Management
- Immigration
- Infrastructure Protection
- Intelligence
- International Trade
- Justice
- Screening
- other - all othe namespaces in the model
Some types inherit properties from their parent types. This allows for better reuse of
elements, but it can be hard to find properties that have been inherited from a parent type.
For example, a search for "BailStatus" will not return any results, but searching the context definitions
will return an ActivityStatus the BailType inherits from ActivityType. These kinds of properties
can be found by searching context definitions.
- Context definition can only be searched on multiple search terms or camelCase search terms. If
there are not multiple search terms or terms that can be split then it is impossible to search for
one term in the context of another.
- If a user performs a search that can be used for context definition searches, then a link to
"Search Context Definitions" will appear below the search box.
- If that search did not return the desired results, then click the "Search Context Definitions"
link to perform the context definition search.
- This search will search for a property that matches a search term and then search for inherited
properties that match the other search terms. The results describe the matching context definition
term and the term that inherits it.
- The search results can be expanded by clicking on the "+" icon next to a result. It will expand
to show the inherited type and the properties inherited. The context definition match will be in bold.
The properties and types displayed are links to more detailed information about that component. This
enables users to navigate through the NIEM data model.
- Search results and lists of components are displayed as trees. Expanding a node in the tree
will display all of the properies contained in a type.
- In an expanded node clicking on the "show inheritance" link will show parent types of the current type.
- Clicking on a link of a property or a type will display a detailed property or type page.
- The property detail page will display the definition of the property along with any keywords,
usage information, or examples that may be available.
- The details page will also display the type of that property and any types that contain that property.
- If the property is abstract it will display properties that are substitutable for that property.
- The type detail page will display the definition of the type.
- The content style will be displayed. It will be one of Complex with Complex Content,
Complex with Simple Content, or Simple. Complex Types with Complex Content can contain
attributes and elements, but not simple types. Complex Types with Simple Content can contain
attributes and a simple value. Simple Types are simple xml schema types.
- The simple content type will be displayed if one exists. Only types that are Complex
with Simple Content will have simple content types.
- If the type has any base types that it inherits from they will be displayed.
- Derived types will also be displayed.
- Properties contained in the type are displayed. These are Properties as Subject -
The type is the subject of the following properties. These are properties which may be
contained in this type, or which make up this type.
- Properties of the type are displayed. These are Properties as Object - The type
is the object of the following properties. These are properties that are of this type.
- If the type is an external adapter type it will display notification. An external
adapter type is a NIEM conformant XML Schema complex type that wraps a set of external content.
Subsets for NIEM domains have been generated and are available for download on the
options page. Also,
everything from a domain can be added to a subset from the
options page.
Select the properties and types required for a data exchange, and generate a conformant
schema subset of the full NIEM schema set. All dependencies are automatically added to
ensure the resulting schema subset is valid. The user requirements can be saved and/or
reloaded in a wantlist file(specification).
The current working version of the wantlist is shown in the box on the left of the screen.
- To add components to the schema subset click on the add button next to the component
in the search results or details pages.
- A property will be added to the wantlist for the schema subset in the context it is
displayed. If a property is displayed in a type, then adding it will add it to the
wantlist in the type. If it is a top level component then it will be added to the wantlist
as a top level component.
- To add a property as a top level component either click on the add button next to
the property when it is the top level in the tree or click on the link to open the details
page for that property and click on the add button from there.
- To add a property in a type click on the add button where the property is displayed in
that type.
- Properties can be added as content
and as reference.
Some properties can be added as content.
- To add a Property as content hover over the add button for that property.
- Make sure that the "as content" checkbox is checked.
- If it is disabled then it is not possible to add the property as content in the current context.
- A common place for as content to be disabled is in Associations.
Some properties can be added as reference.
- To add a Property as reference hover over the add button for that property.
- Make sure that the "as reference" checkbox is checked.
- If the checkbox is disabled then it is not possible to add the property as reference in the current context.
- To save a wantlist of requested components go to the
Generate Documents page.
- Click on "Save current wantlist to a file" to download the file.
- To upload a wantlist of requested components go to the
Options page.
- Click on the "Browse" button in the Load Wantlist section.
- Click on "Load Wantlist" to upload the file.
- To generate a schema subset go to the
Generate Documents page.
- Select whether documentation should be included in the schema or not.
- Click on "Save Schema Subset to a file" to generate and download the zip file of the schemas.
- To create an IEPD with the current wantlist and schema subset go to the
Generate Documents page.
- Select whether documentation should be included in the schema or not.
- Click on "Create IEPD with current subset and wantlist" to create an IEPD
in the repository using the current subset.
- To change the release that is being used to build the subset click on the
Options page
- NOTE: Please be careful to save your current wantlist before
changing releases. The wantlist is cleared when the release is changed.
- Select the version of NIEM that you would like to use from the drop down box.
- After either building a subset or loading a subset, the subset will show the cardinality in parenthesis after elements in a type.
- Click on the "Edit Cardinality" link in the subset display.
- The cardinality for all elements can be set by entering the values for the min and max and clicking the button.
- Cardinalities for the individual elements can be set by using the menu for min and max by each element.