NIEM-UML Profile 2.1 Introduction and Tool Demonstration TRAINING Presenter Name Organization Date NIEM-UML PROFILE 2.1.

Slides:



Advertisements
Similar presentations
Profiles Construction Eclipse ECESIS Project Construction of Complex UML Profiles UPM ETSI Telecomunicación Ciudad Universitaria s/n Madrid 28040,
Advertisements

1 Web Data Management XML Schema. 2 In this lecture XML Schemas Elements v. Types Regular expressions Expressive power Resources W3C Draft:
NIEM UML Profile Initial Submission. AGENDA NIEM Overview NIEM Technical Concepts NIEM UML Profile Introduction PIM Profile PSM Profile Next Steps and.
OMG Architecture Ecosystem SIG Federal CIO Council Data Architecture Subcommittee May 2011 Cory Casanave.
1 HIT STANDARDS COMMITTEE DRAFT: S&I Framework Principles and Processes 1.
2008/03/25 Unified Modeling Lanauage 1 Introduction to Unified Modeling Language (UML) – Part One Ku-Yaw Chang Assistant Professor.
1 Introduction to XML. XML eXtensible implies that users define tag content Markup implies it is a coded document Language implies it is a metalanguage.
Object-Oriented Analysis and Design
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 7 Data Modeling Using the Entity- Relationship (ER) Model.
Model Driven Architecture (MDA) Partha Kuchana. Agenda What is MDA Modeling Approaches MDA in a NutShell MDA Models SDLC MDA Models (an Example) MDA -
Creating Architectural Descriptions. Outline Standardizing architectural descriptions: The IEEE has published, “Recommended Practice for Architectural.
Sunday, June 28, 2015 Abdelali ZAHI : FALL 2003 : XML Schemas XML Schemas Presented By : Abdelali ZAHI Instructor : Dr H.Haddouti.
The Software Product Life Cycle. Views of the Software Product Life Cycle  Management  Software engineering  Engineering design  Architectural design.
IRS XML Standards & Tax Return Data Strategy For External Discussion June 30, 2010.
XML Exchange Development CAM Technology Tutorial – Public Sector NIEM Team, June 2011 CAM Test Model Data Deploy Requirements Build Exchange Generate Dictionary.
1 1 Roadmap to an IEPD What do developers need to do?
NIEM-UML Profile Justin Stekervetz, NIEM PMO
Developing Enterprise Architecture
Technical Introduction to NIEM
Model Driven Information Sharing (MDIS)
CSE314 Database Systems Data Modeling Using the Entity- Relationship (ER) Model Doç. Dr. Mehmet Göktürk src: Elmasri & Navanthe 6E Pearson Ed Slide Set.
1 CIM User Group Conference Call december 8th 2005 Using UN/CEFACT Core Component methodology for EIC/TC 57 works and CIM Jean-Luc SANSON Electrical Network.
Slide 1 OMG, Montreal, August 2004 OMG_SWIFTMDA_200408_v2.ppt SWIFTStandards (UNIFI – ISO 20022) “MDA-like” approach Frank Vandamme Tools, Products & Methodology.
Free Mini Course: Applying SysML with MagicDraw
Faculty of Informatics and Information Technologies Slovak University of Technology Peter Kajsa and Ľubomír Majtás Design.
-Nikhil Bhatia 28 th October What is RUP? Central Elements of RUP Project Lifecycle Phases Six Engineering Disciplines Three Supporting Disciplines.
AGENDA 1.The NIEM Framework What common services, governance models, processes and tools are provided by NIEM? 2.NIEM Specifications & Processes What.
Interoperability Standards for Information Sharing and Safeguarding PM-ISE Slide 1 | Unclassified | Notional | DRAFT.
1 1 Roadmap to an IEPD What do developers need to do?
Business Requirements Using Unified Modeling Language Eric H. Castain, SVP Internet Services Group, Architecture Wells Fargo March 2005.
MDA and QVT  Tom Gullion, Director of Product Management, Together Products.
THE GITB TESTING FRAMEWORK Jacques Durand, Fujitsu America | December 1, 2011 GITB |
An Introduction to Software Architecture
Profiling Metadata Specifications David Massart, EUN Budapest, Hungary – Nov. 2, 2009.
9/14/2012ISC329 Isabelle Bichindaritz1 Database System Life Cycle.
Introduction to MDA (Model Driven Architecture) CYT.
NIEM Blue Team Presentation April 20, 2010 Phil Letowt, Mini Kanwal, Ken Sall, David Webber ICE OCIO / Task ASAS ICE Information Exchange Reuse with NIEM.
Larry L. Johnson Federal Transition Framework.
David Webber, NIEM Team, Oracle Public Sector Rapid NIEM XML Exchange Design, Semantics and UML Models NIEM Test Model Data Deploy Requirements Build Exchange.
C W3C Government Linked Data Working Group Cory Casanave 06/30/2011 Cory Casanave Cory-c at modeldriven dot com CEO, Model Driven Solutions Founder,
NIEM-UML PROFILE Justin Stekervetz, NIEM PMO Cory Casanave, Model Driven Solutions Mark Kindl, Georgia Tech Research Institute March 2012 OMG Meeting.
1 Schema Registries Steven Hughes, Lou Reich, Dan Crichton NASA 21 October 2015.
Notes of Rational Related cyt. 2 Outline 3 Capturing business requirements using use cases Practical principles  Find the right boundaries for your.
1 1 CAM Toolkit for NIEM IEPD Development Phil Letowt – DHS/ICE David Webber – ICE Data Architect.
NIEM Information Exchange Package Documentation (IEPD) Mini Kanwal NIEM Technical Advisor Department of Homeland Security September, 7 th 2006.
Dr. Darius Silingas | No Magic, Inc. Domain-Specific Profiles for Your UML Tool Building DSL Environments with MagicDraw UML.
S&I Integration with NIEM (DRAFT) Standards Development Support June 8, 2011.
FDT Foil no 1 On Methodology from Domain to System Descriptions by Rolv Bræk NTNU Workshop on Philosophy and Applicablitiy of Formal Languages Geneve 15.
S&I PUBLIC HEALTH REPORTING INITIATIVE: DEVELOPING OF A TEAMING APPROACH S&I Public Health Reporting Initiative Nikolay Lipskiy, MD, DrPH, Co-Lead September,
Design and Implementation of a Rationale-Based Analysis Tool (RAT) Diploma thesis from Timo Wolf Design and Realization of a Tool for Linking Source Code.
CASE (Computer-Aided Software Engineering) Tools Software that is used to support software process activities. Provides software process support by:- –
Leveraging UBL for Developing Justice XML (GJXDM) Reference Documents John Ruegg County of Los Angeles Information Systems Advisory Body GJXDM User Conference.
® A Proposed UML Profile For EXPRESS David Price Seattle ISO STEP Meeting October 2004.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
1 Class exercise II: Use Case Implementation Deborah McGuinness and Peter Fox CSCI Week 8, October 20, 2008.
1 Exchange Network Shared Schema Components. 2 Shared Schema Components Topics: Introduction to Shared Schema Components Purpose/value of using Shared.
XASTRO-2 Presentation CCSDS SAWG th November 2004.
Ontologies Reasoning Components Agents Simulations An Overview of Model-Driven Engineering and Architecture Jacques Robin.
Armstrong Process Group, Inc. Copyright © Armstrong Process Group, Inc., All rights reserved National Information Exchange.
Architecture Ecosystem SIG March 2010 Update Jacksonville FL.
Enterprise Architectures Course Code : CPIS-352 King Abdul Aziz University, Jeddah Saudi Arabia.
Data Modeling Using the Entity- Relationship (ER) Model
Interface Concepts Modeling Core Team
Implementing the Surface Transportation Domain
Object Management Group Information Management Metamodel
Information Delivery Manuals: Functional Parts
2. An overview of SDMX (What is SDMX? Part I)
An Introduction to Software Architecture
NIEM Tool Strategy Next Steps for Movement
QoS Metadata Status 106th OGC Technical Committee Orléans, France
Presentation transcript:

NIEM-UML Profile 2.1 Introduction and Tool Demonstration TRAINING Presenter Name Organization Date NIEM-UML PROFILE 2.1

NIEM-UML Profile 2.1 COURSE OBJECTIVES DURATION 2 Hours PREREQUISITES NIEM 302 In addition to this, knowledge of UML is required.. Welcome to the NIEM-UML Profile 2.1 Technical Training course. This course is designed to provide you with the technical knowledge necessary to enable you to build NIEM IEPDs using NIEM-UML and the NIEM Modeling Tool. By the end of this course, you’ll be able to: Understand when to use the NIEM-UML Profile Model a NIEM exchange using UML Generate a NIEM IEPD from a UML model 2

NIEM-UML Profile 2.1 AGENDA Concept Refresh NIEM-UML Overview NIEM-UML Platform Independent Model NIEM-UML Platform Specific Model Modeling NIEM Concepts NIEM Modeling Tool Demonstration 3

NIEM-UML Profile 2.1 CONCEPT REFRESH 4

NIEM-UML Profile THE IEPD LIFECYCLE 5 Review background, assess resource impact, understand business context, and identify information exchange business scenarios Selected information exchange scenario is further elaborated to understand and document the business context and data requirements Create an exchange content model based on information exchange requirements. The Exchange Content Model is then mapped to NIEM. Create a set of exchange-specific NIEM conformant XML schemas that implement the data model created for the exchange Prepare and package all related files for this IEPD into a single self ‐ contained, self-documented, portable archive file Implement the IEPD into production as well as publish the IEPD for search, discovery, and reuse.

