1 / 38

NIEM Team, Oracle Public Sector

XML Validation for NIEM An Executive Briefing. Exchange Development. Deploy. Requirements. CAMV. Mo del Data. Test. NIEM Team, Oracle Public Sector. Build Exchange. Generate Dictionary. Technology Introduction – September 2011.

lulu
Download Presentation

NIEM Team, Oracle Public Sector

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. XML Validation for NIEM An Executive Briefing Exchange Development Deploy Requirements CAMV Model Data Test NIEM Team, Oracle Public Sector Build Exchange Generate Dictionary Technology Introduction – September 2011

  2. The following is not intended to outline Oracle general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle. DisclaimerNotice

  3. XML Validation Introduction A key need in working with XML information exchanges, is developing examples and matching templates including rules, context, and roles for correctly managing information exchange content between partners. The W3C Schema by themselves are not sufficient. Open sharable test suites are essential part of production quality exchange development – proven to save implementers time and resources A flexible XML Validation Framework is essential – in live production system the unexpected is the norm. Having a dynamic rule-based approach allows rapid tailoring that smoothly keeps applications operational. Documentation that allows verification by business analysts can ensure the production system matches policy needs.

  4. Exchange Delivery Lifecycle Component Dictionary Drag and Drop Visual Editor XML Exchange Design Template Updates Design • CAM Editor • CAMV • Engine Monitor Author Test CAM Template XML Samples Deploy XSD Schema Production Log Results XMI / UML Models Compiled XML Exchange Templates XML Exchange Validation Documentation

  5. XML Validation Framework

  6. CAMV - The Best XML Validation Available • Cross-field validation rules • Dynamic structure components • Error and warning level reporting • XPath V2.0 rules for extended business logic • Extensible rule templates with schema-aware validations • Clear business documentation for policy analyst verification • Code lists and SQL table lookups with conditional rules • Open source with open platform deployment • Public open standards based from W3C and OASIS • High performance thread safe execution engine • Dynamic template driven deployment framework • Spring API compatible for middleware integration • Ant scripting for test suite implementations • Flexible result rendering, routing and reporting

  7. What is new in CAM toolkit release V2.1? • SQL table lookups and visual configuration wizard • Improved code lists handling visual wizards • Enhanced Ant scripting for easier test suite development • CAMV enhancements • Spring API enabled for middleware integration • Improved engine validation performance • Better memory management • Validation results reporting cleaner and more consistent

  8. Key Points for NIEM implementers • Accelerate IEPD partner implementation with test suites • Go directly from IEPD to deployment for XML validation • SQL table lookups integrate directly into validation • Improve your code lists handling and sharing • Open standards and open source based solution enables community shared resources • Cross-platform deployment • Directly supports NIEM Exchange Delivery Lifecycle

  9. Exchange Development Deploy Requirements CAMV Model Data Test Summary Build Exchange Generate Dictionary Review Next Steps Future enhancements Resources and Links

  10. Value Proposition Testing and verification of your exchange XML examples SQL database lookups and flexible code lists handling Extended business rule checking Flexible validation outcomes with warnings not just errors Regression testing with batch processing scripts Flexible deployment of XML validation framework Integration via Spring API to middleware Easily sharable with your implementation partners The best available XML exchange validation tools

  11. What are we working on? • Improvements • “CAM for web services” – extending from exchange-centric • Enhancing ANT capabilities with soapUI integration • New features • Exchange dictionary management enhancements • Evaluation tools for dictionaries and components • Enhancing XML example generation with synthetic data

  12. Links and References MAIN SITE - http://cameditor.org NIEM MATERIALS - Oracle NIEM website http://www.oracle.com/goto/niem Oracle XMLOrb blog site http://blogs.oracle.com/xmlorb

  13. Exchange Development Deploy Requirements CAMV Model Data Test XML Validation Framework Part 2 – Technology Overview Build Exchange Generate Dictionary Approach, Architecture and Deployment

  14. Standard Pattern for Business Rules CAM rules template approach fully supports these criteria Claim – An English statement of a business rule that conveys its meaning.Example: A Chapter MUST have a Title. Test – A formal statement of a business rule that can be parsed and processed by machine.Example: <Assert test="count(para) &gt;=1"> Diagnostic – An English statement that identifies and explains what happened or was found when a Test fails.Example: Chapter "X" does not have a Title. Outcome – Error, Warning, Pass

  15. CAM - Controlling Scope and Context Condition controls if and when the content rule action applies Condition can control structure as well; optional, mandatory, exclude Condition can reference different component(s) for contextual rule actions

  16. CAMV Engine

  17. CAMV Validation Engine • Standalone XML validator using XPath rules • Context aware and declarative rules approach • Integrated with CAM editor menus for instant testing • External code list and SQL table lookup support • Callable via Spring framework or Java API; thread safe and server container deployable • Configurable error levels – error, warning • Java error results object returned • Embedded validation results attributes in XML results

  18. CAMV CAM Editor XSLT CAM Editor / CAMV Environment Single XML Test Instance Reports XML Validation Result CAM Editor CAM template

  19. CAMV Post-Validation Actions CAMV Spring Framework XML Exchange Delivery stream XML Validation Result Memory Object Middleware CAM template(s) Thread safe container based deployment architecture

  20. CAMV XSLT CAMV / ANT Script Environment CAM template(s) Reports CAMV Control Script XML XML Test Instances ANT 2 XML Validation Results 1

  21. Exchange Development Deploy Requirements CAMV Model Data Test Technology Snap Shot Build Exchange Generate Dictionary Example CAM templates Running CAMV validations Results handling techniques Summary

  22. Available Test Suite Examples Experimental SAR Examples OASIS EML V7 – UOCAVA Testing • Set of test examples for Election Management: • Both individual test cases and folder based multiple examples • Each test uses different template and validation scenario * SAR – Suspicious Activity Report NIEM exchange * EML – Election Markup Language Standard • Two test example templates and XML instances: • Baseline SAR with just structure and content usage rules, schema parlance “cardinality, facets and enumerations” • Baseline SAR advanced – logical business rules added to check consistency of information and structure components • Each test set contains examples that pass and those that fail depending on the template validation applied

  23. Experimental SAR Overview • Areas of Interest: • Drugs • Fraud • Gangs • Internet • Pornography • Prostitution • Property • Community • Weapons/Chemicals • Prescriptions • Travel/Immigration • Terrorism * SAR – Suspicious Activity Report

  24. Visual Template Rules Wizard Tools

  25. Exchange Development Deploy Requirements CAMV Model Data Test Running CAMV Validation Build Exchange Generate Dictionary Illustrative examples – pass, fail, warnings Default structure handling Data type and Content checking Cross-field validation rules SQL database lookup

  26. Example Advanced Rules Business Rule: Providing warning if PurgeDate is earlier than PurgeReviewDate <as:constraintcondition="//sbl:PrivacyDetails/sbl:PrivacyPurgeDate < //sbl:PrivacyDetails/sbl:PrivacyPurgeReviewDate"action="printMessage(//sbl:PrivacyDetails/sbl:PrivacyPurgeReviewDate,Warning: Review date not before purge date)"><as:annotation/></as:constraint> Business Rule: Location must contain an address or a highway or coordinate set <as:constraintcondition="not(./nc:LocationAddress) and(not(./nc:LocationHighway)) and(not(./nc:LocationTwoDimensionalGeographicCoordinate))"action="printMessage(//j:TargetLocation/sbl:Location,Empty Location information)"><as:annotation><as:documentationtype="documentation">Example of advanced rule</as:documentation></as:annotation></as:constraint>

  27. Running CAMV details Batch Command Line Execution Window Viewing Same Template in Visual Editor • From within the Test Suite folder on the command line execute > Ant runALL

  28. Sample SAR Validation Results HTML

  29. Sample SQLDB Test Run • Start the database instance • From within the Test Suite folder on the command line execute > Ant runALL

  30. DB lookup test results rendered as HTML SQL DB lookup result

  31. Exchange Development Deploy Requirements CAMV Model Data Test CAM Editor Visual Tools Build Exchange Generate Dictionary SQL lookup entry wizard Run CAMV validation wizard Visual entry of SQL connection details Visual review of validation results

  32. CAM template SQL lookup rule definition This is the myLists.cam example template

  33. CAM template SQL lookup rule wizard

  34. Test from CAM Editor validation Run Wizard Pick test case XML file 1 Choose JDBC driver Confirm driver name 2 3 Replace default connection with actual JDBC string 4 NOTE: this is the same information as contained in the dbProp.props file jdbc:derby://localhost:1527/firstdb

  35. Sample Visual Test Results SQL lookup result displayed

  36. Exchange Development Deploy Requirements CAMV Model Data Test Summary Build Exchange Generate Dictionary Review Resources and Links

  37. CAMV Summary • Open source, open public standards based, cross-platform deployment written using Java • Uses Java APIs, Spring API, JDOM, etc. • Validation features: • XPath V2.0 support • Looks ups • 20 built-in functions • Reporting • Embedded CAMERROR, CAMWARN tags • Spring API and results set handler • Optional sysout test result log

  38. Links and References DOWNLOADS - http://cameditor.org/ #CAMV_Testing NIEM MATERIALS - Oracle NIEM website http://www.oracle.com/goto/niem Oracle XMLOrb blog site http://blogs.oracle.com/xmlorb

More Related