SlideShare una empresa de Scribd logo
1 de 43
IEEE P1622 Meeting
                               October 24-25, 2011

     Guide to using OASIS EML v7.0 for UOCAVA
                  Implementations

                                     David RR Webber
                               Information Architect, Oracle
                                    http://vote.nist.gov


IEEE P1622 Meeting, Oct 2011
Outline
          Mapping of OASIS EML transactions to
           UOCAVA information exchange needs
          Examining structure of EML transactions
          EML v7 dictionary and models
          Each of EML transactions examined
          Using OASIS CAM templates
          Test suites configuration and examples
IEEE P1622 Meeting, Oct 2011                         Page 2
UOCAVA Information Needs

           Mapping of OASIS EML transactions to
           UOCAVA information exchange needs



IEEE P1622 Meeting, Oct 2011                      Page 3
Ballot Delivery System (BDS)
             Many aspects to this need to be considered
                  Web site and portal for voter access
                  Supporting information and processes
                  Ballot delivery, confirmation and return
                  Security and traceability
                  Voter privacy
             We are not trying to design a BDS only anticipate the
              information it will need!


IEEE P1622 Meeting, Oct 2011                                      Page 4
Ballot Web Site Considerations
          Information can change dynamically to match legal and other
           informational needs as election unfolds
          Voters need access various links to supporting information,
           official sites and help resources
          Support for priority informational messages and alerts
          Voting authorities addresses and contact information
          Varied means to authenticate voters and required access
           checks
          Tracking of web site usage and ballot delivery and returns
          Voter privacy and security protections

IEEE P1622 Meeting, Oct 2011                                             Page 5
Ballot Construction and Delivery
          Two approaches – pre-built ballots and styles, or dynamic ballot
           generation from ballot templates and candidate/issues records
          Voter needs to identify their voting district and precinct
          System can either dynamically match ballot to voter, or retrieve
           from election voter registration record
          Similarly return address information for voter to send completed
           ballot has to be matched
          UOCAVA attestation statement questions have to be answered
           and results incorporated into ballot materials


IEEE P1622 Meeting, Oct 2011                                                  Page 6
Summarizing Information Needs
        Qualified voter records
        Election details: Federal, State, Local
        Candidate / Issues details
        Ballot formatting and rendering details
        Ballot delivery, voter verification, return
        UOCAVA web site content and managing

IEEE P1622 Meeting, Oct 2011                           Page 7
Mapping to OASIS EML V7.0
          Elections Information = EML 110
          Candidates Information = EML 230
          Ballot Information = EML 410
          Voter Election List = EML 330
          Voter Ballot Delivery = EML 470
          UOCAVA delivery = EML 505
               EML 505 can combine EML 110, 230, 410 data
IEEE P1622 Meeting, Oct 2011                           Page 8
The EML 505
       Created to make it easier for states to start using EML
        schemas
       Combines elements from other schemas:
          EML 110 Election Event: structures dealing with

           information about the elections
          EML 230 Candidate List: details for contests and

           candidates
          EML 410 Ballot List: structures for the contest ballots.

       A basic 505 file can be created from a VIP feed file via an
        XSLT transform (samples available from Virginia 2010)
IEEE P1622 Meeting, Oct 2011                                     Page 9
The EMLs 330 and 470
       Used to facilitate ballot tracking as required in MOVE Act
       EML 330 used for VRDB export:
            Can be loaded with UOCAVA voters and sent to a BDS.
            Can also include ballot status, i.e., accepted, rejected.
       EML 470 used for ballot tracking:
            Can be sent from a BDS when voter downloads a ballot, sets up a
             „channel‟ for the voter.
            When precinct receives the ballot, precinct can respond with the
             330 using the channel.

 * VRDB = Voter Record Database – subset only needed for UOCAVA needs

IEEE P1622 Meeting, Oct 2011                                              Page 10
The EMLs 110, 230 and 410
       EML 110 contains information about the elections and
        their management
       Data constructs mirrored in EML 505
       US precinct-aware structuring
       EML 230 used for ballot candidate and issue information
            Can contain much more information than typical US usage demands

       EML 410 used for ballot details and provides cross-
        referencing to candidate and election information
            Formal record of ballots to be used in the election


IEEE P1622 Meeting, Oct 2011                                                   Page 11
Example files
       Example files included to show structures within
        EMLs 110, 230, 330, 470, 505, and SEAL
        structure.
       Must download EMLv7 files, then unpack
        example files within EML directory.
       EMLv7 available from OASIS, example files
        available from IEEE P1622 site.