NIEM-UML Profile THE IEPD ARTIFACTS IEPDs contain both required, recommended, and optional artifacts Required: Bold and Blue Optional: Plain Note: Best practices for most organizations include many of the artifacts listed here Business Processes Diagrams Use Case Diagrams Sequence Diagrams Business Rules Business Requirements Exchange Content Model Mapping Document Subset Schema Exchange Schema Wantlist Constraint Schema Extension Schema Reference Schema XML Stylesheets Master Document Catalog Change Log Sample XML Instances No required artifacts. Publish the IEPD to a repository and implement the exchange The following includes the required and recommended artifacts associated with each phase of the IEPD Lifecycle.

NIEM-UML Profile SYSTEMS DEVELOPMENT LIFE CYCLE The Systems Development Life Cycle (SDLC) is a common methodology used for creating information systems The IEPD Lifecycle aligns closely with the phases of the SDLC Plan Requirements Design Develop Implement Maintain Develop high level scope and goals of intended system Analyze goals and break them down into exact requirements Transform requirements into detailed system capabilities Develop system per design specifications Test and deploy system and develop future plan Sustain system per future plan and eventually move to disposition The following includes the phases of the Systems Development Life Cycle as they align with the IEPD Lifecycle.

NIEM-UML Profile 2.1 NIEM-UML OVERVIEW 8

NIEM-UML Profile COURSE MAP – MODULE Concept Refresh NIEM-UML Overview NIEM-UML Platform Independent Model NIEM-UML Platform Specific Model Modeling NIEM Concepts NIEM Modeling Tool Demonstration

NIEM-UML Profile 2.1 After this module, you should be able to… Know when to use NIEM-UML. Understand which versions of NIEM are support by NIEM-UML. Describe the benefits of model driven architecture. Find the relevant specifications for conformance with NIEM and the NIEM-UML Profile. 10 MODULE 1 – NIEM UML OVERVIEW This module will introduce you to the NIEM-UML Profile.

NIEM-UML Profile 2.1 The National Information Exchange Model (NIEM) is a well established U.S. sponsored program and community for standardized information exchange information. The NIEM Program Management Office is organized under the Department of Homeland Security, the sponsor of NIEM-UML. The Object Management Group (OMG) is a leading industry consensus organization specifying many of the popular modeling and middleware standards. The Unified Modeling Language (UML®) is an established standard for modeling from the OMG. NIEM-UML is a profile of UML for modeling NIEM at a logical and XML specific level that is in the final stages of adoption within the OMG. NIEM-UML OVERVIEW

NIEM-UML Profile 2.1 ​ In September 2013, the Object Management Group (OMG) Board of Directors officially finalized the Unified Modeling Language (UML) Profile for NIEM (or NIEM-UML) as an OMG specification.OMG specification NIEM-UML for Version 2.1 is now available. NIEM-UML for Version 3.0 will be developed after the NIEM 3.0 NDR and MPD Specifications are released. CURRENT STATUS

NIEM-UML Profile 2.1 Represent the semantics of NIEM while being agnostic of its structural representation To leverage standards and standards based tools To reduce complexity and lower the barrier for entry To facilitate reuse of NIEM models and as a result schemas To embrace accepted UML modeling styles and constructs To enable use of NIEM-PIM models for use with other standards, technologies and layers To support deterministic mapping to and from the NIEM technology layers based on NIEM rules NIEM-UML GOALS Clarity: Ensure that a UML representation of a NIEM model produced by one developer can be interpreted as expected by another. Completeness: Ensure that a developer can produce a UML representation of any NIEM concept, including semantics, XML Schema structure, and metadata. Practicality: With minimal effort, a developer can employ the profile in current UML development tools to develop a NIEM model.

