OSID Specifications
voting package
Version 3.0.0
Release Candidate Preview
TitleVoting Open Service Interface Definitions

The Voting OSID defines a means of holding elections.


Ballots are the central OsidGovernator for the Voting OSID. Ballots are the focal point for a set of rules that govern the operation of an election. Ballots are also Temporal where voting occurs within a fixed period of time. The Voting OSID makes available Ballots which are active (open for voting), Ballots of past elections, and Ballots representing scheduled elections in the future.


Ballots are composed of Races. A Race aggregates a set of Candidates. Races are constrained to a single Ballot but are also OsidGovernators to encapsulate the rules governing a specific race.


A Candidate is something to vote for in a Race on a Ballot. A Candidate is an OsidRelationship between a Resource and a Race.


A Vote is cast by a voter for a Candidate. A Vote is an OsidRelationship between the voter and a Candidate . Some Ballots may permit multiple votes to be cast for a Candidate. A VoterAllocation manages these limits.

Polls Cataloging

Ballots, Races, Candidates, and Votes may be organized into federateable Poll catalogs.

Sub Packages

The Voting OSID includes a Voting Rules OSID for managing the constraints and processing of Ballots and Races in an election. It also contains a Voting Batch OSID for bulk administration.