IEEE P1622 Meeting, Oct 2011                           Page 12
Examining EML Schema

           Examining the structure of the EML
           transactions and their make-up



IEEE P1622 Meeting, Oct 2011                    Page 13
Overview of EML schema
       The EML schema provide a consistent approach to
        assembling the information exchange and its components
       The EML core schema provides a common set of
        components across the entire EML schema
       Each EML schema has a header and a body of
        components
       Built-in capabilities such as digital signatures and seals are
        included in each schema
       Packaging support allows information to be “chained”
        across sets of schema exchanges
IEEE P1622 Meeting, Oct 2011                                      Page 14
External Schema and Standards
      The EML schema use standard schema from other
       specifications and reference them as external component
       imports
           Geospatial information (GIS for OASIS), Digital Signatures (W3C), OASIS Time
            Stamps (used for digital signatures), Names and Addresses (OASIS CIQ)

      The EML V7 schema have been enhanced to improve their
       NIEM consistency (NIEM = National Information Exchange
       Model approach – www.niem.gov)
      OASIS CIQ V4 Schema provide significantly easier to use
       constructs for USA style names and address conventions
           Aligns with NIEM core names and addresses approach

IEEE P1622 Meeting, Oct 2011                                                               Page 15
EML Schema Common Construct
                                                  Namespace
                                                  declarations


                                Shared functional components

                               Universal core components

                               External functional components




IEEE P1622 Meeting, Oct 2011                                     Page 16
EML Schema Header Construct
                                     Packaging
   Key:
   ? = optional
   * = repeatable
                                     Optional CAM rules,
   symbol = has facets               XSLT, etc
                                         Internationalization

                                         Responsible authorities
                                         and authenticity


                                     Versioning control

                                     Rendering support

                                     Verification and Security
                               Payload
IEEE P1622 Meeting, Oct 2011                                       Page 17
EML dictionary and Models

             Modelling tools available and
             Vocabulary alignment



IEEE P1622 Meeting, Oct 2011                 Page 18
EML dictionaries
             Two dictionaries
                  EML Core components
                  Complete EML component reference
             Can be viewed as Excel spreadsheet
             Available as mind map models and
              XMI/UML physical components


IEEE P1622 Meeting, Oct 2011                          Page 19
Vocabulary Alignment
             Definitions of EML Core components
                  Significantly improved in V7
             Not everything is documented in all
              schema – still more work needed to
              close the gap
             Focus on providing essential definitions
              for UOCAVA mapping purposes
IEEE P1622 Meeting, Oct 2011                         Page 20
EML Core V7
                                 Components and
                                 definitions used
                                 globally across all
                                 EML transactions




IEEE P1622 Meeting, Oct 2011                           Page 21
Person Name
                                  OASIS CIQ
                                  specification –
                                  aligned with NIEM
                                  name components




IEEE P1622 Meeting, Oct 2011                          Page 22
Address
                               OASIS CIQ
                               specification –
                               aligned with UPU
                               postal addressing for
                               207 postal authorities
                               globally




IEEE P1622 Meeting, Oct 2011                    Page 23
The SEAL Structure
           An EML element for holding digital signatures, i.e., for signing
            the EML file.
           Based on W3C guidance for digital signatures.
           The Manifest element can hold hash of objects referenced in
            <URL> element, e.g., a PDF ballot – to allow authentication of
            ballot binary objects and their correct delivery
           Conformance requires ability to use a SEAL with EML
            transactions
           See W3C documentation and links to NIST web site in P1622
            specification for using digital signatures

IEEE P1622 Meeting, Oct 2011                                                   Page 24
EML Schema for UOCAVA

           Drill-down of the structure of the EML
           transactions and their details



IEEE P1622 Meeting, Oct 2011                        Page 25
Election:
                               EML 110




IEEE P1622 Meeting, Oct 2011               Page 26
Candidates:
                               EML 230




IEEE P1622 Meeting, Oct 2011            Page 27
Voters:
                               EML 330
                               (aka poll
                               book)




IEEE P1622 Meeting, Oct 2011               Page 28
Ballots:
                               EML 410




IEEE P1622 Meeting, Oct 2011              Page 29
also in EML 110


                                                 EML 505



                                                 specific to
   also in EML 110
                                                 EML 505
   also in EML 410
   also in EML 230