NIEM-UML Profile 2.1 Models are easier for both business and technical stakeholders to understand. MDA helps reduce the time and cost to develop and maintain information sharing solutions. XML & NIEM Naming, design and packaging rules are automatically applied and validated. Processes, services and information can be part of a coherent system and system of systems architecture across the full life-cycle of solutions. Multiple technologies can be supported using different MDA generation patterns, such as JSON or the Semantic Web. USING MODEL DRIVEN ARCHITECTURE

NIEM-UML Profile Scope 2.Conformance 3.References 4.Terms and Definitions 5.Symbols 6.Additional Information 7.NIEM-UML Modeling Guide 8.NIEM-UML Profile Reference 9.Transformation Reference Annex A – Example Annex B- Structured English Mapping Annex C- Machine readable Artifacts NIEM-UML SPECIFICATION SECTIONS

NIEM-UML Profile 2.1 NIEM CONFORMANCE

NIEM-UML Profile 2.1 NIEM-UML LAYERED ARCHITECTURE

NIEM-UML Profile 2.1 Which of the following are intended goals of the NIEM UML Profile? A. Leverage standards B. Improve scalablity C. Facilitate reuse D. Reduce complexity MODULE 1 – KNOWLEDGE CHECK 18

NIEM-UML Profile MODULE 1 – SUMMARY You have completed Module 1: NIEM-UML Overview. You should now be able to… Know when to use NIEM-UML. Understand which versions of NIEM are support by NIEM-UML. Describe the benefits of model driven architecture. Find the relevant specifications for conformance with NIEM and the NIEM-UML Profile.

NIEM-UML Profile 2.1 NIEM-UML PLATFORM INDEPENDENT MODEL (PIM)

NIEM-UML Profile COURSE MAP – MODULE Concept Refresh NIEM-UML Overview NIEM-UML Platform Independent Model NIEM-UML Platform Specific Model Modeling NIEM Concepts NIEM Modeling Tool Demonstration

NIEM-UML Profile 2.1 After this module, you should be able to… Understand the scope of the NIEM Platform Independent Model Model NIEM subsets in UML Model NIEM extensions (associations, augmentations, etc.) in UML Define NIEM IEPD Metadata 22 MODULE 2 – PIM This module will introduce the NIEM Platform Independent Model (PIM).

NIEM-UML Profile 2.1 A simplified subset of the Unified Modeling Language (UML) A set of UML constructs and stereotypes Extends UML to represent NIEM business concepts Business concepts are augmented with NIEM-Platform mapping information Enforces NIEM rules by leveraging OCL – a valid NIEM-UML model will produce a valid MPD Representations correspond to commonly used UML patterns with well defined mapping to NIEM platform Provides a generalized information modeling environment not specific to NIEM schema Supports mapping to and from the NIEM platform, supporting and enforcing the NDR and MPD E.g. name prefix and suffixes are added as specified by NIEM rules WHAT IS THE NIEM PIM PROFILE

NIEM-UML Profile 2.1 NIEM-UML Profiles and Transforms NIEM-UML PIM Models PIM Profile Model Package Description Profile PIM Model For One or More Exchanges Model of a Specific MPD NIEM Core Model NIEM Domain Model Platform Specific Model of a Specific MPD A NIEM MPD PSM Profile Existing NIEM NDR and MPD Platform Specifications Extends & References Uses Includes Transforms Between XML Primitive Types Uses Conforms to User’s UML NIEM Models Generated Based on NIEM-UML Model Libraries Transform Specification Conforms to

NIEM-UML Profile 2.1 Data Exchange of adoptions by pet rescue centers This is a very high-level example, intended to provide a general idea of what a PIM looks like and what it provides. PET ADOPTION EXAMPLE

NIEM-UML Profile 2.1 Pet Adoptions Pets (Being adopted) People (Adopting) Pet Adoption Centers (Facilitating Adoptions) Addresses (Of people and adoption centers) Contact information (For people and adoption centers) Associations for contact information related to people INFORMATION TO EXCHANGE

NIEM-UML Profile 2.1 HIGH-LEVEL INFORMATION MODEL

NIEM-UML Profile 2.1 THIS IS NIEM - REUSE!

