National Information Exchange Model (NIEM)Building a NIEM IEPD: the NIEM IEPD Life Cycle and Tools 6 September 2006 John Wandelt and Mark Kindl Georgia Tech Research Institute
NIEM Builds on GJXDM NIEM = GJXDM + Expanded Scope + Lessons Learned • Incremental changes to GJXDM to address specific issues and expanded scope • A few examples: • Expanded Domains (Intel, International Trade, Emergency Mgt, Infrastructure Protection, etc.) • Better Modularity • Improve Reusability - Leveraging work of others – Discovery of IEPDs and components • Capturing Business Context • Incorporating feedback into the model - Model Refinement through use • Support for components from external standards • IEPD consistency
NIEM Use Cases • To effectively exchange information, there must be a common semantic understanding of data among participants, and the data must be formatted in a consistent manner. • NIEM provides reusable components and IEPDs for exchanges • Between NIEM domains (inter-domain). • Within NIEM domains (intra-domain)(where multiple sub communities exist within a single NIEM domain, e.g. justice).
NIEM NDR IEPD Development vs the Model • IEPD Development • National priorities (e.g. NDEx, TWPDES) • Authoritative sources (e.g. Rap Sheet) • Local requirements The Model – NIEM reusablecomponents reuse /revise reuse add /replace add /replace NIEM IEPD Library (virtual)
NIEM Naming and Design Rules • Provides a normative technical reference for building NIEM data model components and IEPDs. • Draft NIEM NDR will be available for review and comment with the 1.0RC release. • Specifies some of the following: • Use of types, elements, attributes, groups • Enumerations (code lists) • Annotations (documentation and appInfo) • Namespaces • ISO 11179 naming • External standards use (e.g. Geospatial) • Creating new entities (objects) • Composition • Specialization w/ inheritance • Associations (relationships) • Roles • Adding properties to existing entities • Type augmentation • Metadata
NIEM Architecture (Model View) .. CodeLists Externaldomains or standards Total Migration(special case) (a) Translate / Map Justice (GJXDM) (b) Extract / Use Justice specific ExternalDomain 3 NIEM Domains Sc J Im Intel Z External Domain 1 ZN IT IP EM candidate External Domain 2 XN Adopt Y Y External domains or standards Wrap / Refer NIEM NIEM Core Universal Structures Common Create (boot strap)
What is a NIEM IEPD? Documentation and specification for describing NIEM information exchanges. Contains: • A set of NIEM conforming XML schemas that • (Re)use or correctly extend NIEM components. • Define a class of XML exchange instances. • Documentation detailing • How to implement the IEP with the schemas. • Exchange model, business rules, use cases, etc. • Example instances, stylesheets • Metadata for indexing, search, discovery, maintenance, registration, etc.
XML Schema *Code list xsd NIEM XML Reference Architecture *Constraint xsd NIEM xsd subset Constraint Validation Conformance Validation *Extension xsd *Exchange xsd IEPDs have their own target namespaces Namespace * Optional Exchange xml
External 0 External 1 Extension 4 6 6 5 2 4 2 IEPD Component Perspective NIEM IEPD schemas are NIEM conforming. IEPD Subset External domains or standards External domains or standards 1 External 3 External 2 3 3 2 NIEM 1, 5 – create 2, 4 – wrap / refer 3 – translate / map 6 – adopt 1 3
The IEPD Life Cycle • General framework for building IEPDs in logical steps. • Primary process from the practitioner perspective. • Guide to understanding how IEPDs are ideally builtand published. • Not prescriptive, IEPD builder … • Adjusts the scope of the framework to the IEPD level of effort. • Enters the life cycle at appropriate step. • The value of formal specifications for input/outputs of the IEPD Life Cycle. • Ensure consistency across IEPDs. • Capture business context to facilitate search and discovery of NIEM components and IEPDs. • Machine readable and process-able to automate support for the IEPD Life Cycle. • Encourage and facilitate commercial tool developmentand value added capabilities.
Executive orders, mission statements, business requirements, business context, policies/procedures Specific information exchange, high-level business requirements, existing IEPDs NIEM NDR NIEM IEPD for reuse library Data requirements, business context, exchange model Submission of candidate NIEM components, component business context Complete IEPD ExistingIEPD artifacts Gap analysis, specs for new components IEPD artifacts to share/reuse, metadata for discovery NIEM NDR Valid IEPD schemas, example instances, documentation, metadata 0 Scenarios,BRM Taxonomy 1 Info exchangerequirements 5 Publish +implement NIEM IEPDLife Cycle 2 Map +model 4 Assembleto IEPD spec 3 Build +validate
NIEM NDR NIEM NIEM NDR Executive orders, mission statements, business requirements, business context, policies/procedures Specific information exchange, high-level business requirements, existing IEPDs 0 Scenarios,BRM Taxonomy 1 Info exchangerequirements IEPD for reuse library Data requirements, business context, exchange model 5 Publish +implement Submission of candidate NIEM components, component business context NIEM IEPDLife Cycle 2 Map +model Complete IEPD ExistingIEPD artifacts 4 Assembleto IEPD spec 3 Build +validate Gap analysis, specs for new components IEPD artifacts to share/reuse, metadata for discovery Valid IEPD schemas, example instances, documentation, metadata
Topdown Bottom up IEPDs NBAC / NTAC:vet, harmonize, conformance NIEM Governance Staging Area Early Awareness & coordination NIEM Groups with common data interests IEPD Life Cycle Feeds the Data Model Maturity Life Cycle 0Scenarios,BRM taxonomies 1Info exchgrequirements NIEM IEPDLife Cycle 2Map +model 5 Publish +implement 3Build +validate 4Assembleto IEPD spec New component candidates & business context
From the IEPD Life Cycle Perspective GJXDM Tools • Justice Information Exchange Model (JIEM) Tool • JIEM-GJXDM direct mapping capability (through SSGT) • Schema Subset Generation Tool (SSGT) • Moving forward • GJXDM Spreadsheet • IEPD Clearinghouse NIEM Tools • Component Mapping Template (CMT) • Graphical Browser • Schema Subset Generation Tool (SSGT) • Information Exchange Package Documentation (IEPD) Tool • Toward NIEM 1.0RC1 (30 Sep 2006)
Justice Information Exchange Model(JIEM) Modeling Tool • JIEM is a Web application that facilitates analysis of business context and content (payload) requirements for justice information exchanges. • The analysis is represented in a site database.
JIEM Exchanges and Dimensions A site database defines exchanges in 5 dimensions: process, event, agency, condition, document (information).
JIEM Reference Model • There is a special site database called the JIEM Reference Model, which defines exchanges common to most jurisdictions. • A site database can be created fromscratch or copied from another site database, or the Site Database Builder can be used to create one from the JIEM Reference Model. Using the Site Database Builder typically reduces the effort of site database creation by about 75%.
JIEM Data Elements A site database includes data elements, which can be simple or may be composed of other data elements.
JIEM Data Element Usage Documents contain data elements and define their typical usage.
JIEM Reports • A variety of textual and graphic reports can be generated. • Reports generally relate to content of the database or usage of data(comprehension or conceptualization of the data, data admin, etc.)
How JIEM and SSGT Interoperate SSGT Mapping Tool JIEM Schema Subset Generation Tool (SSGT) .XMI ArgoUML Data exchange requirements (local vocabulary) output in XMI(i.e. UML-XML)
SSGT Mapping Tool Enables user that has built an AS-IS or TO-BE model with JIEM to map local data components directly to GJXDM data components through the SSGT. Schema Subset Generation Tool (SSGT)
SSGT Mapping Tool – Search / Discover • User local data components are displayed (left) with convenient access to the SSGT (right). • User can search with SSGT for GJXDM data components that match local data components. Schema Subset Generation Tool (SSGT) Schema Subset Generation Tool (SSGT)
SSGT Mapping Tool – Select / Build User maps by • selecting matching GJXDM data components (check box). • confirming (clicking) the match to build the map. Schema Subset Generation Tool (SSGT) Schema Subset Generation Tool (SSGT)
SSGT Mapping Tool – Generate Subset and Report When all local data components have been reviewed and mapped or not, the Mapping Tool can generate: • Subset for mapped elements (also contains the wantlist). • Report detailing what mapped and what did not. Schema Subset Generation Tool (SSGT)
How JIEM and SSGT interoperate SSGT Mapping Tool JIEM Schema Subset Generation Tool (SSGT) Mapping Report Wantlist SSGT .XMI ArgoUML
Schema Subset Generation Tool(SSGT) • SSGT is a Web application that allows a user to browse the GJXDM and create GJXDM schema subsets and their wantlists. • Supports basic and advanced search for GJXDM components.
SSGT – Expand aType or Property • A complex type can be expanded to see its properties. • A property can be expanded to see its type’s properties.
SSGT – Types User clicks a type to see its: • definition • base types • derived types • properties • properties that it is the type of
SSGT – Properties User clicks a property to see its: • definition • types in which it’s contained • its types.
SSGT – SelectProperties and Types Properties and types can be selected forinclusion in the GJXDM schema subset.
SSGT – Generate Subset.zip Generating a GJXDM schema subset, creates a .zipfile containing both the subset and and its corresponding wantlist.
SSGT – Save and Load Wantlists Wantlists can be saved and loaded so that work can be suspended and resumed.
How JIEM and SSGT interoperate SSGT Mapping Tool JIEM Schema Subset Generation Tool (SSGT) Mapping Report Wantlist SSGT .XMI ArgoUML Subset.zip
Moving Forward • Export other dimensions beyond information dimension in standard open specification (e.g. BPMN, etc.). • Evaluate applicability toother domains and NIEM. • Capture additional metadata (security, privacy, etc.) to support the implementation of an SOA. • Support generation of extension and constraint schemas. • Support sharing/reuse of mappings, wantlists, and schemas across JIEM exchanges and site DBs. • Support sharing/reuse with other non-JIEM users through standard import/export specifications (the NIEM IEPD specification is well suited for this).
GJXDM Tool Summary • Justice Information Exchange Model (JIEM) Tool: • Define/model exchange context and content requirements. • Generate XMI (UML-XML) representation of local data exchange requirements. • GJXDM Spreadsheet: • Off-line textual representation of GJXDM (the model and dictionary). • Search, navigate, browse, discover GJXDM data components. • Schema Subset Generation Tool (SSGT): • On-line textual representation of GJXDM (the model and dictionary). • Search, navigate, browse, discover GJXDM data components. • Select and map GJXDM data components to local components (Mapping Tool). • Generate mapping report spreadsheet (Mapping Tool). • Select data components and generate schema subset and associated Wantlist. • Manually produce other artifacts required for an IEPD. • Examples: exchange, extension, and constraint schemas, and example instances. • IEPD Clearinghouse (CH): • Register and share a GJXDM IEPD.
Available Tools: GJXDM 0 Scenarios,BRM taxonomies JIEM 1 Info exchgrequirements Spreadsheet IEPD CH SSGT Map 5 Publish +implement IEPDLife Cycle SSGT 2 Map +model 4 Assembleto IEPD spec 3 Build +validate SSGT
Component Mapping Template (CMT) A spreadsheet for mapping local data elements to NIEM elements. • Developed to expand GJXDM to NIEM by identifying data requirement gaps. • Developed as submission format for NIEM pilots. • Reflects experience gained from working with key GJXDM customers. • Structures the process of using NIEM for exchange content requirements. • Identifies new data components for addition to NIEM. • Structured format allows for automated processing. • Structured method to capture: • Local data requirements (vocabulary) and map them to existing NIEM data components • exact matches • partial mapping details • no mapping • Information that can provide a metric for modeling refinement and improvement • Information that can be used for keywords, search hints, mapping assistance, etc.
CMT – General Tab General information on exchange(s) being mapped (business context)
CMT – Template Tab Information on how local components are mapped to NIEM
CMT – Codes Tab Information on how codes are mapped to NIEM
Schema Subset Generation Tool Graphical Browser IEPD Tool NIEM Tools for Browse, Navigate, Search, Discover, Generate/Build
NIEM Graphical Browser Java-based GUI to browse, navigate, and generally familiarize with NIEM structure. 3 different views 8 different starting locations