IEEE P1622 Meeting, Oct 2011                               Page 30
VToken:
                               EML 470




IEEE P1622 Meeting, Oct 2011             Page 31
Using OASIS CAM templates

           Power tools for assembling XML
           transactions, examples, models,
           documentation, dictionaries and more…

IEEE P1622 Meeting, Oct 2011                       Page 32
Beyond XML and Schema
           OASIS CAM templates provide enhanced
            capabilities:
                XPath validation rules and logic
                External Code Lists support
                SQL database lookup support
                XML test case generation
                Automated documentation generation
                Generation of models
IEEE P1622 Meeting, Oct 2011                          Page 33
Dictionary Tools
             Ability to work with dictionaries of canonical
              components
             Generate dictionaries from schema
              automatically
             Verify dictionaries and component consistent
             Compare to NIEM naming and design rules
              (NIEM NDR)


IEEE P1622 Meeting, Oct 2011                               Page 34
Available open source tools
                                             Editor and
                                             CAMV
                                             validation
                                             engine – open
                                             platform

                               Download the CAM editor toolkit from:
                               http://www.cameditor.org
IEEE P1622 Meeting, Oct 2011                                      Page 35
Using EML Test Suites

           Accelerating conformance testing and
           examples verification



IEEE P1622 Meeting, Oct 2011                      Page 36
Test Suites 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.
     Using open source tooling, XPath rules, and the OASIS CAM templates
      standard to create automated testing tools.
     Integrating SQL table lookup validation rules
     Ability to use external XML code list lookups
     Pre-configured test suite available for EML UOCAVA examples:
          http://www.cameditor.org/#CAMV_Testing


                                                                     Slide 37
IEEE P1622 Meeting, Oct 2011
EML Transactions Delivery Lifecycle
                                  Component
                                   Dictionary
                                                     EML Schema
                                                       Templates
                                                                               Open source toolkit
                                                                               sponsored by
          EML standard
          updates                                                              Oracle
                                 Design

                                                                    EML
                Monitor                         Map and            Template
                                                                                     XML
                                                Test                                  Samples


                                 Deploy                                           XSD
        Test Suite
        Log Results                                                                Schema


                                                                              XMI / UML
                               Compiled                                        Models
                               Templates
                                                       Documentation

IEEE P1622 Meeting, Oct 2011
CAM Validation Framework
        Structure
                                                            SQL Query
        Rules                                  Database
                                  Template
                                                Lookup
                                 (compiled)
        Code Lists                             (optional)

                                                              Results XML




                            XML                               Java Handler
                          instance            CAMV             Errors and
                                                                Warnings



IEEE P1622 Meeting, Oct 2011
CAMV / ANT Test Suites Environment
                                 CAM
                               template

            CAMV Control                                      Reports
             Script XML         XML Test
                                Instances


                                                 XSLT
                                             2
                    ANT
                                   1
                                                           XML Validation
                                       CAMV                   Results


                                            Examples and instructions:
                                            http://www.cameditor.org/#CAMV_Testing
IEEE P1622 Meeting, Oct 2011
CAMV Test Control Script XML
  Multi-Test Folder Example                    Test case name
  <camvTestSuite>
                                                        Validation Template
    <testCase>
     <Example-Test-With-Folder>
          <cxxfile>../samples/templates/EML-330-list-v7.cxx</cxxfile>
          <testdir>../samples/XMLsamples/UOCAVA/330</testdir>

           <verbose>true</verbose>
           <inlineErrors>true</inlineErrors>   Test XML instances folder
           <parameters>
                    <abc>Param1</abc>
                    <cde>Param2</cde>
                                                       Optional items
           </parameters>
      </Example-Test-With-Folder>
    </testCase>
  </camvTestSuite>
                                                                              Slide 41
IEEE P1622 Meeting, Oct 2011
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

                                                                                   Slide 42
IEEE P1622 Meeting, Oct 2011
Summary
      OASIS EML V7.0 provides comprehensive standard
       for UOCAVA elections management and services
      Complete suite of supporting tools available to
       assist implementers
           Dictionaries and Models for data alignment
           Test suite tools for accelerated verification
           Examples to guide usage
      Open source and online resources
           http://www.cameditor.org & http://www.oasis-open.org


IEEE P1622 Meeting, Oct 2011                                 Page 43

Más contenido relacionado

Similar a EML V7 Election Standard Overview