NIEM-UML Profile 2.1 MODEL REUSE OF NIEM CORE

NIEM-UML Profile 2.1 REPEAT AS REQUIRED

NIEM-UML Profile 2.1 What is an “Adoption Center”? It is a kind of organization But perhaps more properly a “role” an organization plays, as they could play other roles as well This is one representation of NIEM roles In the NIEM PSM, this becomes a property prefixed by “RoleOf” ROLES OF ORGANIZATIONS

NIEM-UML Profile 2.1 An adoption is a kind of activity We can reuse this from NIEM-Core as well WHAT IS AN ADOPTION?

NIEM-UML Profile 2.1 PetKind is a NIEM “Code List” This can be a used in a property of a pet as well as other places WHAT KINDS OF PETS ARE ADOPTED?

NIEM-UML Profile 2.1 NIEM ASSOCIATIONS Associations Connect Objects – in this case people and contact information

NIEM-UML Profile 2.1 AUGMENTATIONS – PHONE NUMBER ++

NIEM-UML Profile 2.1 COMPLETED HIGH-LEVEL MODEL

NIEM-UML Profile 2.1 ADDING THE IEPD METADATA

NIEM-UML Profile 2.1 CREATE THE IEPD FROM THE MODEL

NIEM-UML Profile 2.1 ALL THE IEPD ARTIFACTS ARE THEN CREATED BY THE MDA AUTOMATION

NIEM-UML Profile 2.1 MDA AUTOMATION ALSO CREATES NIEM CONFORMANT XML SCHEMA true

NIEM-UML Profile 2.1 The model is fully validated with “OCL Constraints” for NIEM Rules The produced PSM is also validated Many NIEM rules are taken care of automatically in the transformation rules such as Naming and Global elements The resulting IEPD is either valid or any problems noted (how being tool dependent) There are still a few subjective NDR Rules that can’t be tested by the automation AS PART OF THIS PROCESS

NIEM-UML Profile 2.1 NIEM Logical Concepts Not the XSD and NDR Details The PIM and Common Profile The Model Package Description Profile A UML Tool HOW MUCH IS THERE TO LEARN? Note: A Forester report estimated that 71% of software development teams already use UML

NIEM-UML Profile 2.1 Which NIEM components are “baked into” the Platform Independent Model? A. XML Primitive Types B. NIEM Core Data Model C. NIEM Domain Models D. NIEM Schemas MODULE 2 – KNOWLEDGE CHECK 43

NIEM-UML Profile MODULE 2 – PIM You have completed Module 2: NIEM Platform Independent Model (PIM). You should now be able to… Understand the scope of the NIEM Platform Independent Model Model NIEM subsets in UML Model NIEM extensions (associations, augmentations, etc.) in UML Define NIEM IEPD Metadata

NIEM-UML Profile 2.1 NIEM-UML PLATFORM SPECIFIC MODEL (PSM)

NIEM-UML Profile COURSE MAP – MODULE Concept Refresh NIEM-UML Overview NIEM-UML Platform Independent Model NIEM-UML Platform Specific Model Modeling NIEM Concepts NIEM Modeling Tool Demonstration

NIEM-UML Profile 2.1 After this module, you should be able to… Understand the scope of the NIEM-UML Platform Specific Model. 47 MODULE 3 – PSM This module will introduce the NIEM-UML Platform Specific Model (PSM).

NIEM-UML Profile 2.1 NIEM-UML PROFILE MODELS

NIEM-UML Profile 2.1 PLATFORM INDEPENDENT MODEL

NIEM-UML Profile COMMON MODEL

NIEM-UML Profile 2.1 PLATFORM SPECIFIC MODEL

NIEM-UML Profile 2.1 MODEL PACKAGE DESCRIPTION MODEL

NIEM-UML Profile 2.1 Which NIEM-UML Profiles Do IEPD Developers Need to Understand? A. Platform Independent Model (PIM) B. Platform Specific Model (PSM) C. Common Model D. Model Package Description (MPD) Model MODULE 3 – KNOWLEDGE CHECK 53

NIEM-UML Profile MODULE 4 – SUMMARY You have completed Module 3: NIEM-UML Platform Specific Model (PSM). You should now be able to… Understand the scope of the NIEM-UML Platform Specific Model.

NIEM-UML Profile 2.1 MODELING NIEM CONCEPTS

