NIEM Expo IEPD and CAM intro

advertisement
Roadmap to an IEPD
What do developers need to do?
1
Agenda
• IEPD Deliverables
• NIEM IEPD – Base Components Needed
• Top Down or Bottom Up?
• Tools and XML Technology
• How do these tools all play together?
• Dictionaries – NIEM / Domain
• Reference Materials
• Illustrative Examples
• Resources and Contacts
2
IEPD Base Components
XML Schema
1
Exchange Schema XSD
(aligns to information model,
NIEM core plus domain dictionary
and ICE NDR principles)
2
3
Documentation
(Project business details (MS Word),
NIEM cross-reference Spreadsheet)
3
XML artifacts
4
Examples & Test Cases
(wantlist.xml, subset schema.
Optional - extension, restriction and
reference schemas )
(Realistic test XML instance(s) for
exchange interoperability testing )




Required
items
Technical Goals
• Schemas for data exchange
• To produce “exchange schemas” which offer a high
degree of clarity, interoperability and reusability while being
agnostic to the actual deployment software tools.
• Documentation for understanding business context and
usage
• Supporting XML Artifacts
• Examples and test cases for verification
• Cross-reference to NIEM dictionary to ensure consistency,
interoperability and reuse within and across domains
• Alignment to domain data model components dictionary –
interoperability across domain applications
• Consistency: conforms to domain naming and design rules
principles
4
Top Down or Bottom Up?
Component
Tasks
Timings
Constraints
Collect exchange needs
Model information needs
Days
Assisted analysis
Perform XSD schema development with
NIEM alignment
XSD syntax writing
Hours
Reduce need to know
detailed schema syntax.
Documentation of each element
HTML report formats
Minutes
Automatic generation
Document NIEM element alignment
(want list)
Excel spreadsheet
Wantlist.xml
Minutes
Automatic generation
Create test cases and examples
Sets of XML instances
Hours
Perform interoperability testing
Build test environments
Hours
Automatic with content
hinting
Test harnesses
consistent
Create IEPD document
Word documentation
Days
When requirements change – Regenerate Automatically!
5
Manual preparation
Status Today
Roadmap
Item
Capability
Status
1
Definitions Repository – NIEM dictionary, domain
dictionary, import of ERwin EDM XSD
1st release
Base capabilities developed
2
CAM toolkit – bottom up designer and pick list
Top down designer from dictionary components
Available
In progress
Suite of tools available
Visual structure editor
3
Generate IEPD artifacts
Available
Enhancements planned
4
Principles and NDR evaluation tool
1st release
Enhancements planned
5
Localized exchange schema generation
Available
Generator writes XSD
automatically
6
Realistic test case generation and xml validator
Available
7
Batch unit test harness
Planned
Q4/2009
Integration to test harness via web services
Planned
Q1/2010
Business process integration
Planned
Q1/2010
8
6
Schedule
Q3/2009
Comments
Extend and develop current
manual tools
As project priorities
determine actual needs
As project priorities
determine actual needs
Tools and XML Technologies
How do these tools all play
together?
7
NIEM Exchange Schema
1
3
Exchange XSD
Exchange xml
2
*Extension xsd
Wantlist xml
*Constraint xsd
xsd subset
*Restriction xsd
NIEM domain
schemas
*Reference xsd
*Code list xsd
Code list xsd
XML Schema
LEGEND:
8
* Optional
Namespace
Approach in a Nutshell
CAM Template
XSD Collection
Exchange xsd
XSLT tools
process
entire XSD
collection
Structure
*Extension xsd
xsd subset
Rules
*Constraint xsd
*Restriction xsd
INGEST
NIEM domain
schemas
*Code list xsd
Code list xsd
Re-factor to CAM
abstraction format
Documentation
XML Schema
LEGEND:
* Optional
Namespace
CAM = Content Assembly Mechanism
9
IEPD development
CAM Template
Structure
Toolkit for
IEPD base
components
generation
1.
1
Run template evaluation report
2.
2
Compare to NIEM dictionary
Rules
- create wantlist.xml
PROCESS
Documentation
10
Suite of menu options
and tools in CAM toolkit
editor
(run custom xslt scripts
on CAM template xml)
- create spreadsheet
3.
3
Generate business rules report
4.
4
Generate XML instance(s)
Leveraging SSGT
• Generating IEPD base components
• Exchange schema ingesting
•1 Principles and Rules check evaluation report
•2 Cross-reference to NIEM dictionary
• Wantlist.xml generation
• NIEM online SSGT uploading + subset schema
generation
•3 Excel spreadsheet of cross-reference
• Business Rules documentation
•4 Example XML instance
11
Reference Materials
Illustrative Examples
References and Contacts
12
NDR evaluation example
Part of an example
report for LEXS
getDataItemRequest
template displayed in
toolkit HTML viewer
13
NIEM cross-reference spreadsheet
Formatted view
in Microsoft
Excel of import
of crossreference
report details
(from
generated XML
file)
14
NIEM online SSGT and wantlist.xml
Options menu
and Load
Wantlist option
with resulting
load of subset
details
15
Business Rules Documentation
Part of the example rules for LEXS
getDataItemRequest template
displayed in toolkit HTML viewer
16
XML example generation wizard
View of CAM toolkit
with LEXS
getDataItemRequest
and dialogue for XML
test example
generator tool
17
Points of Contact
• Phil Letowt
philip.letowt@dhs.gov
• Mini Kanwal
kanwalm@saic-dc.com
• David Webber
david.webber@ionep.com
• Ken Sall
sallk@saic-dc.com
18
Links and References
•
•
•
•
•
•
XML Schema Part 1: Structures and XML Schema Part 2: Datatypes (and Part
0: Primer) – We are using XML Schema version 1.0.
• http://www.w3.org/XML/Schema#dev
NIEM Naming and Design Rules (NDR) 1.3
• http://www.niem.gov/pdf/NIEM-NDR-1-3.pdf
NIEM Practical Implementer’s Course (online)
• http://www.niem.gov/elearning.php
NIEM Course Modules (17 free PDFs)
• http://www.niem.gov/course.php
Techniques for Building and Extending NIEM XML Components
• http://www.niem.gov/Techniques_for_Building_and_Extending_NIEM.pdf
NIEM 2.0 Conformant LEXS 3.1: Logical Entity eXchange Specifications
• http://www.it.ojp.gov/default.aspx?area=implementationAssistance&page=1017&sta
ndard=486
•
•
19
IEPD Preparation Guide – DRAFT (To be renamed CAM Toolkit User Guide
for IEPD Development)
• http://powerport.ice.dhs.gov/tapweb/documents/IEPD_Prep_Guide.pdf
CAM Toolkit download
• https://sourceforge.net/projects/camprocessor
Download