Electronic Common Technical Document (eCTD)
Electronic Common Technical Document (eCTD)Electronic Common Technical Document (eCTD)
Electronic Common Technical Document (eCTD)Md. Zakaria Faruki
 
Estimation Techniques V1.0
Estimation Techniques V1.0Estimation Techniques V1.0
Estimation Techniques V1.0Uday K Bhatt
 
01 sm3 xml_xp_01
01 sm3 xml_xp_0101 sm3 xml_xp_01
01 sm3 xml_xp_01Niit Care
 
S1000d Ietm Technical Documentation.pdf
S1000d Ietm Technical Documentation.pdfS1000d Ietm Technical Documentation.pdf
S1000d Ietm Technical Documentation.pdfs1000dcodeandpixels
 
Introduction to YANG data models and their use in OpenDaylight: an overview
Introduction to YANG data models and their use in OpenDaylight: an overviewIntroduction to YANG data models and their use in OpenDaylight: an overview
Introduction to YANG data models and their use in OpenDaylight: an overviewCisco DevNet
 
Financial Industry Business Unified Model (FIBUM)
Financial Industry Business Unified Model (FIBUM)Financial Industry Business Unified Model (FIBUM)
Financial Industry Business Unified Model (FIBUM)Jurgen Ziemer
 
BSA 385 Week 3 Individual Assignment Essay
BSA 385 Week 3 Individual Assignment EssayBSA 385 Week 3 Individual Assignment Essay
BSA 385 Week 3 Individual Assignment EssayTara Smith
 
Entity Framework V1 and V2
Entity Framework V1 and V2Entity Framework V1 and V2
Entity Framework V1 and V2ukdpe
 
Understanding20and20 simulating20the20iec206185020standard
Understanding20and20 simulating20the20iec206185020standardUnderstanding20and20 simulating20the20iec206185020standard
Understanding20and20 simulating20the20iec206185020standardManojlooki
 
Entity Framework Overview
Entity Framework OverviewEntity Framework Overview
Entity Framework OverviewEric Nelson
 
NIEM and XML for Architects and Developers
NIEM and XML for Architects and DevelopersNIEM and XML for Architects and Developers
NIEM and XML for Architects and DevelopersBizagi Inc
 
Crawford ubl200212
Crawford ubl200212Crawford ubl200212
Crawford ubl200212guestc93331f
 
Crawford U B L200212
Crawford U B L200212Crawford U B L200212
Crawford U B L200212gauravtest1
 
Crawford Ubl200212
Crawford Ubl200212Crawford Ubl200212
Crawford Ubl200212aaa111333
 
Crawford Ubl200212
Crawford Ubl200212Crawford Ubl200212
Crawford Ubl200212guest993a3d
 

Similar a EML V7 Election Standard Overview (20)

Electronic Common Technical Document (eCTD)
Electronic Common Technical Document (eCTD)Electronic Common Technical Document (eCTD)
Electronic Common Technical Document (eCTD)
 
EA Overview
EA OverviewEA Overview
EA Overview
 
Estimation Techniques V1.0
Estimation Techniques V1.0Estimation Techniques V1.0
Estimation Techniques V1.0
 
01 sm3 xml_xp_01
01 sm3 xml_xp_0101 sm3 xml_xp_01
01 sm3 xml_xp_01
 
An Ontology-based Semantic Foundation for Flexible Manufacturing Systems
An Ontology-based Semantic Foundation for Flexible Manufacturing SystemsAn Ontology-based Semantic Foundation for Flexible Manufacturing Systems
An Ontology-based Semantic Foundation for Flexible Manufacturing Systems
 
S1000d Ietm Technical Documentation.pdf
S1000d Ietm Technical Documentation.pdfS1000d Ietm Technical Documentation.pdf
S1000d Ietm Technical Documentation.pdf
 
S1000d Ietm Technical Documentation.pdf
S1000d Ietm Technical Documentation.pdfS1000d Ietm Technical Documentation.pdf
S1000d Ietm Technical Documentation.pdf
 
Introduction to YANG data models and their use in OpenDaylight: an overview
Introduction to YANG data models and their use in OpenDaylight: an overviewIntroduction to YANG data models and their use in OpenDaylight: an overview
Introduction to YANG data models and their use in OpenDaylight: an overview
 
Financial Industry Business Unified Model (FIBUM)
Financial Industry Business Unified Model (FIBUM)Financial Industry Business Unified Model (FIBUM)
Financial Industry Business Unified Model (FIBUM)
 