NIEM-UML Profile COURSE MAP – MODULE Concept Refresh NIEM-UML Overview NIEM-UML Platform Independent Model NIEM-UML Platform Specific Model Modeling NIEM Concepts NIEM Modeling Tool Demonstration

NIEM-UML Profile 2.1 After this module, you should be able to… Model NIEM properties in UML Model NIEM roles and associations in UML Model NIEM metadata in UML Model NIEM exchanges in UML 57 MODULE 4 – MODELING NIEM CONCEPTS This module will introduce the modeling of NIEM concepts using the NIEM-UML Profile.

NIEM-UML Profile 2.1 NIEM PROPERTIES NIEM Properties Non-reference properties: Properties are represented as properties of UML classes or data types or as ends of associations. Information from the UML property or association end definition includes the name, type and cardinality..

NIEM-UML Profile 2.1 SUBSETTING A REFERENCE VOCABULARY

NIEM-UML Profile 2.1 NIEM ASSOCIATIONS NIEM Associations A UML Class stereotyped as an > represents a NIEM association using the rules of complex types. Each end of the NIEM association is represented as an independent UML association (an association line in a class diagram). The end is named on the related object side of the UML association and the cardinality of this relation will be the number of such objects that can participate in each association, this cardinality is usually one.Association

NIEM-UML Profile 2.1 NIEM & UML ASSOCIATIONS NIEM Associations Alternative: As UML includes a first-class concept of association classes, A NIEM association may also be represented as a UML association class (Line with a class attached by a dotted line), optionally having the > stereotype.Association

NIEM-UML Profile 2.1 NIEM ROLES NIEM Roles UML also has the capability to represent roles in their simpler form as UML association ends (The names on the ends of lines in a class diagram) or properties. To represent roles that are complex types a class or data type is used.

NIEM-UML Profile 2.1 REPRESENTATION OF COMPLEX TYPES

NIEM-UML Profile 2.1 NIEM PROPERTY REUSE NIEM Property Reuse and Subset Schema UML has no notion of properties independent of any class and the normal way to handle this in UML is to define classes, perhaps abstract, that are inherited. To be consistent with UML all properties are defined within a class (or data type). The > stereotype of realization is used to import properties from one class to another (perhaps in another name-space) to provide for the property reuse that is a principle of NIEM. The defining class can be complex type, an abstract type or a >. Property holders are a NIEM-PIM Stereotype specificity to hold properties not owned by a class in the namespace.ReferencesPropertyHolder

NIEM-UML Profile 2.1 Which NIEM complex types are supported in NIEM-UML Profile 2.1? A. Objects B. Roles C. Metadata D. Adapters MODULE 4 – KNOWLEDGE CHECK 65

NIEM-UML Profile MODULE 4 – SUMMARY You have completed Module 4: Modeling NIEM concepts. You should now be able to… Model NIEM properties in UML Model NIEM roles and associations in UML Model NIEM metadata in UML Model NIEM exchanges in UML

NIEM-UML Profile 2.1 NIEM MODELING TOOL DEMONSTRATION

NIEM-UML Profile COURSE MAP – MODULE Concept Refresh NIEM-UML Overview NIEM-UML Platform Independent Model NIEM-UML Platform Specific Model Modeling NIEM Concepts NIEM Modeling Tool Demonstration

NIEM-UML Profile 2.1 No Magic Magic Draw + Cameo NIEM Plugin (licensed) plugin.html NIEM Modeling Tool (free, open-source) NIEM-UML MODELING TOOLS

NIEM-UML Profile You have completed the NIEM-UML 2.1 Profile Technical Training course. You should now be able to: Understand when to use the NIEM-UML Profile Model a NIEM exchange using UML Generate a NIEM IEPD from a UML model LEARNING RECAP

NIEM-UML Profile 2.1 CONCLUSION 71

NIEM-UML Profile For technical documentation: NIEM.gov/reference ADDITIONAL NIEM RESOURCES Docum entation and Standar ds Training and Technical Assistance Tools DOCUMENTATION AND STANDARDS TRAINING & TECHNICAL ASSISTANCE TOOLS For available resources that provide support and assistance: NIEM Training: NIEM.gov/training NIEM Webinars: NIEM.gov/webinars NIEM Helpdesk: NIEM.gov/contactusNIEM.gov/trainingNIEM.gov/webinarsNIEM.gov/contactus Available tools for developers: Visit the NIEM Tools Catalog today! NIEM.gov/tools For all things NIEM: NIEM.gov For info on NIEM Engagement Process: NIEM.gov/roadmaptoadoption

