OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help

election-services message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]

Subject: BML - first cut discussion document

Title: BML - first cut discussion document

Here is a first cut for the Ballot Markup Language (BML).  There is a sample XML, DTD, and XSL
file at the end. The sylesheet ballot.xsl will display a simple ballot in HTML format. 
If you create separate files for each of them with the proper names you may try to open ballot.xml
in an XML compliant browser.  I used IE 5.5 to view the results.

Please use this as a starting point for discussions about how to start the development and approval of
the EML standard.  This is not a comprehensive description and will need to be embellished.  We will formalize
the document as we go along.

I used a DTD for this example which is not to imply that DTD's will be used instead of schemas.  I also
used only elements in favor of attributes which does not necessarily mean it is the best method. 

A few definitions:

The term ITEM is meant to represent the thing voted upon whether it is an office, position-elect
or referendum.  This is a very generic term and can be replaced if necessary.  The term SELECTION refers
to the candidate, answer, etc which is the option or choice for election.  Each ballot has a unique ID as
do the ITEMS and SELECTIONS.  The VOTELIMIT defines the number of vacancies to be filled in that particulat ITEM.
The UNDERVOTE element indicates whether it is allowable to vote for fewer than the allowable SELECTIONS.  The
WRITEIN element describes the number of write in candidates allowed.  The ITEM_TYPE element describes the type
of ITEM (such as first-past-the-post, plurality, proportional vote, etc.) and will need to be discussed further.


Each ballot will be enclosed with the tags <ballot>...</ballot>.  The ballot has a description (such as
Nassau County, ED1,SD1) and a unique number.  There are as many <item>...</item> pairs as there are
offices to be voted upon. Each has a unique number, a description, an ID which describes the voting
characteristics of this ITEM, the number of vacancies (VOTELIMIT), whether the number of selections may be
less than the number to be voted upon, and if write in votes are accepted.  There will be a number of
<selection>...</selection> pairs as there are candidates (selections) running for that office.  Each SELECTION
has a unique number and description.

This structure will generically accommodate a large number of eletion possibilities.


<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="ballot.xsl"?>
<!DOCTYPE ballot SYSTEM "ballot.dtd">
  <ballot_description>US Election 2000 Test</ballot_description>
    <item_description>President of the United States</item_description>
         <selection_description>Al Gore</selection_description>
         <selection_description>George W. Bush</selection_description>


<?xml version='1.0'?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">
<xsl:template match="/">
  <H1><CENTER><xsl:value-of select="/ballot/ballot_description"/></CENTER></H1>
  <body bgcolor = "TEAL">
    <table border="2" bgcolor="yellow">
     <xsl:for-each select="/ballot/item">
            <xsl:value-of select="item_description"/>
        <xsl:for-each select="/ballot/item/selection">
              <xsl:value-of select="selection_description"/>


<!ELEMENT ballot  (ballot_id , ballot_description , item+ )>

<!ELEMENT ballot_id  (#PCDATA )>

<!ELEMENT ballot_description  (#PCDATA )>

<!ELEMENT item  (item_id , item_type , item_input_type , item_description , votelimit , undervote , writeins , selection+ )>

<!ELEMENT item_id  (#PCDATA )>

<!ELEMENT item_type  (#PCDATA )>

<!ELEMENT item_input_type  (#PCDATA )>

<!ELEMENT item_description  (#PCDATA )>

<!ELEMENT votelimit  (#PCDATA )>

<!ELEMENT undervote  (#PCDATA )>

<!ELEMENT writeins  (#PCDATA )>

<!ELEMENT selection  (selection_id , selection_description )>

<!ELEMENT selection_id  (#PCDATA )>

<!ELEMENT selection_description  (#PCDATA )>

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]

Powered by eList eXpress LLC