BSA 385 Week 3 Individual Assignment Essay
BSA 385 Week 3 Individual Assignment EssayBSA 385 Week 3 Individual Assignment Essay
BSA 385 Week 3 Individual Assignment Essay
 
Entity Framework V1 and V2
Entity Framework V1 and V2Entity Framework V1 and V2
Entity Framework V1 and V2
 
Understanding20and20 simulating20the20iec206185020standard
Understanding20and20 simulating20the20iec206185020standardUnderstanding20and20 simulating20the20iec206185020standard
Understanding20and20 simulating20the20iec206185020standard
 
Entity Framework Overview
Entity Framework OverviewEntity Framework Overview
Entity Framework Overview
 
NIEM and XML for Architects and Developers
NIEM and XML for Architects and DevelopersNIEM and XML for Architects and Developers
NIEM and XML for Architects and Developers
 
Oracle
OracleOracle
Oracle
 
Ale IDOC
Ale IDOCAle IDOC
Ale IDOC
 
Crawford ubl200212
Crawford ubl200212Crawford ubl200212
Crawford ubl200212
 
Crawford U B L200212
Crawford U B L200212Crawford U B L200212
Crawford U B L200212
 
Crawford Ubl200212
Crawford Ubl200212Crawford Ubl200212
Crawford Ubl200212
 
Crawford Ubl200212
Crawford Ubl200212Crawford Ubl200212
Crawford Ubl200212
 

Más de Bizagi Inc

Oracle BPM Adaptive Case Management 2014
Oracle BPM Adaptive Case Management 2014Oracle BPM Adaptive Case Management 2014
Oracle BPM Adaptive Case Management 2014Bizagi Inc
 
Oracle BPM Open Data Services (Part 1)
Oracle BPM Open Data Services (Part 1)Oracle BPM Open Data Services (Part 1)
Oracle BPM Open Data Services (Part 1)Bizagi Inc
 
Oracle BPM workflow and Open-XDX web services (Part 2)
Oracle BPM workflow and Open-XDX web services (Part 2)Oracle BPM workflow and Open-XDX web services (Part 2)
Oracle BPM workflow and Open-XDX web services (Part 2)Bizagi Inc
 
Ottawa NIEM SOA Open Data Event
Ottawa NIEM SOA Open Data EventOttawa NIEM SOA Open Data Event
Ottawa NIEM SOA Open Data EventBizagi Inc
 
NIEM, CAM and Open-XDX tools
NIEM, CAM and Open-XDX toolsNIEM, CAM and Open-XDX tools
NIEM, CAM and Open-XDX toolsBizagi Inc
 
Introducing Open XDX Technology for Open Data API development
Introducing Open XDX Technology for Open Data API developmentIntroducing Open XDX Technology for Open Data API development
Introducing Open XDX Technology for Open Data API developmentBizagi Inc
 
NIEM and Future SAR
NIEM and Future SARNIEM and Future SAR
NIEM and Future SARBizagi Inc
 
CAM editor NIEM Evaluation Report
CAM editor NIEM Evaluation ReportCAM editor NIEM Evaluation Report
CAM editor NIEM Evaluation ReportBizagi Inc
 
NIEM Overview Rule Ml November 2011
NIEM Overview Rule Ml November 2011NIEM Overview Rule Ml November 2011
NIEM Overview Rule Ml November 2011Bizagi Inc
 
NIEM and Oracle Overview October 2011
NIEM and Oracle Overview October 2011NIEM and Oracle Overview October 2011
NIEM and Oracle Overview October 2011Bizagi Inc
 
Xml Validation Test Suite With Camv
Xml Validation Test Suite With CamvXml Validation Test Suite With Camv
Xml Validation Test Suite With CamvBizagi Inc
 

Más de Bizagi Inc (11)

Oracle BPM Adaptive Case Management 2014
Oracle BPM Adaptive Case Management 2014Oracle BPM Adaptive Case Management 2014
Oracle BPM Adaptive Case Management 2014
 
Oracle BPM Open Data Services (Part 1)
Oracle BPM Open Data Services (Part 1)Oracle BPM Open Data Services (Part 1)
Oracle BPM Open Data Services (Part 1)
 
Oracle BPM workflow and Open-XDX web services (Part 2)
Oracle BPM workflow and Open-XDX web services (Part 2)Oracle BPM workflow and Open-XDX web services (Part 2)
Oracle BPM workflow and Open-XDX web services (Part 2)
 