NIEM-UML Profile 2.1 END OF COURSE 73

NIEM-UML Profile 2.1 BACKUP SLIDES

NIEM-UML Profile 2.1 (PIM(COMMON)PSM) + MPD Common PIM PSM MPD

NIEM-UML Profile Namespace (Package) Namespace represents a namespace, which is implemented in XML Schema as a “schema” schema component. Namespace includes the following attributes: isConformant, namespace, and version. NAMESPACE STEREOTYPE

NIEM-UML Profile DataType DataType represents a simple type, which is implemented in XML Schema as a simple type definition component. ValueRestriction, Union, and List stereotypes may be applied to DataType Restriction stereotype and Realization may relate DataTypes DATATYPE AND RELATED STEREOTYPES ValueRestriction (DataType) ValueRestriction represents the facets of a simple type, which are implemented in XML Schema as the facets property of a simple type definition component. ValueRestriction includes the following attributes: fractionDigits, length, maxExclusive, maxInclusive, maxLength, minExclusive, minInclusive, minLength, pattern, and totalDigits.

NIEM-UML Profile Union (DataType) Union represents a union simple type, represented in XML Schema as a simple type definition component for which the variety property is “union”. DATATYPE AND RELATED STEREOTYPES

NIEM-UML Profile List (DataType) List represents a list simple type, represented in XML Schema as a simple type definition component for which the variety property is “list”. DATATYPE AND RELATED STEREOTYPES

NIEM-UML Profile AdapterType (Class), AssociationType (Class), AugmentationType (Class), MetadataType (Class), ObjectType (Class) AdapterType, AssociationType, AugmentationType, MetadataType, and ObjectType represent the given class of type; these are implemented in XML Schema as complex type definition components. Restriction stereotype, Generalization may relate Classes XSDSimpleContent stereotype may relate Classes and Datatypes CLASS AND RELATED STEREOTYPES

NIEM-UML Profile CLASS AND RELATED STEREOTYPES

NIEM-UML Profile 2.1 NIEM SUBSTITUTION GROUPS NIEM Properties A substitution group is represented by UML property subsetting. A property that subsets another will be substitutable for the base property. All subset properties within a name space are normally grouped together into a single class with the name of the base property combined with the suffix “SubstitutionGroup” (Current implementation is generating “PropertyHolder”). Substitution groups are also declared as a > since the containing class is not consequential, it is simple a holder for the group of substitutable properties.PropertyHolder

NIEM-UML Profile 2.1 NIEM PRIMITIVE TYPES NIEM Primitive Types Primitive types are represented as a UML >. There is a library of XSD data types included as part of the NIEM-PIM, this package is called “XMLPrimitiveTypes”. Specialized primitive types may subclass this library to enable automatic mapping of the domain types to XML. The NIEM-Core provides a set of these types ready-made. XSD facets may be applied to primitive types to further constrain a representation. The PIM profile includes a set of stereotypes to represent these facets

NIEM-UML Profile 2.1 NIEM OBJECT TYPES NIEM Object Types An object type is represented as a UML class, no stereotype is required. Alternative: A UML data type may also represent an Object Type.

NIEM-UML Profile 2.1 A data type for a human being. A date a person was born. A combination of names and/or titles by which a person is known. A unique reference to a living person; assigned by the United States Social Security Administration. YOUR BASIC “THING”

NIEM-UML Profile 2.1 NIEM CODE LISTS NIEM Code Types Code types are represented as UML enumerations. Each code value is one value of the enumeration.

NIEM-UML Profile 2.1 Alternative 1: A UML Data type may also represent an Augmentation Type Alternative 2: Generalizations marked as > will be mapped to a property with a cardinality of 1 to simulate multiple inheritance in the XSD. NIEM AUGMENTATIONS NIEM Augmentations An Augmentation type is represented as a UML class with the > Stereotype. A property typed by an augmentation type may have an > dependency which restricts the class of objects that may contain a property typed by an augmentation (this is sometimes called the properties “domain”). Properties without an > may be properties of any NIEM object.

NIEM-UML Profile 2.1 NIEM METADATA NIEM Metadata A Metadata type is represented as a UML class with the > Stereotype. A Metadata type may have an > dependency which restricts the class of objects the metadata may be applied to. Metadata without an > may be applied to any NIEM object.Metadata