Ottawa NIEM SOA Open Data Event
Ottawa NIEM SOA Open Data EventOttawa NIEM SOA Open Data Event
Ottawa NIEM SOA Open Data Event
 
NIEM, CAM and Open-XDX tools
NIEM, CAM and Open-XDX toolsNIEM, CAM and Open-XDX tools
NIEM, CAM and Open-XDX tools
 
Introducing Open XDX Technology for Open Data API development
Introducing Open XDX Technology for Open Data API developmentIntroducing Open XDX Technology for Open Data API development
Introducing Open XDX Technology for Open Data API development
 
NIEM and Future SAR
NIEM and Future SARNIEM and Future SAR
NIEM and Future SAR
 
CAM editor NIEM Evaluation Report
CAM editor NIEM Evaluation ReportCAM editor NIEM Evaluation Report
CAM editor NIEM Evaluation Report
 
NIEM Overview Rule Ml November 2011
NIEM Overview Rule Ml November 2011NIEM Overview Rule Ml November 2011
NIEM Overview Rule Ml November 2011
 
NIEM and Oracle Overview October 2011
NIEM and Oracle Overview October 2011NIEM and Oracle Overview October 2011
NIEM and Oracle Overview October 2011
 
Xml Validation Test Suite With Camv
Xml Validation Test Suite With CamvXml Validation Test Suite With Camv
Xml Validation Test Suite With Camv
 

EML V7 Election Standard Overview

  • 1. IEEE P1622 Meeting October 24-25, 2011 Guide to using OASIS EML v7.0 for UOCAVA Implementations David RR Webber Information Architect, Oracle http://vote.nist.gov IEEE P1622 Meeting, Oct 2011
  • 2. Outline  Mapping of OASIS EML transactions to UOCAVA information exchange needs  Examining structure of EML transactions  EML v7 dictionary and models  Each of EML transactions examined  Using OASIS CAM templates  Test suites configuration and examples IEEE P1622 Meeting, Oct 2011 Page 2
  • 3. UOCAVA Information Needs Mapping of OASIS EML transactions to UOCAVA information exchange needs IEEE P1622 Meeting, Oct 2011 Page 3
  • 4. Ballot Delivery System (BDS)  Many aspects to this need to be considered  Web site and portal for voter access  Supporting information and processes  Ballot delivery, confirmation and return  Security and traceability  Voter privacy  We are not trying to design a BDS only anticipate the information it will need! IEEE P1622 Meeting, Oct 2011 Page 4
  • 5. Ballot Web Site Considerations  Information can change dynamically to match legal and other informational needs as election unfolds  Voters need access various links to supporting information, official sites and help resources  Support for priority informational messages and alerts  Voting authorities addresses and contact information  Varied means to authenticate voters and required access checks  Tracking of web site usage and ballot delivery and returns  Voter privacy and security protections IEEE P1622 Meeting, Oct 2011 Page 5
  • 6. Ballot Construction and Delivery  Two approaches – pre-built ballots and styles, or dynamic ballot generation from ballot templates and candidate/issues records  Voter needs to identify their voting district and precinct  System can either dynamically match ballot to voter, or retrieve from election voter registration record  Similarly return address information for voter to send completed ballot has to be matched  UOCAVA attestation statement questions have to be answered and results incorporated into ballot materials IEEE P1622 Meeting, Oct 2011 Page 6
  • 7. Summarizing Information Needs  Qualified voter records  Election details: Federal, State, Local  Candidate / Issues details  Ballot formatting and rendering details  Ballot delivery, voter verification, return  UOCAVA web site content and managing IEEE P1622 Meeting, Oct 2011 Page 7
  • 8. Mapping to OASIS EML V7.0  Elections Information = EML 110  Candidates Information = EML 230  Ballot Information = EML 410  Voter Election List = EML 330  Voter Ballot Delivery = EML 470  UOCAVA delivery = EML 505  EML 505 can combine EML 110, 230, 410 data IEEE P1622 Meeting, Oct 2011 Page 8
  • 9. The EML 505  Created to make it easier for states to start using EML schemas  Combines elements from other schemas:  EML 110 Election Event: structures dealing with information about the elections  EML 230 Candidate List: details for contests and candidates  EML 410 Ballot List: structures for the contest ballots.  A basic 505 file can be created from a VIP feed file via an XSLT transform (samples available from Virginia 2010) IEEE P1622 Meeting, Oct 2011 Page 9
  • 10. The EMLs 330 and 470  Used to facilitate ballot tracking as required in MOVE Act  EML 330 used for VRDB export:  Can be loaded with UOCAVA voters and sent to a BDS.  Can also include ballot status, i.e., accepted, rejected.  EML 470 used for ballot tracking:  Can be sent from a BDS when voter downloads a ballot, sets up a „channel‟ for the voter.  When precinct receives the ballot, precinct can respond with the 330 using the channel. * VRDB = Voter Record Database – subset only needed for UOCAVA needs IEEE P1622 Meeting, Oct 2011 Page 10
  • 11. The EMLs 110, 230 and 410  EML 110 contains information about the elections and their management  Data constructs mirrored in EML 505  US precinct-aware structuring  EML 230 used for ballot candidate and issue information  Can contain much more information than typical US usage demands  EML 410 used for ballot details and provides cross- referencing to candidate and election information  Formal record of ballots to be used in the election IEEE P1622 Meeting, Oct 2011 Page 11
  • 12. Example files  Example files included to show structures within EMLs 110, 230, 330, 470, 505, and SEAL structure.  Must download EMLv7 files, then unpack example files within EML directory.  EMLv7 available from OASIS, example files available from IEEE P1622 site. IEEE P1622 Meeting, Oct 2011 Page 12
  • 13. Examining EML Schema Examining the structure of the EML transactions and their make-up IEEE P1622 Meeting, Oct 2011 Page 13
  • 14. Overview of EML schema  The EML schema provide a consistent approach to assembling the information exchange and its components  The EML core schema provides a common set of components across the entire EML schema  Each EML schema has a header and a body of components  Built-in capabilities such as digital signatures and seals are included in each schema  Packaging support allows information to be “chained” across sets of schema exchanges IEEE P1622 Meeting, Oct 2011 Page 14
  • 15. External Schema and Standards  The EML schema use standard schema from other specifications and reference them as external component imports  Geospatial information (GIS for OASIS), Digital Signatures (W3C), OASIS Time Stamps (used for digital signatures), Names and Addresses (OASIS CIQ)  The EML V7 schema have been enhanced to improve their NIEM consistency (NIEM = National Information Exchange Model approach – www.niem.gov)  OASIS CIQ V4 Schema provide significantly easier to use constructs for USA style names and address conventions  Aligns with NIEM core names and addresses approach IEEE P1622 Meeting, Oct 2011 Page 15
  • 16. EML Schema Common Construct Namespace declarations Shared functional components Universal core components External functional components IEEE P1622 Meeting, Oct 2011 Page 16
  • 17. EML Schema Header Construct Packaging Key: ? = optional * = repeatable Optional CAM rules, symbol = has facets XSLT, etc Internationalization Responsible authorities and authenticity Versioning control Rendering support Verification and Security Payload IEEE P1622 Meeting, Oct 2011 Page 17
  • 18. EML dictionary and Models Modelling tools available and Vocabulary alignment IEEE P1622 Meeting, Oct 2011 Page 18
  • 19. EML dictionaries  Two dictionaries  EML Core components  Complete EML component reference  Can be viewed as Excel spreadsheet  Available as mind map models and XMI/UML physical components IEEE P1622 Meeting, Oct 2011 Page 19
  • 20. Vocabulary Alignment  Definitions of EML Core components  Significantly improved in V7  Not everything is documented in all schema – still more work needed to close the gap  Focus on providing essential definitions for UOCAVA mapping purposes IEEE P1622 Meeting, Oct 2011 Page 20
  • 21. EML Core V7 Components and definitions used globally across all EML transactions IEEE P1622 Meeting, Oct 2011 Page 21
  • 22. Person Name OASIS CIQ specification – aligned with NIEM name components IEEE P1622 Meeting, Oct 2011 Page 22
  • 23. Address OASIS CIQ specification – aligned with UPU postal addressing for 207 postal authorities globally IEEE P1622 Meeting, Oct 2011 Page 23
  • 24. The SEAL Structure  An EML element for holding digital signatures, i.e., for signing the EML file.  Based on W3C guidance for digital signatures.  The Manifest element can hold hash of objects referenced in <URL> element, e.g., a PDF ballot – to allow authentication of ballot binary objects and their correct delivery  Conformance requires ability to use a SEAL with EML transactions  See W3C documentation and links to NIST web site in P1622 specification for using digital signatures IEEE P1622 Meeting, Oct 2011 Page 24
  • 25. EML Schema for UOCAVA Drill-down of the structure of the EML transactions and their details IEEE P1622 Meeting, Oct 2011 Page 25
  • 26. Election: EML 110 IEEE P1622 Meeting, Oct 2011 Page 26
  • 27. Candidates: EML 230 IEEE P1622 Meeting, Oct 2011 Page 27
  • 28. Voters: EML 330 (aka poll book) IEEE P1622 Meeting, Oct 2011 Page 28
  • 29. Ballots: EML 410 IEEE P1622 Meeting, Oct 2011 Page 29
  • 30. also in EML 110 EML 505 specific to also in EML 110 EML 505 also in EML 410 also in EML 230 IEEE P1622 Meeting, Oct 2011 Page 30
  • 31. VToken: EML 470 IEEE P1622 Meeting, Oct 2011 Page 31
  • 32. Using OASIS CAM templates Power tools for assembling XML transactions, examples, models, documentation, dictionaries and more… IEEE P1622 Meeting, Oct 2011 Page 32
  • 33. Beyond XML and Schema  OASIS CAM templates provide enhanced capabilities:  XPath validation rules and logic  External Code Lists support  SQL database lookup support  XML test case generation  Automated documentation generation  Generation of models IEEE P1622 Meeting, Oct 2011 Page 33
  • 34. Dictionary Tools  Ability to work with dictionaries of canonical components  Generate dictionaries from schema automatically  Verify dictionaries and component consistent  Compare to NIEM naming and design rules (NIEM NDR) IEEE P1622 Meeting, Oct 2011 Page 34
  • 35. Available open source tools Editor and CAMV validation engine – open platform Download the CAM editor toolkit from: http://www.cameditor.org IEEE P1622 Meeting, Oct 2011 Page 35
  • 36. Using EML Test Suites Accelerating conformance testing and examples verification IEEE P1622 Meeting, Oct 2011 Page 36
  • 37. Test Suites 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.  Using open source tooling, XPath rules, and the OASIS CAM templates standard to create automated testing tools.  Integrating SQL table lookup validation rules  Ability to use external XML code list lookups  Pre-configured test suite available for EML UOCAVA examples:  http://www.cameditor.org/#CAMV_Testing Slide 37 IEEE P1622 Meeting, Oct 2011
  • 38. EML Transactions Delivery Lifecycle Component Dictionary EML Schema Templates Open source toolkit sponsored by EML standard updates Oracle Design EML Monitor Map and Template XML Test Samples Deploy XSD Test Suite Log Results Schema XMI / UML Compiled Models Templates Documentation IEEE P1622 Meeting, Oct 2011
  • 39. CAM Validation Framework Structure SQL Query Rules Database Template Lookup (compiled) Code Lists (optional) Results XML XML Java Handler instance CAMV Errors and Warnings IEEE P1622 Meeting, Oct 2011
  • 40. CAMV / ANT Test Suites Environment CAM template CAMV Control Reports Script XML XML Test Instances XSLT 2 ANT 1 XML Validation CAMV Results Examples and instructions: http://www.cameditor.org/#CAMV_Testing IEEE P1622 Meeting, Oct 2011
  • 41. CAMV Test Control Script XML Multi-Test Folder Example Test case name <camvTestSuite> Validation Template <testCase> <Example-Test-With-Folder> <cxxfile>../samples/templates/EML-330-list-v7.cxx</cxxfile> <testdir>../samples/XMLsamples/UOCAVA/330</testdir> <verbose>true</verbose> <inlineErrors>true</inlineErrors> Test XML instances folder <parameters> <abc>Param1</abc> <cde>Param2</cde> Optional items </parameters> </Example-Test-With-Folder> </testCase> </camvTestSuite> Slide 41 IEEE P1622 Meeting, Oct 2011
  • 42. 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 Slide 42 IEEE P1622 Meeting, Oct 2011
  • 43. Summary  OASIS EML V7.0 provides comprehensive standard for UOCAVA elections management and services  Complete suite of supporting tools available to assist implementers  Dictionaries and Models for data alignment  Test suite tools for accelerated verification  Examples to guide usage  Open source and online resources  http://www.cameditor.org & http://www.oasis-open.org IEEE P1622 Meeting, Oct 2011 Page 43